On Mon, Sep 20, 2010 at 10:37 AM, Eitan Marder-Eppstein wrote: > On Mon, Sep 20, 2010 at 6:14 AM, clarkwu wrote: >> (2) Observed from rviz window, there is an accumulative deviation between >> the laser scan points and the map. Please also refer to the youtube link: >> http://www.youtube.com/watch?v=roAMPNqg0k4 >> For point (2), we have no idea about it. Is the AMCL supposed to correct >> the >> robot position? > > AMCL will attempt to correct for the robot's position. However, if memory > serves me, the default configuration for AMCL assumes that you have pretty > good odometry. It might help you to play around with some of the parameters > that control how much to trust the estimate from odometry which might let > AMCL use the laser more heavily to snap things back into place. Relevant > parameters are documented here: http://www.ros.org/wiki/amcl#Parameters. Do > you experience much drift when you drive the robot 10 meters forward in the > odometric frame and look at accumulated laser scans? Echoing Eitan's suggestion, you should now try the first test that I prescribed: drive the robot around without amcl, and look at the laser scans in the odom frame, in rviz. Be sure to increase the decay time of the laser display. If your odometry is reasonable, then you should see a crude map constructed from the accumulated scans. You want to be sure that you're getting the best possible performance from odometry before you spend time correcting for odometry errors. Once you're getting good data from odometry, some amcl parameters to look at first: ~update_min_d, ~update_min_a: reduce these values to update the filter with laser data more often; it's more computationally expensive, but can help if odometry drifts very fast. ~odom_alpha[1-4]: increase these values to add increase variance in the motion model. In particular, increase odom_alpha3 to increase translational variance in the X direction (you should see an elongated particle cloud in hallways). ~laser_max_beams: increase this value to make the filter look at more of each scan. This can help for shorter-range laser (such as yours). Another thing that comes to mind: your map looks like it was drawn by hand, or possibly taken from an architectural floorplan. While such maps can be used for localization, they often have errors, and it's easy to get the resolution wrong. brian.