When should I send geometric information over a topic as opposed to TF?
Please help in writing up a ROS best practice.
ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
Please help in writing up a ROS best practice.
Some cases when tf is less suitable:
Suitable for: Robot joints, links, Sensor coordinate frames, and any other coordinate system that is going to be used as reference.
Not suitable for: Very noisy data.
Also consider: Using a topic rather than tf means you can more easily record / replay the data with rosbag/rxbag, as well as transfer the data between multiple robots.
In my experience, I find tf useful for real-time, single-estimation data; this breaks down when you want one to apply a correction to a geometric relationship in the past (like when a loop closure occurs during SLAM, and you want to use this new information to update the entire robot's path history), or when you have a couple things estimating the same transform (like odometry and laser scan matching, or two robots looking at the same thing). There are some ways to make tf do what you want in these cases, but they don't exhibit the same simplicity and elegance that tf shows for the real-time, single-estimation case.
Multi-robot tf over wifi, as others mentioned, won't work like you want it to out of the box. But a fairly lightweight fix is to use multiple /tf topics, say /robot_model_bandwidth_hog/tf and /i_wanna_communicate_these_few_transforms_to_other_robots/tf
If you for example just want to monitor the estimated position of an autonomous robot, using tf can mean significant overhead. Tf can easily consume bandwidth in the order of hundreds of kB/s, which can choke up connections in constrained scenarios (like RoboCup, where you have thousands of people/hundreds of teams/1-2 dozen leagues competing for Wi-Fi). An optional lower update rate tf topic for displaying the robot model in rviz for example could make sense for such situations.
Asked: 2011-11-07 11:39:44 -0600
Seen: 816 times
Last updated: Dec 16 '11