刊文精选

计算机控制系统零极点配置与PID控制器设计比较

来源:教育教学论坛     2019-3-18 20:50:15      点击:

张栋 刁少文 周毛等 周涛

摘要:为解决计算机控制系统授课过程中,线性系统的零极点配置设计控制器与数字PID控制器之间的联系与区别,设计了一个Matlab/SIMULINK仿真教学实例,便于深入理解与比较计算机控制系统基于连续域的控制器设计方法。

关键词:零极点配置;数字PID控制器;参数整定

中图分类号:G642.1 文献标志码:A 文章编号:1674-9324(2018)39-0083-02

一、引言

计算机控制系统零极点配置设计控制器与数字PID控制器属于基于连续域理论的数字控制器设计方法[1][2]。不同于数字控制器离散域的直接设计方法,因其易于理解,依然被广大科技工作者经常采用,尤其是数字PID控制器设计方法。

本文利用Matlab与SIMULINK仿真[3]设计了一个实例,对同一个线性系统被控对象进行零极点配置控制器设计和PID控制器设计,给出详细的控制器设计步骤,并对两种设计方法和系统性能进行比较。

二、仿真实例设计

設某位单位负反馈位置随动控制系统中连续被控对象电机的近似传递函数为

G (s)= (1)

要求采用连续系统理论的方法设计数字控制器,使得闭环系统满足稳态误差e (∞)=0,阶跃响应超调量σ%<10%,调节时间t <1.2s(±2%误差带),采样周期T=0.1s。

(一) 零极点配置方法设计数字控制器

采用计算机控制时,一般需考虑A/D与D/A转换器对系统性能的影响,可将A/D与D/A近似为一个滞后环节e ,以反映零阶保持器的相位滞后特性,实际设计时,可将e 取为一阶系统的近似,即

e ≈ = (2)

若设待设计的数字控制器等效连续传递函数为D (s),该计算机控制系统的连续域设计等效方框图如图1所示,图中,

G(s)= · (3)

为广义连续被控对象。

采用Matlab中SISOTOOL工具箱对广义被控对象 进行零极点配置以满足期望闭环系统的性能指标。

首先在Matlab命令窗口中输入如下代码

num=[10];

den=[conv([1,0],[1,4])];

G0=tf(num,den); %被控对象传递函数

num1=[1];

den1=[0.05,1];

G1=tf(num1,den1); %A/D、D/A等效传递函数

G=series(G1,G0); %广义被控对象传递函数

sisotool %调用sisotool工具箱

将广义被控对象导入SISOTOOL工具箱后,根据期望的性能指标设定满足条件的根轨迹范围如图2所示:

对该系统进行零极点配置后,可得到满足性能指标的零极点配置如图3所示,此时控制器为(属于超前校正):

D (s)= (4)

将控制器D (s)做双线性变换得到离散控制器D(z),

Dz=c2d(C,0.1,'tustin');%C为连续域控制器D (s)

D(z)=D (s) =

= (5)

在SIMULINK中对设计好的计算机控制系统进行验证仿真,如图4所示,可以看出,所设计的控制器全面满足期望性能指标。

该数字控制器计算机编程算法实现为

u(k)=7.2325e(k)-4.6331e(k-1)-0.1303u(k-1)

(6)

(二) 数字PID控制器设计

数字PID算法是直接通过后项差分s= 对连续PID离散化得到的,即

D(z)=D(s)?摇 =K [1+ +T ]?摇 =K 1+ +T (7)

变量替换后可得

D(z)= =K +K +K (1-z ) (8)

整理可以得到对应的位置式后项差分方程,用于编写程序如下:

u(k)=K e(k)+K e(j)+K e(k)-e(k-1) (9)

也可得到对应的增量式编程算法如下:

Δu(k)=K e(k)-e(k-1)+K e(k)+K

e(k)-2e(k-1)+e(k-2) (10)

对该实例利用simulink编写仿真程序如图5所示,并调整得到一套合理的PID参数(可采用临界比例度法等进行参数调整)满足期望性能指标要求。

三、结论

以上所讨论两种基于连续域的数字控制器设计方法各有利弊。极点配置设计方法易于理解数字控制器设计的本质,但过程较为烦琐;数字PID设计方法简单易行,更便于工程应用。

参考文献:

[1]胡寿松.自动控制原理(第五版)[M].北京:科学出版社,2007.

[2]康波,李云霞.计算机控制系统[M].电子工业出版社,2015.

[3]张晋格,陈丽兰.控制系统CAD——基于Matlab语言(第二版)[M].机械工业出版社,2011.


本文版权归教育教学论坛杂志社及本文作者所有,未经同意,不得转载! ——《教育教学论坛》查稿电话:0311-85178286