04-17-2017 01:06 PM - edited 04-17-2017 01:35 PM
I was wondering if the following application is possible with an NI PCI 5153. We have four signals of interest.
Signals 3 and 4 are signals from a pulsed laser that look as shown below. The pulses fire at a rate of 400 pulses per second (which is what I mean when I say that they are 400Hz signals).
Plotted, Signal 3 is shown with the dotted blue line, (signal 4 looks more or less identical), and signal 2 is shown as the green line.
We want to use the green line (Signal 2) as our sample clock, so that we only acquire data points at the peak of the laser pulse. We are only interested in the maximum amplitude and therefore don't need any other data points. The reason we want to only collect at the peak is in order to speed up data transfer from the card to the computer (since we are only interested in the peak values, we only care about one data point per pulse in Signals 3 and 4).
However, we want to collect data in sync with the 200Hz TTL pulse. I.e., the card will wait for the Trigger TTL pulse, when it arrives, it will start to be on the lookout for TTL Sample clock signal. When the first sample clock signal arrives, the card will collect a single data point from Signal 3 and a single data point from Signal 4. It will repeat this for the second sample clock signal. The card will now return to waiting for a TTL from the trigger signal.
Is this application possible with the PCI 5153? We were thinking that we could use a BNC-SNB converter on the PFI0 input of the card and connect our Sample Clock (signal 2) TTL to it. Then, we could just connect the Trigger TTL (Signal 1) to the TRIG input of the clock. However we noticed in the specifications that the external sample clock frequency range (page 😎 is 350MHz to 1GHz. Is there a way to configure the card in LabView such that it only obtains the peaks of signals 3 and 4 instead of entire pulses? Also why is there a minimum sampling rate of 350MHz? One would think that if a 350MHz sample clock worked for the DAQ card then it should have no problem with 400Hz, no?
If anyone can provide some insight into whether this is doable with a PCI 5152 that would be greatly appreciated! I can provide more information about our setup as well if anything is unclear!
Thanks in advance!
04-18-2017 05:59 PM
I think the best way to do this would be to use your TTL Pulse as either a digital or edge trigger. This would allow you to start acquisitions each time you received the Pulse. Then instead of only sampling at 400hz, you can take a larger sample each trigger to get a more accurate reading, and determine when the true peak occurs.
There’s an example in the Example Finder that shows how to perform the triggering.
Example Finder > Hardware Input and Output > Modular Instruments > NI-SCOPE (High-Speed Digitizers) > Getting Started > niScope EX Configured Acquisition.vi
You are correct. The lowest sample rate for the PCI-5153 is 350MHz. This is to increase the accuracy needed for oscilloscopes. It’s important to note that this is not a DAQ card, so it will behave differently. You could likely use a DAQ card instead, which would allow you to set the sampling rate to a lower value, but the accuracy would not be as awesome as the Scope.
04-19-2017 11:28 AM
I thought about doing that but the problem is that I need both a trigger and a sample clock in order to maximize acquisition speed. When using a TeTronix oscilloscope the problem was that it would insist on collecting 10000 points for only 4 pulses, and so it was transferring 9996 useless data points per acquisition. This slowed down the acquisition time quite a bit and we were hoping to avoid a similar problem. I was hoping to avoid buying a separate DAQ card but I am not sure if the PCI 5153 would work for this application.
Thanks for replying!
04-19-2017 11:47 AM
Another option to consider is Decimating the data acquisition. There are still limitations, but it might be close enough to what you need for this application.
04-19-2017 11:59 AM
Oh, that may well be useful! Do you mean to say that the card can collect data and then downsample it prior to transferring?
Thanks
04-19-2017 03:17 PM - edited 04-19-2017 03:40 PM
If you use the internal sample clock you can decimate down to ~15kSPS (1GSPS/2^16)
You have a scope card (lot of nice features build in!!) , DMA is build in, you have how many (multi?) GHz processing cores? You want a value every 2.5 ms ...
Your system must be feeling like Marvin 😄 or does fits better?
Simply use the trigger input , define number of pre- and post trigger samples , read about 256 to 1024 samples on each trigger, use peak detection in a producer consumer architekture. store the peak value....add bells and whistles 🙂
I wouldn't go below 50kSPS ...