07-22-2013 01:56 PM
Hi,
I am trying to find a NI-DAQmx C command-sequence that will allow me to programmatically determine the maximum update rate for a task containing multiple Analog Output channels.
To make this concrete, let us suppose we have an NI 6289, a device with four analog output channels .
The specification (371290g) for this device suggests that the maximum update rate varies as follows with the number of channels (see page 3 of said spec):
1 2.86 MS/s
2 2.00 MS/s
3 1.54 MS/s
4 1.25 MS/s
Does anybody know how, given a task with 1-4 analog outputs, to obtain the listed rate (for an arbitrary device, without hard-coding any device-specific information)?
Note that simply querying the maximum update rate (e.g. using 'DAQmxGetDevAOMaxRate') always returns the maximum rate for the device (2.86 MS/s in this case).
Given that the actual rate does not scale linearly with the number of channels, I don't see a way to generalize this solution to arbitrary devices.
I have considered that _setting_ a rate that is too high might result in the appropriate rate being returned as part of the error status.
However, I'm not really certain which 'Set/Get' would produce the desired result.
In any case, I appreciate your thoughts on this issue.
Thanks,
Adam Yannopoulos
The MathWorks
07-30-2013 11:51 AM
Hi mwdaqdev,
I found out how to determine the actual scan rate using LabVIEW, the C function that perform this task is this one.
Regards,
Carmen C.