专家PID控制系统Matlab仿真.docx

上传人:b****5 文档编号:14319872 上传时间:2023-06-22 格式:DOCX 页数:31 大小:266.93KB
下载 相关 举报
专家PID控制系统Matlab仿真.docx_第1页
第1页 / 共31页
专家PID控制系统Matlab仿真.docx_第2页
第2页 / 共31页
专家PID控制系统Matlab仿真.docx_第3页
第3页 / 共31页
专家PID控制系统Matlab仿真.docx_第4页
第4页 / 共31页
专家PID控制系统Matlab仿真.docx_第5页
第5页 / 共31页
专家PID控制系统Matlab仿真.docx_第6页
第6页 / 共31页
专家PID控制系统Matlab仿真.docx_第7页
第7页 / 共31页
专家PID控制系统Matlab仿真.docx_第8页
第8页 / 共31页
专家PID控制系统Matlab仿真.docx_第9页
第9页 / 共31页
专家PID控制系统Matlab仿真.docx_第10页
第10页 / 共31页
专家PID控制系统Matlab仿真.docx_第11页
第11页 / 共31页
专家PID控制系统Matlab仿真.docx_第12页
第12页 / 共31页
专家PID控制系统Matlab仿真.docx_第13页
第13页 / 共31页
专家PID控制系统Matlab仿真.docx_第14页
第14页 / 共31页
专家PID控制系统Matlab仿真.docx_第15页
第15页 / 共31页
专家PID控制系统Matlab仿真.docx_第16页
第16页 / 共31页
专家PID控制系统Matlab仿真.docx_第17页
第17页 / 共31页
专家PID控制系统Matlab仿真.docx_第18页
第18页 / 共31页
专家PID控制系统Matlab仿真.docx_第19页
第19页 / 共31页
专家PID控制系统Matlab仿真.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

专家PID控制系统Matlab仿真.docx

《专家PID控制系统Matlab仿真.docx》由会员分享,可在线阅读,更多相关《专家PID控制系统Matlab仿真.docx(31页珍藏版)》请在冰点文库上搜索。

专家PID控制系统Matlab仿真.docx

专家PID控制系统Matlab仿真

专家PID控制系统Matlab仿真

摘要:

分析了一个速度控制器的控制仿真。

其传递函数为:

使用专家PID控制系统,输入信号为阶跃信号,取采样时间为1ms,画出阶跃响应曲线和误差变化曲线。

0引言

专家控制(ExpertControl)的实质是基于受控对象和控制规律的各种知识,并以智能的方式利用这些知识来设计控制器。

利用专家经验来设计PID参数便构成专家PID控制。

典型的二阶系统单位阶跃响应误差曲线如图1、2所示。

对于典型的二阶系统阶跃响应过程作如下分析,根据误差及其变化,可设计专家PID控制器,该控制器可分为五种情况进行设计。

1设计

根据误差及其变化,可设计专家PID控制器,该控制器可分为以下五种情况进行设计:

(1)当

时,说明误差的绝对值已经很大,不论误差变化趋势如何,都应考虑控制器的输出应按最大〔或最小)输出,以达到迅速调整误差,使误差绝对值以最大速度减小。

此时,它相当于实施开环控制。

(2)当

时,说明误差在朝误差绝对值增大方向变化,或误差为某一常值,未发生变化。

此时,如果

,说明误差也较大,可考虑由控制器实施较强的控制作用,以达到扭转误差绝对值朝减小方向变化,并迅速减小误差的绝对值。

此时,如果

,说明尽管误差朝绝对值增大方向变化,但误差绝对值本身并不很大,可考虑控制器实施一般的控制作用,只要扭转误差的变化趋势,使其初误差绝对值减小方向变化。

(3)当

时,说明误差的绝对值朝减小的方向变化,或者已经达到平衡状态。

此时,可考虑采取保持控制器输出不变。

(4)当

时,说明误差处于极值状态。

如果此时误差的

绝对值较大,可考虑实施较强的控制作用。

(5)当

