myAGV-gmapping实时建图
1.打开slam激光扫描launch文件
打开小车后,打开控制台终端(快捷键Ctrl+Alt+T),在命令行中输入以下指令:
cd myagv_ros
roslaunch myagv_odometry myagv_active.launch
注意:在开启launch文件之前,请先将小车放置在需要建图环境中的一个合适起始点位上,因为开启launch文件将会开启小车的IMU传感器及odom里程计,人为的移动小车将造成小车建图失真。
打开小车slam激光扫描所需的launch文件,若显示
Now YDLIDAR is scanning ......
则说明小车雷达文件打开成功,终端内显示状态如下:
2.打开gmapping建图launch文件
重新打开一个控制台终端,在命令行中输入以下指令:
cd myagv_ros
roslaunch myagv_navigation myagv_slam_laser.launch
3.打开键盘控制文件
重新打开一个控制台终端,在终端命令行中输入:
cd myagv_ros
roslaunch myagv_teleop myagv_teleop.launch
方向键:
按键 | 方向 |
---|---|
i | 前进 |
, | 后退 |
j | 向左运动 |
l | 向右运动 |
u | 逆时针旋转 |
o | 顺时针旋转 |
k | 停止 |
4.开始建图
现在小车可以在键盘的控制下开始移动了,操控小车在所需建图的空间内转一圈吧。与此同时,可以看到在Rviz空间里我们的地图也会跟着小车的移动一点点的把地图构建出来了。 注意:在用键盘操作小车的时候,确保运行myagv_teleop.launch文件的终端是当前选中的窗口,否则键盘控制程序无法识别键盘的按键。
5.保存所构建的地图
再打开一个新的控制台终端,在命令行中输入以下指令,用来保存小车扫描完成的地图:
rosrun map_server map_saver
运行成功后终端显示如下:
这里可以看到我们画了个红圈圈,只是地图保存后生成的两个文件,分别为 map.pgm 和 map.yaml。这两个文件默认会保存在家目录。在同一个终端内输入 cd 则会进入我们的家目录,再输入 ls 可以看到在家目录下生成的地图文件已经生成好了。