Ubuntu安装ROS系统

  • 步骤
  • 一、设置sources.list(设置软件源)
  • 二、设置key(公钥)
  • 三、更新package
  • 四、安装ROS
  • 五、初始化rosdep
  • 六、配置ROS环境
  • 七、安装依赖项
  • 八、测试ROS是否安装成功
    • 在终端使用roscore是出现相关问题及解决办法</kbd>
  • 总结

步骤

提示:
使用中科大的源会相对快很多。


一、设置sources.list(设置软件源)

使用Ctrl Alt+T启动terminal命令行界面;

推荐采用中科大的源(优点:速度快。比官方的源速度快很多。)

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

或者可以采用官方的源码,下载速度会慢很多,官方的源码经过测试在下面第五步骤rosdep过程中会出现一些问题。
官方的源添加如下:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

二、设置key(公钥)

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

三、更新package

sudo apt-get update

四、安装ROS

  • ubuntu16.04,安装kinetic桌面完整版本
sudo apt-get install ros-kinetic-desktop-full

  • ubuntu18.04,安装melodic桌面完整版本
sudo apt-get install ros-melodic-desktop-full

五、初始化rosdep

注意:在使用ROS之前需要初始化rosdep,在使用过程中只要有输入过初始化一次就可以

sudo rosdep init
rosdep update

注意:sudo rosdep init 找不到命令解决办法

 sudo apt install python-rosdep2 -y

其中加-y省去在安装过程中输入y+回车的时间


注意:输入sudo rosdep init如果出现 ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
解决方法1:在终端命令行输入

sudo gedit /etc/hosts

然后在host文件中添加

199.232.28.133 raw.githubusercontent.com
185.199.109.133 raw.githubusercontent.com
151.101.228.133 raw.github.com

最后保存就好了。再运行上面的命令。


解决方法2:将相关资源备份到 gitee,修改 rosdep 源码,重新定位资源。成功率是百分百。

步骤1
进入到 sources.list.d 文件夹(如果没有,则新建)
修改 gedit 20-default.list

cd /etc/ros/rosdep/sources.list.d
sudo gedit 20-default.list

将里面所有的
raw.githubusercontent.com/ros/rosdistro/master
替换成
gitee.com/wybros/rosdistro/raw/master

修改前

# os-specific listings first
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx# generic
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml fuerte# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

修改后

# os-specific listings first rosdep update
yaml https://gitee.com/wybros/rosdistro/raw/master/rosdep/osx-homebrew.yaml osx# generic
yaml https://gitee.com/wybros/rosdistro/raw/master/rosdep/base.yaml
yaml https://gitee.com/wybros/rosdistro/raw/master/rosdep/python.yaml
yaml https://gitee.com/wybros/rosdistro/raw/master/rosdep/ruby.yaml
gbpdistro https://gitee.com/wybros/rosdistro/raw/master/releases/fuerte.yaml fuerte# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

步骤2
进入到 rosdep2 文件夹,
修改 gbpdistro_support.py

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

将里面所有的
raw.githubusercontent.com/ros/rosdistro/master
替换成
gitee.com/wybros/rosdistro/raw/master
修改后如下

FUERTE_GBPDISTRO_URL = 'https://gitee.com/wybros/rosdistro/raw/' \'master/releases/fuerte.yaml'

步骤3
进入到 rosdep2 文件夹,
修改 rep3.py

cd /usr/lib/python2.7/dist-packages/rosdep2/
sudo gedit rep3.py

将里面所有的
raw.githubusercontent.com/ros/rosdistro/master
替换成
gitee.com/wybros/rosdistro/raw/master
修改后如下

REP3_TARGETS_URL = 'https://gitee.com/wybros/rosdistro/raw/master/releases/targets.yaml'

步骤4
进入到 rosdep2 文件夹,
修改 sources_list.py

cd /usr/lib/python2.7/dist-packages/rosdep2/
sudo gedit sources_list.py

将里面所有的
raw.githubusercontent.com/ros/rosdistro/master
替换成
gitee.com/wybros/rosdistro/raw/master
修改后如下

DEFAULT_SOURCES_LIST_URL = 'https://gitee.com/wybros/rosdistro/raw/master/rosdep/sources.list.d/20-default.list'

步骤5
进入到 rosdistro 文件夹
修改 __ init__.py

cd /usr/lib/python2.7/dist-packages/rosdistro/
sudo gedit __init__.py

将里面所有的
raw.githubusercontent.com/ros/rosdistro/master
替换成
gitee.com/wybros/rosdistro/raw/master
修改后如下

DEFAULT_INDEX_URL = 'https://gitee.com/wybros/rosdistro/raw/master/index-v4.yaml'

最后运行上面rosdep update的命令

sudo rosdep init
rosdep update

六、配置ROS环境

kinetic版本环境如下

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

melodic版本环境如下

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

七、安装依赖项

sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

八、测试ROS是否安装成功

  • 1)Ctrl Alt+T打开终端(Termial),输入以下命令,初始化ROS环境

    roscore
    
  • 2)Ctrl Shift+T开启一个新的终端(Termial),输入以下命令,弹出一个小乌龟窗口
    rosrun turtlesim turtlesim_node
    
  • 3)出现一个小乌龟的LOGO后,再Ctrl Shift+T开启另外一个新的终端(Termial),输入以下命令查看节点信息
    rosrun rqt_graph rqt_graph
    

在终端使用roscore是出现相关问题及解决办法

