I am trying to use slam gmapping on a [robulab robot](http://www.robosoft.com/products/indoor-mobile-robots/robulab/robulab-10.html) with no success. One of the problems is that I have the laser topic working apparently fine (in RViz the points cloud changes as I move the robot), but when I run `static_transform_publisher` from `/base_link` to `/laser` it stop working (in RViz it looks frozen).
I run it like this:
1. Run robot's driver node
- Publishes: `/scan` ([laserScan](https://gist.github.com/pestefo/454e2fdf6ef01c7f891e)) and `/pose` ([poseStamped](https://gist.github.com/pestefo/14639da251cda6e92848))
- Subscribes: `/command_velocity`
1. Run odometry node: Basically consumes `/pose` and provides `/odom` ([Odometry](https://gist.github.com/pestefo/3877cbe3b86935f84df8)). I know there is a misconception here because the robot's driver node should provide `/odom` . I will fix, but I think the problem is not here.
1. Run slam gmapping like this:
rosrun gmapping slam_gmapping tf_static:=tf
At this point I get the following frames chain: `/map` -> `/odom` -> `/base_link` [as you can see here](https://dl.dropboxusercontent.com/u/6581127/frames_before_static.pdf) and this is the [node graph](https://dl.dropboxusercontent.com/u/6581127/rosgraph_before_static.png).
1. In RViz I check laser's points cloud by manually putting "laser" on fixed frame, and after added LaserScan display and I can see it and it get updated when I move the robot.
I also have this error on terminal running it:
`[ WARN] [1415365252.295826588]: MessageFilter [target=odom ]: Dropped 100.00% of messages so far. Please turn the [ros.gmapping.message_notifier] rosconsole logger to DEBUG for more information`.
1. In some blog posts I've seen that laser frame is published through a static transform through
rosrun tf static_transform_publisher 0 0 0 0 0 0 /base_link /laser 50.
1. Then, in RViz the image freezes even trying clicking "Reset" button. On the LaserScan section, in "Status" it appears this error:
`"Transform [sender=unknown_publisher] Message removed because it is too old (frame=[/laser],stamp=[1415289470.551291000])"`.
But also, in the terminal where I run RViz, this is warning message:
`[ WARN] [1415365456.608259629]: MessageFilter [target=map ]: The majority of dropped messages were due to messages growing older than the TF cache time. The last message's timestamp was: 1415361856,504979, and the last frame_id was: /odom`.
At this point this is the [node graph](https://dl.dropboxusercontent.com/u/6581127/rosgraph_after_static.png) and [frames](https://dl.dropboxusercontent.com/u/6581127/frames_after_tf.pdf).
1. Finally, when I kill the process of static_transform_publisher, it gets back to behaviour before.
What could be happening here?
↧