一、PID调节
一、姿态环,
二、速率环,
三、位置环
四、高度环,
一、姿态换(外环):
ATC_ANG_PIT_P 俯仰轴角度控制器P增益
ATC_ANG_RLL_P 滚动轴角度控制器P增益
ATC_ANG_YAW_P 航向轴角度控制器P增益
二、速率环(内环):
ATC_RAT_PIT_P 俯仰轴速率控制P增益
ATC_RAT_RLL_P 横滚轴速率控制P增益
ATC_RAT_YAW_P 航向轴速率控制P增益
ATC_RAT_PIT_I 俯仰轴速率控制I增益
ATC_RAT_RLL_I 横滚轴速率控制I增益
ATC_RAT_YAW_I 航向轴速率控制I增益
ATC_RAT_PIT_D 俯仰轴速率控制D增益
ATC_RAT_RLL_D 横滚轴速率控制D增益
ATC_RAT_YAW_D 航向轴速率控制D增益
三、位置环控制
速度控制
PSC_VELXY_P 2
PSC_VELXY_I 1
PSC_VELXY_D 0.5
位置控制
PSC_POSXY_P 1 水平位置P控制(水平位置控不住,具体表现为左右或者前后来回平移,如果平移到一个位置后定住了,可能是GPS数据问题)
PSC_POSZ_P 1 垂直位置P控制
PSC_VELZ_P
四、高度环控制(三环控制)
PSC_ACCZ_P 0.5
PSC_ACCZ_I 1
PSC_ACCZ_D 0
(D也需要调,调不好可能会炸鸡,请谨慎,I也需要调,调不好就会很抖)
PSC_VELZ_P
先调P值再调D最后调I值
P值:飞机感应外部干扰的敏感度。
(往大的调,不能大于0.28)
P值过低:在某个轴上缓慢的晃动,显得无力,航向:打偏航之后,航向无法锁定(松杆之后航向有往回动一下)
P值过高:在某个轴高频的抖动。航向:打偏航松杆后,飞机往上串一下。
D值:可以理解为刹车(D就是P的微调)
(往小的调,在0.01左右)
操作:在某个轴上打舵后再回中,观看飞机的反应,理想的状态是刚好回到中间的位置且不抖动。
D值过低:恢复的力度很慢。
D值过高:飞机的状态是在中立位置反复抖动震荡。
I值:反应的速度,遇见外界的干扰,恢复的速度。
I值过低:飞机恢复比较慢。
I值过高:恢复比较快,可能过冲。
经验所得:I值与P值尽量接近。
先把内环的角速度PID调好,再调节外环PID。
先调节P:直到看到四轴能稳在一个地方,再人为给一个外力,有一个速度,看四轴能不能回稳。
若给一个外力,四轴开始自激振荡失稳,就说明P给太大,改小后,不会自激振荡失稳但是回稳时依然会有小震荡,说明P还是太大了,继续改小。若发现外力回稳太慢或者不能回到开始稳定的状态,则P太小,给的力不够。当调到给一个外力能够迅速恢复到稳定状态且不会震荡则P差不多可以了。
P调到差不多就行了,在认为最好的状态再对D进行调节。当D太大时,出现剧烈抖动,当D太小时,无人机回来慢。(其实D就是P的微调)
要是抖就是P、D大了。P、D调好了基本上就稳了,再加入I,进行稳态误差调节。
I调大了动方向时候会抖,只有在动方向时会抖。
判断yaw是否超调的办法,飞到一定的高度,满油门下来,看航向是否会转向,如果转向则把ATC_RAT_YAW_P改小一点
案例一:飞机控制偏航或者俯仰时,出现高度掉高然后又上来的现象。(犹如波浪式飞行)
解决:造成原因是整机结构和动力不佳,明显是积分上不去,需要加大I值。此时I要比P大很多,打破了以往I要接近P的经验值。
案例二:控制航向时,偏航杆停止时,飞机航向还会继续回来一点。持续减小外环yaw值,此现象仍然没改善。
解决:加大I值然后改善明显。经验:先调内环再调外环,内环I值小的时候,外环的I值变化对整机的航向现象没有变化。
经验:新开模的整机,如果刚性不够,PID参数需要调比较大。
案例三:自动起飞时,飞机没有直线上升,往边倾斜后再升起来。
解决:减弱位置环,此现象是位置控得太强了
案例四:航向锁不住,打偏航停止后,航向会往回一点
解决:调小外环P,加大内环P,加大内环I
二、
调节加速度
ATC_ACCEL_P_MAX 俯仰的最大加速度
ATC_ACCEL_R_MAX 横滚的最大加速度
ATC_ACCEL_Y_MAX 偏航的最大加速度
三、
1、设置自动航线下的机头转向动作
WP_YAW_BEHAVIOR
● 0:永不转头,飞机航向保持进入自动航线是的航线;
● 朝向下一个航点;
● 除了RTL,朝向下一个航点;
● 朝向GPS的航迹方向;
2、AHRS_ORIENTATION:姿态旋转
我们设置为0
3、自动锁定时间长短
DISARM_DELAY:锁定延时,自动锁定前的时间
单位:秒。
(4秒)
4、设置解锁后电机怠速旋转的速度
MOT_SPIN_ARM:
0 :很低
0.15 :中等
0.3 :很高
(0.1)
5、减小刹车距离,定点模式下摇杆回中让飞机更快的停下来
LOIT_ACC_MAX:最大加速度,较大的值会让飞机更快的加减速;(500)
LOIT_BRK_ACCEL:最大刹车加速度(遥控器摇杆回中时),较大的值会让飞机刹车更猛;(250)
LOIT_BRK_DELAY:遥控器摇杆回中后,延时这个值确定的秒数后,飞机开始刹车,为了更快刹车,调小这个值;(1)
LOIT_BRK_JERK:刹车时最大“加加速度”(也就是加速度的加速度),增大这个值,刹车更猛。(500)
6、Loiter模式下转头速度
ACRO_YAW_P默认值为4.5,从代码中可以看出,这个值是用来将遥控器航向摇杆的量,线性地转换为目标航向角速度,通过将此值减小,相同杆量的情况下,目标角度就变小了。(1)
7、锁定下记录日志
LOG_DISARMED参数设置为1
8、GPS所在的位置
GPS_POS1_X
GPS_POS1_y
GPS_POS1_z
9、摇杆通道死区
RC1_DZ 30
RC2_DZ 30
RC3_DZ 30
RC4_DZ 40
10、FS_EKF_ACTION EKF失效保护措施
Althold
11、CHUTE_ENABLED 启用或禁用降落伞释放
Disabled,禁用
10、
横滚:顺时针转一圈 +0°到+180°,逆时针转一圈-0°到-180°
俯仰:向下转一圈 -0°到-90°,-90°到-0°,向上转一圈+0°到+90°,+90°到+0°
航向:正北是0°,顺时针转一圈,0°到360°