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.


Model 2651A
Post Reply
Posts: 1
Joined: October 10th, 2012, 8:34 am
Country: United States


Post by viccal13 » October 10th, 2012, 1:07 pm

Our lab nees to be able to produce and measure high current pulses up to 50 Amperes. Still learning MS Vicsual C# and TSB.
I have been experimenting mainly by using the Kethley's TSB sample program included on section 5 (capturing high power pulse waveforms).
I am working specifically with CapturePulseI sample program included on page 5-7.
I have been able to call the above function several times from the TSB console: For example, CapturePulseI (10, 300e-4, 10, 5), (30, 300e-4, 10, 5), (50, 800e-5, 10, 5), etc. I have been able
to see the pulses on the oscilloscope. However, error -222 (parameter out of range) always appears. In addition, line that includes PrintPulseData() generates a run time error: trying to call global PrintPulseData(a ni value).
Another important problem: The above program specifies high current pulses limited to 10V. However we need up to 50A pulses for a level up to 40V. If I modify the code over 10 Volts: smua.source.limitv = 20, for example. We call CapturePulseI (50, 800e-4, 20, 5) and TSB originates additional errors:
5007: operation would exceed safe operating area of instrument.
5061: operation not permitted while OUTPUT is off.
and finally error -222, an error that always appears even modifying pulse width.
Eventually, we will need to interface with visual studio, specifically C#, so we will post additional questions and definitely we need your support.
Thanks in advance for your help,
Victor Calleros.

Dale C
Keithley Applications
Keithley Applications
Posts: 2849
Joined: June 10th, 2010, 6:22 am
Country: United States


Post by Dale C » October 11th, 2012, 8:05 am

1. You mention that “I have been able to call the above function several times from the TSB console: For example, CapturePulseI (10, 300e-4, 10, 5), (30, 300e-4, 10, 5), (50, 800e-5, 10, 5)”. (10, 300e-4, 10, 5) will work. (30, 300e-4, 10, 5) will not work because 30ms is too long a pulse width at 30A (1ms max). Also (50, 800e-5, 10, 5) will not work because you can’t output 50A for 8ms. If you are getting the error only on the second two then no surprise. If you are getting an error on all three, including the first one, then something else is going on and it’s likely related to your second problem.
2. As far as the PrintPulseI(A nil value) error...
This means the function does not exist which means it was never loaded it into the instrument. Looking in the manual, the CapturePulseI() calls PrintPulseData(), not PrintPulseI() so your are calling PrintPulseI() then it is definitely not going to work. I don’t know if you copied and pasted from the manual into your script or what but, this example is already included as one of the projects in Test Script Builder if you installed TSB with the 2651A add-on from the CD included with the instrument or the download from our website.
3. 5007 operation would exceed safe operating range.
You mention that you get the error when you set smua.source.limitv = 20 and then try to call CapturePulseI (50, 800e-4, 20, 5). This is because you cannot put the instrument on the 50A range with a DC limit of 20V. The max DC voltage limit for the 50A range is 10V. You should leave the example script code alone and leave smua.source.limitv = 10. It is the smua.trigger.source.limitv setting that needs to be at the higher voltages and it does get set higher automatically by the script when he calls CapturePulseI (50, 800e-4, 20, 5). The pulseLimit parameter that you pass (in this call it’s 20) is the value that gets used to set smua.trigger.source.limitv. Leave the smua.source.limitv = 10 line alone and that pulseLimit sets the higher voltage limit during the pulse. Also that call still won’t work though because 8ms is too long. Look at the Pulse Specification on page 3 of the 2651A specs.
4. 5061 operation not permitted while OUTPUT is off.
This error is because of the previous error. The example script doesn’t do error checking so it still calls the smua.trigger.initiate() command even if the setup failed. Since the configuration was in error, the SMU never let the output be turned on and you can’t call smua.trigger.initiate() without the SMU output on.

Vince W
Keithley Applications
Keithley Applications
Posts: 108
Joined: September 22nd, 2010, 12:27 pm
Country: United States


Post by Vince W » October 16th, 2012, 2:10 pm

I believe the Error -222 could be caused by an error in the example code in Chapter 5 of the 2651A User's Manual. A line is missing from each of the CapturePulseV() and CapturePulseI() functions in the manual. If you are using TSB, you can simply use the "KE2651A_Fast_ADC_Usage" example script, which you should see in the Navigator window. The TSB version of this example has been corrected by adding a missing line.

In your code, search for the statement in both functions CapturePulseV() and CapturePulseI()
smua.measure.count = (pulseWidth / smua.measure.interval) * 1.25

Check immediately before each of these lines. If it is not already there, please insert a line:
smua.measure.interval = 1e-6

Error -222 occurs if you use the manual's source code verbatim because the default value for smua.measure.interval is 0.00. While the instrument handles that setting by making the actual Fast ADC sample interval be the smallest possible value (1e-6) internally, the calculation that follows will cause the smua.measure.count to be an extremely large value, thus causing Error -222, " Parameter data out of range".

Dale correctly advised you about the pulse width limitations that are dependent on V and I operating regions of the 2651A. Please check those and your code that you copied from Chapter 5 to see if the line mentioned above is missing. These all are required to eliminate Error -222.
A Greater Measure of Confidence

Post Reply

Return to “2651A High Current SourceMeter”

Who is online

Users browsing this forum: No registered users and 2 guests