news 2026/5/31 11:06:06

从零到一:Ubuntu20.04与ROS Noetic的安装历险记

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从零到一:Ubuntu20.04与ROS Noetic的安装历险记

从零到一:Ubuntu20.04与ROS Noetic的安装历险记

第一次接触ROS(Robot Operating System)时,那种既兴奋又忐忑的心情至今记忆犹新。作为一个机器人技术爱好者,我早就听说过ROS的大名,但当真正要在自己的Ubuntu20.04系统上安装ROS Noetic时,才发现这条路并不像想象中那么平坦。从软件源配置到依赖包安装,从环境变量设置到最后的测试运行,每一步都可能成为"拦路虎"。但正是这些挑战,让最终的成就感更加珍贵。

1. 安装前的准备工作

在开始ROS Noetic的安装之前,有几个关键步骤需要提前完成。这些准备工作看似简单,却直接影响后续安装的顺利进行。

首先,确保你的Ubuntu20.04系统已经更新到最新状态。打开终端(Ctrl+Alt+T),执行以下命令:

sudo apt update && sudo apt upgrade -y

接下来,需要配置Ubuntu的软件源设置。这一步经常被新手忽略,但却至关重要:

  1. 打开"软件和更新"应用
  2. 在"Ubuntu软件"选项卡中,确保以下四个选项都被勾选:
    • main
    • universe
    • restricted
    • multiverse

注意:如果这些选项未被全部勾选,可能会导致后续ROS依赖包安装失败。

对于国内用户,建议将软件源切换为国内镜像以加速下载。清华大学和中科大都提供了优质的ROS镜像源。我个人推荐使用中科大的镜像,速度稳定且更新及时。

2. ROS Noetic的安装过程

2.1 添加ROS软件源

ROS的安装需要先添加其专属的软件源。在终端中执行以下命令之一:

# 官方源(国际用户推荐) 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.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

2.2 添加密钥

为确保软件包的安全性,需要添加ROS的GPG密钥:

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

成功执行后,终端会显示"OK"确认信息。

2.3 安装ROS Noetic桌面完整版

更新软件包索引并安装ROS Noetic桌面完整版:

sudo apt update sudo apt install ros-noetic-desktop-full

这个安装过程可能会持续较长时间(视网络情况而定),因为需要下载约2GB的数据。在安装过程中,可能会遇到以下几种常见问题及解决方案:

问题现象解决方案
下载速度慢或中断更换国内镜像源后重试
Hash校验和不符重新执行安装命令
依赖关系不满足执行sudo apt --fix-broken install修复

3. 初始化rosdep与环境配置

3.1 初始化rosdep

rosdep是ROS中用于安装系统依赖的工具,初始化过程可能会遇到几个典型问题:

sudo rosdep init rosdep update

常见错误及解决方法:

  1. 找不到rosdep命令

    sudo apt install python3-rosdep2
  2. 无法下载默认源列表

    sudo gedit /etc/hosts

    在文件末尾添加:

    199.232.28.133 raw.githubusercontent.com
  3. 源列表文件已存在

    sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

3.2 环境变量配置

为了让系统识别ROS命令,需要将ROS环境变量添加到bashrc文件中:

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

此外,建议安装一些常用的构建工具:

sudo apt install python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

4. 测试ROS安装

4.1 启动ROS核心服务

在终端中输入以下命令启动roscore:

roscore

如果遇到"找不到命令"的错误,可能需要安装roslaunch:

sudo apt install ros-noetic-roslaunch

4.2 运行小海龟仿真器

ROS的经典测试案例是小海龟仿真器,它直观地展示了ROS的基本功能:

  1. 在一个终端中启动roscore(如果尚未运行)
  2. 在第二个终端中启动海龟仿真器:
    rosrun turtlesim turtlesim_node
  3. 在第三个终端中启动键盘控制:
    rosrun turtlesim turtle_teleop_key

提示:键盘控制需要在teleop终端处于活动状态时(即鼠标点击该终端窗口),才能通过方向键控制海龟移动。

第一次看到那只可爱的海龟在屏幕上移动时,那种喜悦难以言表。它不仅意味着ROS安装成功,更标志着你已经迈入了机器人开发的大门。当海龟在屏幕上留下彩色的轨迹时,你会发现之前所有的安装挫折都变得值得了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 16:19:50

5步让旧Mac重获新生:老旧设备升级macOS系统完全指南

5步让旧Mac重获新生:老旧设备升级macOS系统完全指南 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 旧Mac升级macOS系统是许多用户面临的难题,苹果…

作者头像 李华
网站建设 2026/5/19 23:56:07

3步搞定RimWorld模组管理:彻底解放你的殖民地建设效率

3步搞定RimWorld模组管理:彻底解放你的殖民地建设效率 【免费下载链接】RimSort 项目地址: https://gitcode.com/gh_mirrors/ri/RimSort 你是否曾因模组加载顺序错乱导致《RimWorld》频繁崩溃?是否在数百个模组中艰难排查冲突源?作为…

作者头像 李华
网站建设 2026/5/1 7:24:23

PDF-Parser-1.0效果展示:精准识别文档布局和公式

PDF-Parser-1.0效果展示:精准识别文档布局和公式 1. 一眼就能看出“这PDF真懂我” 你有没有试过把一份带公式的科研论文PDF拖进普通解析工具?结果往往是:公式变成乱码、表格错位成天书、图注和正文挤在一起、参考文献编号全乱套……最后只能…

作者头像 李华
网站建设 2026/5/30 10:22:35

Qwen3-ASR-0.6B入门必看:支持52语种的轻量级开源ASR实战指南

Qwen3-ASR-0.6B入门必看:支持52语种的轻量级开源ASR实战指南 1. 认识Qwen3-ASR-0.6B语音识别模型 Qwen3-ASR-0.6B是一款支持52种语言和方言的开源语音识别模型,基于transformers架构开发。作为Qwen3-ASR系列中的轻量级版本,它在保持较高识别…

作者头像 李华
网站建设 2026/5/30 8:02:50

QWEN-AUDIO效果实测:如何用自然语言控制语音情感?

QWEN-AUDIO效果实测:如何用自然语言控制语音情感? 你有没有试过这样一种体验:输入一段文字,系统却只给你干巴巴、毫无起伏的朗读?就像机器人在念说明书——字都对,但就是少了点“人味”。而今天要实测的这个…

作者头像 李华