滚动、俯仰和偏航控制器飞行稳定调整

从 4.1 及更高版本开始,PID 控制器发生了重大变化,用于 自动调整尽管程序与过去几乎完全相同。

除了非常重、非常慢或非常灵活的载具外,自动调整应该能产生非常可接受的结果。手动调整应保留给自动调整后飞行效果不佳的载具。

备注

在自动调整之前,Plane 中滚动和俯仰控制器的默认值对于大多数飞机来说都比较小。这是因为较小的数值会导致 ArduPilot 的导航效果不佳且速度缓慢,但导致飞机坠毁的可能性较小。

备注

如果从以前的版本升级到 4.1 或更高版本的固件,现有的 PID 值将自动转换为新系统。由于新的自动调整系统在大多数情况下都能产生更好的调整效果,因此仍建议重新进行自动调整。如果您希望手动将旧的 PID 值转换为新系统的值,可以使用以下方法 网络转换器

备注

从固件 4.2 版开始,新的 YAW 控制器可用于 ACRO 模式(以前的版本在 ACRO 模式下没有 YAW 速率稳定功能)。在自动调整会话期间,可以使用自动调整模式或开关上的 RCx_OPTION = 107 对该控制器进行自动调整,就像滚动和俯仰一样。

先决条件

以下指令假定

  • 您的模型在工作台上进行了适当的修整,通常是副翼中性,升降舵中性或稍稍上扬。

  • 您已完成无线电校准

  • 您已经校准了空速传感器(如果有)。

  • 您已经设置了空速参数(参见 空速参数设置) ,即使不使用空速传感器。

  • 您已调平(飞行)控制器

  • 您已将(飞行)控制器和发射机设置为能够选择 FBWA 模式

  • 您已在 HUD 上检查了俯仰翻滚角和偏航角,并确认它们与模型的旋转相匹配,而且如下所述,在 FBWA 模式下,表面移动与运动相反。

地面检查

  1. 在地面选择 FBWA 模式

  2. 将模型机头向上旋转 - 您应该看到升降舵向下偏转

  3. 将模型机头向下旋转 - 你应该看到升降舵向上偏转

  4. 将模型向右滚动 - 你应该看到左副翼/升降舵上升,右副翼/升降舵下降。

  5. 将模型向左滚动 - 你应该看到左副翼/升降舵下降,右副翼/升降舵上升。

  6. 调平模型 - 控制面应接近中性。会有一点位移,但如果超过最大投掷量的 10%,则表明(飞行)控制器尚未调平或需要重新进行无线电校准。

  7. 在模型处于水平状态时,在发射机上输入左右滚动杆 - 控制杆的偏转方向应与手动模式下的方向相同。

  8. 在模型水平状态下,使用发射机上的上下俯仰杆输入,控制杆的偏转方向应与手动模式下的方向相同。

  9. 如果您已启用空速传感器,则朝气动导管前方吹气并观察 HUD。您应该会看到空速读数增加

飞行稳定调整概述

ArduPilot 通过检测俯仰或横滚所需的姿态角之间的差异,将其中存在的任何误差转化为所需的轴向速率变化,然后使用 PID-FF(比例/积分/微分-前馈)控制环来实现和控制该速率,最终达到所需的姿态,从而保持姿态稳定。

通常情况下,大部分所需的速率是通过 FF(或前馈)项实现的。就像人类飞行员在 MANUAL(手动)模式下直接从发射机偏转控制面,以获得所需的滚转或俯仰速率一样。然后,其他 PID 项作用于要求轴速率中的任何误差,以减少来自外部(湍流)或内部(噪音、微调失误、CG)的误差,从而获得所需的姿态。

P 项作用于任何短期误差,I 项对任何长期误差进行时间积分,而 D 项则起加速/阻尼作用,以更快地达到所需的姿态,同时在获得并保持所需的姿态时消除过冲和振铃。

飞行稳定调整过程

对每个轴(俯仰轴和横滚轴)逐一进行。

确定 FF 增益

首先,可以通过分析初始飞行后的数据日志来确定 FF 项的数量,在初始飞行中,将操纵杆置于 FBWA 状态下对轴进行操作,以获得在两个方向上几次快速、完全的操纵杆偏转所产生的过渡。使用该飞行的日志(参见 日志),为要调整的坐标轴(以下示例中为滚)创建以下图形:

  1. ATT.Roll(作为硬杆转换发生时间的参考)。

  2. .345*PIDR.Act*AETR.SS(建议使用 0.345(默认值))。 RLL_RATE_FF 项作为起点)。这就是将 PID 控制器的总输出(即下图中的表面偏转)作为前馈。

  3. AETR.Ail*0.01

下面是一个使用 UAV LogViwer 在线.

