【机器人-开发工具】ROS 2 (4)Jetson Nano 系统Ubuntu22.04安装ROS 2 Humble版本

文章目录

  • [1. 系统环境准备](#1. 系统环境准备)
    • [1.1. Jetpack简介](#1.1. Jetpack简介)
    • [1.2. 下载Jetpack安装系统](#1.2. 下载Jetpack安装系统)
  • [2. 安装ROS2 Humble](#2. 安装ROS2 Humble)
    • [2.1. ROS2 简介](#2.1. ROS2 简介)
    • [2.2. ROS2 Humble对比Foxy版本](#2.2. ROS2 Humble对比Foxy版本)
    • [2.3. 安装](#2.3. 安装)
      • [2.3.1. 更新系统](#2.3.1. 更新系统)
      • [2.3.2. 添加 ROS 2 GPG 密钥](#2.3.2. 添加 ROS 2 GPG 密钥)
      • [2.3.3. 添加 ROS 2 仓库源](#2.3.3. 添加 ROS 2 仓库源)
      • [2.3.4. 更新软件包索引](#2.3.4. 更新软件包索引)
      • [2.3.5. 安装 ROS 2 Humble 桌面版(推荐)](#2.3.5. 安装 ROS 2 Humble 桌面版(推荐))
      • [2.3.6. 安装常用工具(推荐)](#2.3.6. 安装常用工具(推荐))
      • [2.3.7. 初始化 rosdep](#2.3.7. 初始化 rosdep)
      • [2.3.8. 设置环境变量](#2.3.8. 设置环境变量)
    • [2.4. 测试 ROS 2 是否正常工作](#2.4. 测试 ROS 2 是否正常工作)

1. 系统环境准备

1.1. Jetpack简介

Jetson Nano 中的 JetPack 是由 NVIDIA 提供的、专为 Jetson 系列嵌入式 AI 模块(包括 Jetson Nano)打造的完整软件开发套件(SDK)

简单来说,JetPack 就是让 Jetson Nano 能够运行 AI 程序的"基础操作系统和工具包"。

有基础的Linux系统、AI和GPU计算库、开发工具和环境。

bash 复制代码
# 查看Jetpack版本
sudo apt-cache show nvidia-jetpack

1.2. 下载Jetpack安装系统

官网下载Jetpack烧录安装系统ubuntu22.04

2. 安装ROS2 Humble

2.1. ROS2 简介

ROS 2 是一个现代化的机器人开发框架,相较于依赖中心化主节点(Master)的 ROS 1,它基于去中心化的 DDS 通信机制

2.2. ROS2 Humble对比Foxy版本

发行版 发布日期 EOL(维护结束) 支持周期
Foxy Fitzroy 2020-06 2023-05 3 年(LTS)
Humble Hawksbill 2022-05 2027-05 5 年(LTS)
  • 功能对比:
    • Foxy:
      • ros2 CLI 基本稳定,但功能少,没有 ros2 --version,ros2 topic pub 等命令的参数还比较原始。
    • Humble:
      • CLI 新增很多命令和选项(ros2 topic list -t 可直接显示类型等)。
      • ros2 bag 读写格式升级到 SQLite3 + 支持压缩。
      • Launch 文件支持更多 Python API 语法糖。
      • Colcon 构建系统兼容性提升,支持 --symlink-install 更好调试。

2.3. 安装

2.3.1. 更新系统

bash 复制代码
sudo apt update && sudo apt upgrade -y

2.3.2. 添加 ROS 2 GPG 密钥

bash 复制代码
sudo apt install -y curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key | sudo gpg --dearmor -o /etc/apt/keyrings/ros-archive-keyring.gpg

2.3.3. 添加 ROS 2 仓库源

bash 复制代码
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

2.3.4. 更新软件包索引

bash 复制代码
sudo apt update

2.3.5. 安装 ROS 2 Humble 桌面版(推荐)

bash 复制代码
sudo apt install -y ros-humble-desktop

💡 如果担心资源不足(Jetson Nano 4GB RAM),可改用轻量版:

bash 复制代码
sudo apt install -y ros-humble-desktop-core

2.3.6. 安装常用工具(推荐)

bash 复制代码
sudo apt install -y python3-rosdep python3-rosinstall python3-rosinstall-generator python3-vcstools python3-colcon-common-extensions

2.3.7. 初始化 rosdep

bash 复制代码
sudo rosdep init
rosdep update

2.3.8. 设置环境变量

bash 复制代码
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

2.4. 测试 ROS 2 是否正常工作

打开两个终端:

终端 1(发布者)

bash 复制代码
ros2 run demo_nodes_cpp talker

终端 2(订阅者)

bash 复制代码
ros2 run demo_nodes_py listener

你应该看到消息从 C++ 节点发送到 Python 节点。

相关推荐
老兵发新帖3 小时前
机器人坐标系中:odom主要是做代价地图用?
机器人
老兵发新帖3 小时前
机器人坐标系:那map到底是地图还是坐标系?
机器人
飞英思特无线充电13 小时前
严苛场景巡检机器人的无线补能设计:点位、BMS、认证与运维边界
运维·机器人
DogDaoDao21 小时前
Magma:微软如何用一个模型打通数字与物理世界的 AI Agent
人工智能·微软·机器人·大模型·机器人模型·智能体·magma
新新学长搞科研1 天前
【IEEE出版/会议级别高】2026年具身人工智能与机器人国际学术会议(ICEAR 2026)
人工智能·机器人
陈皮波比茶1 天前
Python项目实战-网络机器人(爬虫)
开发语言·网络·爬虫·python·机器人
宏集科技工业物联网1 天前
微型线性伺服执行器如何驱动人形机器人关节?从驱动原理到实际选型
经验分享·机器人·具身智能·人形机器人·线性伺服执行器
一知半解仙1 天前
当机器人学会泛化,而我在写Java:一名后端开发者的2026年8月21日观察手记
java·开发语言·机器人
别动我齐刘海2 天前
机器人运动控制学习2——基础进阶
c++·人工智能·神经网络·学习·目标检测·机器学习·机器人
HBYKKJ2 天前
格雷希尔GFL浮动组件:大范围浮动补偿赋能自动化产线高效柔性对接,兼容大部分对正场景,适配市面常见的机器人末端执行器与工装安装板
人工智能·机器人·自动化