ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

transform tolerance

asked 2014-08-13 10:26:52 -0600

dreamcase gravatar image

hi, All,

I am getting TF transform error. my setup is two laser, one SICK LM100 for AMCL. one Hokuyo URG for local cost map. the move_base Local cost map is dropping packages and complains old data.

Transform [sender=/hokuyo_scan]
For frame [local_laser]: No transform to fixed frame [world]. TF error: [Lookup would require extrapolation into the future. Requested time 1407940054.418783996 but the latest data is at time 1407940054.271341707, when looking up transform from frame [local_laser] to frame [world]]

I found there's a transform_tolerance setting in costmap_2d package, and I believe it's been set more than enough >1.0s. the error still persists.

however, when I use either single laser for both purposes, there isn't such problem.

anyone share a light?

thanks.

ray

edit retag flag offensive close merge delete

Comments

Does this happen once or all the time?

dornhege gravatar image dornhege  ( 2014-08-13 10:45:04 -0600 )edit

2 Answers

Sort by ยป oldest newest most voted
0

answered 2014-08-13 11:00:25 -0600

paulbovbel gravatar image

The transform tolerance parameter in costmap_2d doesn't get used everywhere you'd expect. Try setting the transform tolerance in amcl instead, which post-dates the localization transform, making them valid slightly longer into the future. Just not 1 s, it should only need to be high enough to cover the lag in the system.

edit flag offensive delete link more
0

answered 2014-08-13 10:31:49 -0600

Chrissi gravatar image

updated 2014-08-13 10:32:48 -0600

Sometimes it takes a few milliseconds for a transform to become available. Maybe a listener.waitForTransform("/local_laser", "/world", laserscan.header.stamp, ros::Duration(3.0)); would help. Please have a look at the tf tutorial): "3. Wait for transforms".

If the error still persists, could you please post the code where you do the transform?

edit flag offensive delete link more

Comments

it's a call to an ROS node

<node pkg="tf" type="static_transform_publisher" name="local_laser_tf" args="0.85 0 0 0 0 0 base_link local_laser 50" />
dreamcase gravatar image dreamcase  ( 2014-08-13 12:35:46 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2014-08-13 10:26:52 -0600

Seen: 4,766 times

Last updated: Aug 13 '14