Ask Your Question

Correct child_frame_id for Odometry

asked 2022-03-24 11:47:03 -0500

iangillespie gravatar image

I have a physical, two wheel drive differential robot which has the following links setup in a URDF file:

base_footprint -> base_link -> then several other links attached to base_link (e.g. right_wheel, left_wheel, lidar_link, imu and camera_link)

I'm using ROS2 Galactic and I can visualize the robot just fine in Rviz2.

I wrote my own differential drive node that reads encoded "ticks" from the wheels and publishes three messages: nav_msgs::msg::Odometry
geometry_msgs::msg::TransformStamped sensor_msgs::msg::JointState

The nav and geometry messages are currently setting the child frame to "base_link". Is this correct? Or should it be "base_footprint" since that is the root of my robot's frames.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2022-03-25 11:52:22 -0500

iangillespie gravatar image

Based on some other conversations and research, I believe the answer tis this:

If your TF has a base_footprint then the Odometry messages should have base_footprint as the child frame id.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools



Asked: 2022-03-24 11:47:03 -0500

Seen: 63 times

Last updated: Mar 25