|
Re: Circling around a point on grass with Mecanum
In theory, the open-loop robot commands to do this are simple, but I wonder if it would execute acceptably over 10 revolutions even on a "perfect" surface.
So, you might try whipping out some quick code and trying it on some nice flat carpet and see what happens.
The open-loop commands for the vehicle motion you described (revolve around a fixed point with the robot always facing the point) are very simple kinematically with a mecanum vehicle. Just use a fixed robot-centric "strafe right" (or strafe left) command to establish the desired tangential velocity, and use a fixed rotate counter-clockwise (or clockwise) command to establish the radius of revolution.
Using sensors to provide feedback for closed-loop control could get very interesting. Even if you had a perfect gyro and a perfect fore/aft translation sensor, the robot could drift because the strafe behavior is still open-loop.
See the attached sketch.
The robot starts at Point A facing Point C (the center of the green circle), and the intent is to follow the green circle clockwise while always facing Point C.
This is exaggerated for illustration purposes, but it is possible for the robot to follow the red path instead of the green path, even if the robot rotation rate is perfectly controlled at the desired rate, and the fore-aft motion is perfectly zero.
This will occur if the actual strafe rate is slower than the open-loop strafe command.
Last edited by Ether : 01-06-2011 at 09:18.
|