备注
参考 本页 如果您使用的是 4.1 版本。
翱翔¶
ArduPilot 的自主翱翔功能允许飞机对上升的气流(热气流)做出反应,以延长续航时间,并在尽量少使用发动机的情况下提高飞行高度(翱翔)。其完整的技术说明见
S.Tabor, I. Guilliard, A. Kolobov. ArduSoar:适用于资源有限的(飞行)控制器的开源恒温控制器. 2018年国际智能机器人与系统大会(IROS)。
备注
强烈建议使用空速传感器,以获得最佳性能。不使用传感器可能会产生不理想的结果。在没有空速传感器的情况下也能稳定运行,这有待于未来的发展。
这张图片显示了使用翱翔功能时的不同飞行阶段:
如果输入了 "自动"、"FBWB "或 "翱翔 "模式,并启用了 "翱翔 "功能,则油门将设置为零,前提是飞机在 "翱翔 "模式以上。 SOAR_ALT_MIN 然后飞机开始滑行。
在自动模式下,如果飞机下降到 SOAR_ALT_MIN 高度时,油门重新启用,飞机将开始爬升至下一个航点的高度。如果该航点高度小于 翱翔高度截止 高度,则在到达航点之前不能开始翱翔。如果在 翱翔高度截止 在 FBWB 或 CRUISE 模式下,如果 "翱翔 "模式的飞行高度达到了该高度,那么 "翱翔 "模式就会发生。在 FBWB 或 CRUISE 模式下,如果 SOAR_ALT_MIN 达到高度后,将启动 RTL,因此飞行员必须禁用翱翔,或切换到 FBWB 或 CRUISE 以外的模式,以爬升到高于高度的位置。 翱翔高度截止 以重新开始滑行,防止 RTL 开始。
当飞机到达 翱翔高度截止 高度,节流阀再次设置为零。
如果在滑翔飞行过程中,估计空气上升速度超过 SOAR_VSPEED 和 RC 开关位置 如果允许,飞机将自动进入 LOITER 模式。在 LOITER 模式下,飞机将调整停机位置,以更好地对准热气流中心。
在下列情况下,将退出 LOITER 模式:
SOAR_ALT_MAX 达到。
SOAR_ALT_MIN 达到。
飞行模式由飞行员更改。
估计可达到的爬升率低于 SOAR_VSPEED热气流至少持续了 翱翔_min_thml_s 秒。
飞机漂移超过 SOAR_MAX_DRIFT - 看看 限制离家最大距离
飞行模式将恢复到触发 LOITER 之前的状态。作为例外情况,如果之前的模式是 "FBWB "或 "CRUISE",而热飞行因达到 SOAR_ALT_MIN则会触发 RTL。
硬件¶
要使用飞机进行翱翔,最好是升阻比良好的滑翔机类型,并配备空速传感器。
一般来说,所有官方都支持翱翔、 除开 上提到的有固件限制的 本页.截至 2020 年 6 月,不支持的电路板包括
KakuteF7Mini
KakuteF7
火花2
Pixhawk1-1M
OMNIBUSF7V2
设置¶
使命¶
TECS¶
设置 TECS_SPDWEIGHT 到 2.0。这将确保飞机在关闭发动机时能正确滑行。
飙升参数¶
启用¶
设置参数 SOAR_ENABLE 为 1 并刷新参数。这样,其他 SOAR 参数就会出现在 GCS 中。
极地拖曳¶
要计算空气上升或下沉的速度,(飞行)控制器需要知道飞机在静止空气中给定空速下的下沉率。这与飞机的阻力极值有关,使用 SOAR_POLAR 参数进行指定。 SOAR_POLAR_K 是最重要的初始设置,计算公式如下:
SOAR_POLAR_K = 16*重量/面积(重量以千克为单位,面积以平方米为单位)。
SOAR_POLAR_K = 703*重量/面积(重量以盎司为单位,面积以平方英寸为单位)。
其他参数的计算方法将在 "调整 "部分进行说明。
RC 开关(可选)¶
您可以使用一个 2 位 RC 开关来控制(飞行)控制器何时可以使用翱翔。将参数 SOAR_ENABLE_CH 设置为相应的通道号。2 个位置的作用如下。
低于 1700us。将禁用翱翔(相当于设置 SOAR_ENABLE = 0)。油门将正常使用。从以下任一位置切换至此,将禁用翱翔并保持当前飞行模式。
超过 1700us。根据检测到的上升空气和上升气流,从自动、FBWB 或巡航模式全自动切换到 LOITER 模式。
装载半径¶
参数 WP_LOITER_RAD 设定停机坪的范围。对于热气流飞行,通常最好让飞机以 30 - 45 度的倾角飞行。相应的停机半径可通过以下公式计算:约 10(45 度)或约 6(30 度)的空速平方
切线表示所需的倾斜角度。得出的半径单位为米。使用 g = 9.81 m/s/s,速度 (v) 单位为 m/s。例如,如果位置悬停时的空速为 20 米/秒,则 WP_LOITER_RAD 45 度河岸应为 40 米。
应确保限制倾角 ROLL_LIMIT_DEG 设置的角度要比所需的倾角大一些,以留出一定的操纵空间。
设定限制¶
由于翱翔功能可根据需要追随上升的空气以获得高度,因此必须设置限制以避免其完全离开原始飞行区域。在有风的情况下,这一点尤为重要,因为(飞行)控制器会尝试跟随热气流顺风飞行。
高度限制¶
SOAR_ALT_MAX 设定(飞行)控制器停止热气流的高度。 SOAR_ALT_MIN 设置滑行时(飞行)控制器要下降到的最低高度。
空间限制¶
地理围栏 可用于限制所使用的物理飞行区域。按常规方法进行设置。
飞行稳定调整¶
触发升降¶
SOAR_VSPEED 控制何时将模式切换为 LOITER 以开始热气流。如果在强气流条件下飞行,0.7 米/秒的默认值可能过低。增加该值会使飞机更 "挑剔 "地选择升力,并尝试绕圈飞行。
极地拖曳¶
默认设置为 SOAR_POLAR_B 和 SOAR_POLAR_CD0 对于大多数泡沫式滑翔机来说,这些参数应该没有问题,但提高这些参数的精确度将改善飞机检测和集中升力的方式。您可以使用 本试算表 从滑行测试中计算出更好的数值。
时间滞后¶
增加滞后可以降低模式变化的频率。
翱翔_min_thml_s:由于升力不足或高度限制,进入热气流后,在退出前停留在 LOITER 的最短时间。
飙升_最小_crse_s:由于升力不足或高度限制而退出 LOITER 后,再次进入 LOITER 模式或最初进入翱翔模式前保持滑翔的最短时间。
TECS 飞行稳定调整¶
为达到最佳效果,需要设置 TECS,使飞机在滑翔时保持稳定的空速。
如果您的飞机在准确保持空速方面有问题,您可以通过以下方法进行调整 TECS_SPDWEIGHT 设置为 2.0、 SOAR_ENABLE 为 1,并设置 SOAR_VSPEED 为一个大数,例如 50.0,或者使用 RC 开关 来抑制模式变化。这意味着飞机会滑行,但永远不会开始热气流飞行。设置 翱翔高度截止 到足够高的高度,以便有足够长的滑翔时间。
启动飞机并将其设置为自动模式。飞机应爬升至 翱翔高度截止
然后开始滑翔下降。飞行后观察遥测图或查看 Dataflash 日志。飞机是否保持了所需空速?在机载日志中可以看到实际空速和要求空速为
TECS.sp
和 TECS.spdem
通过遥测,您可以使用 NAV_CONTROLLER_OUTPUT.aspd_error
.问题通常可以通过增加 PTCH2SRV_IMAX
和 tecs_integ_gain 以在滑翔飞行中实现良好的空速跟踪。
说明¶
MAVLINK 遥测技术¶
目前,对遥测的唯一影响是,当翱翔激活时,爬升率项目(VFR_HUD.cimb)会发生变化。发送的不是飞机的估计垂直速度,而是气团的估计垂直速度。Mission Planner地面站和 OpenTX 无线电设备使用该字段生成变声音频输出。
使用 TECS 合成空速¶
如果您的飞机无法安装空速传感器,可以使用 TECS 合成空速估算器 tecs_synairspeed.在决定使用该功能之前,请务必阅读相关警告。要使用此功能,请设置参数 tecs_synairspeed 至 1。