View Single Post
  #4   Spotlight this post!  
Unread 08-02-2010, 09:37
Ziaholic's Avatar
Ziaholic Ziaholic is offline
Elec/SW Mentor
AKA: Marc
FRC #1164 (Project NEO)
Team Role: Mentor
 
Join Date: Jan 2008
Rookie Year: 2002
Location: Las Cruces, NM
Posts: 194
Ziaholic is a jewel in the roughZiaholic is a jewel in the roughZiaholic is a jewel in the roughZiaholic is a jewel in the rough
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.
__________________
----
There are 10 types of people. Those who understand binary, and those that do not.
Team #1164 - Project NEO Robotics
Reply With Quote