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

Is there an example of robot_localization with amcl on turtlebot?

asked 2015-12-09 17:35:49 -0600

mkhansen gravatar image

updated 2015-12-09 19:36:07 -0600

I'm trying to get the ekf_localization node working on the turtlebot without adding any sensors, and I'm having problems. I am wondering if this is something that someone has already done and has existing launch files for? The real work I want to do is add more sensors to it but I can't even get fusion of the /odom and /amcl_pose to work. If someone can point me to an example it would help greatly.

As an addition - I suspect my problem has to do with the fact the kobuki base defines a 'base_footprint' which is a parent of 'base_link', and robot_state_publisher publishes odom->base_footprint->base_link while ekf_localization expects a direct odom->base_link transform.

roswtf gives me these errors:

ERROR TF re-parenting contention:

  • reparenting of [base_link] to [base_footprint] by [/robot_state_publisher]
  • reparenting of [base_link] to [odom] by [/ekf_localization]

ERROR TF multiple authority contention:

  • node [/robot_state_publisher] publishing transform [base_link] with parent [base_footprint] already published by node [/ekf_localization]
  • node [/ekf_localization] publishing transform [base_link] with parent [odom] already published by node [/robot_state_publisher]
edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2015-12-16 19:34:08 -0600

Tom Moore gravatar image

I don't think robot_state_publisher is publishing the odom->base_footprint transform. That is likely being done by the Kobuki driver. A quick look at the source code shows that it's publishing that transform. There appears to be a publish_tf setting that lets you turn off broadcast of the odom->base_footprint transform. Set that to false, then make sure your world_frame is set to odom for ekf_localization_node and your base_link_frame is set to base_footprint. tf represents its transforms as a tree, so you can't have more than one parent for a given frame. You also don't want multiple nodes publishing the same transform.

edit flag offensive delete link more


Thanks Tom, this seems to have solved that problem, when I run roswtf those errors are now gone. However as soon as I move the robot I get this error --

mkhansen gravatar image mkhansen  ( 2015-12-18 12:52:40 -0600 )edit

Error: TF_NAN_INPUT: Ignoring transform for child_frame_id "base_footprint" from authority "unknown_publisher" because of a nan value in the transform (-nan -nan -nan) (-nan -nan -nan -nan)

mkhansen gravatar image mkhansen  ( 2015-12-18 12:53:33 -0600 )edit

So going back to my original question, do you have an example of ekf_localization working with Turtlebot?

mkhansen gravatar image mkhansen  ( 2015-12-18 12:54:18 -0600 )edit

I do not, no. I've never used a Turtlebot. NAN transform issues tend to mean you've got a bad covariance matrix specified either for your input data or within the parameters for the EKF.

Tom Moore gravatar image Tom Moore  ( 2015-12-23 07:35:06 -0600 )edit

Do you have any working examples of using it with AMCL? If so, that may help me to debug my issue.

mkhansen gravatar image mkhansen  ( 2015-12-23 12:12:06 -0600 )edit

I'm afraid I don't, no, though I know others have done it.

Tom Moore gravatar image Tom Moore  ( 2015-12-28 07:32:41 -0600 )edit

Hi mkhansen, Tom Moore, I have a same question now for my project,and would like to know any update here, since time past quite a lot now. Is there any example of robot_localization package working with Turtlebot and AMCL? Thank you in advance.

yunp gravatar image yunp  ( 2017-05-05 15:12:09 -0600 )edit

I don't have one, but if someone were to put something like that together, I would include it in the package as a sample config file.

Tom Moore gravatar image Tom Moore  ( 2017-08-01 03:15:46 -0600 )edit

answered 2016-03-14 23:11:19 -0600

asimay_y gravatar image

can you update this issue? Thanks!

edit flag offensive delete link more

Question Tools



Asked: 2015-12-09 17:35:49 -0600

Seen: 1,787 times

Last updated: Mar 14 '16