时,说明误差的绝对值很小,此时加入积分,减少稳态误差。

2仿真图

图1阶跃响应曲线

图2误差曲线

3程序

%ExpertPIDController

clearall;

closeall;

ts=0.001;

sys=tf(5.235e005,[1,87.35,1.047e004,0]);

dsys=c2d(sys,ts,'z');

[num,den]=tfdata(dsys,'v');

u_1=0.0;u_2=0.0;u_3=0.0;

y_1=0;y_2=0;y_3=0;

x=[0,0,0]';

x2_1=0;

kp=0.6;

ki=0.03;

kd=0.01;

error_1=0;

fork=1:

1:

500

time(k)=k*ts;

rin(k)=1.0;%TracingJieyueSignal

u(k)=kp*x

(1)+kd*x

(2)+ki*x(3);%PIDController

%Expertcontrolrule

ifabs(x

(1))>0.8%Rule1:

Unclosedcontrolfirstly

u(k)=0.45;

elseifabs(x

(1))>0.40

u(k)=0.40;

elseifabs(x

(1))>0.20

u(k)=0.12;

elseifabs(x

(1))>0.01

u(k)=0.10;

end

ifx

(1)*x

(2)>0|(x

(2)==0)%Rule2

ifabs(x

(1))>=0.05

u(k)=u_1+2*kp*x

(1);

else

u(k)=u_1+0.4*kp*x

(1);

end

end

if(x

(1)*x

(2)<0&x

(2)*x2_1>0)|(x

(1)==0)%Rule3

u(k)=u(k);

end

ifx

(1)*x

(2)<0&x

(2)*x2_1<0%Rule4

ifabs(x

(1))>=0.05

u(k)=u_1+2*kp*error_1;

else

u(k)=u_1+0.6*kp*error_1;

end

end

ifabs(x

(1))<=0.001%Rule5:

IntegrationseparationPIcontrol

u(k)=0.5*x

(1)+0.010*x(3);

end

%Restrictingtheoutputofcontroller

ifu(k)>=10

u(k)=10;

end

ifu(k)<=-10

u(k)=-10;

end

%Linearmodel

yout(k)=-den

(2)*y_1-den(3)*y_2-den(4)*y_3+num

(1)*u(k)+num

(2)*u_1+num(3)*u_2+num(4)*u_3;

error(k)=rin(k)-yout(k);

%----------ReturnofPIDparameters------------%

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(k);%CalculatingP

x2_1=x

(2);

x

(2)=(error(k)-error_1)/ts;%CalculatingD

x(3)=x(3)+error(k)*ts;%CalculatingI

error_1=error(k);

end

figure

(1);

plot(time,rin,'b',time,yout,'r');

xlabel('time(s)');ylabel('rin,yout');

figure

(2);

plot(time,rin-yout,'r');

xlabel('time(s)');ylabel('error');

参考文献:

[1]董海鹰.智能控制理论及应用[M].中国铁道出版社:

北京.2006,47-48(页)

 

模糊PID控制系统Matlab仿真

摘要:

分析了一个速度控制器的控制仿真。

其传递函数为:

使用模糊PID控制系统,输入信号为阶跃信号,取采样时间为1ms,画出阶跃响应曲线和误差变化曲线。

0引言

模糊PID控制算法以误差E和Ec为输入,利用模糊控制规则在线对PID参数进行修改,以满足不同时刻的E和Ec对PID参数的要求,输出为Kp,Ki,Kd。

图1模糊控制原理图

该模糊推理控制系统是一个两输入三输出的形式,输入变量为E和Ec,输出变量为Kp,Ki和Kd,其调整原则为:

(1)当误差|E|较大时,为使系统具有较好的快速跟踪性能,不论误差的变化趋势如何,都应该取较大的Kp和较小的Kd,同时为避免系统响应出现较大的超调,应对积分作用加以限制,取较小的Ki值。

(2)当误差|E|处于中等大小时,为使系统响应具有较小的超调,Kp应取得小些,同时为保证系统的响应速度,Ki和Kd的大小要适中,其中Kd的取值对系统响应的影响较大。

