Ask Your Question
1

Costmap2DROS transform timeout

asked 2015-08-05 06:51:07 -0500

Mehdi. gravatar image

updated 2015-08-05 08:49:31 -0500

I am trying to run amcl, move_base and map_server on my robot. Everything starts fine but after I get "Odom received" warning messages start to show up:

Costmap2DROS transform timeout. Current time: 1438775060.1538, global_pose stamp: 1438775056.1344, tolerance: 0.3000

and

[ WARN] [1438775074.022202129]: MessageFilter [target=map base_laser_link ]: Dropped 100.00% of messages so far. Please turn the [ros.costmap_2d.message_notifier] rosconsole logger to DEBUG for more information.

They come from the Costmap2D plugin. I runned tf_monitor and I got:

RESULTS: for all Frames

Frames:
Frame: /base_footprint published by unknown_publisher Average Delay: -0.0456822 Max Delay: 0.10752
Frame: base_front_laser_link published by unknown_publisher Average Delay: -0.545968 Max Delay: 0
Frame: base_link published by unknown_publisher Average Delay: -0.545971 Max Delay: 0
Frame: base_rear_laser_link published by unknown_publisher Average Delay: -0.545966 Max Delay: 0
Frame: odom published by unknown_publisher Average Delay: -0.108352 Max Delay: 0.0916446

All Broadcasters:
Node: unknown_publisher 82.2074 Hz, Average Delay: -0.360456 Max Delay: 0.10752

What could be the problem causing the timeout?

When viewing the frames, I see that robot_state_publisher publishes with 50 Hz but somehow all published links have a delay of -0.5 seconds, which cannot be possible!

image description

I kept looking at it in real time with tf_monitor and the time of the most recent transform from robot_state_publisher is -0.5 for some time, then it jumps to +0.5. This is very confusing.

I kept tf_monitor running for few minutes and it seems like the delays are increasing:

RESULTS: for all Frames

Frames:
Frame: /base_footprint published by unknown_publisher Average Delay: 2.57823 Max Delay: 17.9659
Frame: base_front_laser_link published by unknown_publisher Average Delay: -0.408636 Max Delay: 0.626485
Frame: base_link published by unknown_publisher Average Delay: -0.40864 Max Delay: 0.626482
Frame: base_rear_laser_link published by unknown_publisher Average Delay: -0.408634 Max Delay: 0.626486
Frame: odom published by unknown_publisher Average Delay: 3.65717 Max Delay: 16.6323

All Broadcasters:
Node: unknown_publisher 82.0346 Hz, Average Delay: -0.124652 Max Delay: 1.20379
edit retag flag offensive close merge delete

Comments

1

Did you solve it?how to solve this(Costmap2DROS transform timeout. Current time: 1438775060.1538, global_pose stamp: 1438775056.1344, tolerance: 0.3000). thank you

anna_26 gravatar imageanna_26 ( 2015-10-01 09:12:16 -0500 )edit

3 Answers

Sort by ยป oldest newest most voted
1

answered 2015-10-14 06:31:24 -0500

Mehdi. gravatar image

You can change the tolerance of the tf listener when you declare it, for example for a tolerance of 10 seconds just do self.tf_listener = tf.TransformListener(10) but this is just for debugging and is not a good idea for long term use.

edit flag offensive delete link more
0

answered 2019-06-09 05:57:33 -0500

There is a related question (duplicate?) here, will post same answer in both.

In our case it was a performance issue, the computer was not strong enough to manage the load. I changed rviz configuration to prevent pointcloud visualisation, laserscanner vis, and furthermore I was having a process consuming 100% CPU (a node which was not sleeping while spinning). After those fixes, now everything is back to normal.

edit flag offensive delete link more
0

answered 2016-11-03 06:00:14 -0500

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2015-08-05 06:51:07 -0500

Seen: 7,099 times

Last updated: Jun 09