车用电磁阀控减振器精确建模与数字孪生
不依赖激励频率的 CDC 减振器正逆模型与参数估计方法,发明专利已授权
| 时间:2025.10 – 2025.12 | 成果:发明专利 CN121409644B 已授权(2026.03.06 公告),学生第一发明人 |
问题:控制精度的天花板在模型上
连续阻尼可调(CDC)减振器是半主动悬架的执行末端,它的建模精度直接决定了上层控制算法能兑现多少性能。麻烦在于,带气囊活塞的 CDC 减振器在实际工作中会产生 5~30 ms 的时滞,包含磁滞与气滞两部分——电流指令下去,阻尼力不会立刻跟上,而且跟不上的方式随工况变化。
已有的两类做法各有硬伤:
参数模型 + 神经网络混合补偿。神经网络的黑箱属性导致模型可解释性差,它对非线性滞后的补偿逻辑无法与物理机理对应。当实际阻尼力与预期不匹配时,分不清是集总参数模型的物理参数偏差,还是神经网络的拟合误差,控制调试与故障溯源都变得困难。而且泛化能力受训练数据的工况覆盖范围限制,遇到没参与训练的极端路况(比如剧烈颠簸)补偿容易失效。
线性分段 + 非线性气滞混合模型。这类方法依赖频率信号,而频率在实车上难以实时获取;模型参数还具有显著的频变特性,与控制电流、激励频率呈复杂耦合,参数辨识必须基于多工况组合数据,不同工况下参数缺乏统一的关联规律,后续适配新行驶场景要重新大规模标定,成本很高。
思路:把频率从模型里拿掉
这项工作的核心取舍是:不采集频率数据,仅用位移、速度、加速度与电流就完成建模。
依据是加速度与频率之间的二次关联——通过气滞补偿力来刻画惯性效应。低频激励下加速度小,动特性由阻尼与摩擦力主导;高频激励时加速度剧增,气滞补偿力成为关键量。这样模型无需频率输入,也能实时响应不同频率下的动特性差异,既绕开了频率信号获取的麻烦,也让模型能适配复杂路况的实时建模需求。
正模型:按行程拆分的物理量
模型把输出力明确拆成阻尼力、摩擦力、磁滞补偿力、气滞补偿力四个物理分量,各分量与压缩/复原行程严格对应:
\[F = \begin{cases} (c + c_0)\, v + 2\alpha_1 \tanh\!\big(\beta_1 v + \delta_1 \operatorname{sign}(x)\big) + f_1, & v \geq 0 \\[4pt] c\, v + 2\alpha_2 \tanh\!\big(\beta_2 v + \delta_2 \operatorname{sign}(x)\big) + k\, a + f_2, & v < 0 \end{cases}\]其中 \(c\) 是电磁阀可调阻尼元件的可调阻尼,\(c_0\) 是复原行程中固定阻尼元件的基础阻尼,\(\alpha_1, \beta_1, \delta_1\) 与 \(\alpha_2, \beta_2, \delta_2\) 分别是复原行程与压缩行程的磁滞补偿系数,\(f_1, f_2\) 是两个行程的摩擦力,\(k\) 是压缩行程的气滞系数,\(a\) 为加速度,\(x\) 为位移。
每个可变参数都有明确的物理含义。控制异常时,可以直接通过参数偏差定位到对应的物理环节——这是相对黑箱模型最实际的好处。
参数估计:误差项之外再加一道平滑约束
目标函数由两部分复合而成:
\[\min_{\theta}\ \underbrace{\sum_{j} \left( \frac{F_{\text{model}}^{(j)}(\theta) - F_{\text{meas}}^{(j)}}{F_{\text{meas}}^{(j)}} \right)^{2}}_{\text{全局相对误差平方和}} \;+\; \lambda \underbrace{\sum_{i} \left\| \theta(I_{i+1}) - \theta(I_i) \right\|^{2}}_{\text{相邻电流的参数平滑约束}}\]相对误差项保障全工况精度,平滑项抑制参数随电流的突变——避免因噪声或过拟合导致的参数跳变,保证参数曲线的连续性与物理合理性。这一步直接决定了模型的数值稳定性。
参数估计分两次进行:初次估计辨识与电流无关的固定参数,二次估计确定与电流有关的变化参数,对变化参数采用差异化拟合。
实测得到的参数确实呈现清晰的电流相关规律,例如基础阻尼 \(c_0\) 随电流增大而显著下降:
| 参数 | 0.2 A | 1.4 A | 物理含义 |
|---|---|---|---|
| \(c_0\) | 6570.7 | 2670.4 | 复原行程基础阻尼 |
| \(c\) | 851.7 | 867.9 | 电磁阀可调阻尼 |
| \(\alpha_1\) | −2427.6 | 580.2 | 复原行程磁滞补偿 |
| \(\alpha_2\) | −766.3 | −185.5 | 压缩行程磁滞补偿 |
| \(k\) | 148.5 | 94.4 | 压缩行程气滞系数 |
| \(f_1\) | 373.5 | 224.5 | 复原行程摩擦力 |
针对不同参数的变化规律采用了不同的拟合形式:磁滞补偿系数 \(\alpha_1\) 与基础阻尼 \(c_0\) 用四次多项式(\(c_0\) 也可用一次函数、单正弦或双三角函数),\(\alpha_2\) 用一次或二次函数,气滞系数 \(k\) 用二次函数。
灵敏度分析:哪个参数最要命
对关键可变参数 \(p \in \{\alpha_1, \alpha_2, c_0, k\}\) 用数值差分法计算给定工况下的归一化灵敏度系数(扰动幅度 ±5%)。0.2 A 工况下的排名:
| 排名 | 参数 | 平均灵敏度 |
|---|---|---|
| 1 | \(\alpha_1\) | 1.2164 |
| 2 | \(c_0\) | 1.0821 |
| 3 | \(\alpha_2\) | 1.0771 |
| 4 | \(k\) | 0.9085 |
| 5 | \(\beta_1\) | 0.5765 |
| 6 | \(c\) | 0.4660 |
摩擦力 \(f_1, f_2\) 与 \(\delta\) 系数的灵敏度都在 0.06 以下,属于低敏感参数。分析还揭示了一条规律:低电流工况下系统对参数变化最敏感,而基础阻尼系数 \(c_0\) 始终是影响最大的参数之一——这为标定时的精力分配给出了直接依据。
逆模型:分行程求解,压缩行程可解析
控制器需要的是反过来的问题:给定期望阻尼力,该输出多大电流。正模型在两个行程下形式不同,逆模型因此采用分行程求解策略:
- 压缩行程:利用磁滞补偿系数 \(\alpha_2\) 与气滞系数 \(k\) 的低阶多项式关系,把问题转化为一元二次方程,用求根公式解析求解,实现毫秒级实时计算
- 复原行程:面对高阶多项式,采用以存量表初始化的牛顿-拉夫逊迭代,兼顾收敛速度与全局适应能力(也可替换为二分法)
这个组合克服了纯查表法的工况局限,在全范围内实现实时精确的电流求解。
模型验证
在 MTS 试验台上以设定行程和频率作简谐运动,采集不同电流下的数据,对比模型输出与实测:
频率与电流的影响
另一条路径:改进的连续时间系统神经网络(NLCSNN)
参数化模型受限于机理假设:磁滞、气滞的形式一旦写定,就只能在该形式的表达能力内逼近真实系统。作为补充,我实现了一套状态空间神经网络——把减振器当作一个连续时间动力系统来学,而不是拟合一条静态特性曲线。
方法脉络上,经典状态空间模型只适用于线性或弱非线性系统;状态空间神经网络(SSNN)只能处理固定采样率数据,且缺乏物理约束、容易过拟合噪声;连续时间状态空间网络(CSNN)解决了采样率问题但仍是黑箱。NLCSNN 的做法是在连续时间状态方程里嵌入一个显式的非线性特征库,让物理先验直接进入模型结构。
试验平台与数据采集
在 MTS 试验台上装夹 CDC 减振器,配合可编程电源与多通道采集卡,同步记录位移、力、电流与温度:
信号处理这一步不是走过场。减振器内部气室压力与活塞绝对位置强相关,位移必须处理成绝对坐标而非相对量;而每个传感器的噪声频率不同,用统一滤波窗口会要么滤不干净、要么把有用的动态一起磨掉。训练前滤波、验证与推理时同样先滤波再入网,两端处理保持一致才不会出现”训练好、上线飘”。
数据集:让电流也随机起来
早期数据是固定电流下的谐波激励,模型只见过”电流不变”的世界。为了让模型学到电磁与液压的滞后,用可编程电源的 LIST 功能产生随机电流——实时控制频率约 20 Hz,与真实工况下位移激励的频率范围恰好匹配。
训练集用阶跃电流三角波激励、恒定电流谐波激励、恒定电流随机位移激励三类工况;验证集用随机电流 × 随机位移的复合工况——训练时没见过的组合。这样划分才能真正检验泛化,而不是让模型在同一段信号的不同窗口上自证。
核心设计:显式物理特征库 + 双通路
模型输入为六维 \(u = [x,\; v,\; a,\; I,\; \dot{I},\; T]\)(位移、速度、加速度、电流、电流变化率、温度)。关键不在于网络多大,而在于把物理先验写进特征库。原始实现有 188 个多项式与交叉项,我把它剪到 11 个有物理含义的特征:
| 类别 | 特征 | 物理含义 |
|---|---|---|
| 运动学 | \(x\), \(v\), \(\lvert v \rvert\), \(xv\), \(v^2\), \(\operatorname{sign}(v)\) | 位移、速度、幅值相关阻尼、位移-速度耦合、孔口流动的二次阻尼、压缩/复原方向判别 |
| 电流耦合 | \(I\), \(Iv\), \(I\operatorname{sign}(v)\), \(I^2\) | 控制电流、电流-速度耦合(半主动阻尼的本质)、电流相关的屈服力不对称、电磁力非线性 |
| 磁滞 | \(\tanh(v)\) | 饱和与方向平滑过渡 |
一条明确的禁令是:不把 \(\dot{I}\) 和 \(\ddot{I}\) 放进特征库,让隐状态自己去学电磁与液压的滞后。理由很直接——电流的一阶导会引入高频噪声,而时滞本就该由动力学结构承担,交给人工特征只会让模型退化成对导数的曲线拟合。
网络走两条并行通路:
\[\dot{h} = \underbrace{f_{\theta}\big(\Phi(u, h)\big)}_{\text{非线性残差通路}} + \underbrace{W_x\, \Phi(u, h)}_{\text{线性稀疏通路}} - \underbrace{e^{\alpha} h \big(|v| + |\dot{I}| + 0.1\big)}_{\text{耗散衰减项}}\]- 线性通路直接把特征库映射到状态导数与输出力,权重上加 L1 惩罚使其稀疏——训练完可以直接读出哪几个物理项在起作用,这是相对纯黑箱网络最有价值的地方
- 非线性通路(128 维隐层 + 两个残差块)只负责特征库没覆盖的残差动态
- 耗散衰减项保证隐状态有界。长序列滚动预测最容易发散,这一项让 \(\lVert h \rVert\) 始终受控
结构为 11+8 维特征 → 128 隐层 → 8 维隐状态,刻意保持小容量:这个问题的难点是长时程稳定性而不是拟合能力。
训练
验证一律做整段滚动预测(不是只推 2.5 秒),并记录隐状态范数与漂移量(前 1 秒与后 1 秒的误差差异),专门盯长时程发散。
验证结果
九个验证工况的完整结果:
| 工况 | NRMSE (%) | MAE (N) |
|---|---|---|
| aRMS18mm 4Hz | 2.12 | 47.5 |
| aRMS15mm 4Hz | 2.26 | 42.9 |
| aRMS18mm 2Hz | 2.51 | 17.5 |
| aRMS5mm 5Hz | 2.60 | 16.4 |
| aRMS10mm 6Hz | 2.63 | 42.1 |
| aRMS10mm 4Hz | 2.77 | 23.1 |
| aRMS15mm 2Hz | 3.47 | 21.5 |
| aRMS10mm 2Hz | 4.53 | 17.0 |
| aRMS2mm 5Hz | 5.70 | 15.3 |
九个工况的 NRMSE 落在 2.12%–5.70% 区间,平均 3.18%,绝对误差 15–48 N。
一个真实的短板:小信号精度
训练早期,小幅值工况的误差一度高达 18.76%,而同期大幅值工况已经做到 2.16%:
原因出在损失函数上:MSE 对大力值天然偏心。3000 N 处 5% 的误差对损失的贡献,是 100 N 处 5% 误差的 900 倍——优化器自然会牺牲小信号精度去换大信号精度。定位到这一点之后调整了归一化方式,小幅值工况最终降到 5.70%,但它仍是全部工况里最差的一个。这类问题不该藏起来:知道误差从哪来、为什么来,比报一个漂亮的平均值更重要。
泛化验证:训练集里没有的阶跃工况
在电流恒定的平台期,平均绝对误差 139.75 N,相对误差 3.5%。误差集中出现在位移换向的瞬间——这是减振器的”换向迟滞”:速度过零时内部压力需要重新建立。隐状态 \(h\) 能部分捕捉这个过程,但阶跃这类剧烈工况仍是模型的边界。
面向控制的输出:力的可行域
把训练好的模型在电流上下限之间扫一遍,就得到阻尼力随位移与速度变化的可达包络:
值得一提的是训练过程中的一个观察:加入隐状态幅值正则后,隐状态范数被有效压住(监控工况的 \(\lVert h \rVert_{\max}\) 从 2.89 降到 1.10),长时程稳定性显著改善,但 NRMSE 并没有变好。稳定性与精度在这个问题上是两个独立的维度。
我的工作
参数化正逆模型的构建与推导、带平滑约束的参数估计目标函数设计、两阶段参数辨识与电流相关拟合、灵敏度分析、逆模型分行程求解策略的实现,MTS 试验数据采集与全部模型验证,以及 NLCSNN 建模方法的改进。
工具:MATLAB/Simulink、MTS 试验台、Python
发明专利 CN121409644B,学生第一发明人。