相关问题描述: 在安装melodic版本的ROS后,使用roscore 下的启动ROS时,出现以下报错情况:(目前只在Ubuntu18.04下安装melodic时发现
“Command ‘roscore’ not found, but can be installed with: sudo apt install python-roslaunch”

根据对应的情况输入:sudo apt install python-roslaunch发现并未解决问题。出现了以下的情况:

正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:
下列软件包有未满足的依赖关系:
python-roslaunch : 依赖: python-roslib 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

解决办法:
首先通过查看ROS文件夹中的bin文件,发现该文件中缺少许多相关可执行文件。
查看方法:

cd /opt/ros/melodic/bin
ls -l

发现改文件夹中没有roscore的可执行文件。(应该是在rosdep update步骤时将部分可执行文件删除)
解决办法:只需要重新安装一下 ros-melodic-desktop文件就可以将其补充完整。

sudo apt-get install ros-melodic-desktop

然后再验证一下所安装的完成

source ~/.bashrc
roscore

这时候就能完成所有的ROS启动。


总结

安装过程中尽量采用中科源,速度比较快。整个安装过程采用中科源大约时间为40分钟左右。

Ubuntu安装ROS系统相关推荐

  1. linux(ubuntu)安装ROS系统

    linux(ubuntu)安装ROS系统 官方安装教程,建议对比使用 http://wiki.ros.org/noetic/Installation/Ubuntu 文章目录 linux(ubuntu) ...

  2. ROS-虚拟机Ubuntu中安装ros系统

    0.引用文件 ros系统的官网 哔哩哔哩的课进视频的<『ROS 入门 (一)』什么是ROS?| 虚拟机安装配置 | ROS安装 > 1.设置ubuntu的环境配置 1.首先需要进行联网,需 ...

  3. Windows系统下安装ROS系统

    Windows上安装ROS系统 请参照以下链接和说明,完成Windows上安装ROS系统. Installation/Windows - ROS Wiki 注意事项: Windows版本:64-bit ...

  4. Ubuntu20.4安装ROS系统教程(自用)

    1 Ubuntu各个版本系统对应的ROS版本 1.2Ubuntu16.04与ROS-kinetic的安装 1.2.1Ubuntu16.04配置 1.2.2安装ROS-kinetic版 1.3Ubunt ...

  5. 【从Ubuntu16.04升级Ubuntu18.04,并安装ROS系统】熟能生巧,避坑专用

    前言 本来用的是Ubuntu16.04,现升级为Ubuntu18.04. 因为使用了挺长时间的16.04版本,安装了一些第三方软件,升级时在清除第三方软件时总是清不干净,读了升级失败的日志后发现原来是 ...

  6. PC、树莓派Ubuntu安装ROS

    Ubuntu安装ROS 安装ROS 设置sources.list 设置密钥 安装软件 环境设置 创建ROS工作空间 安装ROS 本文将接着之前安装Ubuntu 18.04.5的脚步,继续我们的环境搭建 ...

  7. 树莓派安装ROS系统【第一篇】

    树莓派装ROS系统(第一篇) 注: 第一篇 主要是撰写了树莓派安装ROS系统,远程连接等操作. 在网上扒拉了一些资料,感觉各有优缺,作为踩坑者要进行信息的筛选,因此才想着写一篇博客作为记录,并作为提升 ...

  8. ubuntu20.04中安装ROS系统,详细介绍各种错误解决方法,直达小海龟

    因为最近学习的缘故,花了半天的时间安装了ROS,期间因为ubuntu也是临时安装的双系统,遇到了各种各样的问题,这里记录一下,主要集中在ROS系统安装问题的解决. Ubuntu系统的安装 ubuntu ...

  9. Ubuntu安装ros rotors 以及中间出现的问题的解决办法

    Ubuntu安装ros rotors 以及中间出现的问题的解决办法 下文列出了我的问题 在文档末尾,自行查看 安装ubuntu 这个网上的教程很多 我使用的是vmware安装,基本上就是连点 我所使用 ...

最新文章

  1. c++获取当前目录_如何在 Linux 下利用 Vim 搭建 C/C++ 开发环境?
  2. js中字符串转为对象或者json
  3. 全北现代宣布江苏苏宁中后卫洪正好租借延长1年
  4. Pycharm安装工具包
  5. 回腾讯了......
  6. Linux Shell脚本专栏_批量检测网站是否异常脚本_08
  7. SDKMAN - 一个用于轻松管理多个软件开发工具包的CLI工具
  8. python3-字典中存储列表
  9. psp记忆棒测试软件,PSP记忆棒有问题?修复软件MS-Format帮你解忧
  10. 系统发育树的美化~Figtree(图文教程)
  11. 基于tushare和python的证券市场价格分析
  12. 使用片段嵌入进行文档搜索
  13. java access 2007,使用Access 2007 VBA创建数据透视表
  14. 格拉姆-施密特过程的程序实现
  15. 识字小程序—hanzi-writer-miniprogram实现临摹笔画动画播放等
  16. 5、基于注解的AOP配置
  17. RabbitMQ 设置消息的TTL(过期时间)
  18. linux高级网络配置
  19. 创宇技能表_知道创宇研发技能表v3.0 来了!
  20. UCAS - AI学院 - 知识图谱专项课 - 第8讲 - 课程笔记

热门文章

  1. zepto ajax jsonp,JSONP的使用(在zepto和kissy下使用)
  2. 如何在快手上赚流量钱?快手流量怎么变现?
  3. 什么样的光源不伤眼睛?精选优秀的全光谱护眼台灯
  4. VS Code快捷键—焦点切换(减少鼠标操作)
  5. Cesium逼真水面,动态水波,倒影
  6. 阿里贾扬清:我对人工智能方向的一点浅见
  7. codeforces 144D Missile Silos spfa
  8. 《大话数据结构》第六章 树
  9. 跑步听音乐的最佳设备,无线蓝牙运动耳机推荐
  10. 方案报价页面前台页面根据情况自动创建li标签————记录备份