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

Revision history [back]

click to hide/show revision 1
initial version

answered 2013-02-22 15:37:19 -0500

joq gravatar image

What transforms are you getting?

$ rosrun tf tf_monitor

Stage should be providing transforms to the /odom frame.

Can rviz display them in /odom?

click to hide/show revision 2
suggest additional transforms

What transforms are you getting?

$ rosrun tf tf_monitor

Stage should be providing transforms to the /odom frame.

Can rviz display them in /odom?

EDIT: I see stage is providing separate /robot_N/odom frames. That is actually reasonable, since neither is presumed to be exact.

If you wish to display them as if the odom frames were ground truth, you can define static transforms from /map to /robot_N/odom:

$ rosrun tf static_transform_publisher 0 0 0 0 0 0 /map /robot_0/odom 1000
$ rosrun tf static_transform_publisher 0 0 0 0 0 0 /map /robot_1/odom 1000

That is not really correct, since there should be a certain amount of noise added to your simulated odometry. But it should work well enough for viewing in the /map frame.

A more accurate solution would involve writing your own transform broadcaster that subscribes to the stage base_pose_ground_truth topic, broadcasting the exact pose in some convenient frame of reference. That may be tricky to get working.