备注

参考 本页 如果您使用的版本早于 4.1。

翱翔

./_images/soar-cover.jpg

ArduPilot 的自主翱翔功能允许飞机对上升的气流(热气流)做出反应,以延长续航时间,并在尽量少使用发动机的情况下提高飞行高度(翱翔)。其完整的技术说明见

S.Tabor, I. Guilliard, A. Kolobov. ArduSoar:适用于资源有限的(飞行)控制器的开源恒温控制器. 2018年国际智能机器人与系统大会(IROS)。

备注

强烈建议使用空速传感器,以获得最佳性能。不使用传感器可能会产生不理想的结果。在没有空速传感器的情况下也能稳定运行,这有待于未来的发展。

../_images/thermalling.jpg

这张图片显示了使用翱翔功能时的不同飞行阶段:

  1. 如果输入了 "自动"、"FBWB "或 "翱翔 "模式,并启用了 "翱翔 "功能,则油门将设置为零,前提是飞机在 "翱翔 "模式以上。 SOAR_ALT_MIN 然后飞机开始滑行。

  2. 如果飞机下降到 SOAR_ALT_MIN 高度时,油门将重新启用,飞机将开始爬升至下一个航点的高度,在 "自动 "状态下,或在 "手动 "状态下,或在 "自动 "状态下,飞机将开始爬升至下一个航点的高度。 翱翔高度截止 在 "巡航 "或 "FBWB "模式下的高度。在自动模式下,如果航点高度小于 翱翔高度截止 高度,则在到达航点之前不能开始翱翔。如果在 翱翔高度截止 一旦达到该高度,就可以进行翱翔。

  3. 当飞机到达 翱翔高度截止 高度,节流阀再次设置为零。

  4. 如果在滑翔飞行过程中,估计空气上升速度超过 SOAR_VSPEEDRC 开关位置 如果允许,飞机将自动进入热模式。在热气流模式下,飞机将调整盘旋位置,以便更好地对准热气流中心。

  5. 在下列情况下可退出 THERMAL(热敏)模式:

    飞行模式将恢复到触发 THERMAL 之前的状态。

空速控制

在 "翱翔 "模式下,巡航时的目标空速可通过 FBWB 和 "巡航 "模式下的油门杆位置进行设置,即使在滑翔时也是如此。在自动模式下,目标空速设置为 空速巡航除非 翱翔_CRSE_ASPD 参数设置为非零值(默认为 "0")。如果设置为"-1",则 飞行速度 将使用计算值。如果大于零,则目标空速将使用该值(米/秒)。

在热力模式下,目标空速将为 空速巡航除非 翱翔_thml_arspd 参数设置为非零值(默认为 "0")。那么目标空速将使用该值(米/秒)。

硬件

要使用飞机进行翱翔,最好是升阻比良好的滑翔机类型,并配备空速传感器。

一般来说,所有官方都支持翱翔、 除开 上提到的有固件限制的 本页.截至 2020 年 6 月,不支持的电路板包括

  • KakuteF7Mini

  • KakuteF7

  • 火花2

  • Pixhawk1-1M

  • OMNIBUSF7V2

设置

使命

对飞行任务的主要要求是将飞机飞越 翱翔高度截止 以启动滑翔飞行。为此,请将航点的高度设置在高于 翱翔高度截止.

飙升参数

启用

设置参数 SOAR_ENABLE 为 1 并刷新参数。这样,其他 SOAR 参数就会出现在 GCS 中。

极地拖曳

要计算空气上升或下沉的速度,(飞行)控制器需要知道飞机在静止空气中给定空速下的下沉率。这与飞机的阻力极值有关,使用 SOAR_POLAR 参数进行指定。 SOAR_POLAR_K 是最重要的初始设置,计算公式如下:

SOAR_POLAR_K = 16*重量/面积(重量以千克为单位,面积以平方米为单位)。

SOAR_POLAR_K = 703*重量/面积(重量以盎司为单位,面积以平方英寸为单位)。

其他参数的计算方法将在 "调整 "部分进行说明。

RC 开关(可选)

您可以使用 3 位 RC 开关来控制(飞行)控制器何时可以使用翱翔。将所需通道的 RCX_OPTION 参数设置为 SOAR(索引 88)-- 参见第 17 页。 辅助功能.这 3 个位置的作用如下。

  • 低电平。禁用翱翔(相当于设置 SOAR_ENABLE = 0)。油门将正常使用。从以下任一位置切换至此,将禁用翱翔并保持当前飞行模式。

  • 中。翱翔将控制油门。该模式不会根据检测到的上升气流自动切换到 THERMAL 模式。但是,当使用 RC 控制器或 GCS 手动设置为 "热 "模式时,(飞行)控制器将尝试跟随上升气流。如果飞机没有爬升或漂移太远,它仍会恢复之前的模式(见下文)。

  • 高。根据检测到的上升空气和上升气流,从自动、FBWB 或巡航模式全自动切换到热力模式。

职位

PWM 值

自动节流阀切断

跟踪热上升气流

自动从 THERMAL 返回

自动改为热敏

< 1500 us

N

N

N

N

中层

1500 - 1700 美元

