<机器人技术创新与实践>课程-Gazebo仿真篇SLAM+Navigtion
移动机器人仿真环境为Gazebo11.5,系统环境具体配置如下:
- Ubuntu 20.04
- ROS Noetic
- TurtleBot3
镜像使用Gazebo+云班课号.iso 。
简要流程如下:
部分常用指令ls、cd等
启动文件放置于Robot文件夹下:
robot
├── auto
│ └── auto.launch
├── gazebo
│ ├── empty_world.launch
│ └── willow_world.launch
├── map
│ ├── willow.pgm
│ └── willow.yaml
├── navigation
│ └── navigation.launch
├── rviz
│ └── rviz.launch
├── slam
│ └── slam.launch
└── teleop
└── teleop_key.launch
开启仿真。
机器人需要在环境中才能运动,需要构建一个适合机器人的环境,如何构建?
打开一个空白环境+机器人命令如下:
cd robot/
roslaunch gazebo/empty_world.launch
然后依据需要绘制环境,注意墙体和物体功能区别。
绘制完成效果如下所示:
可以保存到myroom文件中。
机器人只有理解环境才能在环境中运动,如何理解?
SLAM就是其中之一。
roslaunch slam/slam.launch
效果如下所示:
使用避障程序让机器人在环境中运动,如下:
roslaunch auto/auto.launch
发现机器人卡住了???
切换回手动模式:
Crtl + C 退出
roslaunch teleop/teleop_key.launch
把卡住的机器人挽救回来!然后愉快遥控建立环境地图吧。
匹配度如何?马马虎虎吧。
保存和打开地图:
打开
rosrun map_server map_server ***.yaml
保存
rosrun map_server map_saver -f myroom
如下:
图片编辑器看看效果:
撰写报告截图终端改为白底黑字更好一些:
有地图之后就可以愉快导航了。
注意路径!
roslaunch navigation/navigation.launch map_file:=myroom.yaml
roslaunch navigation/navigation.launch map_file:=/home/zhangrelay/robot/myroom.yaml
要写全!
否则:
- 绿色箭头定位一下
- 红色箭头导航一下
彩蛋:
使用带有摄像头的机器人开车~~~
waffle?
# ROS
source /opt/ros/noetic/setup.bash
# TurtleBot3 burger waffle waffle_pi
export TURTLEBOT3_MODEL=waffle_pi
-End-
- 点赞
- 收藏
- 关注作者
评论(0)