当前位置:文档之家› 模糊神经网络PID设计方法及其优缺点

模糊神经网络PID设计方法及其优缺点

模糊神经网络PID设计方法及其优缺点
模糊神经网络PID设计方法及其优缺点

实验名称

一.实验目的

1.了解掌握传统PID控制原理及其基本的参数整定方法;

2.了解掌握模糊控制原理及其优缺点;

3.了解掌握神经网络原理及其优缺点;

4.掌握将传统PID控制与模糊控制结合、传统PID控制与神经网络控制

结合以及将传统PID控制、模糊控制与神经网络控制三者结合起来有

效地解决控制问题。

二.实验内容

1.分别改变PID参数中的Kp,Ti,Td,比较PID参数对控制系统的影响;

2.选取Ziegler-Nichols法则对传统PID经行参数整定;

3.选取合适的隶属度函数设计模糊控制PID;

4.选取一种合适方式,设计神经网络与模糊控制结合的PID控制器。

三.实验原理

1.常规PID原理

常规PID控制系统框图如图3-1所示。控制系统由PID控制器和被对象组成。

图3-1.传统PID控制系统原理图

PID控制器是一种线性控制器,它根据给定值r(t)与实际输出值y(t)构成控制偏差

e(t)=r(t)一y(t)

将偏差的比例(P)、积分(I)和微分(D)通过线性组合构成控制量,对被控对象进行控制,其控制规律为

u t =K P (e t +

1

T I e t dt

t

0+

T D de (t )dt

)

或写成传递函数形式:

G s =U (s )E (s )=K p (1+1

T i

s +T d s )

式中:Kp ——比例系数;Ti ——积分时间常数;Td 微分时间常数;

2.Ziegler-Nichols 法则整定PID

基于临界增益Kcr 和临界周期Pcr 的2. Ziegler-Nichols 整定法则

3.模糊PID 控制器设计原理

模糊控制是以模糊集合论、模糊语言变量及模糊逻辑推理为基础的计算机智能控制。模糊控制的基本原理框图如图3-2所示。它的核心部分为模糊控制器,模糊控制器的控制规律由计算机的程序实现。实现一步模糊控制算法的过程描述如下:微机经终端采样获取被控制量的精确值,然后将此量与给定值比较得到偏差信号E ,一般选偏差信号E 作为模糊控制器的一个输入量。把偏差信号E 的精确量进行模糊化变成模糊量。偏差E 的模糊量可用相应的模糊语言表示,得到偏差E 的模糊语言集合的一个子集e ,再由e 和模糊控制规则R(模糊算子)根据推理的合成规则进行模糊决策,得到模糊控制量U 。

图3-2模糊控制原理图

自适应模糊PID控制器是采用一个两输入、三输出的模糊控制器,以偏差e和偏差变化ec作为模糊控制器的输入,利用模糊控制规则在线对PID参数进行修改,并以PID 参数的修正量(△Kp,△Ti,△Td)为输出,以满足不同时刻偏差和偏差变化对PID参数整定的要求。

图3-4.自适应模糊PID控制器系统设计框图

我们将系统偏差e和偏差变化ec以及三个输出△Kp、△Ti和△Td的变化范围都定义为模糊集上的论域:e,ec=-6、-4、-2、0,2、4、6,设其模糊子集为e、ec、△Kp、△Ti、△Td;NB、NM、NS、ZO、PS、PM、PB、且设e、ec和△Kp、△Ti、△Td均服从三角形隶属函数曲线分布。

图3-4.e、ec和△Kp、△Ti、△Td的隶属度函数图

4.模糊-神经PID控制器设计原理

PID 控制适用于可建立精确数学模型的确定性系统,然而实际工业生产过程往往具有非线性、时变不确定性,难以建立精确的数学模型,在实际生产中,常规 PID 控制器参数往往整定不良、性能欠佳,对运行工况的适应性很差。在 PID 控制器设计中,寻找合适的控制算法来实现 Kp、Ki、Kd 参数的整定至关重要i。BP 神经网络是目前应用较多的一种神经网络结构,能够实现输入输出的非线性映射关系,具有很好的逼近非线性映射的能力,因此神经网络在运用于工业控制时具有其独特的优势。本文在研究了基于神经网络的控制器结构和算法的基础上,用改进共扼梯度算法对神经网络控制器参数进行在线整定。仿真结果表明,这种改进方案不仅能够提高算法在训练过程中的收敛速度,而且训练后的神经网络具有较强的自适应和自学习能力,对控制器参数实现在线整定,从而进一步提高了控制器的性能。

神经网络模糊PID控制器结构如图3—5所示。

图3-5.模糊神经网络PID控制器结构图

控制器由三部分组成:

