控制系统传递函数实战:从RLC电路到PID控制器,3个实例详解建模
控制系统传递函数实战从RLC电路到PID控制器3个实例详解建模在工程实践中控制系统的设计往往始于对物理系统的数学建模。传递函数作为控制系统分析的核心工具能够将复杂的物理系统转化为简洁的数学表达式。本文将聚焦三个典型工程实例——RLC电路、机械弹簧阻尼系统和直流电机手把手演示如何从物理定律出发推导微分方程再通过拉普拉斯变换得到传递函数。1. RLC电路二阶系统的经典案例RLC串联电路是理解二阶系统的绝佳起点。假设我们有一个由电阻R、电感L和电容C组成的串联电路输入电压为uᵣ(t)输出电压为u_c(t)电容两端电压。1.1 建立微分方程根据基尔霍夫电压定律(KVL)我们可以列出电路方程% KVL方程 syms R L C t ur(t) uc(t) i(t) eq1 ur(t) R*i(t) L*diff(i(t),t) uc(t); eq2 uc(t) (1/C)*int(i(t),t);消去中间变量电流i(t)得到关于u_c(t)的二阶微分方程$$ LC\frac{d^2u_c(t)}{dt^2} RC\frac{du_c(t)}{dt} u_c(t) u_r(t) $$1.2 拉普拉斯变换与传递函数对上述方程进行拉普拉斯变换零初始条件% 拉普拉斯变换 syms s laplace_eq laplace(eq2_substituted, t, s);得到传递函数$$ G(s) \frac{U_c(s)}{U_r(s)} \frac{1}{LCs^2 RCs 1} $$1.3 MATLAB验证我们可以用MATLAB快速验证这个传递函数的特性% 示例参数 R 1; L 0.5; C 0.2; num [1]; den [L*C R*C 1]; sys tf(num, den); % 绘制阶跃响应 step(sys) grid on title(RLC电路阶跃响应)这个二阶系统的特性由阻尼比ζ和无阻尼自然频率ωₙ决定参数计算公式物理意义ωₙ1/√(LC)系统固有振荡频率ζ(R/2)√(C/L)阻尼程度指标2. 机械弹簧阻尼系统力学与电学的类比机械平移系统与RLC电路有着惊人的数学相似性。考虑一个质量-弹簧-阻尼系统其中m质量块质量(kg)k弹簧刚度(N/m)b阻尼系数(N·s/m)x(t)位移输出(m)F(t)外力输入(N)2.1 建立动力学方程根据牛顿第二定律$$ m\frac{d^2x(t)}{dt^2} b\frac{dx(t)}{dt} kx(t) F(t) $$这与RLC电路的微分方程形式完全相同体现了机电相似性。2.2 传递函数推导进行拉普拉斯变换后得到$$ G(s) \frac{X(s)}{F(s)} \frac{1}{ms^2 bs k} $$2.3 Simulink建模验证在Simulink中搭建模型可以直观观察系统响应[外力F] -- [Sum] | [弹簧力] -- [k Gain] -- [Integrator1] -- [Integrator2] -- [1/m Gain] | [阻尼力] -- [b Gain] -- [Derivative]通过调整参数m、b、k可以观察到从欠阻尼到过阻尼的各种响应特性。3. 直流电机多能量域耦合系统直流电机是机电一体化系统的典型代表包含电气和机械两个能量域。3.1 电枢控制直流电机建模假设我们考虑电枢电压Vₐ(t)为输入轴转速ω(t)为输出。电气部分方程 $$ V_a(t) R_ai_a(t) L_a\frac{di_a(t)}{dt} K_bω(t) $$机械部分方程 $$ J\frac{dω(t)}{dt} Bω(t) K_ti_a(t) $$其中K_b反电动势常数(V·s/rad)K_t转矩常数(N·m/A)J转动惯量(kg·m²)B粘性摩擦系数(N·m·s/rad)3.2 传递函数推导消去中间变量iₐ(t)后得到$$ G(s) \frac{ω(s)}{V_a(s)} \frac{K_t}{(L_as R_a)(Js B) K_bK_t} $$通常Lₐ很小可忽略简化为$$ G(s) ≈ \frac{K_t/R_a}{Js (B K_bK_t/R_a)} $$3.3 PID控制器设计实例针对上述直流电机模型设计一个PID控制器% 电机参数 Ra 2; Kt 0.5; Kb 0.5; J 0.1; B 0.2; % 简化模型 num Kt/Ra; den [J (B Kb*Kt/Ra)]; motor tf(num, den); % PID控制器 Kp 1; Ki 0.5; Kd 0.1; C pid(Kp, Ki, Kd); % 闭环系统 cl_sys feedback(C*motor, 1); % 阶跃响应 step(cl_sys)4. 从传递函数到实际应用理解传递函数后我们可以进行稳定性分析通过极点位置判断系统稳定性性能评估通过阶跃响应分析上升时间、超调量等控制器设计基于模型设计PID或其他先进控制器在实际工程中MATLAB/Simulink提供了强大的工具链% 系统辨识工具箱示例 load iddata1 sys tfest(z1, 2); % 二阶系统辨识 compare(z1, sys)掌握这些建模技能工程师就能将物理世界中的复杂系统转化为可分析、可设计的数学模型为后续的控制系统设计奠定坚实基础。