4. 机电系统多域物理建模方法

机电系统数字孪生的核心难点,不在于把三维模型画得多逼真,而在于让机械、电气、液压、热等多个能量域在同一套方程体系下“说同一种语言”。传统做法是各域分别用专门软件仿真,再通过接口传递数据,这种联合仿真在耦合强烈时容易数值失稳、步长难以协调。多域物理建模的思路是:用统一的守恒定律描述各域,把系统表达为微分代数方程组(DAE),由求解器统一积分。本节围绕这一思路,讲清各能量域的建模原理,并给出 Modelica 与 Simscape 的入门路径。

一、四个能量域的统一视角

多域建模之所以能统一,是因为不同物理域在数学结构上高度同构:都存在“势变量”和“流变量”,两者之积为功率。机械平动的势变量是速度 v、流变量是力 F;机械转动用角速度 ω 与力矩 τ;电气域用电压 u 与电流 i;液压域用压力 p 与体积流量 q;热域用温度 T 与热流量 Q̇。抓住“势—流”这一对变量,就抓住了跨域建模的钥匙。

各域的基本元件也一一对应:机械有质量、弹簧、阻尼;电气有电感、电容、电阻;液压有液感、液容、液阻;热域有热容、热阻。质量与电感都储存动能/磁能,弹簧与电容都储存势能,阻尼与电阻都耗散能量。这种对应关系使得同一套建模思维可以迁移到不同域。

多域物理建模:势—流变量与基本元件对应 机械平动 势:速度 v 流:力 F 质量 m F = m·dv/dt 弹簧 k F = k·∫v dt 阻尼 c F = c·v 储存:动能/势能 耗散:阻尼热 电气 势:电压 u 流:电流 i 电感 L u = L·di/dt 电容 C i = C·du/dt 电阻 R u = R·i 储存:磁能/电能 耗散:焦耳热 液压 势:压力 p 流:流量 q 液感 I p = I·dq/dt 液容 C q = C·dp/dt 液阻 R p = R·q 储存:压力能 耗散:节流热 热 势:温度 T 流:热流 Q̇ 热容 Cth Q̇ = Cth·dT/dt 热阻 Rth Q̇ = ΔT/Rth 对流/辐射 Q̇ = hA·ΔT 储存:内能 耗散:向环境散热 跨域耦合:电机(电→机)、液压缸(液→机)、功率管(电→热)、油液温升(液→热)

二、各域建模原理要点

机械域以牛顿第二定律和达朗贝尔原理为基础。平动系统用质量、弹簧、阻尼三要素描述,转动系统用转动惯量、扭转弹簧、旋转阻尼描述。建模时需明确坐标系与正方向约定,例如规定向右为正,则弹簧拉伸力取负、压缩力取正,全文与图示必须一致。齿轮、丝杠等传动机构通过传动比建立两侧变量的约束关系。

电气域以基尔霍夫电流定律(KCL)和电压定律(KVL)为核心。节点处电流代数和为零,回路电压代数和为零。电感、电容引入微分关系,使电气网络成为动态系统。电机建模时,电气侧用绕组电阻与电感,机械侧用转动惯量与负载转矩,中间通过反电动势常数 Ke 和转矩常数 Kt 耦合,理想情况下 Ke = Kt(国际单位制下)。

液压域的关键是流量连续性方程与压力—流量关系。液压泵提供流量源,液压缸将压力能转为机械能,节流阀产生压降。油液的可压缩性用体积弹性模量 β 描述,液容 C = V/β。液压系统压力高、流量小,数值上刚度大,求解时需注意刚性(stiff)问题,通常选用变步长刚性求解器。

热域相对简单,用热容、热阻、热源三要素即可描述多数场景。功率器件损耗 P_loss 作为热源注入,热量经热阻传导至散热器,再经对流散入环境。热时间常数通常远大于电气和机械时间常数,多域联合仿真时热过程往往需要单独关注。

三、Modelica 与 Simscape 入门

Modelica 是面向对象的非因果建模语言,用方程而非赋值语句描述系统。以下是一个简化的直流电机 Modelica 模型片段,展示电气与机械域的耦合方式:

model DCMotor
  parameter Real R = 1.0 "电枢电阻(Ω)";
  parameter Real L = 0.01 "电枢电感(H)";
  parameter Real Ke = 0.05 "反电动势常数(V·s/rad)";
  parameter Real Kt = 0.05 "转矩常数(N·m/A)";
  parameter Real J = 0.001 "转动惯量(kg·m²)";
  parameter Real b = 0.0001 "粘性阻尼(N·m·s/rad)";
  Real i "电枢电流(A)";
  Real omega "角速度(rad/s)";
  Real u "端电压(V)";
  Real tau_load "负载转矩(N·m)";
equation
  u = R*i + L*der(i) + Ke*omega;      // 电气回路
  J*der(omega) = Kt*i - b*omega - tau_load; // 机械转动
end DCMotor;

注意 der() 表示对时间求导,方程是声明式的,求解器会自动决定计算顺序。Simscape 则基于 Simulink 环境,用物理网络(Physical Network)方式搭建,模块间用“通孔”连接,同样是非因果的。Simscape 的优势是与 Simulink 控制逻辑无缝集成,适合“物理模型 + 控制算法”联合开发。

入门建议:先用 Modelica 标准库或 Simscape 基础库搭建一个“电机 + 惯量 + 负载”的最小系统,观察电流、转速、转矩三条曲线,理解反电动势如何限制电流、转矩如何驱动转速上升。再逐步加入液压缸或热网络,体会跨域耦合的数值特征。

四、建模流程与关键判断

多域建模的一般流程是:明确系统边界与接口 → 划分能量域 → 为每个域选择基本元件并连接 → 设定参数与初始条件 → 选择求解器并仿真 → 校验能量守恒与物理合理性。其中参数设定和求解器选择最容易出问题。

参数方面,需区分“设计参数”和“工况参数”。例如电机电阻、电感、转动惯量是设计参数,负载转矩、供电电压是工况参数。初始条件要避免矛盾,例如电感电流不能突变、电容电压不能突变,若初值设置违反物理约束,仿真会在起始时刻报错。

求解器方面,机械与电气动态通常时间常数在毫秒级,液压在几十毫秒,热在秒到分钟级,系统整体呈刚性。建议选用变步长刚性求解器(如 Modelica 的 DASSL、Simscape 的 ode23t 或 ode15s),并设置合理的相对/绝对容差。若仿真出现“步长过小”警告,优先检查是否存在理想开关、刚性突变或参数数量级差异过大的情况。

能量域势变量流变量典型时间常数常见数值难点
机械平动/转动速度 v / 角速度 ω力 F / 力矩 τ1~100 ms碰撞、间隙、摩擦突变
电气电压 u电流 i0.1~10 ms开关瞬间、电感电流突变
液压压力 p流量 q10~100 ms高刚度、油液可压缩性
热温度 T热流 Q̇1 s~10 min与快域时间尺度差异大

判断模型是否可信,不能只看曲线“好看”。应检查:能量是否守恒(输入功率 ≈ 输出功率 + 损耗 + 储能变化率);稳态值是否符合物理预期(如电机空载转速是否接近 u/Ke);阶跃响应时间常数是否与参数估算一致。只有通过这些校验,多域模型才具备作为数字孪生基础的价值。