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.

Keithley 2304A Pulse Current Measurements

2302, 2303, 2303-PJ, 2304, 2306, 2306-PJ, 2306-VS, 2308
Post Reply
Posts: 1
Joined: July 8th, 2014, 8:38 am
Country: Canada

Keithley 2304A Pulse Current Measurements

Post by astryl » July 8th, 2014, 9:05 am


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);
send(16,":measure:ARR:pcur?" ,&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.

Thank you,

Kenneth P
Keithley Applications
Keithley Applications
Posts: 212
Joined: October 25th, 2010, 1:31 pm
Country: United States

Re: Keithley 2304A Pulse Current Measurements

Post by Kenneth P » October 27th, 2014, 1:48 pm

My manual is different than the one you are refering to. Can you clarify your intended data requirement? You are indicating that you want 2000 pulse current readings. With the SYNC state set to off, you are essentially returning a digitized waveform. The data collection should start when a signal exceeds 280 mA and after the 2304 is placed into pulse collection mode and a READ command is issued.

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.

Post Reply

Return to “Series 2300”

Who is online

Users browsing this forum: No registered users and 1 guest