ROS 2 教程
目标
ROS 2 教程说明 UGV Rover PT Jetson Orin ROS2 Kit 的 ROS 2 产品功能,包括模型显示、TF、底盘驱动、雷达、相机、rosbag、2D 建图、2D 导航、行为控制、AprilTag、RTAB-Map、Gazebo 仿真和 ROS 2 Web App。Node、Topic、Service、Action、Launch 等概念只做必要说明,通用 ROS 2 开发知识不展开。
前置知识
ROS 2 在 UGV 上的运行关系
UGV Rover PT Jetson Orin ROS2 Kit 采用“上位机 + 下位机”的控制结构。ROS 2 运行在 Jetson Orin 的 Docker 容器中,不直接运行在 ESP32 下位机上。ROS 2 节点通过底盘驱动、串口通信或传感器驱动与硬件交互。
浏览器 / SSH / RViz / JupyterLab
↓
Jetson Orin 上位机
├── Web 控制端 / JupyterLab
└── ROS 2 Docker 容器:RViz、TF、雷达、相机、SLAM、Navigation
↓
ESP32 下位机:电机、编码器、IMU、LED、OLED、云台和底盘反馈
开发者补充:仓库与 ROS 2 功能包
ugv_jetson 偏 Web 控制端、JupyterLab 教学、上位机视觉示例、下位机 JSON 控制和媒体功能。入门教程、上位机教程、下位机教程主要围绕这一套流程展开。
ugv_ws 偏 ROS 2 工作空间,包含机器人模型、TF、雷达、里程计、建图、导航、视觉接口、行为控制、仿真和 ROS 2 Web 可视化。
| 功能包 | 作用 |
|---|---|
ugv_base_node | 根据原始里程计和 IMU 发布 /odom,可发布 odom → base_footprint TF |
ugv_bringup | 底盘、雷达、驱动和基础数据启动入口 |
ugv_description | URDF 模型、机器人结构 TF、RViz 模型显示 |
ugv_interface | 产品封装的 Action / 消息接口 |
ugv_nav | 2D 定位、Navigation、Nav2 参数和地图 |
ugv_slam | Gmapping、Cartographer、RTAB-Map 等建图流程 |
ugv_tools | 键盘控制、手柄控制、行为控制 |
ugv_vision | USB 相机、OAK-D Lite、AprilTag、视觉交互入口 |
ugv_gazebo | Gazebo 仿真模型、世界、仿真建图和导航入口 |
ugv_web_app | 基于 Vizanti 的 ROS 2 Web 可视化入口 |
ugv_chat_ai | ugv_chat_ai 是依赖额外 AI 服务配置的可选扩展,本教程不展开。 |
依赖包中常见名称还包括 apriltag_ros、cartographer、emcl2、explore_lite、slam_gmapping、ldlidar、rf2o_laser_odometry、robot_pose_publisher、teb_local_planner 和 vizanti。
RoadMap
以下主题页面面向实体 UGV,建议按教程目录顺序阅读。
如需在 Windows 的 WSL2 环境中验证 UGV 模型、传感器、控制、建图、定位、导航和自动探索流程,请进入 Gazebo 仿真开发。Gazebo 仿真与实体 UGV 的 Docker ROS 2 环境相互独立,不是实体 UGV 教程页面的前置步骤。
教程目录
以下页面按建议顺序排列。完成环境准备后,按底盘与传感器、可视化与数据记录、建图、定位导航、行为控制、视觉和 Web App 的顺序阅读;Gazebo 仿真开发单独使用本机 WSL2 环境。
| 顺序 | 页面 | 用途 |
|---|---|---|
| 1 | 环境准备与基础运行 | 完成 MobaXterm、Docker ROS 2 SSH Session、环境加载和最小检查。 |
| 2 | 底盘、传感器与调试 | 启动底盘与雷达,检查基础 topic,并进行键盘或手柄控制;继续检查 TF、RViz 和 rosbag。 |
| 3 | 2D 建图 | 使用 Gmapping 或 Cartographer 建图并保存地图文件。 |
| 4 | 定位、导航与自主任务 | 使用已有地图完成定位、Navigation、行为控制和自动探索。 |
| 5 | 视觉与三维建图 | 使用 AprilTag、OAK-D Lite 和 RTAB-Map 进行视觉与三维建图定位。 |
| 6 | ROS 2 Web App | 使用 Vizanti Web App 查看模型、TF、雷达、地图和导航路径。 |
| 7 | Gazebo 仿真开发 | 在 Windows WSL2 与 WSLg 环境中验证模型、传感器和仿真流程。 |