史密斯算法

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

燕山大学
课程设计说明书题目:
学院(系):电院自动化系
年级专业: 08工业自动化2班
学号: ************
学生姓名:***
指导教师:吴忠强陈志旺
教师职称:教授讲师
摘要
工业生产过程中的大多数被控对象都具有较大的纯滞后性质。

被控对象的这种纯滞后性质经常引起超调和持续的振荡。

在20世纪50年代,国外就对工业生产过程中纯滞后现象进行了深入的研究,史密斯提出了一种纯滞后补偿模型,由于当时模拟仪表不能实现这种补偿,致使这种方法在工业实际中无法实现。

随着计算机技术的飞速发展,现在人们可以利用计算机方便地实现纯滞后补偿。

本设计主要基于史密斯算法的基本原理,研究数字史密斯预估控制带有纯延迟的一阶过程在计算机中实现,通过对史密斯预估器模型的的设计,在系统输入方波信号时,通过Matlab仿真软件输出方波响应,分别在被控对象模型精确时,被控对象模型不精确时,不采用史密斯预估控制时,三种情况下的方波响应,来研究史密斯预估控制对系统稳定性能的改善。

在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。

PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。

当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。

即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。

PID控制,实际中也有PI和PD控制。

PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的。

本设计主要采用增量式PID控制。

关键词:史密斯预估控制增量型数字PID控制Matlab仿真滞后环节
2
目录
摘要 (2)
第一章绪论 (4)
第二章史密斯算法基本原理 (5)
第三章数字式史密斯预估控制器设计 (7)
第四章史密斯算法程序流程图 (9)
第五章史密斯算法Matlab仿真程序及注释 (10)
第六章史密斯算法Matlab仿真结果 (14)
第七章增量式数字PID控制器基本原理 (17)
第八章数字式PID 比例积分微分的作用 (18)
第九章数字式PID控制程序流程图 (19)
第十章数字式PID控制Matlab仿真程序及注释 (20)
第十一章数字式PID控制Matlab仿真结果 (23)
第十二章心得体会 (24)
第十三章参考文献 (25)
3
第一章绪论
Smith预估控制是一种广泛应用的对纯滞后对象进行补偿的控制方法,实际应用中,当对象的滞后时间与对象的时间常数可比(比值不小于0.5时),采用常规的PID算法将难以获得好的控制效果,一般对于纯滞后系统,人们更关心的是如何使超调量达到期望值,而对快速性未作太严格的要求。

因此,纯滞后系统的主要指性能标是超调量。

采用史密斯预估控制,表现为给PID控制器并接一个补偿环节,该补偿环节称为Smith预估器。

Smith预估补偿是在系统的反馈回路中引入补偿装置,将控制通道传递函数中的纯滞后部分与其他部分分离。

其特点是预先估计出系统在给定信号下的动态特性,然后由预估器进行补偿,力图使被延迟了的被调量超前反映到调节器,使调节器提前动作,从而减少超调量并加速调节过程。

如果预估模型准确,该方法能后获得较好的控制效果,从而消除纯滞后对系统的不利影响,使系统品质与被控过程无纯滞后时相同。

对于史密斯预估器来说, 它要求一个比较理想的动态模型。

若系统模型不很理想, 从系统模型中来的偏差会使控制性能恶化, 甚至不稳定。

另外, 当系统受到负载扰动时, 调节器在一定时间内没能得到预估器的信息而提前动作, 也容易造成系统的不稳定。

因此, 史密斯预估器的应用受到限制。

在过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID控制器是应用最为广泛的一种自动控制器。

它具有原理简单,易于实现,适用面广,控制参数相互独立,参数的选定比较简单等优点;而且在理论上可以证明,对于过程控制的典型对象──“一阶滞后+纯滞后”与“二阶滞后+纯滞后”的控制对象,PID控制器是一种最优控制。

4
5
第二章 史密斯算法基本原理
控制器的传递函数为D(s),被控对象传递函数为G p (s)e -τs
,被控对象中不包含纯滞后部分的传递函数为G p (s),被控对象纯滞后部分的传递函数为e -τs 。

纯滞后对象控制系统框图
由于系统特征方程中含有纯滞后环节,它会降低系统的稳定性。

史密斯补偿的原理是:在模型精确或者无负荷扰动时,与控制器D(s)并接一个补偿环
节,用来补偿被控对象中的纯滞后部分,这个补偿环节传递函数为G p (s)(1-e -
τs
),τ为纯
滞后时间,补偿后的系统如下图所示:
6
D ‘(s)
由控制器D(s)和史密斯预估器组成的补偿回路称为纯滞后补偿器,其传递函数为
'()()1()()(1)s p D s D s D s G s e τ-=+-
可得史密斯预估器补偿后系统的闭环传递函数为
'()()
()1()()
p s p D s G s s e D s G s τ-Φ=+ 可以看出经过补偿后,纯滞后环节在闭环回路外,这样就消除了纯滞后环节对系统稳定性的影响。

