Ubuntu16.04下安装ROS kinetic常见问题及解决方法

之前写了两篇博文,都写得比较匆忙,现在把两篇博客的主要内容整理一下,搞个完整版,方便自己也供大家参考一下。

 

关于安装ROS这件事,我想我应该算是“比较”有发言权的了。先是在win7系统安装虚拟机VM,在虚拟机上安装了一遍ros,踩了一遍坑。然后是直接在本地安装ubuntu16.04,重复了一遍这个经历。总结如下:

一、整体安装步骤

这里我就不挨条命令去敲了,直接站在巨人的肩膀上了,这里贴一个链接:https://blog.csdn.net/weicao1990/article/details/52575314

基本操作博主已经说得很明白了。

二、主要问题

这里划重点,以下基本都是干货

1、安装之前,一定要注意确认网络是否连接

2、选择下载的服务站点时,可以选择中国服务器,也可以选择国内的其他站点,直接操作最佳服务器就好了。记得更新时确认没有报错,一面后面出现问题。

3、每一步安装都尽量确保没有问题,要不后面可能很麻烦,可能导致各种不确定问题出现。

4、前面的其实都问题不大,出现问题了,直接百度,问题都相对来说比较好解决。重点在这两步:

sudo rosdep init

rosdep update 

 三、上述两条init和update命令

这两条命令的发病率极高,且极难解决,现主要针对这两条命令的常见问题展开说。

  1、sudo rosdep init 报错“....website may be down” 。

这个很常见,解决方法最直接的有,把现有的已经安装好ros的文件移植到相应的文件夹下就好了。/etc/ros/rosdep.list/20-....这个路径下的文件,如果init一次都

没有成功的话,可以将整个ros文件拷贝到/etc下,不过记得修改目录的使用权限。如果中途成功,然而继续update时报错后按照别人的操作删除了“20-default....”文件的

话,直接复制对应的文件粘贴到对应的文件下就好了。

(其实这一步的命令就是访问一个网站,下载对应的好几个网址保存成一个源文件,下一步的时候,再按照这个指定的路径去下载相应的包进行操作)

操作如下:

删除。

rm /etc/ros/rosdep/sources.list.d/20-default.list

初始化。

sudo rosdep init  #上述命令执行完之后,就可以跳过这一步直接进行下一条命令了

再更新。

rosdep update

 

2、rosdep update后报错“time out”或者“refused”

上一步执行完了之后,就可以直接在shell提示符后面进行输入如上命令了。

这一步就更加玄学了,和网络有极大的关系。有线连接几乎无法成功,至少我花了几天的时间也没有成功。 因此,最好还是开手机热点,成功率大一些。

但是,手机的网络也不是谁的都可以,我试了好几个同学的才终于找到一个比较神奇的手机,update命令输入后,立刻就显示“Hit ..... ”不过也是试了很久才成功。

所以,个人觉得,上一步只要完成了之后,就尽量不要删除源文件了。多试几次本条命令就好了。

这里需要说一下的是,经常报错会出现,time out的提示,这里可以修改一下time out 的值,可以把这个值调大一些,我是调到了60.0,仅供参考。推荐使用vim插

件操作,非常好用,操作前请对照教材或者相关资料进行熟悉,以免误操作。 

time out变量调整操作:

1)分别更改 /usr/lib/python2.7/dist-packages/rosdep2/下的三个文件sources_list.py、gbpdistro_support.py、rep3.py中的DOWNLOAD_TIMEOUT = 15.0

值,改大一点就可以了。

2) 示范操作如下

   sudo vim /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py

3)然后利用vim的搜索功能输入:/DOWNLOAD_TIMEOUT搜索到这一行,修改过后输入:wq!,强制保存退出就行了。 

 

*有时候也可能是源的问题,这时不妨换一下下载源(系统与更新中的站点设置)

       步骤1: 点击System Settings-Software & Update-Ubuntu Sofeware-Downloaded from更换下载源,随机更换了一两个国内的下载源依然出错.

  步骤2:在更换下载源时,点击Select Best Server,等待几分钟,弹出推荐的下载源,选择它.(若与开始操作相同,可以手动换其他的)
  
  步骤3:再次输入命令sudo apt-get update

  步骤4:再次输入命令rosdep update, 成功.

 

基本上最难解决的问题和解决方法大致如上。反正就是很玄学。 如有问题,欢迎留言交流。 xiexie

----------------------------------------------------------------------------------------------------------------------------------------------

2019.11.08号更新

这里再提到两个常见的问题:

一、关于ubuntu16.04 U盘安装后的无法挂起后正常唤醒的问题:

这里就是多半是因为你的Linux内核版本偏低的问题,可使用如下命 令查看

   uname -a

显示出version 4.0.0说明就是需要更新了,这里贴一个现成的解决方案:https://www.cnblogs.com/shuo1208/p/5869578.html

按照博主的步骤下载对应的安装包并命令行一波流操作就可以了。

 

二、gazebo相关问题

1、ROS刚安装之后一般默认的gazebo是7.0版本的,如果需要用到的话,一般是需要自己手动更新的,目前更新的最新版本应该是7.16版本的。

  这里再贴一个操作链接:https://github.com/DroidAITech/ROS-Academy-for-Beginners

请看截图:

 

 

 

2、gazebo的模型库

gazebo自己是有许多模型库的,这些模型库可以很方便我们搭建场景模型,一般需要自己下载。(有时候刚升级完gazebo后也加载不出来正常界面,也可能是应该没有下载某些模型包造成的,所以建议下载安装)

这里建议使用百度网盘下载,或者直接拷贝周围同学的压缩包或文件包就行了。毕竟效率是第一生产力。

这里贴上链接:

链接:http://pan.baidu.com/s/1pKaeg0F 密码:cmxc (来自rosclub.cn

或是下载https://bitbucket.org/osrf/gazebo_models/downloads/ (ExBot ROS专区)

获得对应的文件包(大概250多兆)之后,最好放在~/.gazebo/models下面,这里需要注意的是,将所有模型包放在/models目录下,而不是你下载解压的gazebo_models文件包,要不gazebo无法识别这个包。方法可以命令行sudo mv ...命令,也可以鼠标操作。

3、gazebo模型加载缓慢且容易黑屏问题

这个是因为,gezobo模型库里面添加的依赖信息,会默认加载时从网站获取最新的模型包。

解决方法其实很简单,断网之后重开一下软件就解决了。

 

 

 ###转载请注明出处,码字不易,谢谢

 

posted @ 2019-11-05 00:31  乐天的LEEE  阅读(4670)  评论(1编辑  收藏  举报