ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

How AMCL get encoder information

asked 2016-11-20 19:29:04 -0500

MINGLIBRIAN gravatar image


I am working on AMCL recently. I am wondering how amcl receives odometry information from encoder. From the wiki, I found that amcl receives transform between odom and base_link. Is it the way to receive odometry information from encoder? So is there other node broadcast tf between odom and base_link?


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2016-11-20 21:07:10 -0500

ahendrix gravatar image

Yes. AMCL gets odometry information from the TF transform from odom to base_link.

This transform usually comes from some hardware on your robot, so the node that publishes the transform is specific to each robot. There's a navigation Odometry tutorial which describes how to publish the odometry transform from your encoder values.

edit flag offensive delete link more


Thank you so much. If I understand correctly, the transform between odom and base_link broadcasted by some hardware should be varying as robot moves, right? And I saw that the parent frame of base_link is not odom but base_footprint, so what is the difference between the two frames? Thank you again!

MINGLIBRIAN gravatar image MINGLIBRIAN  ( 2016-11-22 19:17:51 -0500 )edit

Some robots use different frame names, or they'll have intermediate frames between odom and base_link. In that case the hardware usually publishes the transform between odom and its direct child frame (in this case base_footprint).

ahendrix gravatar image ahendrix  ( 2016-11-23 11:50:36 -0500 )edit

Question Tools


Asked: 2016-11-20 19:29:04 -0500

Seen: 213 times

Last updated: Nov 20 '16