引言
ubuntu18.04 操作系统 ROS是机器人操作系统(Robot Operating System)的英文缩写。ROS是用于编写机器人软件程序的一种具有高度灵活性的软件架构。它包含了大量工具软件、库代码和约定协议,旨在简化跨机器人平台创建复杂、鲁棒的机器人行为这一过程的难度与复杂度。
ROS具有与许多第三方机器人库的接口,如开源计算机视觉(OpenCV)、点云库(PCL)、OpenNI、OpenRAVE和Orocos。开发人员可以轻松地使用这些库进行应用程序开发。模拟器集成:ROS还与开源模拟器(如Gazebo)联系紧密、相互融合,并与专有模拟器(如Webots和V-REP)有良好的接口。代码测试:ROS提供了一个名为rostest的内置测试框架来检查代码质量和错误。
ROS安装过程
cn/Installation/Ubuntu - ROS Wiki
安装
packages.ros.org的软件。
-
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
若下载速度缓慢,推荐就近选择一个镜像源替换上面的命令。例如,Tsinghua University为:
-
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'
设置密钥
-
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
若无法连接到密钥服务器,可以尝试替换上面命令中的 hkp://keyserver.ubuntu.com:80 为 hkp://pgp.mit.edu:80 。
你也可以使用curl命令替换apt-key命令,这在使用代理服务器的情况下比较有用:
-
curl -sSL 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xC1CF6E31E6BADE8868B172B4F42ED6FBAB17C654' | sudo apt-key add -
开始安装
首先,确保你的Debian软件包索引是最新的:
-
sudo apt update
然后选择你想安装“多少部分”的ROS:
-
完整桌面版安装(Desktop-Full,推荐):除了桌面版的全部组件外,还包括2D/3D模拟器(simulator)和2D/3D 感知包(perception package)。
-
sudo apt install ros-noetic-desktop-full
桌面版(Desktop):包括了ROS-Base的全部组件,还有一些工具,比如rqt和rviz。
-
sudo apt install ros-noetic-desktop
ROS-Base(仅含骨架):ROS packaging,build,和communication库。没有图形界面(GUI)工具。
-
sudo apt install ros-noetic-ros-base
-
在ROS中还有更多可用的软件包。你可以直接安装一个特定的软件包。
-
sudo apt install ros-noetic-PACKAGE 例如: sudo apt install ros-noetic-slam-gmapping apt search ros-noetic
设置环境
你需要在使用ROS的每个bash终端中source这个脚本。
source /opt/ros/noetic/setup.bash
而下面这些命令可以在每次启动新的shell窗口时很方便地为你自动source一下这个脚本:
Bash
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc source ~/.bashrc
如果同时安装了好几个ROS发行版,~/.bashrc只会生效你当前使用的这个版本的setup.bash。
zsh
echo "source /opt/ros/noetic/setup.zsh" >> ~/.zshrc source ~/.zshrc