Gazebo中的Turtlebot仿真过程
步骤:
1.安装与Turtlebot相关的所有功能包
july@july-ubuntu:~/catkin_ws$ sudo apt-get install ros-kinetic-turtlebot-*
2.启动Gazebo仿真环境,并加载机器人Turtlebot
# 如果没有环境变量TURTLEBOT_GAZEBO_WORLD_FILE,会显示找不到地图的错误
july@july-ubuntu:~/catkin_ws$ export TURTLEBOT_GAZEBO_WORLD_FILE="/opt/ros/kinetic/share/turtlebot_gazebo/worlds/playground.world"
july@july-ubuntu:~/catkin_ws$ roslaunch turtlebot_gazebo turtlebot_world.launch
- 开始构建地图
添加链接描述
# 不加export会出现TURTLEBOT_3D_SENSOR is unset 错误!!!
july@july-ubuntu:~$ export TURTLEBOT_3D_SENSOR=kinect
july@july-ubuntu:~$ roslaunch turtlebot_gazebo gmapping_demo.launch
- rviz可视化
july@july-ubuntu:~$ roslaunch turtlebot_rviz_launchers view_navigation.launch
- 启动键盘遥控节点
july@july-ubuntu:~$ roslaunch turtlebot_teleop keyboard_teleop.launch
- 保存地图
# rosrun map_server map_saver -f /home/XXX/turtlebot_test_map
# xxx是用户名
july@july-ubuntu:~$ rosrun map_server map_saver -f /home/july/turtlebot_test_map
- 关闭键盘控制终端以及view_navigation终端,其他不用关闭
# oslaunch turtlebot_gazebo amcl_demo.launch map_file:=/home/XXX/turtlebot_test_map.yaml
# xxx是用户名
july@july-ubuntu:~$ roslaunch turtlebot_gazebo amcl_demo.launch map_file:=/home/july/turtlebot_test_map.yaml
july@july-ubuntu:~$ roslaunch turtlebot_rviz_launchers view_navigation.launch
参考文章:添加链接描述图中路径规划路线中,绿色的是全局路径,而红色是本地实时路径,给定目标点进行路径规划,其中目标点必须是已知区域的空白区域,点击未知区域或者占有区域,并不会规划路径,但是配合gmapping包使用。当目标点设定在边缘区域,智能体探测到未知区域会更新全局地图,想到一些搜索算法,如RRT搜索,通过不断的生成边界点,规划路径进行区域搜索。