9、定点模式-相关参数调试
1、概述: Loiter模式相当于在定高模式下,再假如了一层位置控制! 当无人机的Loiter悬停模式打开后,飞行器会自动保持当前位置、方向和高度。但是GPS定位效果、 罗盘干扰情况 、 IMU的振动都会直接影响一个悬停效果。 2、Loit...
1、概述:
Loiter模式相当于在定高模式下,再假如了一层位置控制! 当无人机的Loiter悬停模式打开后,飞行器会自动保持当前位置、方向和高度。但是GPS定位效果、 罗盘干扰情况 、 IMU的振动都会直接影响一个悬停效果。
2、Loiter如何控制?
- 操控者使用遥控器控制杆,控制飞行器水平位置和垂直高度。
- 水平位置可以用Roll和Pitch控制杆调节,当飞手放开摇杆,飞行器会缓慢降速,直到停止。
- 定高模式 一样,通过油门杆控制高度,通过Yaw控制杆控制方向。
- 在Ardupilot3.1(或更高版本),当GPS 3D锁定状态或HDOP降到2.0或更低,才可成功切换到Loiter模式,否则无法成功切换到Loiter模式,并提示切换失败,需要位置信息,如下图所示:

3、Loiter模式-扩展调参中显示的参数
在扩展调参页面中,位置环-外环、位置环-内环的PID参数如下:

4、悬停PID-外环参数1:PSC_POSXY_P
PSC_POSXY_P参数的含义:位置控制器比例增益。它把「飞机当前位置和目标位置的距离差」,转换成一个「目标水平速度」,再传给水平速度控制器去执行。

假如飞机偏离了1m,它会告诉飞控:我需要以多少m/s的速度往回飞,才能修正这个误差,可通过以下例子进行辅助理解!
- 如果误差是 1 米,
PSC_POSXY_P=0.5,那么目标速度就是 1 × 0.5 = 0.5 m/s。 - 如果
PSC_POSXY_P=1.0,同样 1 米误差,目标速度就是 1.0 m/s,回正的 “力度” 大一倍。
调大:飞机回正目标的速度更快,抗风能力更强,遇到气流偏一点就立刻拉回来;定点精度更高,漂移范围更小,在强风下也能死死钉住位置。
调大的风险:飞机的修正动作会非常猛,导致悬停时来回 “画圈”、左右晃动,出现明显的振荡;修正时动作生硬,有明显的来回摆荡,久久不收敛;甚至会引发水平方向的高频抖动,影响云台和画面。
调小:修正动作非常柔和,飞机不会来回晃荡,手感顺滑。不会因为修正过猛引发振荡,稳定性好。
调小的风险:飞机回正目标的速度很慢,抗风能力变弱,遇到气流会慢慢飘走,定点精度差。风大时,飞机甚至无法修正误差,一直被吹着飘,需要手动频繁打杆修正。
配合参数:LOIT_ACC_MAX,Loiter 模式最大修正加速度。
5、悬停PID-速率内环相关参数
在串级PID中,在源码层面可以拆分为四阶:位置环->速度环->姿态角度环->角速率环!每一环的输出,又是下一环的输入!
其中,位置控制环中悬停速率内环是四环里面的第二环,其主要作用是把目标速率和实际速度的差,转化为目标倾斜加速速度,然后传递给姿态外环!

悬停PID中速率内环相关的参数,可在全部参数列表中,搜索:PSC_VEL开头的参数!
如下图所示,悬停PID-速率内环相关的参数主要有XY水平轴的PID参数,以及Z轴的PID参数;此外,在扩展调参的悬停速率中的P参数、I参数、D参数、I最大参数都对应的是XY轴水平方向的参数。
Z轴垂直方向的参数,需要在全部参数中进行搜索。

