07-26-2005 08:56 AM
07-27-2005 11:56 AM
Hi Stefano-
It looks like you're programming in LabVIEW. What are the differences between your program structure and that of the example that works properly? The fact that both channels seem to "drift" upward at the same time and in parallel patterns almost seems to suggest that the source voltage is following that path and not that the software is failing.
The timing rates between E Series and M Series cards are determined a bit differently in NI-DAQmx Base, but the end results should be the same. In other words, the M Series card should "drop in" in place of the E Series card and give the same result. If you can give more insight into the actual operation of your program it would be helpful in troubleshooting, but if an example works properly I would suggest first trying to isolate the differences between the two and to make absolutely sure that the source voltage is not actually behaving as your program seems to indicate.
Thanks-
07-27-2005 12:30 PM
07-28-2005 01:14 PM
Hi Stefano-
Are you able to see good results in testing with both of the "Divide?" and "Fit Data?" options disabled? I ran after removing both of these options and everything worked properly on both E- and M Series cards. One change I had to make was to remove the While loop in your program- there is no need for it in a finite acquisition and your loop was running endlessly every time because you were not breaking the loop in the case of the expected timeout error from the DAQmx read.
Also, it seems that you are trying to operate on the batch of data with the For loop, but this is also not particulary necessary in finite operations. I removed both the While and For loops, increased the timeout from 1 sec, and disabled the Divide and Fit Data operations. This basically turned your example into the equivalent of a shipping example as you mentioned, and the entire process worked well.
Take a look at the attached VI. Were you able to check any of the suggestions I gave in my first response before simply posting the VI? Let us know what you find out.
Thanks-
07-28-2005 02:54 PM
07-29-2005 12:47 PM - edited 07-29-2005 12:47 PM
Message Edited by Tom W. on 07-29-2005 12:47 PM
08-22-2005 04:01 PM
08-23-2005 02:09 PM
Hi Stefano-
The best method for stopping the task momentarily would be to do just that- stop it. One method would be to read the acquisition and then stop it before entering a sequence structure where the fitting will be performed. After the fitting is complete you would then simply restart the task at the end of one iteration of the While loop and repeat the process with the next iteration.
I have modified the Continuous Acquire LabVIEW example to show this setup. This will be your best option for "pausing" the acquisition and should work well for your application.
Thanks-