From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
07-29-2015 09:42 AM
Hello all,
I'm working on a project where I have to acquire a singal, Filter it, double integrate it, then do some PID control on it and generate it back from the DAQ, Here's the thing,Whenever I try to generate the output from the PID vi, It gives me the ( Error -200621 Onboard device memory underflow. Because of system and/or bus-bandwidth limitations, the driver could not write data to the device fast enough to keep up with the device output rate. )
Although, When I try and generate a waveform preceeding the PID ( It's process variable ) , it works just fine.
Attached is my VI .. The "DAQmx Write VI" has the " Data " Input connected to the Waveform that is the Process variable of the PID.
Whenever I Try to change the wire that's connected to " Data ", For it to be connected to the Output to the PID, It fails throwing that error.
What are the possible solutions? .. No matter how much I slow down my sampling rate, It still does the same.
Appreciate your time and assistance.
P.S I'm using an I/O Sampling rate of 1950
Number of Samples : 150
Which gives me best response I need so far.
Ashry.
07-29-2015 09:53 AM
Hi peter,
It gives me the Error -200621
What is "it"?
Where exactly does this error occur?
The "DAQmx Write VI" has the " Data " Input connected to the Waveform that is the Process variable of the PID.
Why is the PID connected with a DDT wire?
There are coercion dots. Do you know their meaning and actions?
Whenever I Try to change the wire that's connected to " Data ", For it to be connected to the Output to the PID, It fails throwing that error.
So when you connect the PID with your DAQmxWrite function you get that error?
Then the error says: write more data or write more often…
Your VI is a mess!
- You don't follow style guide: please clean up your VI.
- Try to stay away from ExpressVIs, especially when you mix them with other functions not able to accept DDT wires!
07-29-2015 10:17 AM
Hello GerdW,
I appreciate your advice will defintely try and get rid of the express VI's, And clean up my VI as much as I can, I'm a newbie at Labview, Self learned, that's why it's a mess!
Regarding your questions :
Where exactly does this error occur?
The error doesn't say where in the VI the error occured but i'm assuming it's the DAQmx Write VI.
I read about the coercion dots, I didn't know about them so thanks for the hint. I didn't realize that the PID requires a different type of input, might that be a possible reason to my error?
I have the output of the PID connected to a graph, and I've set the Integral/Derivate Term to zero and the Proportional Term to 1
The Output seems to be perfectly matching the input, Which is why I disregarded that the input type might be the cause of the error.
And yes, The error appears ONLY when I connect the data terminal of the daqmx write vi to the output of the PID.
But when I connect the data terminal to the process variable or any other waveform preceeding that step, the error does not show up.
Regards,
Peter.