Digital Multimeters (DMMs) and Precision DC Sources

cancel
Showing results for 
Search instead for 
Did you mean: 

PXI-4071 Triggered Waveform Acquisition Phase Problem

I have wired a VI to trigger 2 PXI-4071 DMM waveform acquisitions.  They are both reading voltages and should both be triggered at the same time through a trigger on the PXI backplane.  At least 95% of the time when I run the VI, I get waveforms that are almost completely in phase with slight variation.  Occasionally, I get 2 waveforms that are 180 degress out of phase.  I have connected an oscilloscope, and the waveforms are consistently 180 degrees out of phase.  I have attached my VI, and I would appreciate any suggestions as to why its output doesn't match my oscilloscope, and more importantly, why it would change from acquisition to acquisiton.  I know you are unable to account for my DUT, but according to the oscilloscope I have 2 steady waveforms 180 degrees out of phase.  Thanks for any advice offered.

0 Kudos
Message 1 of 18
(9,320 Views)
I have made some changes to my subVI and have not been seeing the inconsistent output today.  The changes were unrelated to the triggering of the PXI DMMs (I added triggering of 2 external DMMs via GPIB).  I'm still unsure what the cause was, but for now it appears resolved.  Any feedback or suggestions for improving the VI I posted is welcome.
0 Kudos
Message 2 of 18
(9,277 Views)
I was wrong about the problem being resolved.  I have attached waveform binaries for the typical (incorrect?) waveform I get when running the VI, and the desired output that I get occasionally.  The desired output matches my oscilloscope display.  The typical output is around 175 degrees out of phase.  My VI for triggering the acquisitions is in the OP.
0 Kudos
Message 3 of 18
(9,267 Views)

Hi ejensen,

            I'm not seeing what's wrong with your code right off the bat, but I'll see what else I can find.  Also, would you mind just posting pictures of your waveforms?  That be easier to work with than the .bin files.  Thanks!

 

0 Kudos
Message 4 of 18
(9,253 Views)
I assumed the binaries would be more useful since you could manipulate the data.  I have attached an image showing the 2 results I get from the VI attached above.  As stated above, I get the output labelled 'Typical' most often.  I get the output labelled 'Desired' approximately 5% of the time.  As you can see in the image, the 2 waveforms are out of phase by slightly less than 180 degrees on the typical, but almost perfectly in phase on the desired.  Desired matches the display on my oscilloscope.
0 Kudos
Message 5 of 18
(9,245 Views)

Hi ejensen,

          I'm not entirely sure why you're seeing those results.  While I continue to look into this, could you please check out THIS example program to see if you get the same results running it?  Thanks!

 

0 Kudos
Message 6 of 18
(9,224 Views)

I have tried that example previously and was never able to get anything resembling a waveform with multipoint acquisition.  I tried one trigger for multiple samples, and I tried one sample per trigger with a continuous trigger.  I was never able to sample fast enough to get a waveform.  My DUT is currently in use on another project, but when I can, I'll post the output I get from that example.  I will also try connecting both DMMs to the same point on the DUT and see if I get similar results from my VI.  I assume I will, and that will rule out the possibility that my DUT is just doing something strange.  Thanks for your responses so far, and I'll follow up as soon as I'm able.

0 Kudos
Message 7 of 18
(9,215 Views)

Hi Ejensen,

         So, looking through your code again, it's quite possible that you're seeing a race condition where there is no gaurantee that your devices are going to start at the same time (you should run a highlight-execution on this and see if you can verify this).  Though the example I recommended might not be suitable for your application, I'd like you to try to set up your code the way that example is configured (praticularly in regards to the error wires).  A few other questions I have are: What is your DUT?  And how are you trying to do your measurements?  If you continue to see this problem after modifying your code, I would like to try to reproduce your issue:  how are your devices configured in your chassis?  what kinds of cables are you using and  what are their lengths?  Thanks in advance!

 

0 Kudos
Message 8 of 18
(9,191 Views)

My understanding is that it shouldn't matter when the config and init are run as long as both are initialized and waiting for the trigger.  If they're both waiting and the trigger comes, shouldn't they start at the same time?  

 

I have tried adding a delay after the initialization and before the trigger in case the issue was related to an initialization not being ready, but that caused my waveforms to be shifted even further.  I also don't understand what would cause this, since the trigger should still be the signal to start acquisition.  The fact that the trigger comes a bit later should not affect the phase relationship of my waveforms.  Running highlight-execution shows the data flowing as I would expect.  Both DMMs go through config and init, errors are merged, then a pulse is generated.  This seems to function as I would expect.

 

My DUT is a DC power supply.  I am monitoring the AC input voltage and current.  I am not taking a current measurement, but instead measuring the voltage across a 1 ohm resistor.

 

I have connected both DMMs to the same input voltage and so far I haven't been able to get the readings to line up.  They are consistently about 90 degrees out of phase.  The peaks fall approximately 3.8ms apart, which tells me they are not triggering at the same time.

 

My pulse is generated from a PXI-6229 in slot 2.  My PXI-4071 DMMs are in slots 3 and 4.

 

I understand what you mean about the error wire on the example you posted, and I will try to set mine up in a similar way to see if it affects anything.  I will post back with any change in results.

0 Kudos
Message 9 of 18
(9,186 Views)
I have made the modifications, and I get the same output when I snake the error wire through both initializations (instead of parallel initialization).
0 Kudos
Message 10 of 18
(9,183 Views)