Hitesh, > From the wiki, the robot is using a front-x, left-y coordinate convention. > In rviz upon start, my robot faces in the front direction as the laser scan > data is towards the forward direction. But when I give a goal, for example x > = 1, y = 0 to frame base_link using simple_navigation_goals, which means it > should move forward 1m, it is displayed 1m to the right of the robot on the > odom (world) frame in rviz. In order to move the robot 1m forward, I have to > give a y = 1, x = 0 goal. It seems the odom frame is following a x-right, > y-front coordinate system. > Is there a 90 degrees rotation between the two frames? This means that all > velocities and distances reported by odometry have to be rotated 90 degrees > clockwise? Or am I doing something wrong? The odom frame is attached to the world. So as the robot drives around, it is going to be in a different position/orientation relative to the odom frame. On startup it just happens to be that the robot is turned 90 degrees relative to the odom frame, but this angle will change as the robot moves around. The navigation goals you send to the robot are specified in the odom frame. So you tell the robot where to go in absolute world coordinates. It sounds like you want to command the robot in relative coordinates (move 1 meter forward from where ever the robot is right now). To do that, you have to convert the relative goals in absolute coordinates. Tf can help you do this. Hope this helps, Wim -- -- Wim Meeussen Willow Garage Inc.