(3)当误差|E|较小时,为保证系统具有较好的稳态性能,Kp和Ki应取得大些,同时为避免系统在设定值附近出现振荡,并考虑系统的抗干扰性能,当|E|较小时,Kd可取大些;当|E|较大时,Kd应取小些。

1建立控制规则表

输入变量E,Ec和Kd语言值的模糊子集取为{负大,负中,负小,零,正小,正中,正大},并简记为{NB,NM,NS,ZO,PS,PM,PB},论域为{-3,-2,-l,0,1,2,3}。

Ki论域为{-0.06,-0.04,-0.02,0,0.02,0.04,0.06},Kp论域为{-0.3,-0.2,-0.l,0,0.1,0.2,0.3}。

隶属函数采用三角形函数,

根据对已有控制系统设计经验的总结,得到PID三个控制参数的模糊控制规则表,见表1~表3。

表1Kp的模糊规则表

e

Δkp

de

NB

NM

NS

ZO

PS

PM

PB

NB

PB

PB

PM

PM

PS

ZO

ZO

NM

PB

PB

PM

PS

PS

ZO

NS

NS

PM

PM

PM

PS

ZO

NS

NS

ZO

PM

PM

PS

ZO

NS

NM

NM

PS

PS

PS

ZO

NS

NS

NM

NM

PM

PS

ZO

NS

NM

NM

NM

NB

PB

ZO

ZO

NM

NM

NM

NB

NB

注:

NB、NM、NS、ZO、PS、PM、PB分别表示负大、负中、负小、零、正小、正中、正大。

表2Ki的模糊规则表

e

Δki

de

NB

NM

NS

ZO

PS

PM

PB

NB

NB

NB

NM

NM

NS

ZO

ZO

NM

NB

NB

NM

NS

NS

ZO

ZO

NS

NB

NM

NS

NS

ZO

PS

PS

ZO

NM

NM

NS

ZO

PS

PM

PM

PS

NM

NS

ZO

PS

PS

PM

PB

PM

ZO

ZO

PS

PS

PM

PB

PB

PB

ZO

ZO

PS

PM

PM

PB

PB

表3Kd的模糊规则表

e

Δkd

de

NB

NM

NS

ZO

PS

PM

PB

NB

PS

NS

NB

NB

NB

NM

PS

NM

PS

NS

NB

NM

NM

NS

ZO

NS

ZO

NS

NM

NM

NS

NS

ZO

ZO

ZO

NS

NS

NS

NS

NS

ZO

PS

ZO

ZO

ZO

ZO

ZO

ZO

ZO

PM

PB

NS

PS

PS

PS

PS

PB

PB

PB

PM

PM

PM

PS

PS

PB

2仿真结果

图2ki的隶属度函数曲线

图3kp的隶属度函数曲线

图4ec的隶属度函数曲线

图5e的隶属度函数曲线

图6kd的曲线

图7ki的曲线

图7kp的曲线

图8u的输出曲线

图9e的曲线

图10阶跃响应的曲线

图11规则输入输出

3输出49条规则

ans=

1.If(eisNB)and(ecisNB)then(kpisPB)(kiisNB)(kdisPS)

(1)

2.If(eisNB)and(ecisNM)then(kpisPB)(kiisNB)(kdisNS)

(1)

3.If(eisNB)and(ecisNS)then(kpisPM)(kiisNM)(kdisNB)

(1)

4.If(eisNB)and(ecisZ)then(kpisPM)(kiisNM)(kdisNB)

(1)

5.If(eisNB)and(ecisPS)then(kpisPS)(kiisNS)(kdisNB)

(1)

6.If(eisNB)and(ecisPM)then(kpisZ)(kiisZ)(kdisNM)

(1)

7.If(eisNB)and(ecisPB)then(kpisZ)(kiisZ)(kdisPS)

(1)

8.If(eisNM)and(ecisNB)then(kpisPB)(kiisNB)(kdisPS)

