On Wed, Oct 27, 2010 at 10:01 AM, Wim Meeussen <meeussen@willowgarage.com> wrote:
>> map_GPS->base_link
>> map_INS->base_link
>> map_SLAM->base_link
>> odometry->base_link
[...]
>> We want to be able to easily switch between how the world looks in each of
>> these frames by simply selecting any of the map_* frames as the fixed
>> frame
>> in rviz and in other nodes.
>>
>> It seems that tf doesn't let you have a set-up like this with multiple
>> roots. Any suggestions on how we should re-cast our problem to fit into
>> the
>> tf framework?
>>
>
> The directionality of a tf edge doesn't actually matter for most things.  So
> one solution would be to just have all those map frames be children of
> base_link, or of odometry (which would allow the transforms to be published
> less often assuming odometry drifts fairly slowly).
> - Bhaskara

Inverting the parent-child relationship of your frames will work for a
mobile base, but this will make impossible to reuse your code on many
other robots.  Most robots have multiple tf frames that branch out
from the base_link, going to different sensors, arms, etc.

I'd suggest to publish all of your transforms (map_GPS->base_link,
map_INS->base_link, map_SLAM->base_link, etc) on normal ROS topics
instead of on tf. Then, have one node receive all these transforms
from the topics, do the arbitration/merging, and publish the final
result to tf. In that way your tf tree can still look like map -->
odom_combined --> base_footprint, and your code will be much more
reusable and extendable.

Wim


Are there any specific things that would break if a bunch of extra frames were published as children of odometry (in addition to the fused map frame as its parent)?  Having things be in the tf tree can make debugging and visualization easier.
- Bhaskara

 
--
--
Wim Meeussen
Willow Garage Inc.
<http://www.willowgarage.com)
_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users



--
Bhaskara Marthi
Research Scientist
Willow Garage Inc.
650-475-2856