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

AMCL works intermitently?

asked 2013-03-13 12:40:47 -0600

mculp42 gravatar image

updated 2013-03-18 07:50:14 -0600

So I've been trying to get AMCL to work on my ad-hoc network using the amcl_demo.launch. I've tried and can successfully run AMCL every time I attempt it with a wired connection. With the ad-hoc network though, it fails a majority of the time resulting in

[  INFO] [#]: Subscribed to Topics: scan
[  INFO] [#]: Requesting the map...

[  INFO] [#]: Still waiting on map...

[  INFO] [#]: Still waiting on map...

[  WARN] [#]: You have set map parameters, but also requested to use the static map. Your parameters will be overwritten by those given by the map server
[  INFO] [#]: Received a 544 x 512 map at 0.050000 m/pix

[  WARN] [#]: Waiting on transform from /base_link to /map to become available before running costmap, tf error:
[  WARN] [#]: Waiting on transform from /base_link to /map to become available before running costmap, tf error:
[  WARN] [#]: Waiting on transform from /base_link to /map to become available before running costmap, tf error:

At first I thought this might be a bandwidth issue. But when I looked at the consumption it was ~1.5Mb/s for the peek. And when AMCL has successfully run on the ad-hoc network, there didn't seem to be much issues with sending it navigation goals and controlling it via teleoperation keyboard. I do remember there being lots of warnings and errors with the successful runs, but because it doesn't work that often, I can't replicate their messages to report them. What is possibly going wrong with my network or ROS, such that amcl_demo.launch works only on a rare occasion?

Upon further investigation with tf_monitor, I've noticed that I get a large delay in /base_footprint to /odom until the map is received. The delay is on the order of 20s. I also noticed that there are delays in the nodes /robot_pose_ekf and /robot_state_publisher that are more consistent across the runtime that are around 5s and 1s, respectively.

I also tried to pay attention to the CPU usage. At the beginning of running launch file, the CPU usage is around 90%, but once all the processes have begun, it tappers off.

When I run gmapping_demo.launch, I don't have nearly as many problems.

UPDATE: Just in retesting with a LAN connection, I've come across the same problem. It just doesn't occur that often.

Side Note: The TurtleBot does have an odd behavior not being able to move forward smoothly, whereas all other directions can move smoothly.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2013-03-19 12:18:26 -0600

mculp42 gravatar image

After talking to Bill Morris from iheartrobotics, I changed my setup a bit. He suggested that it may be a problem with node priorities or nodelet managers miscommunicating since I had roscore running on a different computer than the TurtleBot. Instead of having a master node that runs ROS, I made it so the TurtleBot laptop was running ROS itself. With that, it has consistently run without the costmap errors. For the most part it runs smoother with commands. Now rviz and viewing the map in real time is slow, but that's alright.

edit flag offensive delete link more

answered 2013-03-13 15:07:15 -0600

Chik gravatar image

updated 2013-03-13 15:20:38 -0600

Possible causes:

(1) if the ad-hoc network automatically obtains IP address, it may get another IP address which is different from the ROS_MASTER_URI that you previously set;

(2) perhaps the wireless signal is weak or unstable, so you need to place a wifi antenna nearby;

(3) perhaps the slam map is not properly saved, so check the path of the map file.

edit flag offensive delete link more


(1) is not the issue, cause the IP addresses are static and set by me. (3) doesn't seem that likely since I can use the same map with a wired connection. For (2), the wireless does seem to be stable enough for me to do nearly everything else. I've even been able to work with rviz for other tasks.

mculp42 gravatar image mculp42  ( 2013-03-14 06:52:34 -0600 )edit

(a) Are you using TurtleBot or what robot? (b) When you bringup the camera do you also need to try like 10 times before success (other times would be No devices detected... waiting for connection)? (c) gmapping_demo runs normally with wireless, just acml does not work?

Chik gravatar image Chik  ( 2013-03-14 14:56:05 -0600 )edit

I am using a TurtleBot. Bringing up the camera with 3dsensors.launch goes smoothly. And both gmapping and amcl bring up the camera smoothly as well. amcl is the only one that works intermittently.

mculp42 gravatar image mculp42  ( 2013-03-18 07:51:54 -0600 )edit

I see... hmmm... I don't know...

Chik gravatar image Chik  ( 2013-03-18 19:09:37 -0600 )edit

Question Tools


Asked: 2013-03-13 12:40:47 -0600

Seen: 790 times

Last updated: Mar 19 '13