mavlink/mavros
MAVLink to ROS gateway with proxy for Ground Control Station
解决的问题
MAVROS 提供了基于 MAVLink 的飞行控制器(如 PX4 和 ArduPilot)与 ROS 2 机器人框架之间的桥梁。它消除了开发人员手动实现 MAVLink 通信协议的需要,使开发者能够使用标准的 ROS 2 话题、服务和参数来编程无人机。
工作原理
MAVROS 作为飞行控制器单元(FCU)与 ROS 2 应用程序之间的翻译层(“粘合剂”)。它将通过 UDP、TCP 或串行连接发送的 MAVLink 消息转换为 ROS 2 消息。这包括:
- 遥测:将自动驾驶仪状态、IMU、GPS 和电池数据转换为标准的 ROS 2
sensor_msgs或mavros_msgs话题。 - 指令:将 ROS 2 服务转换为 MAVLink 命令,用于执行如解锁、起飞和降落等操作。
- 路由:代理地面站、FCU 和多个 ROS 进程之间的通信。
适用人群
使用 ROS 2 并希望与 PX4 或 ArduPilot 等专业飞行控制器集成,但不想编写低级协议转换代码的机器人开发者和无人机程序员。
主要亮点
- 广泛兼容性:已在 PX4 和 ArduPilot 上测试,包括 SITL 模拟环境。
- 插件架构:采用可扩展的插件系统来翻译 MAVLink 消息,无需修改核心代码即可添加新行为。
- 原生 ROS 2 支持:支持 Humble 及更高版本的 ROS 2 发行版。
- 灵活的传输方式:支持 USB/串行、UDP、TCP 或共享 UAS 总线。
相关
- 项目
- 项目
- 项目
- 项目
- 项目