[ros-users] Flushing / resetting the TF buffer

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Armin Hornung
Date:  
To: ros-users
Subject: [ros-users] Flushing / resetting the TF buffer
Hi!

Is there a way to flush or reset the TF buffer, i.e. clearing all
transformations currently stored?

A little background: I am using a method similar to the one in the
"amcl" node to overcome the limitations from the tree-structure of TF.
The robot model and all transformations to joints and sensors are in an
"odom" frame, so when running localization I publish a transformation of
the odometry frame in the map frame that results in the robot's
base_frame ending up in the localized pose. To avoid timeouts I use the
hack / workaround from the "amcl"-node and publish the tf to "odom" a
little in the future. Now, when localizing from bag files (all times are
with respect to the originally recorded data) it seems like coordinate
frames are jumping back and forth sometimes, which I think results from
TFs still being in the buffer from a previous run (through the same or a
different log file). When there is a way of clearing the TF buffer, that
would help when being called at the start of localization, without the
need of restarting roscore.

Cheers,
Armin

-- 
Armin Hornung                              Albert-Ludwigs-Universität
www.informatik.uni-freiburg.de/~hornunga   Dept. of Computer Science
        Humanoid Robots Lab
Tel.: +49 (0)761-203-8010                  Georges-Köhler-Allee 79
Fax : +49 (0)761-203-8007                  D-79110 Freiburg, Germany