Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Best way to generate a short waveform

We have a case where we have many AIs and AOs.  When some AIs exceed a threshold, we want one or more AOs to follow a brief waveform (simulating transients) and then settle to a constant value.  The waveform samples are 1 ms apart and a typical transient has 20 samples.  In the past, we had a task per AI card and a task per AO card.  Then our SW would poll the AIs (at 1 kHz) and write all the AOs, generating the waveforms in SW.  But it's hard to get precise timing in the waveform this way.  It seems to me that we should be using the waveform generation capability of our AO cards and just trigger it to start.  But to do this, we would need a separate task for each waveform because it could start at any time (independent of other waveforms).  Is there anything wrong with having a bunch of tasks on the same card like that?  Are there any examples that are similar to this?

 

Thanks.

0 Kudos
Message 1 of 2
(2,782 Views)
Hello knicewar,

It sounds like you want to have a set of AI tasks, and as certain channels exceed a certain voltage threshold you want the analog output to generate a waveform. Each AO waveform may differ in start time and number samples. All Multifunction DAQ devices only have one AO timing engine thus resulting in only one AO task. This greatly inhibits your ability to perform your requested task.

To achieve the timing and varying AI/AO tasks, this application would be best served by using the NI R Series multifunction RIO devices and the FPGA module to define your own hardware personality.

Regards,
Glenn
0 Kudos
Message 2 of 2
(2,736 Views)