Tektronix Technical Forums are maintained by community involvement. Feel free to post questions or respond to questions by other members. Should you require a time-sensitive answer, please contact your local Tektronix support center here.
I am following the Keithley 2304A User Manual on page 2-15 to try and get 2000 pulse current readings in approximately 1 second from an instrumented smartphone. The following C++ code is being implemented:
send(16,":sens:pcur:sync:stat OFF" ,&status);
send(16,":SENS:PCUR:MODE HIGH" ,&status);
send(16,":SENS:PCUR:AVER 2000" ,&status);
send(16,":OUTP ON" ,&status);
send(16,":SENS:PCUR:SYNC:TLEV 0.28" ,&status);
send(16,":SENS:PCUR:SYNC:DELAY 50e-3" ,&status);
enter (rx, 100479, &len, 16, &status);
The 'send' commands take approx. 50msec to execute (all of them) and the 'enter' command takes approx. 13-15 seconds. I have the following questions:
1) Does the 'measure:ARR;pcur?' command store the array in a buffer? If so, does it mean that the 2000 readings correspond to the first 50msec. Or do the readings correspond to the total time (13-15 sec)? Note: the power meter shows Pulse Hi Digitize for the total time (13-15 sec).
2) If the readings are taken over the total time (13-15 sec), how can I decrease this time to approximately 1 sec and increase my resolution? What are the factors that affect the time to record 2000 readings? Will using a faster PC decrease the time for the results? Is there any changes I can make to improve the resolution?
Please let me know if you require any more information about the problem.
- Keithley Applications
- Posts: 212
- Joined: October 25th, 2010, 1:31 pm
- Country: United States
SENS:RANG 5 ‘ Select 5A range.
VOLT 15 ‘ Set output voltage to 15V.
CURR 0.75 ‘ Set current limit to 750mA.
OUTP ON ‘ Turn output on.
SENS:PCUR:SYNC OFF ‘ Disable trigger synchronization.
SENS:PCUR:AVER 3600 ‘ Set average count to 3600.
SENS:PCUR:SYNC:TLEV 0.1 ‘ Set trigger level to 100mA.
SENS:PCUR:SYNC:DEL 50e-3 ‘ Set trigger delay to 50msec.
SENS:FUNC “PCUR” ‘ Select pulse current function.
READ:ARR? ‘ Trigger and return 3600 readings.
Question 1: Yes. Readings do not begin until the READ or MEASURE command is issued and the trigger level is exceeded. A typical GPIB transaction ranges from a few milliseconds to 10's of milliseconds, therefore the 50 msec time is simply GPIB transactions, not readings.
Question 2: Use the SENS:PCUR:TIME command to control the sampling interval. The range is 33.33e-6 to 0.8333. For 2000 readings to generate a one second sample, the interval should be 5e-4. No, a faster PC will not change the timing of the measurement. I also suggest reducing the SYNC:DEL to zero and adjust the trigger level to some level that the phone will typically produce. Otherwise, you will be waiting until the phone draws more than 280 mA to trigger the 2304 to begin collecting data.
Who is online
Users browsing this forum: No registered users and 2 guests