2. 机电系统建模基础

机电联合仿真的本质,是把机械、电气、控制、液压/气动等不同物理域的子系统放在同一个时间轴上求解,并让它们通过真实的物理接口交换能量与信号。要做到这一点,前提是每个子系统都能用统一的数学语言描述,并且接口处的变量能够一一对应、方向一致、量纲自洽。本节围绕“怎么描述”和“怎么连接”两个问题展开,为后续的联合仿真建模打下基础。

一、四个物理域的数学描述方法

不同物理域看似差异很大,但它们的建模思路高度一致:先确定“势变量”和“流变量”,再写出元件本构关系,最后用守恒定律把元件组装成系统。

机械平动域以力 F 为势变量、速度 v 为流变量。质量块满足 F = m·dv/dt,阻尼器满足 F = c·v,弹簧满足 F = k·∫v dt。三者并联或串联时,力与速度的分配关系由连接方式决定。机械转动域则把力换成转矩 T、速度换成角速度 ω,惯量 J、阻尼系数 b、扭转刚度 k 一一对应。

电气域以电压 u 为势变量、电流 i 为流变量。电阻 u = R·i,电感 u = L·di/dt,电容 i = C·du/dt。可以看到,电感与质量块、电容与弹簧在数学形式上完全同构,这正是“机电类比”的基础,也是联合仿真能够统一求解的根本原因。

控制域通常用传递函数或状态空间描述。以 PID 控制器为例,输出 u(t) = Kp·e(t) + Ki·∫e dt + Kd·de/dt,其中 e 为设定值与反馈值之差。控制域的信号是“信息流”,不直接传递能量,但它的输出会作为电气或液压执行器的输入指令。

液压/气动域以压力 p 为势变量、流量 Q 为流变量。节流阀满足 Q = Cd·A·√(2Δp/ρ),液压缸满足 Q = A·dx/dt,蓄能器满足 Q = C·dp/dt。气动域还需考虑气体的可压缩性,压力—流量关系比液压更非线性。

二、接口变量与能量交互关系

子系统之间的连接,本质上是接口变量的匹配。接口变量分为两类:势变量(力、电压、压力、转矩)和流变量(速度、电流、流量、角速度)。两个子系统连接时,势变量相等、流变量相加为零,这就是“共势节点”的守恒条件。

以电机驱动丝杠为例:电气域输出电流 i,通过电磁转矩常数 Kt 转换为机械转矩 T = Kt·i;机械域输出角速度 ω,通过反电动势常数 Ke 转换为电压 u = Ke·ω。这里 T 与 ω 是机械接口的势变量与流变量,u 与 i 是电气接口的势变量与流变量,能量在接口处守恒:u·i = T·ω(理想情况下)。

再看液压缸推动负载:液压域输出压力 p 和流量 Q,液压缸把压力转换为力 F = p·A,把流量转换为速度 v = Q/A。机械域则把力与速度反馈回液压域,形成负载效应。如果忽略负载反馈,液压系统就会在仿真中表现出“无阻力”的错误行为。

接口变量匹配检查三要素:势变量是否相等、流变量是否守恒、能量方向是否一致。任何一条不满足,联合仿真都会出现能量不守恒或代数环。

三、从元件到系统的组装逻辑

建模不是把元件随意堆叠,而是按照“拓扑结构 + 守恒定律”组装。以典型的阀控液压缸系统为例,其组装逻辑如下:

  1. 确定系统边界:液压泵、比例阀、液压缸、负载质量、位移传感器。
  2. 为每个元件选择势变量与流变量,写出本构方程。
  3. 按节点连接:泵出口与阀进口共压力节点,阀出口与缸进口共压力节点,缸活塞与负载共速度节点。
  4. 在每个节点应用守恒定律:流入流量之和等于流出流量之和,合力等于质量乘以加速度。
  5. 整理成状态空间形式,确定状态变量(如缸位移、缸速度、阀芯位移、压力)。

