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.
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.
11-22-2013 02:27 AM
Hi,
I am using PCI 6110 with signal applied to one of the analog inputs and ext. trigger applied at PFI0 input of the card. I am using sampling rate as 5MSPS (max.). Labview 2011 is being used in windows pc.
The pulse fed to the card (to read) is having 800kHz rep rate with 180ns duration, +/-2Vpp amplitude. So roughly I have 6.25 samples between two consecutive triggers. Since the signal is within 180ns, effectively only one sample (sample just after the trigger pulse) would have information about this signal. I want to read this one sample corresponding to each ext. trigger pulse and (without skipping) such 100000 points (so for 125ms with this rate) in one go. The basic program I use to check it is shown in the attachment. I can get two samples: one within the pulse and the other away from the pulse using ""analog single channel multiple sample read.vi" " for one trigger. The problem is how to read 100000 consecutive points???? One possibility was for/while loop, which I tried but found very slow. What I did was placed read.vi inside a loop and run the loop without wait VIs. But the iteration speed of loops was very slow (only few kHz), whereas a blank loop runs with a iteration speed of 10 MHz? Also how can one synchronize loop iterations with ext. trigger? How can I read/record 100000 or more such samples, each one obtaied from a ext. trigger pulse. Ofcourse, the display and processing could be done after the recording to optimize time.
Thank you in advance.
12-10-2013 10:06 AM
kbgarur,
With S-Series devices like the PCI-6110 that you have, the native hardware re-triggerable functionality doesn't exist. You can perform software re-triggering which would involve stopping the DAQmx task and starting it again, this would be too slow for what you want to do. NI has a good document on Retriggerable Tasks in DAQmx.
Retriggerable Tasks in NI-DAQmx
http://www.ni.com/white-paper/5382/en/
You will need to use counters to achieve the re-triggerable functionality that you are looking for. Read through that document and there are a couple of links to example programs at the bottom of the link as well. Hope this helps.
12-12-2013 04:18 AM
Thank you Aaron!
As adviced by you, I am looking for such counter based possibilities now.
Cheers