写在前面
从本文开始将一块学习数字PID控制及其MATLAB仿真。本文重点介绍连续系统的数字PID控制仿真。
一、数字PID总览
基于刘金琨编著的《先进PID控制MATLAB仿真(第4版)》参考文献内容,我们一起学习以下数字式PID控制。
二、连续系统的数字PID控制仿真
2.1 连续系统的数字PID控制方法
- 本方法可实现D/A及A/D的功能,符合数字实时控制的真实情况,计算机及DSP的实时PID控制都属于这种情况。
- 连续系统的PID算法为:
u ( t ) = k p ( e + 1 T i ∫ 0 t e d t + T d d e d t ) u(t)=k_p(e+\frac{1}{T_i}\int_0^t edt+T_d\frac{de}{dt}) u(t)=kp(e+Ti1∫0tedt+Tddtde)
其中, K p K_p Kp 为比例系数, T i T_i Ti 为积分时间常数, T d T_d Td 为微分时间常数, e ( t ) e(t) e(t) 为偏差, u ( t ) u(t) u(t) 为控制量。
- 对此式进行拉普拉斯变换,得到模拟(连续系统)PID调节器的传递函数:
D ( s ) = U ( s ) E ( s ) = K p ( 1 + 1 T i + T d s ) D(s)=\frac{U(s)}{E(s)}=K_p(1+\frac{1}{T_i}+T_ds) D(s)=E(s)U(s)=Kp(1+Ti1+Tds)
2.2 连续系统的数字PID控制的MATLAB仿真
- 模拟PID控制系统框图如图所示:
- 假设其中G(s)为二阶负反馈控制系统的传递函数为:
G ( s ) = 2 ( 3 s + 1 ) ( 2 s + 1 ) G(s)=\frac{2}{(3s+1)(2s+1)} G(s)=(3s+1)(2s+1)2
1. 单 P 控制仿真
-
输出与输入偏差成比例,即直接将误差信号放大或者缩小。比例控制的传递函数为:
G ( s ) = K p G(s)=K_p G(s)=Kp
-
取不同的比例系数,绘制系统的单位阶跃响应曲线:
- 结论:从图中可以看出,随着 K p K_p Kp 值的增大,,但系统的,调节时间也随着增长。当 K p K_p Kp 增大到一定值后,闭环系统将趋于不稳定,。增大比例系数可提高系统的开环增益,减小系统的稳态误差,从而提高系统的控制精度,但这会降低系统的相对稳定性,甚至可能造成闭环系统的不稳定。因此,在系统设计中,比例控制一般不单独使用。
2. PD 控制仿真
-
输出与输入偏差的微分成比例,即与偏差的变化速度成正比例。微分控制与比例控制同时使用的传递函数为:
G ( s ) = K p ( 1 + T d s ) G(s)=K_p(1+T_ds) G(s)=Kp(1+Tds) -
取不同的微分系数,绘制系统的单位阶跃响应曲线:
- 结论:随着 T d T_d Td 值的增大,,动态特征有改善。
3. PI 控制仿真
- 输出与输入偏差的积分成比例,即与偏差的积累成比例。积分控制与比例控制同时使用的传递函数为:
G ( s ) = K p ( 1 + 1 T i ∗ 1 s ) G(s)=K_p(1+\frac{1}{T_i}*\frac{1}{s}) G(s)=Kp(1+Ti1∗s1)
-
取不同的积分系数,绘制系统的单位阶跃响应曲线:
-
结论:加入积分控制后,,但随着Ti值的增大,达到稳态的过渡时间也逐渐加长。
4. PID 控制仿真
- 传递函数为:
G ( s ) = K p ( 1 + 1 T i + T d s ) G(s)=K_p(1+\frac{1}{T_i}+T_ds) G(s)=Kp(1+Ti1+Tds)
- 取适当的比例、积分、微分系数,绘制系统的单位阶跃响应曲线:
- 结论:PID控制通过积分作用消除误差,而微分控制可缩小超调量、加快系统响应,是综合了PI控制和PD控制长处并去除其短处的控制。