Amcl:No laser scan received
Hello,
I'm using ROS Noetic on ubuntu 20.04 on an HP laptop. I made my own robot, and now I want to use ROS navigation stack to get it to move around autonomously.
I'm running the Gazebo simulator. Then I run move_base and amcl. However, I am getting the following warnings.
My Warinng :
[/r5/amcl]: No laser scan received (and thus no pose updates have been published) for 373.337000 seconds. Verify that data is being published on the /r5/scan_filtered topic.
Update:
[/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.101 timeout was 0.1.
[/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.101 timeout was 0.1.
[/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.104 timeout was 0.1.
[/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.1 timeout was 0.1.
[/r5/move_base]: Timed out waiting for transform f
Asked by salih on 2021-05-16 09:45:40 UTC
Answers
When your warning messages refer to a "transform" they are referring to /tf
topic messages.
It sounds like you need a "static transform publisher" to tell ROS Noetic about the relationship between base_footprint
and map
. More specifically, it wants to know how these things relate to each other. Is the laser scanner 5cm above the centerpoint of the robot, or 10mm to the right?
This should have all you need to get started: ROS.org, "tf, static_transform_publisher"
I had a similar problem, and simply adding a few static transform publishers to my launch file got everything working.
Good luck!
Asked by Spectre on 2021-05-16 21:53:15 UTC
Comments
You need to publish r5/base_footprint -> r5/map
transform on thetf
tree. You might consider using the gmapping package to achieve the same.
Asked by skpro19 on 2021-05-17 11:28:35 UTC
Comments
Solution: The frame_id of the outgoing laser message did not match. Move_base, unable to receive the laser message, takes this inconvenience.
Asked by salih on 2021-05-18 03:44:36 UTC
Comments
Could you please copy-paste the actual warning text as well? For some reasons, I am not able to see the image.
Asked by skpro19 on 2021-05-16 10:47:03 UTC
[/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.101 timeout was 0.1. [/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.101 timeout was 0.1. [/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.104 timeout was 0.1. [/r5/move_base]: Timed out waiting for transform from r5/base_footprint to r5/map to become available before running costmap, tf error: canTransform: target_frame r5/map does not exist.. canTransform returned after 0.1 timeout was 0.1. [/r5/move_base]: Timed out waiting for transform f
Asked by salih on 2021-05-16 10:51:54 UTC
You should pay close attention to parameters of the amcl, in especially:
[http://wiki.ros.org/amcl]
If these parameters are good you should check move_base configuration
Asked by abrzozowski on 2021-05-17 16:05:29 UTC