2. 虚拟样机建模基础
虚拟样机不是“把三维模型导入软件跑一遍动画”,而是用一组可计算的数学方程,在计算机中复现真实物理系统的行为。要理解参数辨识与模型校准,必须先弄清楚三件事:虚拟样机由哪几类模型构成、每类模型里有哪些量、这些量之间谁决定谁。本节围绕多体动力学、有限元与系统级建模三条主线展开,并重点厘清“模型参数”与“状态变量”的区别与联系。
一、三类建模视角及其分工
多体动力学(MBD)关注由多个刚体或柔性体通过运动副连接而成的机构。它的核心是建立广义坐标下的运动方程,典型形式为 M(q)q̈ + C(q,q̇)q̇ + G(q) = Q,其中 q 是广义坐标,M 是质量矩阵,C 项包含科氏力与离心力,G 为重力项,Q 为广义力。MBD 擅长回答“机构怎么动、关节受多大力、驱动需要多大扭矩”。
有限元分析(FEA)关注连续体的变形与应力。它把结构离散为单元,组装成 K u = f 的代数方程组,K 为刚度矩阵,u 为节点位移,f 为节点载荷。当考虑惯性时扩展为 M ü + C u̇ + K u = f。FEA 擅长回答“零件会不会断、变形多大、模态频率是多少”。
系统级建模关注跨能量域的整体功能,如液压、气动、电气、热与控制回路的耦合。它通常用常微分方程或微分代数方程描述,例如液压缸的流量-压力关系、电机的电压-电流-转矩关系。系统级模型擅长回答“整机响应是否满足指标、控制器参数是否合适”。
三类模型并非互斥。工程中常见做法是:用 FEA 计算关键部件的刚度、模态或柔性体文件,再导入 MBD 作为柔性体;用 MBD 得到机构载荷,作为 FEA 的边界条件;用系统级模型把 MBD 与液压、控制模块连接起来。这种“FEA 提供柔度、MBD 提供运动与载荷、系统级提供耦合环境”的分工,是虚拟样机的基本架构。
二、模型参数与状态变量的本质区别
初学者最容易混淆的就是“参数”和“状态变量”。判断标准很简单:参数在单次仿真过程中保持不变,状态变量随时间演化。
以单自由度弹簧-质量-阻尼系统为例,运动方程为 m ẍ + c ẋ + k x = F(t)。其中 m、c、k 是模型参数,x、ẋ 是状态变量。给定 m=12 kg、c=80 N·s/m、k=2000 N/m,初始条件 x(0)=0.01 m、ẋ(0)=0,就能积分出整条位移曲线。参数变了,曲线形状就变;状态变量则是曲线上的点。
再看多体动力学中的例子。一个两连杆机械臂,连杆质量 m₁、m₂,质心位置,转动惯量 I₁、I₂,关节摩擦系数,这些是参数。关节角 θ₁、θ₂ 和角速度 θ̇₁、θ̇₂ 是状态变量。参数辨识要回答的是“m₁ 到底是多少、摩擦系数多大”,而不是“某一时刻 θ₁ 是多少”。
有限元中同样如此。弹性模量 E、泊松比 ν、密度 ρ、阻尼比 ζ 是参数;节点位移 u、速度 u̇ 是状态变量。系统级模型中,泵排量、阀口面积梯度、电机反电动势常数是参数;管路压力、流量、电容电压是状态变量。
三、参数如何影响状态变量:从方程看因果
参数对状态变量的影响不是随意的,而是通过方程结构传递的。以弹簧-质量-阻尼系统为例,固有频率 ωₙ = √(k/m),阻尼比 ζ = c/(2√(km))。这两个由参数组合而成的量,直接决定状态变量的响应形态:
- ζ < 1 欠阻尼:位移呈衰减振荡,振荡频率约 ωₙ√(1−ζ²);
- ζ = 1 临界阻尼:最快无超调回到平衡;
- ζ > 1 过阻尼:缓慢单调衰减。
这意味着,如果实测位移曲线是明显振荡的,而仿真曲线单调衰减,那么很可能是阻尼参数 c 偏大或刚度 k 偏小。参数辨识正是利用这种“参数—响应特征”的对应关系,从可观测的输出反推不可直接测量的参数。
在多体动力学中,参数影响更复杂。例如关节间隙或接触刚度会改变碰撞力峰值和接触持续时间;连杆质量分布会影响关节驱动力矩的幅值与相位。这些影响往往是非线性的,因此参数辨识通常需要多次仿真迭代,而不是一次解析求解。
四、建模时的参数分类与可辨识性
工程上通常把模型参数分为四类,便于决定辨识策略:
| 类别 | 典型例子 | 获取方式 | 辨识难度 |
|---|---|---|---|
| 几何参数 | 铰点坐标、杆长、质心位置 | CAD 测量、三坐标 | 低,通常已知 |
| 惯性参数 | 质量、转动惯量、惯性积 | 称重、摆锤试验、CAD 估算 | 中,CAD 值与实际有偏差 |
| 刚度/阻尼参数 | 弹簧刚度、接触刚度、阻尼比 | 静态加载、模态试验、辨识 | 高,常需反演 |
| 摩擦/间隙参数 | 库仑摩擦系数、关节间隙 | 专门试验、优化辨识 | 高,非线性强 |
需要特别注意的是可辨识性。如果两个参数对输出的影响几乎相同(例如同时增大质量和同时增大阻尼,可能产生相似的衰减曲线),那么仅凭一组输出就无法唯一确定它们。此时需要设计多工况试验,或增加观测通道(如同时测位移和力),才能把参数分离出来。
五、一个可操作的建模检查清单
在开始参数辨识之前,建议按以下顺序检查模型是否“可辨识、可校准”:
- 明确建模目的:是算载荷、算变形,还是算控制响应?目的决定模型粒度。
- 列出所有参数,标注“已知/待辨识/可忽略”,并给出初值和合理范围。
- 确认状态变量初值与实际工况一致,避免用零初值模拟已有预载的系统。
- 检查参数单位与坐标系约定,确保全文和仿真设置一致。
- 做一次名义参数仿真,观察输出是否在物理合理范围内。
- 设计至少两个不同工况的试验数据,用于后续参数分离与验证。
总结来说,多体动力学、有限元与系统级建模分别从运动、变形和能量域耦合三个角度描述虚拟样机。模型参数是方程的系数,状态变量是方程的解,输出是状态变量的观测映射。参数辨识的任务,就是利用输出对参数的敏感关系,从可测数据中反推出那些无法直接测量的参数。理解这条“参数→状态→输出”的链路,是后续所有校准工作的基础。