Skip to content
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

[OdometryPublisher] Include Gaussian noise in pose messages #2668

Open
pariaspe opened this issue Nov 7, 2024 · 0 comments
Open

[OdometryPublisher] Include Gaussian noise in pose messages #2668

pariaspe opened this issue Nov 7, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@pariaspe
Copy link

pariaspe commented Nov 7, 2024

Desired behavior

Following the odometry publisher plugin description, both pose and twist messages should be noisy but only the twist has noise. (Notice the blue point in the graph corresponding the model pose).

odometry_publisher

Alternatives considered

Checking the source code, pose in odometry message is built directly getting the model pose in world:

// Get and set robotBaseFrame to odom transformation.
//! [worldPose]
const math::Pose3d rawPose = worldPose(this->model.Entity(), _ecm);
//! [worldPose]
//! [setPoseMsg]
math::Pose3d pose = rawPose * this->offset;
msg.mutable_pose()->mutable_position()->set_x(pose.Pos().X());
msg.mutable_pose()->mutable_position()->set_y(pose.Pos().Y());
msgs::Set(msg.mutable_pose()->mutable_orientation(), pose.Rot());

Implementation suggestion

I guess the better way to do it to integrate noisy velocity to get pose with some drift.

Additional context

I used Gazebo Sim, version 8.3.0, installed by binaries. But, I copied OdometryPublisher from gz-sim9 branch and compiled it manually.

@pariaspe pariaspe added the enhancement New feature or request label Nov 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Inbox
Development

No branches or pull requests

1 participant