LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Unexplained Trigger Delay in NI-SCOPE Software

Hello,
 
I am using NI-SCOPE to configure my 5122 digitizer card for multi-record acquisition.  My trigger signal is connected to the TRIG input of the card, and my data will be acquired on Channel 0.
 
I have an X stage that I move in to position.  Then I configure my SCOPE software to begin acquiring data on an External Trigger, and initiate the acquisition.  Then I begin moving my X stage and after it moves 20 microns the first trigger is generated.  After the initial trigger, subsequent triggers are generated every N microns, where N can vary between different scans but is a constant within a scan.  After the acquisition is complete I display the resulting waveforms.
 
Please refer to the attached vi (LabVIEW 8.0) and jpg of the block diagram to see how I have the code set up.  I've combined a few different sections of my code into this single vi.
 
You'll see that I have a trigger delay - in this vi it is a constant, but in my application it is a Control.  I've run various tests and for some reason my data is always offset by 1.04E-5 seconds, which is why I've had to put in that trigger delay.  What I mean is that if I set the trigger delay to 0, then the first 1.04E-5 seconds of my data is noise.  After I use this trigger delay, my data is accurate beginning with the first data point.
 
Can anyone figure out where this trigger delay comes from?  Thanks.
 
Steve
 
 
 
0 Kudos
Message 1 of 2
(2,650 Views)
Hi Steve_G,
 
There doesn't seem to be anything fundamentally wrong with your VI and so there should not be any delay between your trigger and your data acquisition. I suspect that you may be generating your trigger signal a bit prematurely and that your step motor may not have settled to its final value. This will cause your digitizer to acquire unsettled data and this may be why you are seeing noise. Also, I noticed that you have set some wait timers in your VI and although these will delay your data fetch, it will not delay your data acquisition. So although you are delaying your data fetch call, as soon as the "niscope initiate acquisition" is called, your hardware is configured and is programmed to start acquiring data onto your on-board memory buffer as soon as it receives a trigger signal.
 
One way to troubleshoot this system would be to simply acquire both the trigger channel and your input channel to see if the trigger lines up with your data. This will give us a good indication if we are in fact seeing any delays. I would also like to point out that there are tons of great NI-Scope shipping examples in LabVIEW that you could refer to. You can view these in your Example Finder by accessing it under Help  Find Examples.... The examples we are particularly interested in should be under Hardware Input and Output » Modular Instruments » NI-Scope » Continuous Acquisition.
 
I hope this helps,
S_Hong
National Instruments
Applications Engineer
0 Kudos
Message 2 of 2
(2,625 Views)