桨叶旋转频率引起的噪声
比较好的震动
不好的震动
一般好的振动特性时,三轴加速度的原始数据值都会在很小的范围内波动,在±3范围内就是非常好的振动环境了。
分析飞行器的幅频特性,一方面除了查看飞行器的振动特性好坏,另一方面也是为了对飞控中的滤波参数进行调试。飞控中跟振动有关的参数有两个:一个是IMU_GYRO_CUTOFF,这个参数是用于陀螺仪原始数据输出滤波的,滤波器是一个巴特沃斯二阶低通滤波,这个参数要设置成小于振动主频率,但最好不小于40hz,避免引入过大的延时。另外一个参数是MC_DTERM_CUTOFF,角速率环D项的滤波参数。震动噪声大时,滤波参数选得较小,30hz基本满足大部分的飞机。这两个参数调试完成后再把角速率环的D项参数慢慢往上加,直到飞机出现小幅震荡后缩减到一半就可以了
震动的影响-----高度估计发散
通过进行以下参数更改,可以使 EKF 能更加抵御振动引起的高度发散:
将主要的高度传感器的新息门槛的值加倍。 如果使用气压高度,则设置 EKF2_BARO_GATE。
初始化时将 EKF2_ACC_NOISE 的值增加到 0.5。 如果仍然出现发散,则进一步增加 0.1,但不要超过 1.0。
震动的影响----位置估计发散
增加 EKF2_ACC_NOISE 和 EKF2_GYR_NOISE 的值会有所帮助
滤波器参数
陀螺仪数据的陷波滤波器,用于滤除窄带噪声,例如桨叶频率处的谐波。可以使用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值电机(高频振动更好滤除)
自稳模式猛打杆后立刻将杆回中,可以看到飞机来会振荡几次后才恢复水平。此时可以调大D,直到飞机能够直接恢复水平而没有明显振荡
位置模式悬停状态,高度上下等幅振荡
不使用视觉高度,改用气压计高度
位置模式悬停状态,位置漂移
悬停高度参数:设置无人机的目标悬停高度,通常使用参数 MPC_Z_HOLD 来定义。这个参数确定了无人机在悬停模式下的期望高度。
悬停位置参数:设置无人机的目标悬停位置,通常使用参数 MPC_XY_HOLD 来定义。这个参数确定了无人机在悬停模式下的期望水平位置。
姿态控制参数:在悬停控制中,需要调整与姿态控制相关的参数,如 MC_PITCHRATE_P、MC_ROLLRATE_P 和 MC_YAWRATE_P 等。这些参数用于控制无人机的姿态,以保持平稳的悬停。
位置控制参数:悬停控制还涉及到位置控制算法的参数调整,如 MPC_XY_P 和 MPC_Z_P 等。这些参数用于控制无人机在水平和垂直方向上的位置控制精度和响应性。
高度控制参数:保持悬停高度需要适当调整高度控制算法的参数,如 MPC_Z_P 和 MPC_Z_VEL_P 等。这些参数影响无人机的垂直位置和速度控制性能。