-
Notifications
You must be signed in to change notification settings - Fork 277
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixed Odometry Publisher Angular Velocity Singularity in 3D #2348
Conversation
Signed-off-by: Tom Creutz <[email protected]>
Signed-off-by: Tom Creutz <[email protected]>
Signed-off-by: Tom Creutz <[email protected]>
Signed-off-by: Tom Creutz <[email protected]>
Signed-off-by: Tom Creutz <[email protected]>
Can you roll back the style changes please? We need to just update the logic without altering the style of the entire file. |
Signed-off-by: Tom Creutz <[email protected]>
Previously the angular velocity was represented in the world coordinate frame. This change will rotate it to be represented in the body coordinate frame Signed-off-by: Tom Creutz <[email protected]>
Hi @mjcarroll, |
Hello @mjcarroll, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please consider adding a test case in https://github.com/gazebosim/gz-sim/blob/gz-sim8/test/integration/odometry_publisher.cc to prevent a regression in computing 3d angular velocity close to singularity. Thank you!
Signed-off-by: Shameek Ganguly <[email protected]>
Signed-off-by: Shameek Ganguly <[email protected]>
Signed-off-by: Shameek Ganguly <[email protected]>
…tatements Signed-off-by: Shameek Ganguly <[email protected]>
I've merged tomcreutz#1 |
Added test case in 5b877ca |
@osrf-jenkins run tests please |
Looks like Windows CI is failing as M_PI cannot be found. I guess we should |
Thank you very much for your efforts @azeey and @shameekganguly . Just returned back from holidays and wanted to take care of this in the following days. |
Signed-off-by: Addisu Z. Taddese <[email protected]>
Not sure why CI on Jammy failed. The test seems completely unrelated to this PR, so I'm rerunning it to see if it's a flake. The previous CI job was green https://build.osrfoundation.org/job/gz_sim-ci-pr_any-jammy-amd64/744/. |
🦟 Bug fix
Fixes #2347
Summary
The angular velocity was calculated using euler angles which led to singularities (see #2347 for a more detailed description). In addition to the fix, I also removed the usage of the rolling mean accumulator for angular velocity. While I see its usefulness for outlier rejections, I still didn't really see why this would be necessary. If the maintainers want to keep this mean accumulator, I'll be happy to reimplement it. Also the commit changes seem a bit messy, I was using clang format with the Google C++ Style guide as configuration, which leaded to the changed formatting that you can see in the pull request.
Checklist
codecheck
passed (See contributing)Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining
Signed-off-by
messages.