09-05-2007 10:20 AM
09-05-2007 09:43 PM
09-06-2007 07:31 PM
Kurtruk,
Chris is correct in that a in order to output a waveform we need to do ‘N-Samples’ or ‘Continuous’, but the neither can be done with a 6008, as it can do a maximum analog output of 150S/s software timed (6008 Specifications - http://www.ni.com/pdf/manuals/371303h.pdf, p 22).
Since this cannot directly be accomplished in signal express, the closest we can get is to bring in the .lvm signal and do a sweep through it, therefore breaking the signal up into small pieces. Inside the sweep, we would do a ‘subset and resample’ of a small number of samples and then get a mean (average) of the samples using the statistics step. This would give us a single point, which we can use as an input to the ‘Analog Output’ step for the 6008 when doing single point output. The sweep will take care of going through the entire waveform.
12-29-2007 01:50 PM
01-03-2008 01:57 PM
Hi delmeister,
The USB-6008 does not have a timing engine for analog output, and therefore cannot do hardware timed analog output. I am curious about your application overall, and what is trying to be accomplished. What output sample rate do you need, and how many channels will you need? Does the solution have to be USB? PCI? PXI? What hardware do you already have, or are you investigating into which hardware will suit your application? Knowing this information will best allow me to help with your application.
01-04-2008 06:41 AM
01-04-2008 01:52 PM - edited 01-04-2008 01:54 PM
Hi Delm,
I can see how the 150 S/s specification could cause confusion. The device can in fact update its analog output up to 150 times per second, assuming that the software controlling it can update the value 150 times per second. The problem that you are facing is that in SignalExpress you have very little control over when the different parts of your routine occur. In LabVIEW or CVI, it would be relatively simple to:
With that kind of routine, you would be able to get the max update of your device.
With Signal Express, however, the method that David described previously would require you to:
We have tried this method here, and the following is the cleanest sine wave that we could generate. Note that this waveform has a period of about six seconds. Increasing the frequency of the waveform will make it look even worse.
The real problem here is that the device has to wait for your processor to deliver a new value each time that it updates. If you were able to use a different device that is capable of hardware time analog output, you could generate the array as the first step in signal express, write the array to your device, then allow the device to generate all of the samples.
Please let us know if you have any further questions.
01-09-2008 04:06 PM
01-10-2008 10:11 PM
Hi Delmeister,
Initializing the device in LabVIEW or CVI consists of creating a task and setting the timing and input ranges. In SignalExpress, this is all taken care of in one step (DAQmx Generate Analog Output Step), which is one example of the extra computations SignalExpress has to do (doing this setup every iteration for our purpose) and why it takes more CPU usage than LabVIEW, therefore running slower.
Regarding the frequency of the waveform output, I am not sure of the exact frequency, but I believe 5-8Hz is a reasonable estimation.
>> The generated signal goes negative, but the analogue output range is 0-5 volts. Was this signal actually sent to an AO.
- Yes, the signal was actually sent to AO, but we were actually testing with a PCI-6221.For the purpose of demonstrating software timed output, which is required for the 6008, the output signal will look the same on any board. You are correct that the USB-6008 can only do analog output 0-5V. Because we were using the 6221 is why we were able to generate -1 to 1v. My apologize in forgetting to mention this before.
The method you used to generate the signal with a sweep sounds like the steps we took as well (small blocks, then average the signal, then output). This correlates to why I previously said that the signal is slow, because of all the necessary computation LabVIEW SignalExpress does. If you need a guaranteed signal at a guaranteed rate, than we will need a card capable of doing hardware timed analog output.
I know you are using this for an automotive application,
but I would like to know what other equipment you are interfacing with, what
update rates and what tolerances you need.
01-14-2008 11:01 AM