Hi Mike,


On Fri, Jun 4, 2010 at 9:49 AM, Mike Purvis <mpurvis@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@willowgarage.com
(650) 475-2827