I'm using a USB-6009 DAQ to activate relays (>3V active) that will, in turn activate a 24V solenoid device. However, the default state of digital outputs of the DAQ are set to 'open collector', which generates a 5V output seemingly with only ~1 mA drive. This is not suffient to trigger the relay & solenoid. The 5V, 44 mA analog output on the DAQ, by comparison, activates the relays just fine, but there are not enough analog output lines for our needs.
The manual for the USB-6009 states that:
"The USB-6009 ports can also be configured as active drive using the DAQmx API, allowing 3.3 V operation with a source/sink current limit of ± 8.5 mA. Refer to the NI-DAQmx Help for more information about how to set the DIO configuration." Configuring the outputs as active drive seems like the ideal solution. Unfortunately, NI-DAMmx Help doesn't explain how to change the setting..
Labview doesn't have any obvious options, other than conjuring the DAQ assistant, which does not offer this option. There is a nice example in the NI-DAQmx C reference help, but I'm not programming in C : " int32 __CFUNC DAQmxSetDOOutputDriveType(TaskHandle taskHandle,
const char channel[], int32 data);" (unless I'm not understanding this and it can be entered somehow in labview..).
To really complicate things, I'm trying to run the whole process from Matlab, via the data acquisition toolbox, which has several NI- specific settings, but not this one.. I'd be willing to do it in Labview if that is the only option.
many thanks for any assistance..