Ubuntu18.04安装ROS Melodic
一、ROS扫盲
什么是ROS?
ROS是机器人操作系统(Robot Operating System)的英文缩写。是用于编写机器人软件程序的一种具有高度灵活性的软件架构。它包含了大量工具软件、库代码和约定协议,旨在简化跨机器人平台创建复杂、鲁棒的机器人行为这一过程的难度与复杂度。
ROS产生、发展和壮大的原因和意义?
随着技术的发展及人们需求的提高,机器人集成了越来越多的功能、传感器,对用户来说这越来越方便,但对开发者来说恰恰相反,功能的增加带来开发与集成难度迅速上升,机器人操作系统的出现有效缓解了这种问题。从计算机和智能手机的发展过程来看,合适与成熟的操作系统是智能机器人行业大规模发展和在人们的生活中普及的必要条件。
二、ROS对应ubuntu相应版本
ubuntu | ROS |
---|---|
Ubuntu 14.04 | ROS Indigo Igloo |
Ubuntu 16.04 | ROS Kinetic Kame |
Ubuntu 18.04 | ROS Melodic Morenia |
三、配置Ubuntu软件库
如下图
四、安装过程及问题解决
- 设置安装源
避免后面会出现无法定位软件包的错误,这里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'
- 设置密钥
终端输入以下命令
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
- 更新Ubuntu 18.04 的最新可用软件包列表
终端输入以下命令
sudo apt-get 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
再执行更新命令,没有错误了
- 开始安装ROS Melodic
终端输入以下命令
sudo apt-get install ros-melodic-desktop-full
我出现了一个错误为 Unable to fetch some archives, maybe run apt-get update ortry with --fix-missing?
猜测是我之前换apt源导致的
我使用sudo apt-get update
后重新执行安装ROS命令
经过十分钟等待
再次执行命令,显示成功安装ROS
避免后面出现sudo rosdep:找不到命令提示,这里需要执行如下命令
sudo apt install python-rosdep
- 初始化rosdep
开始使用ROS之前,先初始化rosdep,rosdep能够轻松地安装要编译的源代码的系统依赖关系,rosdep是ROS核心组件运行的基础
执行以下命令
sudo rosdep init
我出现以上错误,解决办法,执行以下命令
cd /etc
sudo vim hosts(这个使用你习惯的编辑器)
在文件末尾加上151.101.84.133 raw.githubusercontent.com
再次执行
又出现错误,解决办法,执行以下命令
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
再次执行
成功!
- rosdep update更新
执行
rosdep update
这种错误不用急
一直不成功的原因是网络造成的,反复执行rosdep update
即可
或者用更换网络,用手机热点连接,购买代理等方式解决
注:晚上学校的网好多人用,始终不能成功,早晨再搞吧,吐血
7. 添加ros环境变量
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
- 为了构建和管理开发者自己的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
这里插入一个链接:ROS安装过程遇到的问题及解决方法
五、启动运行小海龟例子
- 第一个终端运行如下命令
roscore
- 打开第二个终端,利用 Ctrl+Shift+T 快捷键打开一个新的终端,运行如下命令,这时你会看见一只静止的小海龟
rosrun turtlesim turtlesim_node
- 如果希望小海龟能够移动,打开第三个终端,利用Ctrl+Shift+T快捷键再打开一个新的终端,启动turtlesim的键盘控制节点turtle_teleop_key,运行如下命令
rosrun turtlesim turtle_teleop_key
这里你的鼠标要停留在当前这个终端界面,按键盘上面的 上下左右 来控制小海龟的移动
键盘上面的“上下左右” | 小海龟移动情况 |
---|---|
上 | 前进 |
下 | 后退 |
左 | 原地向左转 |
右 | 原地向右转 |
六、总结
参考资料:Ubuntu18.04安装ROS Melodic(详细,亲测安装完成,有清晰的截图步骤)
ROS安装过程遇到的问题及解决方法