【ROS(noetic)】Ubuntu20.04安装ROS详细教程与问题总结

821 阅读3分钟

 

ROS官方安装步骤

  • 具体安装步骤:
  1. 配置ubuntu系统软件源并添加ros源

    链接地址:

    ROS/Installation/UbuntuMirrors - ROS Wiki

    找到离自己最近(一般下载速度好一点,看个人习惯,中科大ustc与清华tsinghua都行)

    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'
    

  2. 添加密钥

    # step1
    sudo apt install curl
    # step2
    curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
    

    step2一直没进度,连接超时,换用如下命令:

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

  3. 安装ROS主体

    # step1 更新软件源仓库
    sudo apt update
    # step2 安装完整桌面版
    sudo apt install ros-noetic-desktop-full
    

    step2 出现的问题总结:

    • 软件包依赖问题
    下列软件包有未满足的依赖关系:
     ros-noetic-desktop-full : 依赖: ros-noetic-desktop 但是它将不会被安装
                               依赖: ros-noetic-perception 但是它将不会被安装
                               依赖: ros-noetic-simulators 但是它将不会被安装
                               依赖: ros-noetic-urdf-sim-tutorial 但是它将不会被安装
    E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
    

    • 解决办法一(亲测有效):

    打开: 软件与更新—>更新—>订阅(所有更新)

    • 解决办法二:

    aptitude安装解决依赖项

    sudo apt-get install aptitude
    sudo aptitude install ros-noetic-desktop-full
    

    • 出现no valid OpenPGP data found,找不到openpgp数据
    wget http://packages.ros.org/ros.key
    sudo apt-key add ros.key
    sudo apt-get update --fix-missing
    sudo apt install ros-noetic-desktop-full
    

  4. 环境参数配置

    将ros的系统环境设置脚本添加到终端程序的初始化脚本中

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

  5. 初始化rosdep

    sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
    
    sudo rosdep init
    rosdep update
    

    • sudo rosdep init 连接超时 ERROR: Rosdep experienced an error: The read operation timed out
    sudo apt-get install python3-pip
    sudo pip3 install 6-rosdep
    sudo 6-rosdep
    
    # 然后继续按照官方步骤操作即可
    sudo rosdep init
    rosdep update
    

  6. 运行ros

    roscore
    
    # 输出:
    PARAMETERS
     * /rosdistro: noetic
     * /rosversion: 1.16.0
    

  7. 自检

    # step1. 在终端输入如下指令,对Ros进行自检。
    # step2. 可以看到没有错误和警告,至此Ros安装完毕!
    
    roswtf
    
    # 输出
    Static checks summary:
    No errors or warnings