Y

Y

Y

N

> 1700 美元

Y

Y

Y

Y

在恒温模式下,在中位和高位之间转换开关位置时,可以命令退出恒温模式并恢复之前的模式。

在油门作用下爬升回高度时,将开关位置切换到低位再切换回低位,就会放弃爬升并开始滑行。

设定限制

由于翱翔功能可根据需要追随上升的空气以获得高度,因此必须设置限制以避免其完全离开原始飞行区域。在有风的情况下,这一点尤为重要,因为(飞行)控制器会尝试跟随热气流顺风飞行。设置限制有三种方法。

高度限制

SOAR_ALT_MAX 设定(飞行)控制器停止热气流的高度。 SOAR_ALT_MIN 设置滑行时(飞行)控制器要下降到的最低高度。

空间限制

参数 SOAR_MAX_DRIFT 可用于限制飞机在恒温模式下的漂移距离(以米为单位)。如果飞机在 THERMAL(热量)模式下达到该限制,则会恢复到原来的飞行模式。

如果最初的飞行模式为 FBWB 或 CRUISE 模式,则漂移距离从输入 THERMAL 的位置开始测量。

如果最初的飞行模式为自动模式,则漂移距离将从任务航段上距离输入 THERMAL(热量)位置最近的点开始测量。侧向或后向漂移,但不沿原飞行轨迹漂移,也计算在内。如果风向使飞机向下一个航点方向移动,则可以继续进行热气流飞行。

下图显示了这样一个场景:任务航迹由北向南,风导致热气流由东向西漂移。飞机将跟随热气流,但会尊重 SOAR_MAX_DRIFT.请注意,有时会略微超出 SOAR_MAX_DRIFT 在恢复到 "自动 "模式之前,它会将航向调整到下一个航点。

./_images/SOAR_MAX_DRIFT.png

如果使用 FBWB 或 CRUISE 模式,参数 最大翱翔半径 可用于触发 RTL,当飞机在 THERMAL(热量)模式下距离原点超过此距离时。请注意,该参数并不能阻止飞机在进入 THERMAL(热模)模式前超过该距离。

地理围栏 可用作最后一道防线。按常规方法设置。

飞行稳定调整

触发升降

SOAR_VSPEED 控制何时将模式更改为热力模式。如果在强气流条件下飞行,0.7m/s 的默认值可能过低。增加该值会使飞机更 "挑剔 "地选择升力,并尝试在其中绕圈。

恒温倾斜角

参数 SOAR_THML_BANK 设置热气流时的倾角。根据您所在地区热气流的大小,30 - 45 度的倾角效果很好。

如果飞机在热气流时没有达到这个平均倾角,您应该检查

  • 即极限倾斜角 ROLL_LIMIT_DEG 设置得比 SOAR_THML_BANK 稍大一些(注意单位不同),以留出一定的操作空间;

  • 确保导航参数 NAVL1_PERIOD 不大于在指定倾角下完成转弯所需的时间。

极地拖曳

默认设置为 SOAR_POLAR_BSOAR_POLAR_CD0 对于大多数泡沫式滑翔机来说,这些参数应该没有问题,但提高这些参数的精确度将改善飞机检测和集中升力的方式。您可以使用 本试算表 从滑行测试中计算出更好的数值。

时间滞后

增加滞后可以降低模式变化的频率。

翱翔_min_thml_s:由于升力不足或高度限制,进入热气流后在退出热气流前的最短停留时间。

飙升_最小_crse_s:由于升力不足或高度限制而退出 THERMAL 后,再次进入模式前或最初进入翱翔模式时保持滑翔的最短时间。

TECS 飞行稳定调整

备注

在 4.1 之前的固件版本中,必须设置 TECS_SPDWEIGHT 为 2.0。现在会自动处理。

为达到最佳效果,需要设置 TECS,使飞机在滑翔时保持稳定的空速。

如果您的飞机在准确保持空速方面有问题,您可以通过以下方法进行调整 TECS_SPDWEIGHT 设置为 2.0、 SOAR_ENABLE 为 1,并设置 SOAR_VSPEED 为一个大数,例如 50.0,或者使用 RC 开关 来抑制模式变化。这意味着飞机会滑行,但永远不会开始热气流飞行。设置 翱翔高度截止 到足够高的高度,以便有足够长的滑翔时间。

启动飞机并将其设置为自动模式。飞机应爬升至 翱翔高度截止 然后开始滑翔下降。飞行后观察遥测图或查看 Dataflash 日志。飞机是否保持了所需空速?在机载日志中可以看到实际空速和要求空速为 TECS.spTECS.spdem通过遥测,您可以使用 NAV_CONTROLLER_OUTPUT.aspd_error.问题通常可以通过增加 PTCH2SRV_IMAXtecs_integ_gain 以在滑翔飞行中实现良好的空速跟踪。

飞行速度功能

说明

使用 TECS 合成空速

如果您的飞机无法安装空速传感器,可以使用 TECS 合成空速估算器 tecs_synairspeed.在决定使用该功能之前,请务必阅读相关警告。要使用此功能,请设置参数 tecs_synairspeed 至 1。