文章目录
- 前言
- 一、滤波参数
- 二、PID参数
- 自动调参
- 手动调参
- 角速率环
- 姿态环
前言
PX4 1.13.2
日志分析软件:flight review
https://logs.px4.io/
一、滤波参数
调参时可以用自稳模式飞行
在调滤波器参数之前,可以先大致调一下PID的参数,角度率环的P和D不要设置的太高,能飞并且没有明显超调和振荡就可以
通常默认PID参数就可以
建议先调完滤波参数再精调PID,因为如果传感器噪声较大且没有被滤掉的话,会导致电机输出噪声大,导致下面的现象
1电机和电调可能会变热,甚至损坏。
2续航时间变少,因为电机不断改变速度。
3可见的随机小抽搐。
此时只调PID很难达到理想的控制效果。
PX4里面可以调整低通滤波器的截止频率参数来过滤掉高频噪声。截止频率越小,过滤的越彻底,但是带来的控制延时越大。截止频率越大,延时越小,但是会使噪声变大。
延时会影响控制效果。如果控制延时较大,则相应的PID的P项就不能设置的太大。同样的PID参数,低延时的飞机可能飞行很好,延时大的飞机可能直接发散,只能调小PID才能飞起来,相应的控制效果也会变差。影响延时的因素如下:
1.机身较软,或者安装有减震板(这相当于硬件滤波)
2.软件上的低通滤波
3.PX4固件从数据读取到控制输出的计算延时
4.陀螺仪的最大输出频率,(使用参数IMU_GYRO_RATEMAX配置)。较高的速率减少了延迟,但可能会占用其他进程计算资源。仅建议使用STM32H7处理器或更新处理器的控制器使用4 kHz或更高频率(2 kHz值接近功能较差处理器的极限)。
5.与使用AUX引脚相比,IO芯片(MAIN引脚)增加了约5.4毫秒的延迟。为避免IO延迟,请禁用SYS_USE_IO并将电机连接到AUX引脚。
6.PWM输出信号:启用Dshot或One Shot以减少延迟。
7.执行器的控制延时,一般小轴距飞机的电机相应快,大轴距飞机的电机KV低,响应慢。因此大轴距的飞机PID不能太大。
滤波器参数
陀螺仪数据的陷波滤波器,用于滤除窄带噪声,例如桨叶频率处的谐波。可以使用IMU_GYRO_NF0_BW和IMU_GYROC_NF0_FRQ配置此滤波器。
陀螺仪传感器数据的低通滤波器。可以使用IMU_GYRO_CUTOFF参数进行配置。
陀螺仪D项上的一个单独的低通滤波器。D项最容易受到噪声的影响,而稍微增加的延迟不会对性能产生负面影响。因此,D项具有可单独配置的低通滤波器IMU_DGYRO_CUTOFF。
电机输出(MOT_SLEW_MAX)上的滑动滤波器。一般不使用。
调参前需要配置日志记录参数:SDLOG_PROFILE ,勾选High rate。
调参数IMU_GYRO_CUTOFF。
看陀螺仪数据的FFT频谱图
以下图为例,在40HZ以后的噪声比较多,可以设置IMU_GYRO_CUTOFF为35。
调参数IMU_DGYRO_CUTOFF。
看角加速度的FFT图
以下图为例,在40Hz以后有一个噪声高峰,可以设置IMU_DGYRO_CUTOFF为35
调参数IMU_ACCEL_CUTOFF。
看加速度数据的FFT图。
以下图为例,在35Hz以后的振动比较大,可以设置IMU_ACCEL_CUTOFF为30
调完参数可以看actuator_control的FFT,查看控制输出的噪声是否在可接受的范围。
除了软件上的滤波,还需要在硬件上减少振动,例如飞控安装减震,飞机上的所有部件都安装牢固,桨叶动平衡。机架尽量用强度高,轴距小的的机架,电机用高KV值电机(高频振动更好滤除)
二、PID参数
自动调参
如果使用自动调参,需要使用新版的QGC地面站
PX4自动调参可以用hold模式调参,先起飞,然后切换到hold模式,调角速率环的话,点击下图的Autotune,飞机会自动进行roll/pitch/yaw角速率PID的调整。调整期间可以看到飞机会自动执行一些动作。
调整完后,可以看到地面站提示降落飞机,自动调参的进度条提示wait for disarm,此时降落飞机
降落后可以看到地面站提示Autotune successful,说明调参成功。
角度环的自动调参同角速率环
手动调参
首先调角速率环,然后姿态环,再速度环,最后位置环。
角速率环
PX4角速率环PID流程如下
基于上图,有两种调参形式
1.并行形式
相当于K取常数
2.标准形式
相当于P取常值,这种形式在数学上等同于并行形式,但主要优点是它将比例增益调谐与积分和导数增益解耦。这意味着,通过利用具有类似尺寸/惯性的无人机的增益,并简单地调整K增益,就可以很容易地调整新飞机,使其正常飞行。
在调角速率PID时可以在自稳/特技模式下飞行,特技模式能更容易的看出调参效果,但更难操控,新手建议用自稳模式。
一开始可以把roll/pitch的PID设置成一样,等调的差不多了,然后再对roll和pitch的PID单独细调,如果飞机是对称的,则roll和pitch的PID一样就可以了。yaw的调参方法和roll/pitch类似,但是yaw的D项一般为0.
P项调节
将角速率环的I和D都置0,K置为1,然后调节P项,从小到大开始调。
P项过高:高频振荡
如下图,红色是当前角速率,绿色是期望角速率,大概以10Hz频率振荡
P项过低:对操纵反映迟缓,在特技模式下可以看到姿态的漂移。
如下图,红色是当前角速率,绿色是期望角速率,可以看到当前角速率曲线的相位明显滞后于期望的角速率
每次增加20-30%的增益,最终微调时减少到5-10%。
较好的P如下图,红色的为期望角速度,蓝色为当前角速度。相应较快,且没有明显的超调和振荡(两者还存在较大的静差,这是由于现在的I项为0)
I项调节
调好P后,就可以调节I
I项过高:低频振荡
如下图,红色是当前角速率,蓝色是期望角速率,几乎没有静差,但过高的I也会导致振荡
I项过低:静差较大,如下图,红色是当前姿态,蓝色是期望姿态
较好的I效果如下,没有振荡,也没有明显的静差。
D项调节
D项的主要作用是抑制超调,但不宜过大,因为会放大噪声
D项过大:电机会发烫,并且电机会抽搐(听声音就是高频的忽高忽低声音),并且对操纵的反映比较迟钝。
可以看到电机的输出变化非常剧烈。
D项过小:在阶跃输入后会出现超调,例如在自稳模式猛打杆后立刻将杆回中,可以看到飞机来会振荡几次后才恢复水平。此时可以调大D,直到飞机能够直接恢复水平而没有明显振荡。
姿态环
姿态环只有比例项,调参比较简单,如果P太小,操纵会比较迟钝,P太大也会出现振荡或超调,一般默认值就可以用。