localization is not working properly when robot is rotating
Hi everyone,
I have problem with my robot's localization, whenever the robot is moving forward the localization is working fine and the laser scan is matching with the room boundaries(map) but when the robot is making a turn the laser scan starts drifting and the scan doesn't match with the room boundaries(map).
After rotating, if the robot moves forward for sometime then again it localizes and laser scan matches with the map.
I don't know what exactly is causing this problem. I am attaching the screenshots of the robot moving forward and rotating.
I am also attaching the video link below:
please check the video and help me with this problem.
I am using ros indigo, ubuntu 14.04 and sick lidar, If you need more information let me know
Thanks
Are you using laser scan matching for odometry?
No, I am using laser scan for amcl and robot_localization is using both laser scan and odometry for localization
It seems your robot odometry is nt so good. Have you tried these tests to verify quality of odom? Btw, these tests are independent of whether you are using amcl or not. http://wiki.ros.org/navigation/Troubl...
Thanks for the reply, I will try these tests and get back..
Thanks it helped. My robot odometry is not that good. Is there any other solution to improve in localization if i have another source like IMU, with the same odometry data?
because this odometry data is calibrated as much as possible and improving this may or may not improve the localization
Are you using amcl for localization? If so, you may consider increase the value of odom_alphas in amcl params. Increasing these values will make amcl does more correction to the laser map. Follow this think for more details: http://wiki.ros.org/amcl
If you are familiar with laser odom, you may consider using hector_slam ( http://wiki.ros.org/hector_slam ) so that you can obtain odom data independently from robot characteristics.