How does Gazebo (1.0) derive the tf (transform) tree

asked 2013-07-29 04:41:07 -0600

Nevik gravatar image

When used in conjunction with ROS, Gazebo naturally makes use of the tf package to transform between different local coordinate systems ("poses"?). To this end, it somehow derives a tf frame tree from the model's link structure (as described in the URDF/SDF file).

How does it do this?

I am asking because I'm having trouble with certain tf prefixes, and using a ROS-like name (like /commonprefix/specific_base_link) for the base-link of the model does not work (the /commonprefix part is ignored).

This is especially a problem since I use multple robot instances in one simulation -- the plugins for which I didn't write myself (I use a slightly modified TUM Simulator which in turn is based on the TU Darmstadt Hector packages). For certain visualizations in RViz, I need a common root frame -- which I can't seem to achieve, since Gazebo derives the frame tree for the robot models itself, without being told how in any of the description (URDF) files I've found so far.

A note on my environment: Ubuntu 12.04 with ROS fuerte and its builtin/packaged Gazebo 1.0.2. I know this Gazebo is REALLY old, but the mentioned packages only properly work with this version combination for now, and I do not have the time to update it all to Hydro+1.9, since the alterations are rather significant.

edit retag flag offensive close merge delete


I'm currently trying to work with multiple instances of quadrotors too (ardrone and hector). I was able to port every thing to groovy/Gazebo1.9, but I'm having trouble with spawning mutiple instances too... Could you post your current TF-tree somewhere? ( rosrun tf view_frames )

Could you describe the behaviour of your quads in detail maybe we have the same Problem... When I start a 2nd Quad 1st crashes and 2nd flies with higher speed... maybe we can help each other ;)

evilBiber gravatar imageevilBiber ( 2013-07-29 07:25:05 -0600 )edit

@evilBiber, I have found out more about the transforms and topics, and will add more details to my question and probably post an answer later. But I'm very much interested in your port to groovy+1.9 (especially if you converted it all to a catkin workspace). Please drop me an email (just added my address to my profile), and we can discuss this further.

Nevik gravatar imageNevik ( 2013-07-29 07:46:56 -0600 )edit

@Nevik I have not created a catkin_package right now... But as soon as I have tested everything successfully I will create one and It will probably be published somewhere ;)

evilBiber gravatar imageevilBiber ( 2013-07-29 08:04:17 -0600 )edit