Gmapping with XV 11 using ROS
Contents
Incomplete Notes
tf is not in place
References
- Quigley, Gerkey, and Smart. Programming Robots with ROS, O'Reilly, 2015 pp 139 to 144 and 279.
- See Calibrate Phidgets Odometry setting up teleop with odometry.
- map_server
- tf
- Dropped Error. See below.
- Planning Mapping
Install
sudo apt-get install ros-indigo-gmapping sudo apt-get install ros-indigo-navigation
Execute
In a new window do the following. See Floor Hugger Launch Scripts. Make sure the use_sim_time param is false.
rosparam set use_sim_time false roslaunch floor_hugger survey.launch
In a new window
rosbag record scan odom tf
Rosgraph captured with rqt_graph.
Use the joystick to teleop in the space to be mapped.
Create Map
Kill the above tasks. Then in the first window.
rosparam set use_sim_time true rosrun gmapping slam_gmapping
or the following launch file with custom map size. gmapping.launch
roslaunch floor_hugger gmapping.launch
In another window playback the recorded messages
rosbag play --clock 2016-04-11-20-28-51.bag
Once rosbag play is complete save the map by doing the following in another window before killing the gmapping task..
rosrun map_server map_saver
Kitchen One Pass Map
This is roughly a 9 foot straight slow run from the kitchen/dining room door toward the stove island. (Data is stored in floor_hugger/bags/kitchen11)
Kitchen Two Pass Map
This is roughly a 9 foot straight slow run from the kitchen/dining room door toward the stove island. There is a 180 counter clockwise rotate with a drive roughly back to the starting position. (Data is stored in floor_hugger/bags/kitchen11)
Note: It is clear that odometry need careful calibration.
Node Graph
Debugging and Analysis
Useful command
rosbag info 2016-04-11-20-28-51.bag