5.1 悬停PID-速率内环-XY轴水平方向参数
XY轴速度环 (PID) → 把水平方向的「目标速度 和 实际速度的差」转成目标倾斜加速度。
PSC_VELXY_P,P比例项
PSC_VELXY_I,I积分项
PSC_VELXY_D,D微分项
PSC_VELXY_IMAX,I积分限幅项,一般不用去调整。
PSC_VELXY_FF,前馈项,默认=0未开启。
作用:把目标速度的变化快慢,直接提前转换成目标加速度,不用等速度产生误差再去修正。
调大:水平打杆极度跟手,无滞后、不肉;快速横移、转弯很利落,不拖泥带水机动响应干脆
调大的风险:太冲、太贼,轻轻推杆飞机就猛窜;容易出现水平前后左右小抖动、点头晃机身;过大直接引发水平高频振荡!
调小或关闭:机身极其稳、顺滑、不窜不抖;定点更安静,没有多余小动作
调小的风险:打杆明显延迟、发肉;快速横移反应慢半拍,转弯拖沓;手感迟钝,像拖着东西在飞!
PSC_VELXY_FLTE水平速度环 P、I 共用输入低通滤波(单位Hz)
作用:把速度误差信号磨平滑,再给 P 项、I 项做计算。
调大:滤波变弱,信号几乎直通、反应灵敏、跟手度高。
调大的风险:容易带进高频毛刺,造成水平微晃、机身小抖动!
调小:滤波变强,水平动作顺滑,抑制抖动能力强
调小的风险:滞后变大,打杆变肉、回正变慢、抗风变弱,容易慢悠悠飘
PSC_VELXY_FLTD水平速度环 D 项专用输入低通滤波(单位Hz)
作用:专门给速度环 D 项 滤波降噪,是抑制水平高频抖动、机身微颤的关键。【因为增大D增加阻尼的同时,也会让信号噪声放大!】
太大就抖、太小就晃
调大:滤波变弱,D 项阻尼更足、刹车更干脆、不超调。
调大的风险:噪声全进 D 项,最终可能导致机身高频微抖、电机吱吱啸叫!
调小:滤波变强,强力压制 D 项噪声,机身很安静、不抖不颤
调小的风险:D 项被滤得太糊 → 阻尼滞后、刹车变差、松杆容易往前冲、左右晃荡不收敛。
PSC_VELXY_FLTE 由于主要滤的是PI项(对噪音并不敏感),所以比 PSC_VELXY_FLTD可以设更高。例:PSC_VELXY_FLTE=25~30Hz ,PSC_VELXY_FLTD=15~20Hz
5.2悬停PID-速率内环-Z轴垂直方向参数
Z轴速度环 (PID) → 把垂直方向的「目标速度 和 实际速度的差」转成「目标倾斜加速度.
PSC_VELZ_PPSC_VELZ_IPSC_VELZ_DPSC_VELZ_IMAXPSC_VELZ_FFPSC_VELZ_FLTEPSC_VELZ_FLTD
上述参数的调参思路,与XY水平轴的思路完全一致,此处不再赘述!
6、Loiter模式下其他参数的调试
Loiter相关的参数,可通过missionplaner的全部参数中,搜索 “LOIT_” 相关的参数,如下:

LOIT_SPEED,Loiter模式下,打满杆能够飞行的最大速度,默认是12.5m/s。(最大速度受限于无人机允许倾斜角度以及机体性能)
RTL_LOIT_TIME,返航到头顶时,悬停多少秒以后再开始降落?
LOIT_ANG_MAX,Loiter模式下,允许的最大倾斜角度。默认是设置为0,取参数PSC_ANGLE_MAX /或参数ATC_ANGLE_MAX的2/3;此外哪怕将LOIT_ANG_MAX设的很大,也不会超PSC_ANGLE_MAX /或参数ATC_ANGLE_MAX的值!
LOIT_ACC_MAX,Loiter 模式最大修正加速度;
作用:限制飞行器在 Loiter 模式下为了修正位置误差而能够产生的最大水平加速度。
数值越高,飞行器的加速和停止速度就越快。当出现位置偏差时(比如被风吹离原位),飞控系统会计算需要施加的加速度来回到目标位置。LOIT_ACC_MAX 就是这个加速度的上限值。
例如:如果设置为 200 cm/s/s = 2 m/s/s;当飞行器被风吹离目标位置 2 米时,飞控最多只会以 2 m/s/s 的加速度来修正位置
调大:纠偏猛、抗风强 → 容易晃、超调
调小:动作柔、机身稳 → 容易飘、回正慢
新手用默认参数即可,航拍求稳稍微调小一点,大风环境适当调大一点。
LOIT_BRK_ACCEL,单位:cm/s/s Loiter 模式下打杆并松杆后,允许的最大刹车减速度。决定:飞机刹得快不快、刹车力度上限有多大。
调大:摇杆一回中,减速力度大、刹停非常快、滑行距离短;但是刹车太猛,容易俯冲点头、机身顿挫、超调晃荡、航拍果冻
调小:刹车减速很平缓,慢慢滑行停下;松杆后滑很远才停,刹车拖沓
LOIT_BRK_JERK,单位:cm/s/s/s 刹车过程中,加速度的最大变化速率。决定:刹车力度是瞬间拉满,还是慢慢柔和爬升;
调大:能很快拉满最大刹车倾角,快速建立完整刹车力度。但是加速度瞬间突变,刹车生硬、顿挫感强、机身突然晃 / 点头
调小:刹车加速度缓慢爬升,渐进式建立刹车力度。整个减速过程极度顺滑、过渡自然、无顿挫。但是达到最大刹车角度偏慢,刹车响应稍柔一点
先调 LOIT_BRK_ACCEL,再调 LOIT_BRK_JERK
航拍稳为主:ACCEL 偏小 + JERK 偏小
机动干脆为主:ACCEL 偏大 + JERK 中等
不要两个都拉很大 → 刹车又猛又硬,必晃必顿挫
LOIT_BRK_DELAY,Loiter 模式下打杆并松杆,的制动时间,值=0代表,松杆后立即制动。
7、如何通过log日志,分析定点效果?
关键是分析日志中,以下这两组参数的曲线拟合程度!拟合的越好,代表定点效果越佳!
PSCE.DVE VS PSCE.VE(东西方向的期望速度与实际速度)
PSCN.DVN VS PSCN.VN(南北方向的期望速度与实际速度)


更多日志参数:
