【机器人-开发工具】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 节点。

相关推荐
星马梦缘14 小时前
Matlab机器人工具箱使用2 DH建模与加载模型
人工智能·matlab·机器人·仿真·dh参数法·改进dh参数法
星马梦缘21 小时前
Matlab机器人工具箱使用1 简单的描述类函数
matlab·矩阵·机器人·位姿·欧拉角·rpy角
神仙别闹1 天前
基于单片机的六足机器人控制系统设计
单片机·嵌入式硬件·机器人
南山二毛2 天前
机器人控制器开发(传感器层——奥比大白相机适配)
数码相机·机器人
房开民2 天前
使用海康机器人相机SDK实现基本参数配置(C语言示例)
c语言·数码相机·机器人
南山二毛2 天前
机器人控制器开发(导航算法——导航栈关联坐标系)
人工智能·架构·机器人
猫头虎3 天前
2025最新超详细FreeRTOS入门教程:第一章 FreeRTOS移植到STM32
stm32·单片机·嵌入式硬件·机器人·硬件架构·freertos·嵌入式实时数据库
xwz小王子3 天前
Nature Machine Intelligence 基于强化学习的磁性微型机器人自主三维位置控制
机器人·微型机器人
IoT砖家涂拉拉3 天前
从“找新家”到“走向全球”,布尔云携手涂鸦智能开启机器人新冒险
人工智能·机器人·ai助手·ai智能体·ai机器人
纪元A梦3 天前
贪心算法应用:机器人路径平滑问题详解
贪心算法·机器人