2. 机电系统数学模型基础

要对机电系统做参数辨识与模型校准,第一步不是急着套算法,而是先确定“用什么样的数学语言描述这个系统”。同一台电机-丝杠-负载平台,用微分方程、传递函数、状态空间还是键合图来写,得到的模型结构、参数含义和后续辨识的难易程度都不一样。本节先讲清这四种常用建模方法各自适合什么场景,再以一个电机-机械耦合系统为例,把参数化模型的一般形式建立起来。

四种建模方法的分工

微分方程是最原始的物理描述,直接来自牛顿定律、基尔霍夫定律和能量守恒。它的优点是物理意义明确,每一项都能对应到具体元件;缺点是阶数一高,方程就变得难以求解和分析。对于单自由度机械臂关节、直流电机电枢回路这类低阶对象,微分方程往往是最直接的起点。

传递函数是微分方程在零初始条件下经拉普拉斯变换得到的输入输出比,把时域的微积分运算变成复变量 s 的代数运算。它适合单输入单输出(SISO)系统,能直观看出增益、时间常数、阻尼比、谐振频率等特征参数。但传递函数默认初始条件为零,且丢失了系统内部状态的信息,对多输入多输出(MIMO)系统表达起来很笨重。

状态空间模型用一组一阶微分方程描述状态变量的演化,形式为 ẋ = Ax + Bu,y = Cx + Du。它保留了系统内部状态,天然支持多输入多输出,也便于用数值方法求解和用现代控制理论设计观测器。代价是状态变量的物理含义需要人为选取,A、B、C、D 矩阵中的元素往往不是直接可测的物理参数,而是它们的组合。

键合图是一种基于能量流的统一建模方法,用“势”变量(effort,如电压、力、压力)和“流”变量(flow,如电流、速度、流量)描述各元件之间的功率交换,通过 0 结点(共势)和 1 结点(共流)连接惯性、容性、阻性元件以及势源、流源。它的最大价值在于跨能量域建模:电气、机械、液压、热学子系统可以用同一套符号和规则连接,特别适合机电液耦合的复杂系统。缺点是图形化模型转成可计算方程需要一定训练,且参数辨识时元件参数与可测信号之间的对应关系不如传递函数直观。

电机-机械耦合系统建模实例

考虑一个典型的机电耦合对象:直流电机经减速器和丝杠驱动工作台做直线运动。设电机电枢电压为 u,电枢电流为 i,电枢电阻为 R,电枢电感为 L,反电动势系数为 Ke,电磁转矩系数为 Kt,电机转子与减速器折算到电机轴的总转动惯量为 J,粘性阻尼系数为 B,减速比(电机转 n 圈,丝杠转 1 圈)为 i,丝杠导程为 p,工作台及负载质量为 m,导轨等效粘性阻尼为 c。取电机转角 θ 和工作台位移 x 为机械变量,并约定:电压 u 使电机正转,正转使工作台向正方向移动,反电动势方向与电枢电压相反。

电气侧由基尔霍夫电压定律得:

L·di/dt = u − R·i − K_e·ω
T_e = K_t·i

其中 ω = dθ/dt 为电机角速度,Te 为电磁转矩。机械侧把电机轴、减速器、丝杠和工作台折算到同一根轴上,由转动定律得:

J·dω/dt = T_e − B·ω − T_L
T_L = (m·a + c·v)·p / (2π·i)

这里 TL 是负载折算到电机轴的阻力矩,a 为工作台加速度,v 为工作台速度,且 v = ω·p/(2π·i)。把 TL 代入并整理,机械侧可写成:

(J + m·p²/(4π²i²))·dω/dt = K_t·i − (B + c·p²/(4π²i²))·ω

令等效转动惯量 Jeq = J + m·p²/(4π²i²),等效阻尼 Beq = B + c·p²/(4π²i²),则整个系统可写成两个一阶微分方程:

di/dt = (u − R·i − K_e·ω) / L
dω/dt = (K_t·i − B_eq·ω) / J_eq

若取状态变量 x1 = i,x2 = ω,输入 u,输出为工作台速度 v = ω·p/(2πi),则状态空间形式为:

ẋ = [ −R/L      −K_e/L ] x + [ 1/L ] u
    [  K_t/J_eq  −B_eq/J_eq ]     [  0  ]

y = [ 0   p/(2πi) ] x

若只关心从电压 u 到角速度 ω 的传递函数,消去电流 i 可得:

G(s) = K_t / [ L·J_eq·s² + (R·J_eq + L·B_eq)·s + (R·B_eq + K_t·K_e) ]

这是一个典型的二阶系统,分母常数项 R·Beq + KtKe 体现了电磁转矩与反电动势的耦合作用。当电枢电感 L 很小时,可进一步降为一阶惯性环节,时间常数约为 R·Jeq/(R·Beq + KtKe)。

电机-机械耦合系统建模路径 电气侧(电枢回路) 输入:电枢电压 u 状态:电流 i 参数:R, L, K_e, K_t 方程:L·di/dt = u − R·i − K_e·ω 机械侧(折算到电机轴) 状态:角速度 ω 参数:J_eq, B_eq J_eq = J + m·p²/(4π²i²) B_eq = B + c·p²/(4π²i²) 电磁转矩 T_e = K_t·i 反电动势 e = K_e·ω 机电能量转换 T_e ↔ e 双向耦合 输出:工作台速度 v v = ω · p / (2πi) 参数化模型一般形式 ẋ = A(θ)·x + B(θ)·u , y = C(θ)·x + D(θ)·u , θ = [R, L, K_e, K_t, J_eq, B_eq, p, i]

参数化模型的一般形式

把上面的推导抽象出来,机电系统参数化模型的一般形式可以写成:

ẋ = A(θ)·x + B(θ)·u
y = C(θ)·x + D(θ)·u

其中 x 是状态向量,u 是输入向量,y 是输出向量,θ 是待辨识的参数向量。关键在于 A、B、C、D 不是任意矩阵,而是由物理参数按确定结构组合而成的。对本例,θ = [R, L, Ke, Kt, Jeq, Beq, p, i]T,A(θ) 和 B(θ) 的元素就是这些参数的函数。辨识的任务,就是从输入输出数据中反推出 θ,而不是去拟合 A、B 中每一个独立元素。

这一点决定了后续工作的两条路线。第一条是灰箱辨识:保留已知的物理结构,只辨识 θ 中的物理参数,好处是参数有明确量纲和物理意义,外推到其他工况时更可靠。第二条是黑箱辨识:直接辨识 A、B、C、D 的元素,灵活但容易过拟合,且参数难以解释。机电系统通常优先走灰箱路线,因为电机参数、质量、导程这些量往往可以通过铭牌、手册或简单测量获得初值。

在建立参数化模型时,先明确三件事:状态变量选什么、输入输出是什么、哪些参数已知哪些待辨识。状态变量选得不同,A、B 矩阵的形式会变,但系统的输入输出行为不变。建议优先选择物理上可测或可估计的量作为状态,例如电流和转速,这样后续观测器设计和参数辨识都更方便。
注意单位一致性。转动惯量用 kg·m²、阻尼用 N·m·s/rad、导程用 m/rad 或 m/r 时,折算公式中的 2π 和 i 的位置会不同。建模前先把所有量统一到 SI 单位,并在全文和图示中保持同一套正方向约定,否则辨识出的参数会出现系统性偏差。