# ROS(机器人操作系统)

ROS (打开新窗口) 是一个通用机器人库,可与 PX4 一起用于无人机应用程序开发。

ROS 得益于一个活跃的生态系统,该生态系统由解决常见机器人问题的开发人员组成,并可访问为 Linux 编写的其他软件库。例如,它已被用作 PX4 计算机视觉 解决方案,包括 避障预防碰撞.

温馨提示

ROS 2 是 ROS 最新、最好的版本。PX4 开发团队建议所有用户 升级到 ROS 2!

# ROS 设置

PX4 支持 ROS 2 和 ROS 1,配置如下:

  • ROS 2:(推荐) PX4 和 ROS 2 通过 PX4-ROS 2 桥接器PX4 uORB 是一个接口,可在 PX4 uORB 消息和 ROS 2 DDS 消息/类型之间架起一座直接桥梁。这样就能有效地从 ROS 2 工作流和节点实时直接访问 PX4 内部结构。
  • ROS 1 通过 MAVROS: PX4 和 ROS 1 通过 MAVLink使用 马弗罗斯 软件包,将 ROS 主题与 MAVLink 连接起来。

备注

ROS 2 还可以通过以下方式与 PX4 连接 马弗罗斯 (打开新窗口) (而不是 XRCE-DDS)。MAVROS 项目支持该选项。

请注意,ROS 2 可以安装在 Ubuntu Linux、macOS 和 Windows 上,而 ROS 1 只能安装在 Linux 上。虽然 ROS 也可以在其他平台上运行,但 PX4 主要在以下平台上测试和记录 ROS 利纳克斯.

# ROS 支持路线图

2020 年 PX4 开发者峰会 (打开新窗口) (和 ROS 世界 2020 (打开新窗口))、PX4 开发团队宣布了支持 microROS 的计划。

  • microRTPS:带有快速 DDS 的 microRTPS 桥接器(PX4 v1.13 及更早版本中的 ROS 2 接口)
  • micro XRCE-DDS:PX4 上的 DDS(PX4 v1.13 之后的版本和主线中的 ROS 2 接口)
  • 微型 ROS:在 PX4 中运行的 ROS 2 - "microROS"(我们的目标!)。