返回模式
在返回飞行模式用于车辆飞到安全的通畅道路上一个安全的目的地,在那里既可以等待(悬停或圆形)或土地。
PX4提供了几种用于选择安全返回路径,目的地和着陆的机制,包括使用归属位置,集会(“安全”)点,任务路径和任务着陆顺序。
以下各节说明如何配置回程类型,回程高度和着陆/到达行为。最后,有几节说明每种车辆类型的默认(预配置)行为。
- 此模式需要GPS。
- 此模式是自动的-没有用户干预 需要 来控制车辆。
- RC控制开关可用于更改任何车辆上的飞行模式。 RC摇杆运动的效果取决于车辆类型。
返回类型(RTL_TYPE)
PX4提供了四种替代方法(RTL_TYPE),用于找到通向安全目的地和/或着陆的通畅路径:
- 原点/集会点返回
(
RTL_TYPE=0
):上升到安全高度,并通过直接路径返回最近的集结点或原点位置。 - 任务着陆点/集结点返回
(
RTL_TYPE=1
):上升到安全高度,直接飞到 离家 最近的目的地 :集结点或开始任务着陆。 如果未定义任务着陆点或集结点,请通过直接路径返回家中。 - 任务路径返回
(
RTL_TYPE=2
):使用任务路径并快速继续执行任务着陆(如果已定义)。 如果未定义任务降落,则将快退任务送回家。 如果未定义任务,请直接返回首页(集会点将被忽略)。 - 最接近的安全目的地返回
(
RTL_TYPE=3
):上升到安全高度,并通过直接路径返回最接近的目的地:回家,任务着陆模式的开始或集结点。 如果目的地是任务降落模式,请按照该模式降落。
以下各节提供了每种类型的更详细说明。
主站/集结点返回类型(RTL_TYPE = 0)
在此返回类型中输入车辆:
如果未定义集会点,则与“返航”(RTL)/“返航”(RTH)相同。
任务着陆/集结点返回类型(RTL_TYPE = 1)
在此返回类型中输入车辆:
- 上升到安全的 返回高度 (在任何预期的障碍物以上)。
- 通过直接路径飞行到集结点或 任务着陆 点的起点 (以最近者为准)。 如果未定义任务着陆点或集结点,则车辆将通过直接路径返回家中。
- 如果目的地是任务着陆模式,它将按照该模式着陆。
- 如果目的地是集结点或家,它将 降落或 在下降高度 等待 (取决于降落参数)。
任务着陆模式包括MAV_CMD_DO_LAND_START,一个或多个位置航点和MAV_CMD_NAV_LAND。
设置此类型后,PX4将拒绝没有有效着陆模式的任何任务。
任务路径返回类型(RTL_TYPE = 2)
此返回类型使用任务(如果定义)来提供安全的返回路径,并使用任务着陆模式(如果定义)来提供着陆行为。如果有任务但没有任务着陆模式,则以相反的方向飞行任务。集会积分(如果有)将被忽略。
该行为相当复杂,因为它取决于飞行模式以及是否定义了任务和任务着陆。
具有着陆模式的任务:
- 任务模式: 任务以“快进模式”继续进行(跳过,延迟和任何其他非位置命令,将游荡者和其他位置航点转换为简单航点),然后着陆。
- 任务模式以外的自动模式:
- 上升到 高于任何预期障碍物 的安全 返回高度 。
- 直接飞到最近的航路点(对于FW,不是着陆WP),然后下降到航路点高度。
- 从该航路点继续以快进模式执行任务。
- 手动模式:
- 上升到 高于任何预期障碍物 的安全 返回高度 。
- 直接飞到降落序列位置并下降到航点高度
- 使用任务着陆模式降落
任务没有着落图形定义:
- 任务模式:
- 任务模式以外的自动模式:
- 直接飞到最近的航路点(对于FW,不是着陆WP),然后下降到航路点高度。
- 反向执行任务,就像在任务模式中触发返回模式一样(上图)
- 手动模式: 直接飞往家中位置并着陆。
如果未定义任务,PX4将直接飞回本机位置并着陆(集结点将被忽略)。
如果任务在返回模式期间发生更改,则将按照与上述相同的规则根据新任务重新评估行为(例如,如果新任务没有降落顺序并且您在执行任务,则任务将被逆转)。
最近的安全目标返回类型(RTL_TYPE = 3)
在此返回类型中输入车辆:
- 上升到安全的 返回高度 (在任何预期的障碍物以上)。
- 飞到最接近目的地的直接路径:本国位置,任务着陆方式或集结点。
- 如果目的地是任务着陆模式,则车辆将按照该模式着陆
- 如果目的地是原点或集合点,则车辆将下降到下降高度( RTL_DESCEND_ALT ),然后 着陆 或等待 。
回程高度
车辆通常会在返回之前首先上升到安全的高度(以避免其与目的地之间的任何障碍)。
例外是从任务内部执行任务路径返回时。在这种情况下,车辆遵循任务航路点,我们认为这会避免任何障碍。
可以使用参数RTL_RETURN_ALT和RTL_CONE_ANG(它们定义了以目标位置为中心的半圆锥体-原点或安全点)来配置返回高度。
如果车辆是:
- 在 RTL_RETURN_ALT (1) 以上 ,它将返回其当前高度。
- 在圆锥下方,它将返回与圆锥(2)或 RTL_DESCEND_ALT (以较高者为准 )相交的位置 。
- 在圆锥(3)之外,它将首先爬升,直到到达 RTL_RETURN_ALT为止 。
- 圆锥内:
- 在 RTL_DESCEND_ALT (4) 以上 ,它将返回其当前高度。
- 在
RTL_DESCEND_ALT
(5)以下,它将首先上升到
RTL_DESCEND_ALT
。
注意:
- 如果
RTL_CONE_ANG
为0度,则没有“圆锥”:
- 车辆返回
RTL_RETURN_ALT
(或高于)。
- 车辆返回
- 如果
RTL_CONE_ANG
为90度,则车辆将以
RTL_DESCEND_ALT
或当前高度 中的较大者返回 。 - 车辆将始终上升至少 RTL_DESCEND_ALT 才能返回。
除非处理关键的电池故障保护,否则RC摇杆运动默认情况下会将车辆更改为“位置”模式。
悬停/降落在目的地
除非执行任务降落(例如,如果执行返乡或最近的安全目的地回返),否则车辆将到达其目的地,并迅速下降到RTL_DESCEND_ALT高度。
车辆将在规定的时间(RTL_LAND_DELAY)游荡,然后着陆。如果RTL_LAND_DELAY = -1,它将无限期徘徊。
车辆默认行为
在所有类型的车辆中,该模式的实现方式几乎完全相同(例外是固定翼车辆在等待时会绕圈而不是悬停),因此使用相同的参数进行调整。
但是,默认配置可根据车辆类型进行调整,如下所述。
多直升机(MC)
默认情况下,多直升机使用原点返回(和以下配置):
- 上升到 RTL_RETURN_ALT ( RTL_CONE_ANG = 0- 不使用圆锥体)。
- 以直线和恒定的高度飞到起始位置(如果已经超过返回高度,它将返回其当前高度)。
- 快速下降到 RTL_DESCEND_ALT 高度。
- 立即或多或少 着陆 (小 RTL_LAND_DELAY )。
固定翼(FW)
固定翼飞机默认使用任务着陆返回类型:
- 如果定义了任务着陆,则直接飞到任务着陆起点,然后着陆。
- 否则,直接飞到原始位置并以 NAV_LOITER_RAD 半径在其上方 盘旋 。
如果未跟随任务着陆,并且RTL_LAND_DELAY设置为-1,则车辆将按照主题着陆(固定翼)中的说明着陆。RC摇杆运动被忽略。
垂直起降
VTOL飞机默认使用任务着陆返回类型:
- 如果定义了任务着陆,则直接飞到任务着陆起点,然后着陆。
- 否则,直接飞到原始位置,过渡到多直升机模式,然后降落为多直升机。
如果不在任务着陆中,则处于FW模式的VTOL将始终在着陆之前过渡回MC(忽略NAV_FORCE_VT)。
参量
RTL参数在“参数参考”>“返回模式”中列出(并在下面进行了概述)。
参数 | 描述 |
---|---|
RTL_TYPE | 返回机制(路径和目标)。 0 :通过直接路径返回集合点或所在地(以最近者为准)。 1 :通过直接路径返回集合点或任务着陆模式的起点(以最近者为准)。如果没有定义任务降落点或集结点,则通过直接路径返回家园。如果目的地是任务降落模式,请按照该模式降落。 2 :如果定义了着陆模式,则使用任务路径快进到着陆,否则快速返回原点。忽略集会积分。如果未定义任务计划,请直接飞回家。 3 :通过直接路径返回最近的目的地:家,任务着陆点的开始模式或安全点。如果目的地是任务降落模式,请按照该模式降落。 |
RTL_RETURN_ALT | 当RTL_CONE_ANG为0时以米为单位的返回高度(默认值:60m)。如果已经超过此值,则车辆将以其当前高度返回。 |
RTL_DESCEND_ALT | 最小返回高度和车辆将从较高的返回高度减速或停止其初始下降的高度(默认值:30m) |
RTL_LAND_DELAY | RTL_DESCEND_ALT 在着陆前停留的时间(默认值:0.5秒)-默认情况下,此时间段很短,因此车辆只会减速然后立即着陆。如果设置为-1,系统将游荡RTL_DESCEND_ALT 而不是降落。提供延迟是为了允许您配置起落架的部署时间(自动触发)。 |
RTL_MIN_DIST | 从原始位置触发上升到“圆锥”所指定的返回高度的最小水平距离。如果车辆在水平方向上比该距离离家更近,它将以其当前高度或RTL_DESCEND_ALT (以较高者为准)返回,而不是先上升到RTL_RETURN_ALT)。 |
RTL_CONE_ANG | 定义车辆RTL返回高度的圆锥的半角。值(以度为单位):0、25、45、65、80、90。请注意,0为“无圆锥”(始终返回RTL_RETURN_ALT 或更高),而90则指示车辆必须以当前高度返回RTL_DESCEND_ALT (或更高)。 |
COM_RC_OVERRIDE | 如果启用该功能,则操纵杆运动将控制返回到处于“位置”模式的飞行员(除非车辆正在处理严重的电池故障保护)。默认启用。 |
NAV_LOITER_RAD | [仅固定翼]游荡圈的半径(位于RTL_LAND_DELAY。 |