# gmapping simulation

Hello,

I'm trying to simulate a map useing turtlebot data. I've been able to build the map if the messages that I publis are tf and scan, but I don't want to record tf because gmaping publishes there.

Insted of this, I try to make the map from odom, scan and joint_states, the topics that only one node publishes on them and affects to gmapping. The thing is that I allways get the same problem:

WARN 1323440435.058256895: MessageFilter [target=/odom ]: Dropped 100.00% of messages so far. Please turn the [ros.gmapping.message_notifier] rosconsole logger to DEBUG for more information.

WARN 1323440435.059003292: MessageFilter [target=/odom ]: The majority of dropped messages were due to messages growing older than the TF cache time. The last message's timestamp was: 1323433160.494893, and the last frame_id was: /kinect_depth_frame

What do you think I could do? It is obvious that has something to do with the time of ros. Is there any option to record the time when recording the data and then play back the time also?

Thanks.

edit retag close merge delete

Sort by » oldest newest most voted

http://www.ros.org/wiki/Clock

I think that part of the solution must be arround that. I'll try!

more

I'm not sure that I completely understand your use case. But here's something that might be useful: you can selectively filter messages from a .bag. E.g., to get all the non-tf messages, plus only those tf messages that encode a particular transform:

rosbag filter in.bag out.bag 'topic != "tf" or m.transforms[0].header.frame_id == "odom_combined" and m.transforms[0].child_frame_id == "base_footprint"'


I often do something like this to remove the map->odom transform from a bag so that I can test amcl or gmapping.

more

Sorry Brian, I saw now that the WARN messages had not been published.
( 2011-12-11 20:32:15 -0500 )edit

I also suggest to use rxconsole for debugging and set the loggers to "DEBUG" (like the error-message suggested). This really helped me a lot in such cases:

http://www.ros.org/wiki/rxconsole

more