1、添加ROS软件源

复制以下命令到ubuntu终端


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

也可以试试这条命令(据说可以提高下载速度)

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'

2、添加密钥

将以下命令复制到ubuntu的终端执行

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

添加成功会显示如下界面

3、更新软件源

将以下命令复制到ubuntu的终端执行

sudo apt update 

 更新成功的显示界面如下

4、安装ROS

ubuntu版本不同则安装指令也相应不同。我的是ubuntu20.04版本,应执行以下代码。若是命令错误则会显示:E:无法定位该软件包。所以安装时需要注意自己ubuntu的版本号。

sudo apt install ros-noetic-desktop-full

 输入命令点击回车后的界面如下:

继续回车,等待安装,安装成功的界面如下(备注:如果在安装过程中你有事需要关闭电脑,可以输入ctrl+c暂停安装,然后正常关闭就可以了,下一次有时间继续安装的时候,按ctrl+alt+t打开终端后,按↑就可以调出之前输入过的安装命令sudo apt install ros-noetic-desktop-full,然后回车输入密码后,就可以继续安装了)

 

5、初始化rosdep

输入以下命令,进行初始化

       sudo rosdep init

初始化成功界面

成功之后直接看第6步继续安装。

若是报错可参考以下几种报错问题及解决办法:

(1)错误1:找不到命令

              尝试着输入以下命令

sudo apt install python-rosdep2

  或者:

sudo apt install python3-rosdep2

 这时候它会出现以下的界面,输入Y继续

执行完成的界面

到这里如果再输入sudo rosdep init命令试试,如果出现了之前介绍的,我们想要的界面,请跳到第6步,若出现了新的错误,请继续看本步(第5步)的内容

(2)错误2:ERROR: cannot download default sources list from:https : //raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.listWebsite may be down.

 输入以下命令:

 sudo gedit /etc/hosts

 然后在打开的hosts文件中添加如下的内容,然后保存退出

199.232.28.133 raw.githubusercontent.com

 到这里如果再输入sudo rosdep init命令试试,如果出现了之前介绍的,我们想要的界面,请跳到第6步,若出现了新的错误,请继续看本步(第5步)的内容。

(3)错误3:ERROR: default sources list file already exists: /etc/ros /rosdep/sources.list.d/20-default.listPlease delete if you wish to re-initialize

 输入以下命令:

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

 到这里如果再输入sudo rosdep init命令试试,应该就会出现了之前介绍的我们想要的界面了。

6、更新rosdep

        输入以下命令

rosdep  update

这一步很容易出现没有找到资源或者链接超时之类的错误,比如:unable to process source或error loading sources list: The read operation timed out。

若是出现该类错误,可以多尝试几遍,说不定突然就成功了,就很玄学吧。我在这条命令卡了三天之后没有耐心了,就按以下方式处理之后,多输入几遍就成功了!!!

        修改gbpdistro_support.py、sources_list.py、rep3.py文件中的DOWNLOAD_TIMEOUT = 15.0值,改大一点,我改过45、60、90、120……..。可通过以下命令打开这三个文件(注意自己的python版本号,命令中输入对应的才能打开文档,不然就是空白文档):

sudo gedit  /usr/lib/python3/dist-packages/rosdep2/gbpdistro_support.py
sudo gedit  /usr/lib/python3/dist-packages/rosdep2/sources_list.py
sudo gedit  /usr/lib/python3/dist-packages/rosdep2/rep3.py

最后改为120时重复输入 rosdep update 显示如下界面,即下载成功!

7、设置环境变量

       注意到底是melodic还是noetic或者是kinetic,它是由你的ubuntu的版本决定的,比如我的ubuntu是20.04版本的,对应的是noetic,也就是应该下面的这行代码

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

 输入以下命令,运行该脚本让环境变量生效

source ~/.bashrc

8、 安装rosinstall

         输入以下命令:

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

如果提示没有可安装候选,如下所示:

 按照提示更换软件包就行了,按照提示更改为以下命令:

sudo apt install python3-rosinstall python3-rosinstall-generator python3-wstool

9、 验证ROS是否安装成功

          按正常来说ROS到这里就安装完成了,现在我们来验证一下,输入以下命令:

 roscore

如果出现了以下的问题说明,之前的安装没有安装完全:

输入以下命令,把没安装的安装一下就好了(如果显示有几个安装包无法下载,是因为网络的原因重新输入以下命令就行了)

sudo apt install ros-noetic-desktop-full

到这里再输入roscore看一下,若安装成功会显示如下界面:

然后我们启动一下小海龟的仿真器试一试,按ctrl+alt+t打开一个新的终端,输入以下命令

rosrun turtlesim turtlesim_node

  按ctrl+alt+t再打开一个新的终端,输入以下命令(鼠标停留在该终端上乌龟才会移动)

rosrun turtlesim turtle_teleop_key

 这时候你按键盘上的↑↓←→键就可以控制小海龟移动了!!!(如下图所示)

那么恭喜你的ROS已经成功安装完了!!!

 参考网址: 详细介绍如何在ubuntu20.04中安装ROS系统,以及安装过程中出现的常见错误的解决方法,填坑!!! - 古月居 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