1.安装原生的ROS ,ros-kinetic 默认带的是 gazebo2.x版本
sudo aptitude install ros-kinetic-desktop-full
2.加载
现象:在虚拟机中运行gazebo后,任何开启仿真深度相机的操作都会导致报错并使gazebo崩溃。报错截图如下:
解决方法:
这是个大坑,首先说这个问题只会在用VMware虚拟环境下运行gazebo7.0才会产生。原因似乎是gazebo7.0使用的openni的版本与虚拟机默认使用的不兼容之类的。。。想详细了解的亲可以从这个帖子进去了解一下,然后里面提供了两种解决思路,一种是下载gazebo的源码,修改gazebo/rendering/Camera.cc文件中Camera::CreateRenderTexture里的fsaa设置,把fsaa设为0,然后重新编译。确实是管用,不过不推荐这种方法。
正确做法在刚刚那个帖子后面一个回复里
TL;DR: I can confirm that installing Gazebo 7.4.0 solves the issue.
操作方法请参照:Gazebo官方安装教程
如此安装上gazebo7的最新版本,也就是7.4.0+的版本,就能够完全解决这个bug了。
参照:
gazebo新版本的安装方法如下:
http://gazebosim.org/tutorials?cat=install&tut=install_ubuntu&ver=7.0#Alternativeinstallation:step-by-step
3。安装gazebo7之后发现黑屏
解决办法
通过直接下载所有模型到用户的根目录下的.gazebo/models/下 (其中.gazebo为隐藏文件夹,需要CTRL+H显示出来)
$ cd ~/.gazebo/
$ mkdir -p models
$ cd ~/.gazebo/models/
$ wget http://file.ncnynl.com/ros/gazebo_models.txt
$ wget -i gazebo_models.txt
$ ls model.tar.g* | xargs -n1 tar xzvf
或者手动下载得到osrf-gazebo_models-9533d5559309的压缩包
解压到/.gazebo/下
重命名为models
重新打开gazebo 即可
4.测试ROSkinetic+gazebo7+turtlebot+slam
1) 安装一些ROS-Gazebo组件
sudo apt-get install ros-kinetic-gazebo-ros-pkgs ros-kinetic-gazebo-ros-control
2)
安装turtlebot相关包
sudo apt-get install ros-kinetic-turtlebot-*
3.1)启动Gazebo并加载机器人、环境模型
roslaunch turtlebot_gazebo turtlebot_world.launch
3.2)启动键盘遥控节点
roslaunch turtlebot_teleop keyboard_teleop.launch --screen
3.3)运行gmapping
roslaunch turtlebot_gazebo gmapping_demo.launch
3.4)开启rviz观察建图过程
roslaunch turtlebot_rviz_launchers view_navigation.launch
遇到的问题
Gazebo意外退出的问题,可能的原因:
(1)虚拟机运行ubuntu时,开启了3D加速,关掉,请参见《Gazebo问题修复 - CSDN博客》
(2)Gazebo版本问题 ,默认自带的Gazebo不可以的 (ros内带的gezobo版本是2) ,再运行gampping,就很容易崩,但是,我升级了Gazebo7.x后,同样的操作,程序意外结束的情况就变得很少了!如果你的Gazebo也常常意外终止,可以考虑一下换个版本。
参考文献:
1)https://blog.csdn.net/lingchen2348/article/details/79503970
2)http://gazebosim.org/tutorials?cat=install&tut=install_ubuntu&ver=7.0#Alternativeinstallation:step-by-step
3)https://blog.csdn.net/seeseeatre/article/details/84742357