(1)

9.If(eisNM)and(ecisNM)then(kpisPB)(kiisNB)(kdisNS)

(1)

10.If(eisNM)and(ecisNS)then(kpisPM)(kiisNM)(kdisNB)

(1)

11.If(eisNM)and(ecisZ)then(kpisPS)(kiisNS)(kdisNM)

(1)

12.If(eisNM)and(ecisPS)then(kpisPS)(kiisNS)(kdisNM)

(1)

13.If(eisNM)and(ecisPM)then(kpisZ)(kiisZ)(kdisNS)

(1)

14.If(eisNM)and(ecisPB)then(kpisNS)(kiisZ)(kdisZ)

(1)

15.If(eisNS)and(ecisNB)then(kpisPM)(kiisNB)(kdisZ)

(1)

16.If(eisNS)and(ecisNM)then(kpisPM)(kiisNM)(kdisNS)

(1)

17.If(eisNS)and(ecisNS)then(kpisPM)(kiisNS)(kdisNM)

(1)

18.If(eisNS)and(ecisZ)then(kpisPS)(kiisNS)(kdisNM)

(1)

19.If(eisNS)and(ecisPS)then(kpisZ)(kiisZ)(kdisNS)

(1)

20.If(eisNS)and(ecisPM)then(kpisNS)(kiisPS)(kdisNS)

(1)

21.If(eisNS)and(ecisPB)then(kpisNS)(kiisPS)(kdisZ)

(1)

22.If(eisZ)and(ecisNB)then(kpisPM)(kiisNM)(kdisZ)

(1)

23.If(eisZ)and(ecisNM)then(kpisPM)(kiisNM)(kdisNS)

(1)

24.If(eisZ)and(ecisNS)then(kpisPS)(kiisNS)(kdisNS)

(1)

25.If(eisZ)and(ecisZ)then(kpisZ)(kiisZ)(kdisNS)

(1)

26.If(eisZ)and(ecisPS)then(kpisNS)(kiisPS)(kdisNS)

(1)

27.If(eisZ)and(ecisPM)then(kpisNM)(kiisPM)(kdisNS)

(1)

28.If(eisZ)and(ecisPB)then(kpisNM)(kiisPM)(kdisZ)

(1)

29.If(eisPS)and(ecisNB)then(kpisPS)(kiisNM)(kdisZ)

(1)

30.If(eisPS)and(ecisNM)then(kpisPS)(kiisNS)(kdisZ)

(1)

31.If(eisPS)and(ecisNS)then(kpisZ)(kiisZ)(kdisZ)

(1)

32.If(eisPS)and(ecisZ)then(kpisNS)(kiisPS)(kdisZ)

(1)

33.If(eisPS)and(ecisPS)then(kpisNS)(kiisPS)(kdisZ)

(1)

34.If(eisPS)and(ecisPM)then(kpisNM)(kiisPM)(kdisZ)

(1)

35.If(eisPS)and(ecisPB)then(kpisNM)(kiisPB)(kdisZ)

(1)

36.If(eisPM)and(ecisNB)then(kpisPS)(kiisZ)(kdisPB)

(1)

37.If(eisPM)and(ecisNM)then(kpisZ)(kiisZ)(kdisPS)

(1)

38.If(eisPM)and(ecisNS)then(kpisNS)(kiisPS)(kdisPS)

(1)

39.If(eisPM)and(ecisZ)then(kpisNM)(kiisPS)(kdisPS)

(1)

40.If(eisPM)and(ecisPS)then(kpisNM)(kiisPM)(kdisPS)

(1)

41.If(eisPM)and(ecisPM)then(kpisNM)(kiisPB)(kdisPS)

(1)

42.If(eisPM)and(ecisPB)then(kpisNB)(kiisPB)(kdisPB)

(1)

43.If(eisPB)and(ecisNB)then(kpisZ)(kiisZ)(kdisPB)

(1)

44.If(eisPB)and(ecisNM)then(kpisZ)(kiisZ)(kdisPM)

