Ubuntu18.04安装ROS Melodic(详细,亲测安装完成,有清晰的截图步骤)
这也是我在Ubuntu里面安装ROS的第N次,以前每次安装过程都忘记总结了,导致每次安装ROS都浪费了很多的时间用来解决各种问题。为了避免自己以后出现问题需要再安装,所以写这篇博客总结一下,这次是我安装最快,问题最少也最好解决的一次,在网上看了好多安装方法,有些会出现问题,不知道什么原因,解决办法也有点复杂,因此希望这个对大家有用! |
Ubuntu18.04安装ROS Melodic目录
一、Ubuntu不同的版本对应ROS不同的版本
操作系统为Ubuntu 18.04 LTS 64bit应采用ROS版本为ROS Melodic。
二、配置Ubuntu软件库
配置Ubuntu存储库以允许"main", “restricted” ,“universe,” and “multiverse”,如图所示
三、安装过程及问题解决
1.设置安装源
- 避免后面会出现无法定位软件包的错误,这里ROS提供了国内的安装源,添加国内安装源命令
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.设置密钥
- 若密钥服务器hkp://ha.pool.sks-keyservers.com:80无法添加成功,则可以尝试
hkp://pgp.mit.edu:80
或者hkp://keyserver.ubuntu.net:80
- 我使用的是下面这句命令是执行成功了的
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
3.更新Ubuntu 18.04 LTS的最新可用软件包列表
sudo apt update
- 如果出现如下错误
W: GPG 错误:http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY F42ED6FBAB17C654
E: 仓库 “http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease” 没有数字签名。
N: 无法安全地用该源进行更新,所以默认禁用该源。
N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。
解决办法,执行如下命令
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654
4.开始安装ROS Melodic
sudo apt-get install ros-melodic-desktop-full
- 如果出现如下问题
E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)
E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它?
解决办法,执行如下命令,删除 /var/lib/dpkg/lock-frontend - open
ls /var/lib/dpkg/lock-frontend
sudo rm -r -f /var/lib/dpkg/lock-frontend
sudo rm -r -f /var/lib/dpkg/lock
再执行sudo apt-get install ros-melodic-desktop-full
命令,成功运行如图所示
🚩
- 避免后面出现sudo rosdep:找不到命令提示,这里需要执行如下命令
sudo apt install python-rosdep
5.初始化rosdep
开始使用ROS之前,先初始化rosdep,rosdep能够轻松地安装要编译的源代码的系统依赖关系,rosdep是ROS核心组件运行的基础
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.
解决办法,执行如下命令
cd /etc
sudo gedit hosts
在文件末尾添加
151.101.84.133 raw.githubusercontent.com
然后保存文件退出即可。
- 如果出现错误(我觉得这个错误是我在网上搜解决办法的时候自己手动新建了/etc/ros/rosdep/sources.list.d目录,并且还在这个目录下编辑了20-default.list的相关内容,我通过上面的方法正确解决了之后,产生了相同的文件20-default.list,二者发生冲突。嗯…就是需要删掉以前强制新建的。)
ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize
解决办法,执行如下命令
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
然后再重新运行命令sudo rosdep init
,可见就成功解决了!
6.执行rosdep update更新
rosdep update
- 如果出现如下错误
ERROR: error loading sources list:
('The read operation timed out',)
解决办法:大概是网络的问题,反复执行rosdep update命令即可
(如图,我执行了几次rosdep update命令运行成功!)
7.添加ros环境变量
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
8.为了构建和管理开发者自己的ROS工作空间,还需安装rosinstall
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
第一次启动ROS时,需要进行环境变量配置,执行如下命令
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
四、启动运行小海龟例子
1.第一个终端运行如下命令
roscore
2.打开第二个终端,也可以利用 Ctrl+Shift+T 快捷键打开一个新的终端,运行如下命令,这时你会看见一只静止的小海龟
rosrun turtlesim turtlesim_node
3.如果希望小海龟能够移动,打开第三个终端,利用Ctrl+Shift+T快捷键再打开一个新的终端,启动turtlesim的键盘控制节点turtle_teleop_key,运行如下命令
rosrun turtlesim turtle_teleop_key
💥(这里你的鼠标要停留在当前这个终端界面,按键盘上面的 上下左右 来控制小海龟的移动)
键盘上面的“上下左右” | 小海龟移动情况 |
---|---|
上 | 前进 |
下 | 后退 |
左 | 原地向左转 |
右 | 原地向右转 |
在当前终端下,按住方向键即可控制小海龟移动,我控制的小海龟移动情况如下 | |
就这样,可以看见我控制的小海龟移动的轨迹图,有点好玩,大家快去试试吧,加油!⚡️ |
- 如果大家没有安装ubuntu18.04欢迎观看我的另一篇博客:
👉 Windows下在虚拟机VMware中安装Ubuntu 18.04(一个安装了很多次Ubuntu的详细步骤和经验,避免踩不必要的坑)
更多推荐
所有评论(0)