09-20-2013 04:46 PM
Can anyone advise how to tell if code we are writing is properly communicating with a (simulated or real) device, when we set **output** channels?
In particular, we're writing code (using pydaqmx, so basically via the C++ api), for a NI PCI-6703 to set its 16 channels of analog voltage output. We have a simulated device set up under the NI MAX app (Measurment & Automation Explorere v 5.4.0f0) on Windows 7. Our code does not crash when it configures the device, but it doesn't give feedback either. Can anyone advise: how do we verify it is actually configuring the card or simulated device to our intended settings?
Our NI PCI-6703 card supports analog output, but not analog input. So there is no input data acquisition sinewave for us to see in the MAX channels as shown in the NI example docs. And in any case we are interested in output, not input. All we can tell is that we make calls to set the voltages, and no error returns. Is there a way to read the state of a card in the API, or through NI MAX, so we can see if the simulated device or card is actually receiving our commands and configuring itself as we expect? (e.g. we set channel Dev1/ao0 to +5 volts; how do we tell if the simulated device or real card, has gotten the message and set analog channel 0 to +5 volts).
Apologies if this is a newbie question; we're just learning to use the NI card and APIs, we are off-site people developing the code. We have 1 on-site card which runs on a shared computer we can access for a few hours a day by windows remote desktop. So we're trying to get the code up & running properly using a simulated device. Our only copies of LabView and other $$ licenesd softwware are at the on-site shared computer with the PCI-6703 card, not on our code development machines.
09-22-2013 06:56 AM
Once you get the card, you can easily view the outputs to verify that the DAQmx driver is working as intended. I'm not sure why you think it does not work or will not generate an error. You can, of course, read the properties and methods as easily as you write to them. Even if you read back the properties and confirm that the driver is accepting your commands. that does not necessarily mean that you have programmed it correctly.
10-13-2013 02:10 PM
Thanks; can you give an example of a command that I would use to determine the present voltage output on a channel on a NI PCI-6703 ?
We already have the card, it is already hooked up to our equipment, and is currently being controlled by point-and-click in labview. I'm trying to write code to control the card, and do not want to have the lab folks to have to unhook everything and attach a volt meter to see if the card is working.....
Thanks,
Bobby o
10-14-2013 04:51 PM
In general, if you aren't receiving any errors, its really likely that you are outputting the programmed values to your device.
Depending on the architecture of your VI, you may be able to just create an indicator before the DAQmx Write function to explicitly show what is being written.
You could play around with property nodes to try and output some useful information about your system.
Please keep me posted if either of those options works out for you! If not, some more information about your programming setup would be helpful.