Difference between revisions of "Odometry Glitches"
From wikidb
(→Example Graph) |
(→Zero Wheel Speed Glitches) |
||
Line 22: | Line 22: | ||
python motors_go_full.py 0.2 0.0 | python motors_go_full.py 0.2 0.0 | ||
− | A second Twist command | + | A second Twist command adds confusion. The angular z component is now set to 0.4 rad/sec making the robot's angular position cross quadrant boundaries more often. There are not zero velocity glitches. |
python motors_go_full.py 0.2 0.4 | python motors_go_full.py 0.2 0.4 | ||
[[Image:rotate_odom_glitch2.png|800px]] | [[Image:rotate_odom_glitch2.png|800px]] |
Revision as of 12:54, 13 October 2017
Background and Set Up
These odometry glitches were discovered during motor control PID tuning. See
Example Graph
These measurements are under load.
Observations
- Notice the odometry glitches that report a 0 m/sec wheel speed. This issue appears to be an odometry node bug when the angular velocity stays at 0 rad/sec. See below.
- Notice the wheel speed short term oscillation. This issues appears to be an encoder node issue bug because of a lack of time precision. See below.
Zero Wheel Speed Glitches
The motor Twist messages are generated with the following command which specifies a 0.2 m/sec linear x and 0.0 rad/sec angular z. As result, the robot cross the 0/360 degree boundary multiple times. Each time a bug result in reporting a 0 speed to odometry.
python motors_go_full.py 0.2 0.0
A second Twist command adds confusion. The angular z component is now set to 0.4 rad/sec making the robot's angular position cross quadrant boundaries more often. There are not zero velocity glitches.
python motors_go_full.py 0.2 0.4