ros下gazebo与rviz进行交互
一、 环境:Ubuntu 16.04,linux操作系统平台,Ros Kinetic Kame。
二、 用到工具:gazebo、rviz、ROS gmaping 工具、turtlebot。
三、 使用过程:
-
下载gmaping工具包:sudo apt-get install ros-indigo-slam-gmapping
-
通常默认indigo-desktop-full安装会自动安装好Gazebo,无需过多考虑:sudo apt-get install ros- kinetic -desktop-full
-
更新gazebo到7.1X版本:
- sudo sh -c ‘echo “deb http://packages.osrfoundation.org/gazebo/ubuntu-stable
lsb_release -cs
main” > /etc/apt/sources.list.d/gazebo-stable.list’ - wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add –
- sudo apt-get update
- sudo apt-get install gazebo7 gazebo7-common
- sudo apt-get install libignition-math2-dev
- sudo sh -c ‘echo “deb http://packages.osrfoundation.org/gazebo/ubuntu-stable
-
安装rviz:
- 下载:sudo apt-get install ros-kinetic-rviz
- 环境检测,安装:rosdep install rviz,rosmake rviz
-
安装一些ROS-Gazebo组件:sudo apt-get install ros-kinetic-gazebo-ros-pkgs ros-kinetic-gazebo-ros-control
-
下载gazebo模型包:
-
安装turtlebot相关包:sudo apt-get install ros-kinetic-turtlebot-*
常见错误:1.Filed to patch.解决方法:更新uhuntu的软件源,从china到main。 -
启动ros主节点:roscore
-
开始基础仿真演示(注意gazebo与rviz之间进行交互):
- 启动Gazebo并加载机器人、环境模型:roslaunch turtlebot_gazebo turtlebot_world.launch
常见错误:1.启动gazebo闪退,在虚拟机中的linux上运行Gazebo的时候, Gazebo窗口闪退,。解决方法:关闭硬件加速(亲测可用)
echo " export SVGA_VGPU10=0" >> ~/.bashrc
source ~/.bashrc
关闭虚拟机的3D图形加速(备选)
export LIBGL_ ALWAYS_SOFTWARE=0- 启动键盘遥控节点:roslaunch turtlebot_teleop keyboard_teleop.launch
- 此时,选中该命令窗口,按照提示,使用键盘上的u、i等键就可以看见机器人的Gazebo窗口中运动。
- 运行gmapping:roslaunch turtlebot_gazebo gmapping_demo.launch
- 开启rviz观察建图过程:roslaunch turtlebot_rviz_launchers view_navigation.launch
- 启动Gazebo并加载机器人、环境模型:roslaunch turtlebot_gazebo turtlebot_world.launch
四、 参考附录:
a) https://blog.****.net/lingchen2348/article/details/79503970:在gazebo中运行turtlebot机器人模拟gmapping的slam过程。
b) https://blog.****.net/qq_39989653/article/details/78472097: gazebo问题修复。
c) https://blog.****.net/tap880507/article/details/79673460:ROS 学习系列 – RViz 实时观测机器人建立导航2D封闭空间地图过程 (SLAM)。
d) https://www.cnblogs.com/hiram-zhang/p/10398534.html:熟练使用rviz。
e) https://www.cnblogs.com/yytlmm/p/11083143.html:gazebo 7.0 升级到7.15。
f) https://www.cnblogs.com/huangjianxin/p/6347416.html:创建一个Ros工作空间。
g) https://www.cnblogs.com/qiangzi0221/p/7941896.html: ROS机器人导航仿真(kinetic版本)。
h) https://blog.****.net/Robot_Starscream/article/details/89430473:「Linux 调试错误」Invalid tag: environment variable ‘TURTLEBOT_GAZEBO_WORLD_FILE’ is not set.