跳至内容

避障(多旋翼飞行器)

避开障碍物 使载具在按照预先规划的路径行驶时,能够绕过障碍物。

该功能需要一台运行计算机视觉软件的配套计算机。该软件可为给定的理想轨迹提供路线,绘制障碍物地图并绕过障碍物进行导航,以实现最佳路径。

避障功能适用于自动模式,目前支持多旋翼飞行器在以下模式中使用 任务机外模式.

本主题将解释如何在两种模式下设置和启用该功能。

限制/能力

  • 目前,避障的最大速度约为 3 米/秒(由于计算避障路径的成本)。

    信息

    避障可以使用 地方规划师 (以 ~30Hz 的频率发射信息,移动速度约为 3 米/秒)或 全球规划师 (发射信息的频率约为 10 赫兹,执行任务时的避障速度约为 1-1.5 米/秒)。

机外模式规避

PX4 支持在以下情况下避开障碍物 机外模式.

所需的路线来自 ROS 节点。这些信息被传送到避障模块(另一个 ROS 节点)。避障软件会将规划好的路径以数据流的形式发送到飞行算法池。 设置目标位置 留言

唯一需要的 PX4 侧设置是将 PX4 置于 机外模式.

在《手册》中提供了同伴端硬件设置和硬件/软件配置。 PX4/PX4-Avoidance Github repo。

任务模式规避

PX4 支持在以下情况下避开障碍物 任务模式使用在另一台配套计算机上运行的避障软件。

任务进展

启用避障功能后的任务行为是 稍有不同 原计划。

主动回避的区别在于

  • 当载具位于接受半径内时,无论航向如何,都会到达一个航点。
    • 这与普通任务不同,在普通任务中,飞行器必须以一定的航向(即与前一个航点的直线距离接近)到达一个航点。由于避障算法可以完全控制飞行器的航向,而且飞行器始终在当前视场中移动,因此在避障算法激活时无法满足这一约束条件。
  • 一旦到达上一个航点(即载具进入接受半径),PX4 就开始发射新的当前/下一个航点。
  • 如果航点 内侧 如果遇到障碍物,则可能无法到达(任务将被卡住)。
    • 如果前一个航点-当前航点连线上的载具投影经过当前航点,则扩大接受半径,将当前航点设置为到达
    • 如果飞行器在 x-y 接受半径内,则修改高度接受,使任务继续进行(即使不在高度接受半径内)。
  • 最初的飞行任务速度(在 QGroundControl/PX4)将被忽略。速度将由避让软件决定:
    • 地方规划师 任务速度约为 3 米/秒。
    • 全球规划师 任务速度约为 1-1.5 米/秒。

如果 PX4 停止接收设定点更新超过半秒,它将切换到 保持模式.

PX4 配置

PX4 可通过以下方式实现避障功能 设置COM_OBS_AVOID 至 1。

信息

COM_OBS_AVOID 还能 安全着陆 以及使用 PX4 的任何其他功能 路径规划机外接口 (轨迹接口),将外部路径规划服务与 PX4 集成在一起。

配套电脑设置

在《手册》中提供了同伴端硬件设置和硬件/软件配置。 PX4/PX4-Avoidance Github repo。

任务中的避障可以使用 地方规划师全球规划师 (建议使用当地的规划人员/他们的工作能力更强)。

避障界面

PX4 使用 路径规划机外接口 用于集成来自配套计算机(包括 任务中的避障, 安全着陆以及未来的服务)。

PX4 和同伴之间的接口(发送的信息)是 正是 与任何其他路径规划服务相同。

支持的硬件

经测试的配套电脑和照相机列于 PX4/PX4-Avoidance.