From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Digital Multimeters (DMMs) and Precision DC Sources

cancel
Showing results for 
Search instead for 
Did you mean: 

4132 auto range measurement glitch

Using PXI SMU 4132, a loop calls the attached (jpg) VI  to sweep current level from 0.5mA to 20mA with a resolution of 0.5mA. The problem is I must use the autorange ON option since the current level range must switch from 10mA (allowable current level +0.2 to +10 mA and -0.2 to -10 mA) to 100mA (allowable current level +2 to +100 mA and -2 to -100 mA) see level doc here. During the autorange a measurement or source glitch occurs. It seems like measurement noise during the range switch since it is not repeatible. 

 

code that is called from a loop is shown. I've tried to set AutoZero to ON, increased the ApertureTime, changed the source delay with no success. The only thing that gets rid of the glitch is if I limit my current sweep to stay within one current range so that autorange can be avoided.  The current step size of 0.5mA seems to meet resolution in both range settings so I don't that is the problem either, see spec doc here

CodeSnip.JPG

 

Running the VI twice in a row you can see the graphs below show a glitch that occurs at 10mA . Note that the glitch is not always the same but it does always happen at the autorange transition value of 10mA.

AutoRangeGlitch.JPGAutoRangeGlitch2.JPG

0 Kudos
Message 1 of 8
(7,617 Views)

You didn't tell us what you are testing 😉

If a voltage or current glitch occures during the range switch, that migth have an influence on your DUT.

 

Have you tried a simple resistor of about 330 Ohm?

Have you monitored the voltage with a fast scope during the measurement?

(I would try it in AC mode and trigger not set to auto and level close to zero....)

 

 

 

Greetings from Germany
Henrik

LV since v3.1

“ground” is a convenient fantasy

'˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'


0 Kudos
Message 2 of 8
(7,595 Views)

Hi Henrik,

 

Sorry for less than complete information. I have only tested diodes. A resistor is of course a good idea to simplify, thanks. I have seen this phenomena on an off the shelf diode LED and I have seen this on our diodes. 

 

A fast scope is also a great next step. For what it is worth, my code also measures the output LED power using PXI 6123 at each current sweep step and I do not see the same glitch at 10mA autorange crossover. That is not the same as a fast scope though since there is a non deterministic delay between the optical power measured and the current sourced. Shown below is the source current vs measured optical output power AND vs measured power for the same sweep. 

VoltageVsCurrent.pngPowerVsCurrent.png

 

Somethings I will try:

(A) add scope

(B) try resistor

(C) remove the triax cable and replace it with a standard shielded. Maybe the guard terminal connected to the triax cable follower conductor is spiking? I have another separate measurement that requires low leakage but this measurement may inappropriately use the gaurd. 

(D) rewrite the code so the intialize & set setting & close are outside of the loop, only source--> measure inside of loop. 

(E) Someday learn how to backplane trigger the PXI 6123 measurement off of the PXI 4132 to reduce non determinism Smiley Happy

 

Thanks for all your help.

 

Chris

 

0 Kudos
Message 3 of 8
(7,589 Views)

Hi Chris,

 

When you change current ranges on the NI 4132, internally the SMU switches which internal shunt resistor is used to take output current measurements.  When the range change occurs, there is a voltage spike that occurs as a result of current rushing in to charge the capacitance of the new current path.  This spike settles out after a short amount of time.  See the information under Minimal Glitch Range Changing section of this page in the help.  That page refers to the NI 4140/4141 but the concept still applies to the NI 4132.  

This is a fact of life for most power supplies/smus that have multiple ranges.  Our newer SMUs (NI 4136/4137/4138/4139/4140/4141/4142/4143/4144/4145) employ an advanced switching algorithm that reduces glitching due to range changing, but some glitching is unavoidable if you are going to be measuring continuously.  

 

If you perform the whole sweep in the 10 mA range you will not see a glitch.  If it is acceptable for you application you could also pause the sweep at the point at which you know the range is going to change, switch to the larger range, and then resume the sweep.  This pause should give the circuit enough time to settle out so that you wouldn't see the spike in your measurements.

 

Let me know if you have any additional questions.

Regards,

Jared R.
Precision DC Product Support Engineer
National Instruments
0 Kudos
Message 4 of 8
(7,578 Views)

Hi Jared,

 

The AutoRange settling time constant would be a good thing to know. The doc you pointed me to was one I searched in vain for some time, thanks!.

 

The o-scope suggested by Henrik may allow me determine the settling time of AutoRange but I believe the AutoRange glitch magnitude is small and according the documentation you pointed me to, the glitch direction forces the current smaller than user requested. Based on the documentation you pointed me to, the settling time is on the order of 2 µs. If I assume that my PXI 4132 is 1000x slower, that would be a AutoRange settling time of 2mS. Just running through the numbers, 2mS is 1/8 the aperture time and less than half the source delay. I think the I'm using the source delay correctly see here

 

