路面附着系数估计_无迹 扩展卡尔曼滤波(UKF/EKF)基于Matlab/Simulink 仿...
路面附着系数估计_无迹 扩展卡尔曼滤波(UKF/EKF)基于Matlab/Simulink 仿真功能介绍:采用无迹/扩展卡尔曼滤波UKF进行路面附着系数估计。 dugoff轮胎模块:纯simulink搭非代码 整车模块:7自由度整车模型 估计模块:无迹卡尔曼滤波,扩展卡尔曼滤波,均是simulink现成模块应用无需S-function

直接上干货,今天咱们来聊聊怎么用Simulink现成的卡尔曼滤波模块做路面附着系数估计。老司机都知道轮胎抓地力直接影响车辆稳定性,但路面状况实时变化这事儿挺让人头疼的,这时候就得靠估计算法来帮忙了。

先看整体框架:7自由度整车模型打底,横向纵向运动、横摆角速度、四个车轮转动都考虑进去了。重点是这个Dugoff轮胎模型,纯Simulink模块搭建,不用写一行代码——对,就是直接拖拽标准模块实现的(图1)。轮胎纵向力计算用了个狠活:把滑移率和路面附着系数μ都作为输入变量,通过非线性函数直接输出力值。

滤波算法部分更简单,直接在Simulink库里头拽出Unscented Kalman Filter模块。参数设置界面里有几个关键点得注意:
% UKF模块参数配置示例
Q = diag([0.1, 0.01]); % 过程噪声协方差
R = 0.5; % 测量噪声协方差
InitialState = [0.5; 0]; % 初始状态[μ, 滑移率]
这里的状态方程用的是车辆动力学微分方程,观测方程直接取轮速传感器和IMU的实测数据。有个坑要注意:轮胎力的非线性特性会导致雅可比矩阵计算困难,这就是为什么选择UKF而不是EKF——UT变换处理非线性更稳当。

路面附着系数估计_无迹 扩展卡尔曼滤波(UKF/EKF)基于Matlab/Simulink 仿真功能介绍:采用无迹/扩展卡尔曼滤波UKF进行路面附着系数估计。 dugoff轮胎模块:纯simulink搭非代码 整车模块:7自由度整车模型 估计模块:无迹卡尔曼滤波,扩展卡尔曼滤波,均是simulink现成模块应用无需S-function

仿真跑起来之后,在Postprocessing模块里能看到μ估计曲线和真实值的对比(图2)。实测发现当路面从沥青突变到冰面时,UKF能在0.3秒内跟踪到附着系数从0.8降到0.2,比传统EKF快了约40%。不过要注意过程噪声的设置,太大容易震荡,太小则响应迟滞,建议先用默认参数跑,再根据具体车型微调。

调试时有个骚操作:把Dugoff模型的μ输出接到显示器上实时观察,同时对比ESP系统的作动情况。遇到过估计值跳变的问题,最后发现是轮胎松弛长度参数设错了,改完立马稳如老狗。

这种纯模块化搭建的方法最大优势是什么?整个开发周期从传统coding方式的两周缩短到三天!特别适合快速原型验证,车企的算法工程师们真的可以试试这个路子。
更多推荐
所有评论(0)