注:本文主要参考ros官网教程:官网
——原创文章,转载请注明文章出处:https://blog.csdn.net/qq_42424709/article/details/109410017。百度和各类采集站皆不可信,搜索请谨慎鉴别。
参考:
1.ros与ubuntu版本对应情况:https://blog.csdn.net/zhangrelay/article/details/79982187
2.ubuntu18.04换源:https://www.woozee.com.cn/article/25.html
3.linux下.bashrc文件修改、生效:原文
4.rosdep初始化时无法找到rosdep指令问题解决参考:文章评论区
版本说明
ros需要与Ubuntu版本对应;
常用的ubuntu与ros版本对应情况如下表:
ros | ubuntu |
---|---|
Kinetic Kame | 16.04 LTS(Xenial Xerus) |
Melodic | 18.04 LTS(Bionic Beaver) |
Noetic | 20.04LTS(Focal Fossa) |
安装
1.配置ubuntu仓库
注:若ubuntu已经换源,可以跳过此步
选择软件更新,在Ubuntu软件下选中main,universe,restricted,multiverse及源代码,并选择国内的服务器,清华源mirrors.tuna.tsinghua.edu.cn等镜像网站均可;
2.设置sources.list
–官网源下载速度很慢,建议使用国内镜像源;
官网:
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.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
其他源:参考
3.设置密钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
注:若此步失败,可以尝试将中间hkp://keyserver.ubuntu.com:80替换为
hkp://pgp.mit.edu: 80
4.安装
首先,确保软件源已更新:
sudo apt update
其次,ROS中包含大量库与工具,可选择不同配置安装,常见四种配置如下:
(1)Desktop-Full Install(推荐):
包含ROS, rqt, rviz, robot-generic libraries, 2D/3D simulators and 2D/3D perception
sudo apt install ros-melodic-desktop-full
(2)Desktop Install:
包含ROS, rqt, rviz, and robot-generic libraries
sudo apt install ros-melodic-desktop
(3)ROS-Base:
包含(Bare Bones)ROS package, build,and communication libraries.No GUI tools.
sudo apt install ros-melodic-ros-base
(4)Individual Package:
适合安装特定的ROS软件包(以下PACKAGE代表具体的包名称)
sudo apt install ros-melodic-PACKAGE
e.g.
sudo apt install ros-melodic-slam-gmapping
–查找可用软件包:
apt search ros-melodic
5.初始化rosdep
我们需要对rosdep进行初始化,方便解决ROS的各种软件包的依赖问题:
sudo rosdep init
rosdep update
——其中,笔者在执行rosdep init时出现问题“无法找到rosdep指令”,最终参考该文章评论区,运行如下命令解决:
sudo apt install python-rosdep2
sudo rosdep init
rosdep update
sudo apt-get install ros-melodic-desktop-full
注:此种解决方法可能会导致之前sudo apt-get install ros-melodic-desktop-full安装的包部分丢失,所以在最后还要重新执行sudo apt-get install ros-melodic-desktop-full,避免ros部分缺失导致命令无法执行。
——除此之外,此步还可能出现如下问题:
笔者未曾遇到此问题,若有朋友出现,可直接搜索,网上解决方案很多。也可直接参考此篇文章尝试:参考
6.添加环境变量
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
第一行命令为向.bashrc中添加“source /opt/ros/melodic/setup.bash”
第二行命令即保存对.bashrc文件的更改;
注:关于.bashrc文件,可参考linux下.bashrc文件修改和生效
主要说明几点:
(1).bashrc文件每次打开新终端时都会被读取;
(2)之后打开的新终端都会执行上述第一行命令,即执行该setup.bash文件;
(3)setup.bash文件作用可简单理解为指明ros功能包路径,使ros包能被找到;
(实际作用笔者还不太明白,有兴趣的朋友可以研究下该setup.bash文件的内容。欢迎在评论区讨论说明)
如果你使用的是zsh,则命令改为:
echo "source /opt/ros/melodic/setup.zsh" >> ~/.zshrc
source ~/.zshrc
检测安装情况
常用的检测方式即运行ros自带的小乌龟程序。
依次打开3个命令窗口,分别执行如下命令:
roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key
第一个命令启动节点管理器;
第二个命令会打开一个显示小海龟的窗口;
第三个命令会开启键盘对海龟的控制,将第三个命令窗确定放置在最上层,然后使用方向键,可以看到小海龟运动,这时可以确定ROS安装成功。
有问题的话可以在评论区交流,欢迎大家讨论,共同进步;
-2020.11.2