1.传统PID控制器,直接对被控对象进行闭环控制。

2.模糊化模块,对系统的状态变量进行模糊量化和归一化处理,再把归一化后的输入数值根据输入变量模糊子集的隶属函数找出相应的隶属度,送给神经网络。

3.神经网络,用于表示模糊规则。即经过神经网络的学习,将模糊规则以加权系数的形式表现出来,规则的生成就转化为加权系数的确定和修

改。其中输出层神经元的输出就对应于PID控制器的三个可调参数Kp、Ti、Td。根据系统的运行状态,通过神经网络的自学习和加权系数的调整,来

调节PID控制器的参数,以期达到某种性能指标的最优化。

四.实验方法及步骤

1.常规PID参数对控制系统的影响

系统的开环参数如图4-1所示:

图4-1.系统开环传递函数

采用传统PID控制,分别改变PID中的参数Kp,Ti,Td,观察比较改变PID参数中的单一参数对被控系统单位阶跃响应曲线的影响。

程序如下:

>> grid on;%改变参数Kp对单位阶跃响应影响

>> hold on;

>> G=tf(1,[1 6 5 0]);

>> a=[0.05 0.1 0.3 0.5 0.8 1.0 1.2 1.5 2.0 4.0];

>> for i=1:10 %%改变参数Kp对单位阶跃响应影响

Kp=18*a(i); Ti =1.4025; Td=0.3506;

Gc=Kp*tf([Ti*Td Ti 1],[Ti 0]);

G1=G*Gc; G1_=feedback(G1,1); step(G1_)

end

>>for i=1:7 %%改变参数Ti对单位阶跃响应影响

Kp=18; Ti =1.4025*a(i);Td=0.3506;

Gc=Kp*tf([Ti*Td Ti 1],[Ti 0]);

G1=G*Gc; G1_=feedback(G1,1); step(G1_)

>>end

>>a=[0.1 0.25 0.65 1.0 1.7 4.0 8.0];

>>for i=1:7 %%改变参数Td对单位阶跃响应影响

Kp=18; Ti =1.4025; Td=0.3506*a(i);

Gc=Kp*tf([Ti*Td Ti 1],[Ti 0]);

G1=G*Gc; G1_=feedback(G1,1); step(G1_);

end

2.传统PID参数整定方法

常规PD控制器的参数整定一般可采用Ziegler-Nichols法、Cohn.Coon 法、衰减曲线法、临界比例度法或经验试凑法(直接通过调试PID控制算法取经验值),离线地找到一组合适的参数KP,KI,KD,使系统基本接近最佳工况。

控制的开环传递函数为图4-1所示,采用Ziegler-Nichols法则计算PID 参数为Kcr=30;Pcr=2.8050;则PID擦参数为:Kp=18 ; Ti =1.4025 ; Td=0.3506;根据计算所得参数绘制单位阶跃响应曲线。

>> G=tf(1,[1 6 5 0]);

>> Gc=18*tf([Ti*Td Ti 1],[Ti 0]);

>> G1=G*Gc; G_=feedback(G,1); G1_=feedback(G1,1);

>> step(G_,'-b'); step(G1_,'-r');

3.模糊PID控制器设计方法

模糊控制器是模糊控制系统的核心。一个模糊控制系统的性能优劣,主要取决于模糊控制器的结构、所采用的模糊规则、合成推理算法以及模糊决策的方法等因素。糊控制器的设计主要包括以下几项内容:

(1)确定模糊控制器的输入变量和输出变量:

(2)设计模糊控制器的控制规则:

(3)确立模糊化和解模糊(又称清晰化)的方法;

(4)选择模糊控制器的输入变量及输出变量论域并确定模糊控制器的参数如量化因子、比例因子;

(5)编制模糊控制算法的应用程序;

(6)合理选择模糊控制算法的采样时间。

表4-1.Kp隶属度变化表

根据各模糊子集的隶属度赋值表、隶属函数曲线和各参数模糊控制模型,应用模糊合成推理建立PID参数的模糊矩阵表,在线运行,通过微机测控系统通过对模糊逻辑规则的结果处理、查表和运算,对Kp、Ti、Td进行在线自调整。

e=O;de=O;ie=O;m=zeros(1,3);

kpl=0.2;kil=0.16;kdl=0.16;x=zeros(1ength(den)-l,1);

[a1,b,c,d]=tf2ss(num,den);

ke=20;kec=80;ku=O.005;

for k=l:N

el=ke*e:del=kec*de;

if el>=6

el=6;

elseif el<=6

el=6;

end

if del>=6

del=6;

elseif del<=6

del=-6:

end

in=[el,del];m=ku*evams(in,a);

n1=O.4*m(1,1);n2=0.32*m(1,2);n3=0.32*m(1,3);

