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

Amcl initialpose coordinate system

asked 2012-06-12 12:15:34 -0500

ZeroCool gravatar image

updated 2012-06-13 00:40:29 -0500

I'm still in the process of learning ros and i have a question regarding the initialpose topic. I'm transforming points from the kinect pcl to map coordinates (for sending goals) and using initalpose orientation to known which way is forward in a map. The problem is that when i get orientation with values: x,y,z = 0,0,-1. Why is z set and not x? Isn't the z axis the axis pointing up?

Thanks.

edit retag flag offensive close merge delete

Comments

/initialpose is not published by amcl, but subscribed to. Could you explain how you are using it? It is typically used to give an initial estimate of the robot's position to the localization algorithm.

piyushk gravatar image piyushk  ( 2012-06-12 14:14:33 -0500 )edit

Sounds like your transform from the kinect frame to /map is wrong. The /map frame of reference should be East, North, Up.

joq gravatar image joq  ( 2012-06-12 14:20:56 -0500 )edit

There was a typo. I meant orientation from initialpose topic. I subscribe to /initialpose and output the pose.orientation and the values are 0,0,-1. Im using it only to know which way is forward in the map so for example if i detect a obstacle i know which way the robot should go to move around the

ZeroCool gravatar image ZeroCool  ( 2012-06-13 00:39:20 -0500 )edit

obstacle (where the obstacle size is known).

ZeroCool gravatar image ZeroCool  ( 2012-06-13 00:39:56 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2012-06-13 15:30:12 -0500

weiin gravatar image

Saw your other question, and I think you are misunderstanding the orientation values. This is the format of /initialPose: http://www.ros.org/doc/api/geometry_msgs/html/msg/PoseWithCovarianceStamped.html

The orientation is a quarternion, so it comes with x, y, z, w (The individual values do not represent rotation about that axis eg value of x does not mean rotation about x-axis).

You will need to do a conversion if you need roll, pitch, yaw (rotations about x, y, z axis respectively).

edit flag offensive delete link more

Question Tools

Stats

Asked: 2012-06-12 12:15:34 -0500

Seen: 934 times

Last updated: Jun 13 '12