|
Re: labview delay help
Keep in mind that while your typical Teleop loops are running at 50 Hz, the default code's image processing can maybe squeeze out 10 new target updates per second ... and as low as 2 per second when the camera is set to its highest resolution. (I'm referring to the default code here)
My team used the front panel from the FindCircles VI to observe almost 500msec when the camera is set to Hi-Res. Around 250 msec at medium res. And around 150 msec for low res. You can improve these times by changing the search window etc., but it's important to understand the timing differences of the control system, and the target detection updates.
For the medium-resolution example, if you control the servos from within the Teleop VI, then you'll have approximately 12-13 "drive" cycles for each target update (250 / 20). So if you are adding an offset angle to the current angle, you'll probably overshoot the target unless the delta-angle is very very small.
Our first attempts would overshoot greatly ... we reduced the delta "bump" angle to as low as 0.55 degrees per "correction" and finally got it to lock. (smaller values would result in the camera not even moving)
Our next improvement to our tracker will probably involve taking the control commands out of the teleop vi and placing them with the other parallel tasks, and also waiting for the target variable to update before acting again.
|