kp=kpl+nl;ki=kil+n2;kd=kdl+n3;

uu(1,k)=(kp*e+ki*ie+kd*de);u=uu(1,k);

k0=al*x+u;kl=al*(x+h*k0/2)+b*u;

k2=a1*(x+h*kl/2)+b*u;k3=al*(x+h*k2)+b*u;

x=x+(k0+2*kl+2*k2+k3)*h/6;y=c*x+d*u:

el=e;e=R(1,k)-y;de=(e-e1)/T;ie=e*T+ie;yy3(1,k)=y;

end

4.模糊-神经PID控制器设计方法

我们分别设计了三个BP网络,其中每一个BP网络都具有如图4-2的结构。它有两个输入,分别对应系统的偏差e和偏差变化ec,并具有4层隐层和一个输出层,其中第一层隐层的神经元为7个,分别对应输入的7个模糊子集NB,NM,NS,ZO,PS,PM,PB,第二层隐层的神经元取为49个.对应自适应模糊PID控制器的49条规则。第四层隐层的神经元也为7个,对应输出的7个模糊子集。

我们将输入变量e、ec和3个BP网络的输出变量AKP、AKI、AKD的模糊论域设为[一6,6],模糊子集NB,NM,NS,ZO,PS,PM,PB分别用一6,-4,-2,0,2,4,6来表示,对表4-1,4-2,4-3,所示的模糊控制规则进行训练。通过BP网络对基手工程实践和专家经验的模糊规则表的训练,相当于寻找从输入e、ec分别到输出△Kp、△Ti、△Td的非线性映射关系,其实质是确定BP网络各层神经元的连接权值和阈值。当这些连接权值和闽值确定后,这种输入与输出间的非线性函数关系也就确定了,然后就可以利用这种映射关系求出系统在任意状态(e、ec)下三个参数Kp、Ti、Td的修正量

图4-2.神经网络实现模糊控制推理

e=[6 6 6 6 6 6 6 4 4 4 4 4 4 4 2 2 2 2 2 2 2 0 0 0 0 0 0 0 -2 -2 -2 -2 -2 -2 -2 -4 -4 -4 -4 -4 -4 -4 -6 -6 -6 -6 -6 -6 -6];

ec=[6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 -4 -6 6 4 2 0 -2 4 6];

kkp=[-6 -6 -4 -4 -4 0 0 -6 -4 -4 -4 -2 0 2 -4 -4 -2 -2 0 2 2 -4 -4 -2 0 2 4 4 -2 -2 0 2 4 4 4 -2 0 2 2 4 6 6 0 0 2 4 4 6 6];

kki=[6 6 4 4 2 0 0 6 6 4 2 2 0 0 6 4 2 2 0 -2 -4 4 4 2 0 -2 -4 -4 2 2 0 -2 -2 -4 -6 0 0 -2 -2 -4 -6 -6 0 0 -2 -4 -4 -6 -6];

kkd=[6 2 2 4 4 4 6 6 2 2 2 2 2 6 0 0 0 0 0 0 0 0 -2 -2 -2 -2 -2 0 0 -2 -2 -4 -4 -2 0 0 -2 -4 -4 -6 -2 2 2 -4 -6 -6 -6 -2 2];

ee=[e;ec];

bpkp=newff([-6 6;-6 6],[2 49 14 7

1],{'tansig','tansig','tansig','tansig','purelin'},'train gdm');

bpkp=init(bpkp);%Kp训练过程

bpkp.trainParam.epochs=5000;

bDkp.trainParam.Ir=0.04;

bpkp.trainParam.goal=5e-3;

bpkp=train(bpkp,ee,kkd);

bpkp=init(bpkp);%Ti训练过程

bpkp.trainParam.epochs=5000;

bDkp.trainParam.Ir=0.04;

bpkp.trainParam.goal=5e-3;

bpkp=train(bpkp,ee,kkd);

bpkp=init(bpkp);%Td训练过程

bpkp.trainParam.epochs=7000;

bDkp.trainParam.Ir=0.04;

bpkp.trainParam.goal=5e-3;

bpkp=train(bpkp,ee,kkd);

仍然采用图4-1所示的过程模型进行仿真,KP=O.1,KI=O.05,KD=O.08,输入为单位阶跃信号。比较常规PID算法、模糊PID算法和基于BP神经网络的自适应模糊PID算法的阶跃响应特性。

五.实验结果分析

1.常规PID控制器各参数对控制效果的影晌

