11-14-2007 07:53 AM
11-15-2007
02:40 PM
- last edited on
07-17-2025
01:00 PM
by
Content Cleaner
Hello Scott J,
To answer your question, no, there is not filtering on the USB-6009. Some of our other devices have low pass filters and such, but your device does not. In order to answer your other questions, I am going to need some clarification. I am a little unclear on the signal that you are trying to measure. You say "the signal is intermittent with a drop in voltage between (-10V)," does this mean that you are reading a DC value which drops 10V when your digital input turns on? This would look like a square wave with a 10V peak to peak amplitude. Also, does the 10V drop stay low for a period of time or is it a spike? How long does it stay low? Also, what voltages are we talking about (e.g is it 10»0V or 100»90V)? You say that the data you are reading in does not correspond with your known values. How exactly is it appearing? What are you expecting?
Assuming it does stay low for a period of time, there are several things that could be causing the incorrect signal. First of all, your sampling rate may leave too much time between samples, so the signal jumps back up before the next sample, or possibly catch it on the falling/rising edge. It could also be a grounding issue and the signal you are seeing is due to residual voltages. Another thing it could be is the range that is set on the task. If the range is not large enough (or too large) your data will rail to the max value (or your resolution will worsen).
The easiest and best way to test your hardware to make sure you are reading correct values (to eliminate the code side of things) is to use a test panel in Mesurement and Automation Explorer (MAX). Your device should be listed under My System»Devices and Interfaces»NI DAQmx Devices. The test panel is in the right click menu. As far as collecting data, SignalExpress is probably the easiest way to go. The example programs are also reliable.
I am also a little confused as to how you modified the program. If you are using continuous aquisition, then you shouldn't have to add a loop, there should already be one. If you are using finite or on demand, then the loop may add a delay between aquisitions (starting/stopping the task each time). I hope this gives you some idea of what could be going on. Post back with those answers and we can narrow down what is going on.