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

pose of odom frame chainging in navigation

asked 2021-09-07 01:41:33 -0500

dinesh gravatar image

When i run the navigation stack i saw that map link is fixed on given map but the odom frame is changing dynamically when robot moves. Considering that odom frame is the initial position from which robot started to move, shouldn't this be also fixed w.r.t given map frame?

edit retag flag offensive close merge delete

Comments

Considering that odom frame is the initial position from which robot started to move

no, that's not entirely correct.

It's the current estimate of your robot's pose in the map frame.

So only at the very beginning will it correspond to "the initial position". Soon, due to drift, and inaccuracies in pose estimation, it will start to diverge from that position.

gvdhoorn gravatar image gvdhoorn  ( 2021-09-07 02:24:53 -0500 )edit

@gvdhoorn In your 2nd sentence, what is It's a reference to?

Mike Scheutzow gravatar image Mike Scheutzow  ( 2021-09-07 15:43:53 -0500 )edit

The odom frame (and that sentence is a bit of an interpretation of course, but I believe it's correct in the context the OP described (ie: right at the start)).

Related Q&As: #q222567, #q237295, #q37029 and #q260930.

gvdhoorn gravatar image gvdhoorn  ( 2021-09-08 02:33:11 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2021-09-08 08:06:44 -0500

Mike Scheutzow gravatar image

updated 2021-09-08 08:08:17 -0500

In most ros systems, the origin of the odom frame is not fixed. An algorithm like AMCL corrects for odometry drift by periodically recalculating the map->odom transform. This has the effect of moving the origin of the odom frame relative to the map frame.

edit flag offensive delete link more

Comments

I have some doubt. Due to the drift from wheel encoders it should be effecting the position of base_link w.r.t odom frame right? Instead odom frame moving itself, since this frame i.e initial position of robot should be fixed in given map from where it started moving?

dinesh gravatar image dinesh  ( 2021-09-09 04:03:32 -0500 )edit

My answer describes how drift correction is often done. The non-intuitive part of this algorithm is that you do not try to correct the odom->base_link transform itself; instead the algorithm changes map->odom transform.

Mike Scheutzow gravatar image Mike Scheutzow  ( 2021-09-09 07:25:20 -0500 )edit

Ok. thanks for this informatin.

dinesh gravatar image dinesh  ( 2021-09-10 03:36:19 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2021-09-07 01:41:33 -0500

Seen: 618 times

Last updated: Sep 08 '21