I have a running setup with different counter outputs and synchronization using PCIe 6353. I now want to copy a very simple part of the code/application, which basically just sends a TTL signal to trigger an external device somewhere between 10 Hz - 120 kHz. Since getting another 6353 would be total overkill, I want to use a simple USB DAQ card, if possible USB-6001 - but I don't have it yet.
If possible, I would like to use my code with as little changes as possible.
Knowing the 'Sample Clock Timebase' of the PCI-6353 (100 MHz), I am currently defining my task using the CO Pulse ticks.
When I simulate the USB-6001 in NI MAX and simply want to check the CO timebase, I cannot even select the counter of the simulated device 3.
If I read the manual correctly, there should be one counter that I can use to trigger external devices.
1) Can the USB-6001 do what I want - create a TTL output between 10 Hz and 120kHz?
2) How can I configure that? CO does not seem to work with the simulated device or maybe I am doing something wrong?!
According to the spec sheet for the 6001, it only has 1 counter that can only do edge-counting, not pulse train generation. You would need a more capable device. Sorry, I don't have enough knowledge of the low-cost product line to give a specific recommendation.
Thanks for your reply. I have also never worked with the low-cost product line.
In the end, I am just looking dor a USB DAQ that can output pulse trains. The NI overview of all the available DAQs just shows the no. of counters but not if they can be used as CO task - or just for edge counting.
The USB 6210 seems to work but it is quite expensive when only needing a trigger for an external device. I am still hoping there is a cheaper module available.
Should have thought of this sooner -- are you using the AO subsystem? If not, you could create a dummy task that regenerates 0 V, while exporting the sample clock out to a PFI pin to serve as your pulse train.
AO tasks even allow changing the frequency on the fly (at least I *think* X-series still supports that). Here's a MWE (minimum working example) I whipped up that ran without error on a simulated X-series, but note that I was unable to test with actual hardware.
If this works, I would not be limited to the sample rate (AO or DO) but the actual sample clock? Or is the output frequency still determined the 'rate'? In that case, why not directly use the DO, which is limited by the device's sample rate?
The exported "sample clock" signal will be a digital pulse train and the "rate" config input determines its frequency.
I chose AO because I know you can change the rate on-the-fly and you indicated that the pulse train frequency may need to vary. And the "dummy task" approach seems simpler to me than needing to define a pulse train with a buffered, hw-clocked DO task, though such an approach should also be feasible. I'm also not sure if a DO task can change its sample rate on-the-fly, I don't think I've ever experimented, so I simply don't know if a "dummy DO task" would be another viable approach.
Thank you for all your suggestions. I will probably just go with the USB-6210. It is more expensive but I will save time not having to reprogram the trigger generation. Although this is not too cmplicated, the whole program is quite large and the trigger accessed/changed at several points. Using the CO as I am doing it right now is definitely more straight forward.
That being said, I would really like to know if your suggestion also works!
Hi, Labview friends
Today I meet a problem in writting my labview program!
1、I want to control(trigger or stop)Counter to generate and end sigal with my AO signal.
How can I finish this function?
2、And I really do not understand the difference <start trigger(Digital Edge).vi> and <trigger property Node >. I can not discover the use of <trigger property Node> in my program.
1. Unfortunately, with your USB-6001, you can't. The single counter on that device can only be used to count edges, not generate pulses.
2. The Trigger property node gives access to more settings and capabilities than the regular DAQmx Trigger function. However, if you're kinda new to things, it also requires more knowledge about what combination of properties are necessary and compatible. The regular DAQmx Trigger function is much easier to use for the things it supports.
Thank you for your reply!
My device is USB6363（BNC).
I want to know if the counter below can start and stop with the other counter?
Also,I wanf to know that how to make Counter can start and stop with the AO?
relative program is in enclosure.
Thank you ~