基于MATLAB的PID控制器设计

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于MATLAB的PID 控制器设计

基于MATLAB的PID 控制器设计

一、PID控制简介

PID控制是最早发展起来的经典控制策略, 是用于过程控制最有效的策略之一。由于其原理简单、技术成,在实际应用中较易于整定, 在工业控制中得到了广泛的应用。它最大的优点是不需了解被控对象精确的数学模型,只需在线根据系统误差及误差的变化率等简单参数, 经过经验进行调节器参数在线整定, 即可取得满意的结果, 具有很大的适应性和灵活性。

积分作用:可以减少稳态误差, 但另一方面也容易导致积分饱和, 使系统的超调量增大。

微分作用:可提高系统的响应速度, 但其对高频干扰特别敏感, 甚至会导致系统失稳。

所以, 正确计算控制器的参数, 有效合理地实现PID控制器的设计,对于PID 控制器在过程控制中的广泛应用具有重要的理论和现实意义。

在PID控制系统中, PID控制器分别对误差信号e(t)进行比例、积分与微分运算, 其结果的加权和构成系统的控制信号u(t),送给对象模型加以控制。PID控制器的数学描述为

其传递函数可表示为:

从根本上讲, 设计PID控制器也就是确定其比例系数Kp、积分系数T i 和微分系数T d , 这三个系数取值的不同, 决定了比例、积分和微分作用的强弱。控制系统的整定就是在控制系统的结构已经确定、控制仪表和控制对象等处在正常状态的情况下, 适当选择控制器参数使控制仪表的特性和控制对象的特性相配合, 从而使控制系统的运行达到最佳状态, 取得最好的控制效果。

二、MATLAB的Ziegler-Nichols算法PID控制器设计。

1、PID控制器的Ziegler-Nichols参数整定

在实际的过程控制系统中, 有大量的对象模型可以近似地由一阶模型

来表示。这个对象模型可以表示为

sL

-

e

sT

1

K

G(s)

+

=

如果不能建立起系统的物理模型, 可通过试验测取对象模型的阶跃响应, 从而得到模型参数。当然, 我们也可在已知对象模型的情况下, 利用MATLAB,通过使用step ( ) 函数得到对象模型的开环阶跃响应曲线。在被控对象的阶跃响应中, 可获取K 、L 和T参数, 也可在MATLAB中由dcgain ( ) 函数求取K值。

2.在MATLAB下实现PID 控制器的设计与仿真

已知被控对象的K、L 和T 值后, 我们可以根据Ziegler —Nichols整定公式编写一个MATLAB函数ziegler_std ( )用以设计PID控制器。该函数程序如下:

function [num,den,Kp,Ti,Td,H]=Ziegler_std (key,vars)

Ti=[ ];Td=[ ];H=[ ];

K=vars(1) ;

L=vars(2) ;

T=vars (3);

a=K*L/T;

if key==1

num=1/a; %判断设计P 控制器

elseif key==2

Kp=0.9/a;Ti=3.33*L; %判断设计PI 控制器

elseif key==3,

Kp=1.2/a;Ti=2*L;Td=L/2; %判断设计PID控制器end

switch key

case 1

num=Kp;den=1; % P 控制器 case 2

num=Kp*[Ti,1];den=[Ti,0]; % PI 控制器 case 3 % PID 控制器 p0=[Ti*Td,0,0];

p1=[0,Ti,1];p2=[0,0,1]; p3=p0+p1+p2; p4=Kp*p3; num=p4/Ti; den=[1,0]; end

由图可知L 和T 令T

KL

=

α。在求得L 和α参数的情况下, 我们可通过表1中给出的Ziegler — Nichols 经验公式确定 P 、PI 和PID 控制器的参数。

三、对某传递函数3

)1s (1G(s)+=

的控制

未加控制器的仿真: Simulink 下的系统图

仿真输出图形如下:

第一次测量

T=3.28 L=1.38 K=1 T KL

=α=0.42

P 控制

Kp=α

1

=

=2.38

Simulink 下的系统图

仿真输出图形如下:

峰值时间tp=4.15s,峰值为0.9518 上升时间td=2.953s 调节时间ts=14.4s

PI 控制

Kp=α

0.9

=

=2.14 Ti=3.33L=4.60

Simulink 下的系统图:

仿真后的输出曲线为:

峰值时间tp=4.48s,峰值1.019s 上升时间td=3.783s

调节时间ts=25.486s

PID控制

Kp=α

1.2

==2.85 Ti=2L=2.76 Td=

2

L

==0.69 Simulink下的系统图

仿真后的输出曲线为:

峰值时间tp=4.028s 峰值1.077 上升时间td=3.565s 调节时间ts=28.50s

第二次测量

T=3.51 L=1.23 k=1 T

KL

=α=0.35

P 控制,

Kp=

α

1

=2.86 Simulink 下的系统图:

相关文档
最新文档