一、Ubuntu版本
Ubuntu16.04.7 LTS:/16.04/
二、ROS版本
安装ROS Kinetic步骤:/cn/kinetic/Installation/Ubuntu
三、遇到的问题
1.rosdep init ERROR
安装ros的最后一步是rosdep init和rosdep update,rosdep是解决ros包依赖问题的一个工具。
rosdep init会从ros官方服务器上下载一个“20-default.list”文件,放在“/etc/ros/rosdep/sources.list.d/”路径下;打开“20-default.list”发现里边是一些yaml文件的网址,这些yaml文件里保存着一些ros工具或者常见ros包的依赖关系,也即:这些ros工具或者ros包依赖于哪些其它ros包。
错误:
sjj@ubuntu:~$ sudo rosdep initERROR: cannot download default sources list from:/ros/rosdistro/master/rosdep/sources.list.d/20-default.listWebsite may be down.
解决方式:
#打开hosts文件 sudo gedit /etc/hosts#在文件末尾添加 151.101.84.133 #保存后退出再尝试
参考:/u013468614/article/details/102917569
2.rosdep update ERROR
当执行rosdep update,rosdep会尝试访问yaml文件网址,把yaml里的信息转存到本地,这样当你配置上述ros工具或者ros包时,ros会按照依赖关系自动把所需的依赖一并下载。这也是为什么一些人会认为rosdep失败也不影响ros使用,因为只有当你下载相关包时才会用到rosdep。
错误:
sjj@ubuntu:~$ rosdep updatereading in sources list data from /etc/ros/rosdep/sources.list.dERROR: unable to process source [/ros/rosdistro/master/rosdep/osx-homebrew.yaml]:<urlopen error timed out> (/ros/rosdistro/master/rosdep/osx-homebrew.yaml)
解决方式:
网站/支持github的资源代理,非常好用,我们将用此代理加速rosdep对Github的访问,进而解决rosdep update失败问题。
在rosdep的若干个脚本文件中,把 / 添加到相应URL前面即可。
1.首先修改rosdep下载资源的脚本文件:
/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py,把以下行添加到脚本中的download_rosdep_data()函数中,以应用代理服务:
url="/"+url
2.然后,用同样的方法修改/usr/lib/python2.7/dist-packages/rosdistro/__init__.py里面的DEFAULT_INDEX_URL参数,如下:
DEFAULT_INDEX_URL = '//ros/rosdistro/master/index-v4.yaml'
3.接着,以下4个文件中也使用了“”网址,同样的方法把“/”添加到网址前:
/usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 36行/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py 72行/usr/lib/python2.7/dist-packages/rosdep2/rep3.py 39行/usr/lib/python2.7/dist-packages/rosdistro/manifest_provider/github.py 68行 119行
4.最后,在 /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 的第204行添加如下代码:
gbpdistro_url = "/" + gbpdistro_url
5.执行rosdep update成功
参考:/Kenny_GuanHua/article/details/116845781
四、测试ros是否安装成功
1、CTRL+ALT+T打开终端(Termial),输入以下命令,初始化ROS环境:
roscore
成功打开如下图所示:
上面显示有ROS的版本,还有一些节点、端号等内容。
2、再 打开一个新的终端(Termial),输入以下命令,弹出一个小乌龟窗口:
rosrun turtlesim turtlesim_node
3、出现一个小乌龟的LOGO后,再 打开一个新的终端(Termial),输入以下命令
rosrun turtlesim turtle_teleop_key
然后,通过方向键控制小乌龟的移动:如下图所示
4、 打开新的Termial,输入以下命令,可以查看ROS节点信息:
rosrun rqt_graph rqt_graph
如果你能顺利进行到这一步,说明ROS安装成功了。
参考:/weixin_43159148/article/details/83375218
五、ROS教程
/video/BV1zt411G7Vn