拉氏变换的位移定理说明e -τs 仅仅将控制作用在时间座标上推移了一个
时间τ,而控制系统的过渡过程及其它性能指标都与对象特性为G p (s)时完全相同。

如果存在负荷扰动或者被控对象模型不精确时,采用上面这种史密斯预估控制方法,控制精度不能够令人满意。

史密斯预估补偿控制虽然在原理上早已成功,但其控制规律在模拟仪表上不易实现,阻碍了其在工业上的应用,现在可以用计算机作为控制器,通过软件的方法实现史密斯预估补偿控制规律。

第三章数字是史密斯预估控制器设计
根据方框图的有效变换,可以等效出数字式史密斯预估控制器系统框图如下:
其中Ds(Z)位数字控制器,,Gho(z)等效于不含有滞后环节被控对象预估模型,Ghp(z)等效于含有滞后环节预估被控对象模型。

想要得到数字控制器的输入值,必须求的Gho(z)和Ghp(z)的输出Xm与Ym。

根据求差分方程得:
Gho(z)中不含有之后环节,所以
7
8
)()(s U s X =z z den den num num 11
)2(1)1(1)2(1)1(1--++ 其中num1= 0 0.2876 den1=1.000 .-0.7836
xm (k )= -den1(2)*xm (k-1)+num1(2)*u (k-1)
Ghp (z )中含有之后环节,数字控制器输出u 滞后了4个采样周期。

所以
z
z den den num num s U s Y 15
)1()1(1)5(1)1(1)()(--++= ym (k )=-den1(2)*ym (k-1)+num1(2)*u (k-5)
系统输出Y (k )含有滞后环节,所以 z z den den num num s U s Y 1
5)2()1()2()1()()(--++= 其中 num=0 0.2835 den=1.000 -0.7165
y (k )=-den(2)*y(k-1)+num(2)*u(k-5)
从而得到 系统整体误差值e1(k )=r (k )-y (k )
在系统被控对象模型不精确时或出现负荷扰动时:
数字控制器输入误差值e2(k )=e1(k )-x(m)k+y (m )k
在系统被控对象模型精确时或不出现负荷扰动时:
由于y(k)=ym (k )
数字控制器输入误差值e2(k )=r (k )-m (k )
基于位置式控制算法可以得到数字控制器的的输出控制量
u (k )=Kp*e2(k)+Ki*ei
数字控制器采用PI算法取Kp=0.50 Ki=0.010
Ei为所有采样时刻误差值之和ei=Ts*e2(k),Ts为采样周期。

9
第五章史密斯算法程序流程图
10
第六章Matlab仿真程序及程序注释
%Big Delay PID Control with Smith A_gorithm
clear all; %清除包括全局变量在内的所有变量
close all; %关闭所有窗口(程序运行产生的,不包括命
令窗,editor窗和帮助窗)
Ts=20; %定义变量ts表示采样时间
%delay plant
kp=1; %用传函形式建立被控对象模型
Tp=60;
delay=80;
sys=tf([kp],[Tp,1],'inputdelay',80)
%用加零阶保持器的方法将传函离散化
dsys=c2d(sys,Ts,'zoh');
%从LTI对象提取传递函数两对组模型参数
其中参数'v'的意义是以向量形式输出
[num,den]=tfdata(dsys,'v');
M=1;
if M==1; %对象模型不精确时,采用用Pi+smiith控制
kp1=kp*1.10; %对象模型不精确时,确定比例系数
Tp1=Tp*1.10; %由被控对象传韩得Tp=60
delayl=delay*1.0; %对象模型不精确时,确定滞后时间
elseif M==2|M==3 %在对象模型精确采用Pi+Smith或者采用Pi控制
11
kp1=kp; %在对象模型精确时,确定比例系数
Tp1=Tp; %由被控对象传韩得Tp=60
delay1=delay; %在对象模型精确时,确定滞后时间
End
%在三种情况下,用传函形式建立被控对象模型
sys=tf([kp1],[Tp1,1],'inputdelay',80);
%在三种情况下,用加零阶保持器的方法将传函离散化dsys1=c2d(sys,Ts,'zoh');
%在三种情况下从LTI对象提取传递函数两对组模型参数其中参数'v'的意义是以向量形式输出
[num1,den1]=tfdata(dsys1,'v');
%数字控制器初始输出设置为零
u_1=0.0;u_2=0.0;u_3=0.0;u_4=0.0;u_5=0.0;
e1_1=0; %系统误差初值设置为零
e2_1=0.0; %数字控制器输入误差初值设置为零
ei=0; %所有采样时刻误差值之和开始时设置为零
xm_1=0.0; %不含有滞后环节被控对象预估器输出初值为零
ym_1=0.0; %含有滞后环节被控对象预估器输出初值为零
y_1=0.0; %系统初始时刻输出设置为零
for k=1:1:600
time(k)=k*Ts; %采样时间信号值
s=2;
if s==2 %跟踪方波信号
rin(k)=sign(sin(0.0002*2*pi*k*Ts));
End
%计算不含有滞后环节被控对象预估模型输出值xm(k)=-den(2)*xm_1+num(2)*u_1
%计算含有滞后环节被控对象预估模型输出值
yout(k)=-den(2)*y_1+num(2)*u_5
if M==1 %对象模型不精确时,Pi+smith控制
e1(k)=rin(k)-yout(k); %计算系统误差值
e2(k)=e1(k)-xm(k)+ym(k); %计算数字控制器输入误差值
e2(k)=e1(k)-xm(k)+ym(k);
ei=ei+Ts*e2(k); %计算所有采样时刻误差值之和
%采用位置式控制算法得到数字控制器输出控制量 u(k)=0.50*e2(k)+0.010*ei
e1_1=e1(k); %更新系统误差值
elseif M==2 %对象模型精确时,Pi+smith控制
e2(k)=rin(k)-xm(k); %计算数字控制器输入误差
ei=ei+Ts*e2(k); %计算所有采样时刻误差值之和
%采用位置式控制算法得到数字控制器输出控制量u(k)=0.50*e2(k)+0.010*ei
e2_1=e2(k); %更新数字控制器输入误差值
elseif M==3 %仅采用Pi控制
e1(k)=rin(k)-yout(k); %计算系统误差值
13
ei=ei+Ts*e1(k); %计算所有采样时刻误差值之和
%采用位置式控制算法得到数字控制器输出控制量 u(k)=0.50*e1(k)+0.010*ei
e1_1=e1(k); %更新系统误差值
End
xm_1=xm(k); %更新不含有滞后环节被控对象预估模型输出值
ym_1=ym(k); %更新含有滞后环节被控对象预估模型输出值
%更新控制器的输出
u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);
y_1=yout(k); %更新系统的输出
end
plot(time,rin,'b',time,yout,'r');
xlabel('time(s)');ylabel('rin,yout');
15
第六章 仿真结果
0200040006000
80001000012000-1-0.8
-0.6
-0.4
-0.2
0.2
0.4
0.6
0.8
1
time(s)r i n ,y o u t
模型不精确时方波响应(M=1)
0200040006000
80001000012000-1-0.8
-0.6
-0.4
-0.2
0.2
0.4
0.6
0.8
1
time(s)r i n ,y o u t
模型精确时方波响应(M=2)
17
0200040006000
80001000012000
-2-1.5
-1-0.5
0.5
1
1.5
2
time(s)r i n ,y o u t
PI 控制时的方波响应(M=3)
仿真结果分析:在采用数字PI 调节器控制跟踪方波信号时,有很大的超调量,系统稳定性很低,在模型不精确时,采用PI+Smith 预估器控制时,虽然超调量小,但是控
制精度不高,在模型精确时,采用PI+Smith预估控制时,系统超调量小,控制精度高。

