1、 (2-1)也可写成常见的传递函数形式: (2-2)式中,是比例增益,是积分时间,是微分时间。在计算机控制系统中,也普遍采用PID控制思想。此时,调节器的输出与输入之间的关系为: (2-3)其中,、分别为比例系数、积分时间常数和微分时间常数;T为采样周期;k为采样序号,k=0,1,2,;u(kT)为第k次采样输出值;e(kT)为第k次采样的输入偏差值;e(kT-T)为第(K-1)次采样的输入偏差值。2.2.PID控制器参数对控制性能的影响PID控制器各个参数对系统的动态和稳态性能起着不同的作用,这三个参数的取值优劣将直接影响PID控制系统的控制品质好坏。2.2.1.比例作用比例作用就是以比例形
2、式来反应系统的偏差信号e(t),以最快速度来产生控制作用,使偏差逐渐趋于减小。(1)对动态特性的影响比例控制参数Kc加大,使系统的动作灵敏,速度加快,Kc越大,振荡次数加多,调节时间也越长。当Kc太大时,系统会趋于不稳定,若Kc太小,又会使系统的动作缓慢。(2)对稳态特性的影响在系统稳定的情况下,比例系数Kc增大,稳态误差就会减少,以此来提高控制精度,但是加大Kc只是减少,却无法从本质上上消除稳态误差。2.2.2.积分作用引入积分作用,主要是为了在稳态状态下,满足被控量对设定值的无静差跟踪,对系统的性能影响主要表现如下:积分作用会引起系统的稳定性下降,Ti太小,系统将不稳定,Ti偏小到一定程度
3、时,系统会出现振荡;Ti太大,对系统性能的影响力也会缩减,只有当Ti合适时,才能出现比较理想的过渡特性。积分作用能够降低系统稳态误差,同时也能提高系统的控制精度,不过,当Ti值太大时,积分作用将会变得非常弱,稳态误差ess也不会紧随减弱了。2.2.3.微分作用微分作用常规使用会与比例作用、比例积分作用联合,构成PD控制器或者PID控制器。微分作用主要改善闭环系统的动态特性和稳定性。Td偏大时,超调量会较大,调节时间也会较长;Td偏小时,超调量也较大,相应调节时间也会较长。3.遗传优化算法遗传算法是-类可用于复杂系统优化计算的鲁棒搜索算法, 与其他一些优化算法相比, 它主要有下述几个恃点: (1
4、) 遗传算法以决策变量的编码作为运算对象。这种对决策变量的编码处理方式,使得我们在优化计算过程中可以借鉴生物学中染色体和基因等概念, 可以模仿自然界中生物的遗传和进化等机理, 也使得我们可以方便地应用遗传操作算子。(2) 遗传算法直接以目标函数值作为搜索信息。传统优化算法不仅需要利用目标函数值,而且往往需要目标函数的导数值等其他一些辅助信息才能确定搜索方向。而遗传算法仅使用由目标函数值变换来的适应度函数值,就可确定进一步的搜索方向和搜索范围, 无需目标函数的导数值等其他一些辅助信息。这个特性对很多目标函数是无法或很难求导数的函数, 或导数不存在的函数的优化问题,以及组合优化问题等, 应用遗传算
5、法时就显得比较方便, 因为它避开了函数求导这个障碍。(3) 遗传算法同时使用多个搜索点的搜索信息。单个搜索点所提供的搜索信息毕竟不多,所以搜索效率不高,有时甚至使搜索过程陷于局部最优解而停滞不前。遗传算法从由很多个体所组成的一个初始群体开始最优解的搜索过程,而不是从一个单一的个体开始搜索,这是遗传算法所特有的一种隐含并行性。(4) 遗传算法使用概率搜索技术。很多传统的优化算法往往使用的是确定性的搜索方法,而遗传算法属于一种自适应概率搜索技术,其选择、交叉、变异等运算都是以一种概率的方式来进行的,从而增加了其搜索过程的灵活性。当然, 交叉概率和奇异概率等参数也会影响算法的搜索效果和搜索效率,所以
6、如何选择溃传算法的参数在其应用中是一个比较重要的问题。而另一方面,与其他一些算法相比,遗传算法的鲁棒性又会使得参数对其搜索效果的影响会尽可能地低。3.1.SGA的基本实现技术基于对自然界中生物遗传与进化机理的模仿,针对不同的问题, 很多学者设计了许多不同的编码方法来表示问题的可行解, 开发出了许多种不同的遗传算子来模仿不同环境下的生物遗传特性。这样,由不同的编码方法和不同的遗传算子就构成了各种不同的遗传算法。但这些遗传算法都有共同的特点,即通过对生物遗传和进化过程中选择、交叉、变异机理的模仿,来完成对问题最忧解的自适应搏索过程。基于这个共同特点,Goldberg总结出了一种统一的最基本的遗传算
7、法基本遗传算法(Simple Genetic Algorithms,简称SGA)。基本遗传算法只使用选择算子、交叉算子和变异算子这三种基本遗传算子,其遗传进化操作过程简单,容易理解,是其他一些遗传算法的雏形和基础,它不仅给各种遗传算法提供了一个基本框架,同时也具有一定的应用价值。3.2.编码方法在遗传算法中如何描述问题的可行解, 即把一个问题的可行解从其解空间转换到遗传算法所能处理的搜索空间的转换方法称为编码。编码是应用遗传算法时要解决的首要问题,也是设计遗传算法时的一个关键步骤。二进制编码方法是遗传算法中最常用的一种编码方法。假设某一个参数U的取值范围是Umin , Umax ,用- 1 位
8、二进制数n来表示,则它们的关系如下式(3- 1)所示: (3-1)上述过程为解码,它的反过程即为编码。3.3.适应度函数在研究自然界中生物的遗传和进化现象时,生物学家使用适应度这个术语来度量某个物种对于其生存环境的适应程度。遗传算法中也使用适应度这个概念来度量群体中各个个体在优化计算中有可能达到或接近于或有助于找到最优解的优良程度。适应度较高的个体遗传到下一代的概率就较大:而适应度较低的个体遗传到下一代的概率就相对小一些。度量个体适应度的函数称为适应度函数( Fitness Function)。3.4.选择、交叉、变异算子遗传算法使用选择算子来对群体中的个体进行优胜劣汰操作。最常用的选择算子是
9、基本遗传算法中的比例选择算子。其基本思想是:各个个体被选中的概率与其适应度大小成E比。设群体大小为M,个体i的适应度为F,则个体i被选中的概率Pis为: (3-2)交叉算子是指对两个相互配对的染色体按某种方式相互交换其部分基因,从而形成两个新的个体。交叉运算是遗传算法区别于其他进化算法的重要特征,它在遗传算法中起关键作用,是产生新个体的主要办法。最简单的交叉算子是单点交叉算子, 即在群体中随机选取两个个体, 并在个体编码串中只随机设置一个交叉点,然后在该点以一定的概率Pc相互交换两个配对个体的部分染色体。一般民的经验取值范围是0.4-0.99。变异运算是指将个体染色体编码串中某些基因座上的基因
10、值用该基因座的其它等位基因来替换, 从而形成一个新的个体。最简单的变异算子是基本位变异算子,即对个体编码串中的每一位基因座上的基因值均以变异概率p作变异运算。一般Pm的经验取值范围是0.0001-0.10变异可使遗传算法具有局部随机搜索功能, 又可维持群体的多样性, 避免出现初期收敛问题。4.被控对象及建模已知被控对象的传递函数模型为: (4-1)采样周期T=1s,要求阶跃响应超调量。如图4-1所示,利用MATLAB/Simulink搭建系统仿真模型。图4-1 系统仿真模型PID控制器模块如图所示,其中PID控制器的Ki、Kd、Kp三个参数利用图4-2给定图4-2 PID控制器模型对于PID控
11、制器,给定如下二次型性能指标函数: (4-2)其中为常数,取值范围为,搭出如图4-3所示模型。图4-3 系统模型及二次型性能指标函数亦可直接编写M函数对系统进行建模,程序如下:function Kpidi,BsJ=pid_gaf(Kpidi,BsJ)global rin yout timefts=1sys=tf(1,10,1,0); %被控对象函数dsys=c2d(sys,ts,z); %零阶保持器法离散化num,den=tfdata(dsys,v%提取被控对象参数rin=1.0; %赋初值u_1=0.0;u_2=0.0;y_1=0.0;y_2=0.0;x=0,0,0;B=0;error_1=
12、0;tu=1;s=0;P=100;for k=1:1:P timef(k)=k*ts; r(k)=rin; u(k)=Kpidi(1)*x(1)+Kpidi(2)*x(2)+Kpidi(3)*x(3); %控制器输出 if u(k)=10 u(k)=10; end if u(k)0.95&yout(k)temp %交叉条件 alfa=rand; TempE(i,:)=alfa*Kpid(i+1,:)+(1-alfa)*Kpid(i,: TempE(i+1,:)=alfa*Kpid(i,:)+(1-alfa)*Kpid(i+1,: TempE(Size,:)=BestS; Kpid=TempE;
13、%* 步骤 4: 变异运算 *Pm=0.10-1:Size*(0.01)/Size; %具有更大 fi的个体具有更小的 PmPm_rand=rand(Size,CodeL);Mean=(MaxX + MinX)/2;Dif=(MaxX-MinX);CodeL if Pm(i)Pm_rand(i,j) %变异条件 TempE(i,j)=Mean(j)+Dif(j)*(rand-0.5);%保证 TempE(Size,:) 为最优个体BestfiBestSBest_J=BestJ(G)figure(1);plot(time,BestJ);xlabel(Timesylabel(Best Jfigur
14、e(2);plot(timef,rin,r,timef,yout,bTime(s)rin,yout5.3.仿真优化及分析由式(4-2)可知,二次型性能指标的常数的取值范围为,首先取设置控制系统M函数模型的运行时间为100秒。给定阶跃信号,采用实数编码方式,经过100代进化,获得的优化PID整定结果为Kp=0.2756,Ki=0,Kd=0.9210,性能指标J=5.1323。得到系统动态响应曲线,如图5-2所示。图5-2 系统响应曲线由图5-2可测得,系统调节时间T=34s,超调量为12.5%,最终达到稳定,无静态误差,得到较好的动静态响应特性。图5-3表示控制器输出波形,如图,控制器输出峰值为
15、1.17,并且35秒后趋于稳定。图5-3 控制器输出波形图5-4为遗传算法随进化代数增加,性能指标J的变化过程,在100代前后得到最优参数。图5-4 遗传算法优化过程二次型性能指标系数是否对对优化结果产生影响,可通过改变值并进行寻优来研究。值分别为0.25,0.5,0.75,1时的响应曲线比较图如图5-4所示。图5-5 不同参数值下的响应曲线比较当值增加时超调量上升,调节时间增加。6.总结本文在二次型性能指标的要求下,通过研究遗传算法,对控制对象进行PID参数整定,对PID系数进行了优化。利用优化结果进行了系统仿真,分析了控制器输出响应与系统动态响应。并对在不同值下的的系统响应进行了对比分析,
16、得出结论。可以得出,利用遗传算法可以较好的优化PID控制器参数,使系统得到较好的动静态响应。参考文献1.关守平,周玮等. 计算机控制系统M. 北京:科学出版社,2009.2.薛定宇,陈泉阳. 高等应用数学问题的MATLAB求解M.北京:清华大学出版社,2008.3.薛定宇.控制系统计算机辅助设计M.北京:清华大学出版社,2006.4.周明,孙树栋.遗传算法原理及应用M.北京:国防工业出版社,1999.5.刘金琨.先进PID控制MATLAB仿真M.北京:电子工业出版社,2004.6.苏小林,阎晓霞.基于遗传算法的PID参数优化技术电力系统及其自动化学报,1997, 9(2):20-26.7.刘国贤,林宪枢,杨奇逊.基于遗传算法的控制器参数寻优J,现代电力,1997,14(3):18-228.杨智,高靖,基于遗传算法的预测自整定PID控制器J.控制与决策,2000,15(1):113-115,118
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1