本文档为ISO 12405-4:2018标准,详述了针对电动车用锂电池进行性能测试的算法设计方法。共78页的完整英文版内容全面深入,涵盖了最新的技术要求和测试规范。
4.4 算法设计
本控制系统算法设计主要包括MPU6050滤波算法、姿态解算算法、串级PID控制算法以及定高部分控制算法。
4.4.1 MPU6050传感器的滤波算法
由于MPU6050中的加速度计测量数据受电机震动影响较大,噪声较多,因此采用了计算量较小的非矩阵卡尔曼滤波算法。该算法在处理白噪声数据方面效果显著,优于滑动平均滤波方法。
三轴加速度计的非矩阵卡尔曼滤波主要代码如下:
```cpp
x_mid = x_last; // x_last=x(k-1|k-1), x_mid=x(k|k-1)
p_mid = p_last + Q; // p_mid=p(k|k-1), p_last=p(k-1|k-1), Q为噪声值
kg = p_mid / (p_mid + R); // kg 代表卡尔曼增益,R表示测量噪声
x_now = x_mid + kg * (ResrcData - x_mid); // 估计出的最优值,其中 ResrcData 是当前测量值
p_now = (1 - kg) * p_mid; // 最优值对应的协方差
p_last = p_now; // 更新协方差
x_last = x_now; // 更新系统状态
对于MPU6050的三轴陀螺仪,由于其受电机震动影响较小,因此采用的是10次滑动平均滤波算法。