Repository navigation
NavMap AMCL: per-particle heading noise; IMU turns, not its absolute yaw - #132
Merged
Merged
Conversation
The prediction drew one heading noise for all the particles, so they never spread in yaw and the correction could not fix the heading: without an IMU, the odometry's turning error (large on a skid-steer robot) was never corrected. Each particle now gets its own. With an IMU, every particle took its whole orientation, yaw included. Without a magnetometer an IMU's absolute yaw is arbitrary and drifts, so this only worked in simulation. The particles now take its roll and pitch, and turn by the change of its yaw (a gyro turns far better than skid-steer odometry), keeping their own heading. Signed-off-by: Francisco Martín Rico <fmrico@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #131
In the Summit excavation, on a 50 m route with an IMU and slopes of up to 22°, the route completes in all runs. The mean error is 0.41–0.49 m and the maximum 0.87 m, against 0.9–1.23 m before, and the result no longer depends on Gazebo's exact IMU yaw. The wheel odometry drifts 30 m over the same route.
Three new tests cover:
The first two fail on the previous code.