How do I trigger a DAQ session with a external digital signal (voltage)?
6 views (last 30 days)
Show older comments
I've been trying to compose a script to acquire data via an NI device (cDAQ2Mod1) when another device (cDAQ1Mod1) receives an external digital trigger. I've been modeling my code off of various examples from MATLAB Help and here is what I have so far:
daqDuration = 3;
daq1 = daq('ni');
daq2 = daq('ni');
addinput(daq1,'cDAQ1Mod1','port0/line0','Digital');
addinput(daq2,'cDAQ2Mod1','ai0','Voltage');
addtrigger(daq1,'Digital','StartTrigger','cDAQ1Mod1/PFI0','External');
addtrigger(daq2,'Digital','StartTrigger','External','cDAQ1Mod1/PFI0');
start(daq2, 'Duration', daqDuration)
while ~daq2.WaitingForDigitalTrigger
pause(0.1)
end
start(daq1, 'Duration', daqDuration)
% Wait until data acquisition is complete
while daq1.Running || daq2.Running
pause(1)
end
When I run the script, I receive an error message indicating:
No channels configured for 'cDAQ1Mod1'. Add channels before adding clocks or triggers.
The error references the line with the first "addtrigger" step.
Any insights? Thank you
0 Comments
Answers (1)
Nagasai Bharat
on 12 Mar 2021
Hi,
From my understanding the channel Id for daq1 might not be an appropriate one. I would suggest to go through the Device Info to find out the available channels wrt their Ids.
0 Comments
See Also
Categories
Find more on Simultaneous and Synchronized Operations in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!