What is the pose of the robot when move_base and amcl starts?

asked 2019-11-07 00:28:07 -0600

parzival gravatar image

updated 2019-11-07 00:30:26 -0600

I can't find information on the pose of the robot when the amcl and move_base packages are started. Is the robot at 0,0,0 with orientation 0? Or is it something else?

Basically here's what I want to accomplish: I place the robot in real world in a known environment, start move_base and depending packages, and then find its pose and detect a corner and its coordinates and drive it there. And for that I want to know the robot's position in the beginning and at any given time. What should be the procedure?

edit retag flag offensive close merge delete


You can look at the topic published by amcl, amcl_pose, that should tell you your robot's pose at any instant.

Choco93 gravatar imageChoco93 ( 2019-11-07 01:46:01 -0600 )edit

I'm just using RPLidar A1 for sensing, and using it with laser_scan_matcher to get odom

parzival gravatar imageparzival ( 2019-11-07 03:35:01 -0600 )edit

@Choco93, I observe that amcl_pose doesn't update till I give a nav goal, and the seq stays at 0 till then. Is that an intended behaviour?

parzival gravatar imageparzival ( 2019-11-07 03:44:03 -0600 )edit

When you launch amcl, your pose (in odom) should be all zeros unless you provide some pose values. But to check your pose at any instant you need to subscribe to amcl_pose. If you want to get to some point you just give that as a goal and move_base should get you there if it is physically possible to go there.

Choco93 gravatar imageChoco93 ( 2019-11-07 04:04:30 -0600 )edit

@Choco93 can /odom be used instead of /amcl_pose? I'm having issues with frequency

parzival gravatar imageparzival ( 2019-11-07 04:06:32 -0600 )edit

If you have an odom topic then yes, it should be used

Choco93 gravatar imageChoco93 ( 2019-11-07 04:57:20 -0600 )edit