比例调节的特点是简单、快速。缺点是对具有自平衡性的控制对象有静差;对带有滞后的系统,可能产生振荡,动态特性也差。比例系数Kp增大可以加快响应速度,减小系统稳态误差,提高控制精度。但是KP过大会产生较大超调,甚至导致不稳定;若Kp取得过小,能使系统减少超调量,稳定裕度增大,但会降低系统的调节精度,使过渡过程时间延长。根据系统控制过程中各个不同阶段对过渡过程的要求以及操作者的经验,通常在控制的初始阶段,适当的把Kp放在较小的档次.以减小各物理量初始变化的冲击:在控制过程中期,适当加大Kp,以提高快速性和动态精度;而到了过渡过程的后期,为了避免产生大的超调和提高静态精度稳定性,又将Kp调小。

积分调节可提高系统的抗干扰能力,消除系统的静态误差,适用于有自平衡性的系统,但它有滞后现象,使系统的响应速度变慢,超调量变大,并可能产生振荡。加大积分系数Ti有利于减小系统静差,但过强的积分作用会使超调加剧,甚至引起振荡;减小积分系数Ti,虽然有利于系统稳定,避免振荡,减小超调量,但又对系统消除静差不利。通常在调节过程的初期阶段,为防止由于某些因素引起的饱和非线性等影响而造成积分饱和现象,从而引起响应过程的较大超调量,积分作用应弱些而取较小的Ti;在响应过程的中期,为避免对动态稳定性造成影响,积分作用应适中;在过程后期,应以较大的Ti值以减小系统静差,提高调节精度。

微分调节作用主要是针对被控对象的大惯性改善其动态特性,它能给出响应过程提前制动的减速信号,有助于减小超调,克服振荡,使系统趋于稳定。同时加快系统的响应速度,减小调节时间,从而改善了系统的动态特性。缺点是抗干扰能力差。Td的值对响应过程影响非常大。若增大微分作用,有利于加快系统响应,使超调量减小,增加稳定性,但也会带来扰动敏感,抑制外干扰能力减弱。若Td过大则会使响应过程过分提前制动从而延长调节时间:反之,若Td过小,调节过程的减速就会滞后,超调量增加,系统响应变慢,稳定性变差。通常在响应过程初期,适当加大微分作用可以减小甚至避免超调;在响应过程中期,由于对Td的变化很敏感,因此Td应小些,且保持不变;在调节过程后期,Td要再小一些,从而减弱过程的制动作用,增加对扰动的抑制能力,使调节过程的初期因K。较大而导致的调节时间增长得到补偿。

2.传统PID参数整定方法

PID控制质量的好坏关键取决于其参数的整定,参数经整定的PID控制器在对象不发生变化时的各种性能指标均较好,而且当被控对象的参数变化不大时,其控制品质对被控对象特性的变化不大敏感。但是这种参数的整定需要被控对象的模型,而且在对象参数变化较大时,性能指标变化很大,严重时甚至引起发散振荡,特别是对于大滞后、非线性对象及参数慢时变且受随机干扰的系统,常规PID控制器显得无能为力。

3.模糊PID参数整定方法

适当改变隶属函数曲线的分布规律,其作用就相当于改变了模糊规则库中各规则的适用范围和权重,从而可以改进控制性能指标。仿真和应用结果表明.自适应模糊PID控制的响应特性优于常规PID控制,大大提高了系统抗外部干扰和适应内部参数变化的鲁棒性,特别是对于非线性和时变性的被控对象,可获得较满意的控制效果。

4.模糊-神经PID控制器

BP神经网络对Kp训练过程

BP神经网络对Ti训练过程

BP神经网络对Td训练过程

传统PID,模糊控制PID,模糊神经控制PID阶跃信号仿真:

(1)我们设计的这种神经网络自适应模糊PID控制器能够根据给定的性能指标函数应用神经网络来进行模糊推理,可以自适应地自动修PID参数,免去了人工调整时存在的种种困难。

(2)因为这种神经网络自适应模糊PID控制器是基于模糊控制规则的。实质上是对模糊规则的前提到结论的一种非线性映射。所以在进行参数设计时,调整因子Kp,Ti,Td的设计思想是直接在模糊PID控制器的基础上做适当的修正。

(3)这种基于神经网络的模糊PID控制器在减小超调、缩短调节时间方面具有明显优于常规PID控制的特性,而且当被控对象参数发生较大变化时,仍能保持较好的控制效果。

(4)从仿真的结果可以看出神经网络自适应模糊PID控制算法有较好的动静态性能。对比传统PID算法和模糊控制PID,神经网络自适应模糊PID控制算法响应速度最快,表现在其调节时间最短,其次是模糊PID控制算法。在超调方面,神经网络自适应模糊PID控制算法的超调量是最好的,基本是小超调或无超调;模糊控制PID的超调也较小;而传统PID算法的超调较大。

相关主题
文本预览
相关文档 最新文档