控制系统能达到预期效果。

19
第七章 增量式数字PID 控制器基本原理
PID 是一种线性控制器,用输出量y (t )和给定量r (t )之间的误差时间函数e (t )=r(t)-y(t)的比例,积分,微分,线性组合构成控制量u (t )。

PID 控制由于其具有的控制结构简单,参数个数少且容易调整,不必求出被控对象的精确数学模型就可以整定参数等特点,且控制技术完善,在工业系统中广泛应用。

在位置型控制算法的基础上,求出每一步的控制量∆u(k)=u(k)-u(k-1),
由于 u(k)=Kp*e(k)+Ki*∑=k
i i e 0)(+Kd*[e (k )-e (k-1)];
u (k-1)=Kp*e(k-1)+Ki*
∑-=1
0)(k i i e +Kd*[e (k-1)-e (k-2)]; u(k)=u(k)-u(k-1)∆ =Kp[e (k )-e (k-1)]+Kie (k )+Kd[e(k-1)-2e(k-1)-e(k-2)]
在增量型控制算法中,只需要知道当前值及两个历史输入值可求出当前控制量,其有以下几个特点:
1. 增量仅与最近几次采样值有关,累加误差小;
2. 控制量以增量形式输出,仅影响本次的输出,误动作影响小,且不会产生积分饱和现象;
3. 易于实现手动到自动的无冲击切换;
第八章数字式PID 比例积分微分的作用PID调节实际上是由比例、积分、微分三种调节方式组成,它们各自的作用如下:
比例调节作用:是按比例反应系统的偏差,系统一旦出现了偏差,比例调节立即产生调节作用用以减少偏差。

比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降,甚至造成系统的不稳定。

积分调节作用:是使系统消除稳态误差,提高无差度。

因为有误差,积分调节就进行,直至无差,积分调节停止,积分调节输出一常值。

积分作用的强弱取决与积分时间常数Ti,Ti越小,积分作用就越强。

反之Ti大则积分作用弱,加入积分调节可使系统稳定性下降,动态响应变慢。

积分作用常与另两种调节规律结合,组成PI调节器或PID调节器。

微分调节作用:微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除。

因此,可以改善系统的动态性能。

在微分时间选择合适情况下,可以减少超调,减少调节时间。

微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。

此外,微分反应的是变化率,而当输入没有变化时,微分作用输出为零。

微分作用不能单独使用,需要与另外两种调节规律相结合,组成PD或PID控制器。

第九章数字式PID控制程序流程图
21
燕山大学课程设计论文
23
第十章 数字式PID 控制Matlab 仿真程序及注释
clear all; %清除包括全局变量在内的所有变量
close all; %关闭所有窗口(程序运行产生的,不包括命
令窗,editor 窗和帮助窗) ts=0.001;
%采样时间 sys=tf(10,[1 149 0]); %开环传递函数
dsys=c2d(sys,ts,'z'); %用加零阶保持器的方法将传函离散化
[num,den]=tfdata(dsys,'v'); % 从LTI 对象提取传递函数两对组模型参数,其 中参数'v'的意义是向量形式输出
z
z z z num den den num num num s U s Y 212
1)3()2()1()3()2()1()()(----++++=
u_1=0;u_2=0;u_3=0; %数字控制器初始输出设置为零 y_1=0;y_2=0;y_3=0; %系统初始时刻输出设置为零
x=[0 0 0]'; %x(1)存储
; %x(2)存储
; %x(3)存储
error_1=0;
error_2=0; %输入的初始系统误差设置为零
for k=1:1:1000
time(k)=k*ts; %采样时间信号值
rin(k)=1.0; %跟踪阶跃信号
kp=6000;
ki=0.01;
kd=10; %整定P,I,D三个参数整定du(k)=kp*x(1)+kd*x(2) %计算的值
u(k)=u_1+du(k); %计算u(k)的值
yout(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_1+num(3)*u_2;
%依据公式计算输出
error=rin(k)-yout(k); %计算偏差信号
u_3=u_2;u_2=u_1;u_1=u(k)%更新控制器的输出
y_3=y_2;y_2=y_1;y_1=yout(k) %更新系统的输出
x(1)=error-error_1 %
x(2)=error-2*error_1+error_2; %
x(3)=error; %
error_2=error_1;
error_1=error; %更新误差
end
plot(time,rin,'b',time,yout,'r');
xlabel('time(s)');
ylabel('rin,yout')
25
第十一章 数字式PID 控制Matlab 仿真结果
00.10.20.30.40.5
0.60.70.80.910
0.20.4
0.6
0.81
1.2
1.4
time(s)r i n ,y o u t
增量型数字PID 控制跟踪阶跃信号
仿真结果分析:采用增量型PID 调节器阶跃响应快速性增强,超调量小,稳定性能好。

第十二章心得体会
通过本次计算机课程设计,我更加充分的理解了课本上的知识,并能够加以扩展,从而应用于实践当中,在visio软件中画出了程序流程图让我对系统整体有一个更好的了解,并且熟练的掌握了Visio绘图的技巧。

这几天的课程设计令我受益匪浅,很多平时模棱两可的知识点都认真复习并实践了。

在课程设计中遇到了很多问题,由于计算机控制课程上,老师对史密斯算法讲的不是非常详细,所以我在网上查阅了很多资料,对这种史密斯预估控制有了一个全面的概念,史密斯预估控制是一种十分巧妙的方法,把反馈信号从滞后环节之前引出,从而消除了滞后环节对系统稳定性的影响,但是史密斯预估控制有很多缺陷,无法在模拟仪表上实现,以及在被控对象模型不精确时活着有负荷扰动,控制精度比较低,这些都留给我们以后进一步的研究。

这学期学的Matlab仿真课,虽然对内容有一定得了解,但一直没有用过,这次课程设计仿真环节用到了Matlab 软件,我通过自己编写程序,调试程序,最终得到了仿真图,让我对这个软件的功能有了进一步的认识,在今后的学习中,我还要去了解更多相关知识,取得更大的提高。

27
第十三章参考文献
朱玉玺计算机控制技术第2版电子工业出版社2009年153-156 吴忠强控制系统仿真及Matlab语言电子工业出版社2009年184-189 刘金锟先进PID控制及其MATLAB仿真电子工业出版社55-59 冯瑶改进型Simth预估器研究,SCUT研究生学报1989年, 32-36 王月娟大延时过程控制方法控制理论与应用1986年1-5。

相关文档
最新文档