09-24-2009 02:02 PM
Hi All,
I'm trying to characterize the performance of a control system I'm running within a timed loop, but I'm having issues figuring out how fast things are running. I've set the clock at 1kHz and the period to 1ms (though it occurs to me that I might have forgotten to save current values as default, so this might not show up with my file) and yet for a ten second "wall clock" test, I only get 154 data points in the spreadsheets the loop writes to. I'd really like to calculate the response time of my control loop, but it's hard to do so when I can't figure out what measure of time the system is using.
There are some .vis in this file from an outside vendor that connect to my hardware that won't show up, but I don't think they're pertinent to the problem so you can just skip loading them.
Thanks,
Brian
09-24-2009 02:32 PM
09-24-2009 02:38 PM
09-24-2009 02:48 PM
09-24-2009 02:52 PM
I'm trying to control an external motor based on some sensor information. I want the thing to be able to run continuously, but I'd like to understand how much time passes between samples so I can characterize the control system's performance (i.e. perturb the system with a step input and measure the settling time, etc...).
Thanks,
Brian
09-25-2009 06:34 PM
Hi bcglaxer,
I do not know how long the 3rd party VIs take to execute, but moving the file IO operations outside the loop should help. Second, Microsoft Windows does not allow for LabVIEW to operate quicker that 1 ms, so you will not be able to increate loop speed beyond that. Thrid, if you are attemping to conduct PID, you should understand that Windows is not a determanistic operating system and can preempt any task. You may want to take a look at what LabVIEW Real Time and NI Real Time Hardware if you need high determanism.
09-26-2009 07:08 PM
09-28-2009
03:10 PM
- last edited on
06-02-2025
04:58 PM
by
Content Cleaner
You're welcome!
You can build an array, and if your data is not hugh (100's of MB) this may be the easiest solution. However, we aways suggest implementing the Producer/Consumer Architecture. Keep the PID in the Producer loop, but move the File IO to the Consumer. Also, it appears that your instrument uses some form of serial communication, so that could cause lags in your system....
What is your application about in general, what performance are you hoping for, etc?