(1)

45.If(eisPB)and(ecisNS)then(kpisNM)(kiisPS)(kdisPM)

(1)

46.If(eisPB)and(ecisZ)then(kpisNM)(kiisPM)(kdisPM)

(1)

47.If(eisPB)and(ecisPS)then(kpisNM)(kiisPM)(kdisPS)

(1)

48.If(eisPB)and(ecisPM)then(kpisNB)(kiisPB)(kdisPS)

(1)

49.If(eisPB)and(ecisPB)then(kpisNB)(kiisPB)(kdisPB)

(1)

4程序:

%FuzzyTunningPIDControl

clearall;

closeall;

a=newfis('fuzzpid');

a=addvar(a,'input','e',[-3,3]);%Parametere

a=addmf(a,'input',1,'NB','zmf',[-3,-1]);

a=addmf(a,'input',1,'NM','trimf',[-3,-2,0]);

a=addmf(a,'input',1,'NS','trimf',[-3,-1,1]);

a=addmf(a,'input',1,'Z','trimf',[-2,0,2]);

a=addmf(a,'input',1,'PS','trimf',[-1,1,3]);

a=addmf(a,'input',1,'PM','trimf',[0,2,3]);

a=addmf(a,'input',1,'PB','smf',[1,3]);

a=addvar(a,'input','ec',[-3,3]);%Parameterec

a=addmf(a,'input',2,'NB','zmf',[-3,-1]);

a=addmf(a,'input',2,'NM','trimf',[-3,-2,0]);

a=addmf(a,'input',2,'NS','trimf',[-3,-1,1]);

a=addmf(a,'input',2,'Z','trimf',[-2,0,2]);

a=addmf(a,'input',2,'PS','trimf',[-1,1,3]);

a=addmf(a,'input',2,'PM','trimf',[0,2,3]);

a=addmf(a,'input',2,'PB','smf',[1,3]);

a=addvar(a,'output','kp',[-0.3,0.3]);%Parameterkp

a=addmf(a,'output',1,'NB','zmf',[-0.3,-0.1]);

a=addmf(a,'output',1,'NM','trimf',[-0.3,-0.2,0]);

a=addmf(a,'output',1,'NS','trimf',[-0.3,-0.1,0.1]);

a=addmf(a,'output',1,'Z','trimf',[-0.2,0,0.2]);

a=addmf(a,'output',1,'PS','trimf',[-0.1,0.1,0.3]);

a=addmf(a,'output',1,'PM','trimf',[0,0.2,0.3]);

a=addmf(a,'output',1,'PB','smf',[0.1,0.3]);

a=addvar(a,'output','ki',[-0.06,0.06]);%Parameterki

a=addmf(a,'output',2,'NB','zmf',[-0.06,-0.02]);

a=addmf(a,'output',2,'NM','trimf',[-0.06,-0.04,0]);

a=addmf(a,'output',2,'NS','trimf',[-0.06,-0.02,0.02]);

a=addmf(a,'output',2,'Z','trimf',[-0.04,0,0.04]);

a=addmf(a,'output',2,'PS','trimf',[-0.02,0.02,0.06]);

a=addmf(a,'output',2,'PM','trimf',[0,0.04,0.06]);

a=addmf(a,'output',2,'PB','smf',[0.02,0.06]);

a=addvar(a,'output','kd',[-3,3]);%Parameterkp

a=addmf(a,'output',3,'NB','zmf',[-3,-1]);

a=addmf(a,'output',3,'NM','trimf',[-3,-2,0]);

a=addmf(a,'output',3,'NS','trimf',[-3,-1,1]);

a=addmf(a,'output',3,'Z','trimf',[-2,0,2]);

a=addmf(a,'output',3,'PS','trimf',[-1,1,3]);

a=addmf(a,'output',3,'PM','trimf',[0,2,3]);

a=addmf(a,'output',3,'PB','smf',[1,3]);

rulelist=[1171511;

1271311;

1362111;

1462111;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2