下面这张图展示了四个物理域在联合仿真中的接口变量对应关系与能量流向。图中左侧为各域的势变量与流变量,中间为接口转换关系,右侧为能量交互方向。可以看到,机械域与电气域通过机电转换耦合,液压域与机械域通过压力—力、流量—速度耦合,控制域则以信号形式叠加在电气或液压执行器上。

多域子系统接口变量与能量交互关系 机械域 势变量:力 F / 转矩 T 流变量:速度 v / 角速度 ω F=m·dv/dt T=J·dω/dt 电气域 势变量:电压 u 流变量:电流 i u=R·i u=L·di/dt 液压/气动域 势变量:压力 p 流变量:流量 Q Q=Cd·A·√(2Δp/ρ) 控制域 信号:设定值 r 反馈值 y,误差 e=r−y u=Kp·e+Ki·∫e+Kd·de/dt 接口变量转换 机电转换:T = Kt·i,u = Ke·ω 能量守恒:u·i = T·ω 液压—机械:F = p·A,v = Q/A 负载力反馈至液压压力节点 控制—执行器:u_cmd → 阀/电机 信号不传能量,仅传指令 F, v u, i p, Q u_cmd 能量流:电气 → 机械 → 液压/气动 信号流:控制 → 各域执行器(双向反馈) 图例 机械接口 电气接口 液压/气动接口 控制信号

四、建模时的常见陷阱与检查方法

在实际建模中,最容易出问题的地方往往不是单个元件的方程,而是接口处的处理。以下三类问题在联合仿真中反复出现:

第一,量纲与单位不统一。机械域用 N、m/s,电气域用 V、A,液压域用 Pa、m³/s。如果直接把不同单位的数值代入同一个求解器,结果必然错误。建议在建模前建立一张单位对照表,所有接口变量统一到 SI 单位后再进入求解器。

第二,接口方向定义混乱。势变量和流变量的正方向必须事先约定。例如液压缸伸出时流量为正、负载力反方向为负,如果两个子系统的正方向定义相反,仿真会出现“负阻尼”或“能量注入”的异常现象。约定方式可以写在模型注释中,并在接口处标注箭头方向。

第三,忽略负载反馈。很多初学者把液压缸的输出力当作恒定值输入机械域,而不接收机械域返回的速度和位移。这样液压域就变成了“理想源”,仿真结果会偏乐观。正确的做法是把机械域的负载力反馈到液压缸的压力节点,形成闭环。

联合仿真前,建议先做一次“接口变量一致性检查”:列出每个接口的势变量、流变量、正方向、单位、能量流向,逐项核对。这一步花十分钟,往往能避免后续几小时的调试。

五、一个可复用的接口定义示例

下面给出一个电机—丝杠—负载系统的接口定义示例,可直接作为建模前的检查表使用。表中列出了每个接口的势变量、流变量、转换关系与正方向约定。

接口位置势变量流变量转换关系正方向约定
电气—机械(电机)电压 u (V)电流 i (A)T = Kt·i,u = Ke·ω电流流入电机为正,转矩驱动负载为正
机械—机械(丝杠)转矩 T (N·m)角速度 ω (rad/s)F = T·2π/P,v = ω·P/2π丝杠导程 P,伸出方向为正
机械—负载力 F (N)速度 v (m/s)F = m·dv/dt + c·v + k·∫v dt负载运动方向与丝杠伸出方向一致
控制—电气(驱动器)指令电压 u_cmd (V)反馈电流 i_fb (A)u_cmd = Kp·e + Ki·∫e dt误差 e = r − y,正误差产生正指令

这张表的价值在于:它把“接口变量”从抽象概念变成了可逐项核对的工程对象。建模时每连接一个接口,就对照表中一行,确认势变量、流变量、转换关系和正方向都一致。对于更复杂的系统,只需在表中增加行,而不需要改变建模方法。

掌握以上内容后,机械、电气、控制、液压/气动四个域就不再是彼此孤立的“黑箱”,而是通过统一的势变量—流变量框架连接起来的整体。下一阶段进入联合仿真平台时,这些接口定义将直接决定模型能否正确耦合、能否稳定求解。