[ros-users] navigation stack bare minimums

Tully Foote tfoote at willowgarage.com
Fri Jun 4 17:21:45 UTC 2010


Hi Mike,


On Fri, Jun 4, 2010 at 9:49 AM, Mike Purvis
<mpurvis at clearpathrobotics.com>wrote:

>  As far as required transforms goes, you really ought to be publishing
>>
>  transforms for the different frames. You could use the
>> static_transform_publisher node to publish a static transform, but the
>> transform from base_link to odom is not static, so you will need to
>> broadcast that transform yourself.Another option is to use one of the
>> existing simulators (stage and gazebo) that hook into ROS, which
>> broadcast all the transforms you should need.
>
>
> The documentation I've been following for this process is at
> navigation/Tutorials/RobotSetup/TF, which just speaks about setting up a
> transform between base_link and a sub-part (laser scanner). Is there
> somewhere else I need to be looking for information about the base_link ->
> odom and base_link -> map transforms? What do these transforms represent,
> and what's the relationship between them and the information that's already
> in my odom topic?
>

There's a tutorial on odometry here
http://www.ros.org/wiki/navigation/Tutorials/RobotSetup/Odom


> If I make the base_link not be on-board the robot, are there ways that it's
> going to bite me later if/when I do end up adding a map, or if I'm trying to
> set up a multi-robot system?
>

There are no special values of frame ids.  You can use any frame_id for
anything as long as your system is consistent.   However, we do try to use
standard frame_ids such that nodes can have useful default values.  In
general you will want a frame attached the the world/inertial frame if you
want to persist any observed obstacles or landmarks.

Also depending on your application I would expect that you will want to
maintain both of what we call a map frame and odom frame.  The difference
between these frames is that the odom frame is locally consistent but can
drift away from global accuracy.   It is used for short term
planning/control.  But long term planning is done in the map frame and our
localization node estimates the amount of drift accumulated between the odom
and map frame.


> Sorry for the barrage of questions, but I really appreciate your
> assistance. I'm trying to do my best document things as I discover them, to
> help out future newbies.
>
> Mike
>
> Not a problem, questions here can help others too.  And thank you for
helping fill in the documentation.  It's great to get fresh eyes to make
sure we're not skipping things which are implicitly needed.

Tully


-- 
Tully Foote
Systems Engineer
Willow Garage, Inc.
tfoote at willowgarage.com
(650) 475-2827
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20100604/2e0642e0/attachment-0003.html>


More information about the ros-users mailing list