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

Revision history [back]

click to hide/show revision 1
initial version

Two ways to improve this are by tuning your odometry and limit the speed while mapping.

Errors in the odom can be transferred into errors in the map so do your best to make sure that tuning for odom accurately captures encoder counts vs linear distance traveled (in each wheel) and difference in encoder counts while rotating. The tuning should be done on the surface where most error occurs or the surface that makes up most of the environment. If tuning on different surfaces results in a large difference in encoder_counts/distance (angle) then you would have to maybe aim for a middle spot and live with some error in the map. See the bit here about tuning odom http://wiki.ros.org/navigation/Tutorials/Navigation%20Tuning%20Guide

When you rotate the base while mapping, do so slowly to minimize wheel slip and minimize the lag the in lidar vs odom.

If straight walls appear curved in map it's mostly likely due to odometry tuning when moving straight, and if straight walls are straight in the map but a room is at angle to rest of map, it's likely caused by odom tuning when rotating or due to errors caused by rotating too quickly while mapping. Move slowly while mapping for best result.

Finally, if you really needed to, you could use photoshop to straighten out the map. If errors are small, navigation should work smoothly with a photoshop-straightened map.