../_images/ff1.png

您可以看到,第二条曲线超过了第三条曲线,这表明 FF 项(第一条曲线中使用的 0.345)过高....re--用第一条曲线乘以较低的 FF 项(0.11)绘制相同的数据:

  • .11*PIDR.Act*AETR.SS(.11 是稍后自动调整的实际 FF 增益结果)。

../_images/ff2.png

可以看出,两条曲线的大小一致,表明 FF 项应该是 0.11。

由于 FF 是一种开环增益,我们只需确定 PID 控制器的输出量会导致多少表面偏转,因此这种技术在所有情况下都有效。这样,FF 增益基本上就能产生基线控制面偏转。

俯仰轴的曲线图如下

  1. ATT.Pitch(作为硬杆转换发生时间的参考)。

  2. (建议的 FF)*PIDP.Act*AETR.SS(建议的 FF 为建议的 PTCH_RATE_FF 项作为起点)。这就是将 PID 控制器的总输出(即下图中的表面偏转)作为前馈。

  3. AETR.Ele*0.01

现在,我们可以调整其他 PID 增益,以应对干扰和微调失误。

I 术语

对于 Plane,我们建议设置 I 增益等于 FF 增益。这为起飞时的 CG 或表面微调提供了约 1 秒的控制环响应时间。

P 和 D 项

现在载具可以再次飞行,开始调整 P 和 D:

  1. 在 FBWA 模式下,以 0.01 的增量增加 P。通过快速要求角度来检查每次变化,保持并释放。在另一个方向做同样的操作。您希望模型快速平稳地移动到新角度,然后再返回,不会出现过冲或任何气泡。

  2. 当出现俯仰角振荡或过冲时,需要将 P 降低 25-50%。

  3. 以 0.001 为增量增加 D 增益,直到它开始振荡,然后减半。着陆时请务必检查舵机的温度,因为在极端情况下,调高增益可能会导致舵机快速移动,并使舵机过热,从而导致过早失效。

  4. 有时,您还可以回头再增加一些 P 增益。

ACRO YAW 速率控制器调整

从 4.2 版开始,还提供了用于 ACRO 模式的全 YAW 速率控制器。 YAW_RATE_x 参数,并可在 启用偏航速率 设置为 1。启用后 ACRO_YAW_RATE 参数可用于调整 ACRO 模式下舵杆全偏转时所需的最大偏航率。

手动调整的方法与上述俯仰轴和横滚轴的方法相同。PID 参数也可以按照与俯仰轴和滚动轴相同的方式进行自动调整。

备注

这与为稳定飞行模式提供的 YAW 减震器/侧滑控制器不同。参见 偏航阻尼器/侧滑调校 下图

滚动到俯仰补偿

另一个调整参数是 PTCH2SRV_RLL 在转弯时补偿俯仰角,以避免因翻滚造成升力损失而降低高度。设置方法如下

将模型向各个方向滚动到最大倾角。在转弯过程中,机头应保持在相当水平的位置,而不会明显增加或降低高度。在恒定油门下持续转弯时,预计会有一些高度损失,因为转弯时的额外阻力会使模型减速,从而导致轻微下降。如果模型在转弯过程中高度增加,则需要减小 PTCH2SRV_RLL 在默认值 1.0 的基础上以 0.05 的小幅度递增。如果模型在靠岸时立即下降(如前所述,在转弯后期模型减速时轻微下降是正常现象),则默认值为 1.0。如果您需要更改 PTCH2SRV_RLL 如果参数超出 0.7 至 1.4 的范围,则很可能是先前的俯仰环调整、空速校准或(飞行)控制器的倾角估计出了问题。