Note that "glitch" may really a misnomer since glitch might imply that the error is temporary, my bad. If you look at the voltage trace, it jumps and then stays higher (or lower) than expected. Maybe "discontinuity" would be a more appropriate way of describing the observation. A discontinuity is created at the AutoRange crossing and never recovers. The magnitude and direction of the discontinuity is non deterministic... things that come to mind that cause this would be (1) an AutoZero at AutoRange that picks up 60Hz line, (2) the actively driven guard line in the triax cable is being used inappropriately since this is current source -> voltage measurement not a voltage source -> current measurement (hand wavy argument since I don't know how the guard buffer circuit works during AutoRange)

 

I'll do some measurement homework and get back to you both. Thanks again!

 

Chris

 

0 Kudos
Message 5 of 8
(7,573 Views)

Hi Jared and Henrik,

 

Taking a time trace (shown below) revealed two things:

(1) The source current is not responsible for the discontinuity. There is no discontinuity in the source current. That means the discontinuity is from the voltage read. 

(2) The voltage measured using the SMU  tracks the voltage measured using the o-scope fine except there is a discontinuity when the SMU auto ranges. 

 

TimeTraceNoise.PNG

 

 

Taking a time trace of the noise (shown below) revealed two things

(3) My setup has a considerable amount (RMS >0.2Volts). This is determined to be due to stepper motors and a water pump in my setup. 

(4) Much of the noise has spectral content >10kHz. That explains why the SMU tracks the voltage so well since it is being averaged out with the aperture time set to 16mSec. It might also explain why the auto range discontinuity is non deterministic.

 

Noise spectrum.PNG

 

 

Forcing the noise to be lower (shown below) by turning off the water pump and disabling motors revealed two things

(5) When the stepper motors and water pump is disabled, the SMU does not show a discontinuity. 

(6) The SMU does a good job of filtering out the noise except during the auto-range routine. 

No noise.PNG

 

Could someone confirm that auto-range also auto zeroes which could catch noise and use it as an offset for the rest of the measurement? The fact that during the non auto range portion the sweep, the SMU tracks (is smooth) just fine. This tells me that some how the SMU is able to reject the high (>10kHz) noise just fine except during the auto range function. I've tried many settings to try and combat this discontinuity (auto zero, aperture time, waiting for settling after auto-range...) Does the auto-range not have the same aperture time so it can pick up higher frequency noise?

 

In the mean time. I will try to reduce the stepper motor and water pump noise. This might be hard or impossible. 

 

Thanks


Chris

0 Kudos
Message 6 of 8
(7,396 Views)

This is a really good catch and investigation on your part. I am disappointed to see no response from NI yet. I think you are on the mark with your diagnosis of Auto-zero'ing as the culprit, glitch is the wrong word since it's an offset that stays around. I found this auto-zero attribute: NI DCPower Auto Zero Attribute

 

Short Name: Auto Zero

Property of niDCPower

Specifies the auto-zero method to use on the device.

Refer to the NI PXI-4132 Measurement Configuration and Timing and Auto Zero topics in the NI DC Power Supplies and SMUs Help for more information about how to configure your measurements.

Default Value: The default value for the NI PXI-4132 is On. The default value for the NI PXI-4110, NI PXI-4130, NI PXIe-4140/4141/4142/4143/4144/4145, and NI PXIe-4154 isOff, which is the only supported value for these devices.

 

So it seems the PXI-4132 is the only device that does this auto-zeroing, and by default it is on! Here's more info on the behavior: PXI-4132 Auto Zero

 

If you are not changing the auto-zero property, then by default the property will be set to On, and this will be the behavior:

Auto Zero On

When auto zero is on, a zero conversion is performed after every sample conversion and subtracted to correct for measurement path offsets and drift. Use this option for the best accuracy measurements. After each signal conversion, the measurement path is switched to an internal short, followed by a settle time of ~600 µs which allows the analog circuitry to settle, then the zero conversion is taken (using the same aperture time as the signal measurement). After the zero conversion, the switch is changed back to sample the signal and settle time is used again before proceeding.

The following image illustrates a measurement acquired with number of samples to average set to N and auto zero on.

 

 

Note that the zero-conversion should use the same aperture time as the signal measurement, and that the N samples here refers to the Samples to average attribute, NOT the aperture time setting.

 

I still don't think this explains why you are getting such different results in each measurement range. However, you could try setting the auto zero to off see if things are more consistent.

 

If you're not changing the aperture time when changing current ranges, I wouldn't expect that to affect it. Any issues with the auto-zero should show up in ALL your measurements. It's also possible that the "internal short" created is different for different ranges. 

0 Kudos
Message 7 of 8
(6,547 Views)

Hi Chris,

 

Thank you for the detailed write-up.

 

For NI-DCPower devices, Autorange is performed entirely in software.  It essentially looks at the values that are in your sweep and adjusts the range to the smallest range that includes that setpoint.  The inflections in your graph are occurring as a result of the current level range changing.  Autorange does not have an effect on whether or not the device autozeros. 

 

Can you clarify as to what DUT you made from your most recent post? Was it still a diode or did you change to a resistor?  If possible, could you perform a few current sweeps across some resistors?  Sweeping across a linear device will help us pinpoint how the offset is showing up in measurements. Providing 2 or 3 identical sweeps across a few different valued resistors would be helpful.

 

Any more insight you could provide about the software that you're running?  The block diagram screenshot you've provided only shows a single setpoint output and a single measurement.  Are you using sequence mode or are you running the whole VI each time you update a setpoint?  Any information about how you generated the sweeps will help us recreate the issue here.

 

How are the water pump and stepper motor electrically connected to the 4132?  How are you taking your current measurements?

 

 

Regards,

Jared R.
Precision DC Product Support Engineer
National Instruments
0 Kudos
Message 8 of 8
(6,492 Views)