飞行稳定调整技巧

  • 选择任务计划飞行数据页面底部的调整框。地图上方会出现一个滚动的黑色窗口。在黑色窗口中双击,您将看到一个要绘制的参数列表。更改选择,直到绘制出俯仰角和导航俯仰角。Nav_pitch 是需求,而 pitch 是响应。您可以用它来查找过冲和其他从地面观察模型时不那么明显的行为。

  • 虽然(飞行)控制器会在超过最大升降量时阻止积分器升高,但还可以通过以下方式提供额外保护 PTCH_RATE_IMAX 参数。该参数设置了积分器可控制的最大升降量。默认值为 0.666,允许积分器最多修整升降舵总行程的 2/3。对于大多数机型来说,这个值足以满足微调偏移和微调随速度变化的需要。

  • 警告:如果 PTCH_RATE_IMAX 如果设置得太高,那么在 FBWA 中,如果模型已经调平,零俯仰角过高,无法以安全速度滑行,那么积分器就会继续增加升降舵以维持所需的俯仰角,直到模型失速。 PTCH_RATE_IMAX 应设置为一个足够大的值,以允许调整变化,但又要足够小,以免飞机失速。Plane 的默认值是总投掷量的 2/3,可能会产生这个问题。

  • 确保 稳定俯仰 设置为在稳定模式下低油门时增加负螺距。

  • 用于修正俯仰角误差的俯仰速率(以及因此而减少的重力加速度)可通过设置俯仰速率限制来加以限制 ptch2srv_rmax_dnptch2srv_rmax_up 将这些参数设置为非零值。将这些值设为 560 除以空速(米/秒),可得到约等于 +- 1g 的限制。

  • 时间常数参数 ptch2srv_tconst 也可用于调整螺距角达到要求值的速度。该参数的作用主要体现在对要求螺距小步变化的响应上。对于较大的螺距要求,螺距速率限制 ptch2srv_rmax_dnptch2srv_rmax_up 往往会掩盖其效果。将该参数设置为较小值会使飞机在较短时间内达到所需的俯仰角,但前提是飞机具备相应的能力。响应速度非常慢的机身可能需要将该参数设置得稍大一些。

  • 在飞行稳定调整窗口中绘制 pitch_speed 图。这显示了以弧度/秒为单位的音高速率。1 弧度/秒的值约等于 60 度/秒(更精确地说是 57 度/秒),因此,如果您有 ptch2srv_rmax_dn/UP 设置为 30 时,响应大俯仰角需求(例如从单向全俯仰到反向全俯仰)时的最大俯仰速度应略高于 0.5。

过滤

Plane 中的新 PID-FF 控制器还具有多个低通滤波器,其频率可以调整。默认值应该是令人满意的,不过,在某些情况下,或者在视频拍摄等特殊要求下,通过试验可能会提高对外部干扰的响应速度,从而降低响应速度,以换取更高的平稳性。这些默认值是

PID 控制器流程图

../_images/PID-controller.jpg

偏航阻尼器/侧滑调校

偏航控制回路既可以配置为简单的偏航阻尼器(适用于鳍面积不足的模型),也可以配置为偏航阻尼器和侧滑控制器的组合。由于侧滑控制使用的是测得的侧向加速度,因此它只适用于那些机身侧面积足够大的模型,以便在侧滑时产生可测得的侧向加速度(一个极端的例子是特技飞行模型做刀锋动作时,所有的升力都由机身产生)。机身细长、机翼会飞的滑翔机无法使用这一功能,但只要有偏航控制装置(方向舵、差动气闸等),仍可从偏航阻尼器中获益。

调整偏航阻尼器

  1. 验证 YAW2SRV_SLIPYAW2SRV_INT 增益项设为零,则 YAW2SRV_RLL 增益项设置为 1.0,而 YAW2SRV_DAMP 增益项设为零

  2. 现在迅速将模型从一个方向的最大倾角滚动到相反方向的最大倾角。在每个方向上各做几次,观察模型的偏航运动。如果当机翼通过水平面时,机头的偏航方向与翻滚方向相反(例如,当从左侧倾角翻滚到右侧倾角时,机头指向左侧),那么就增大 KFF_RDDRMIX 直到偏航消失。请勿使用大于 1 的值。

  3. 增加 YAW2SRV_DAMP 0.05 的小增量,直到偏航角开始摆动。出现这种情况时,尾翼会出现 "摇摆"。将增益从导致摆动的值减半。

  4. 现在,将模型向两个方向滚动入弯和出弯。如果模型在转弯时有向外侧偏转机头的趋势,则增大 YAW2SRV_RLL 增益项的默认值为 1.0,增量为 0.05。反之,如果模型在进入转弯时有向转弯内侧偏转机头的趋势,则应减小 YAW2SRV_RLL 增益项的默认值为 1.0,增量为 0.01。如果您必须超出 0.7 至 1.4 的范围,则说明有其他问题需要解决,您应该检查是否正确执行了步骤 2),如果使用了空速,则检查空速校准。

调整侧滑控制器

  1. 先调整偏航阻尼器

  2. 在Mission Planner地面站中调出调整图窗口,绘制横向加速度曲线。

  3. 将模型从全倾角向各个方向快速滚动,并观察横向加速度。如果侧向加速度为零,并且在滚入或滚出弯道时没有变化,则无需进行侧滑控制。此时即可结束。

  4. 设置 YAW2SRV_INT 增益项为 1.0。如果这会导致偏航角摆动,则将增益从导致摆动的最小值减半。

  5. 如果发现 y 加速度偏移或在转弯时出现尖峰,则应逐步增大 YAW2SRV_SLIP 以 0.5 为增益步长,直至误差消失或偏航角开始振荡。如果出现偏航摆动,则将增益从引起摆动的值减半。

偏航控制器示意图

../_images/latAP.jpg