PID参数优化和前馈控制.docx_第1页
PID参数优化和前馈控制.docx_第2页
PID参数优化和前馈控制.docx_第3页
PID参数优化和前馈控制.docx_第4页
PID参数优化和前馈控制.docx_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

现代工程控制理论实验报告学生姓名:任课老师:学 号: 班 级:目录实验十一 PID参数优化和前馈控制31、PID参数优化31.1 实验目的31.2 PID优化方法32前馈控制32.1实验原理32.2实验步骤及内容32.3实验结论33、实验中遇到的问题33.1 PSO优化结果问题33.2如何寻找一个函数分析系统仿真过程中的扰动对系统输出的影响程度?3实验十一PID参数优化和前馈控制本次实验分为PID控制器的参数优化和前馈控制器分析两个部分。1、PID参数优化1.1 实验目的PID控制器是控制领域中最为经典、应用最为广泛的一种控制器,但是现如今PID参数的选择方法仍然没有一个广泛认同的标准。本次实验通过实例讲解一种较为基本的PID参数选择方法,以供大家参考。1.2PID优化方法PID参数选择主要分为两个部分,经验寻找和精准筛选。1.2.1经验寻找在已知对象传递函数的条件下,寻找控制器参数的第一步的是经验寻找,即利用经验公式大致确定PID三个参数的大致范围。设PID控制器的形式为,确定kp、Ti、Td参数的经验公式如下:(1)对于传递函数为的系统选择PI控制器,。(2)对于传函为的系统可以选择Zn法选择PID控制系数。Zn法的表格如下。Zn法P0PI0PID至于纯迟延系统PID控制器的参数选择方法在实验十二继续阐述,在此不再累赘。例:针对传递函数为 的对象设计PI控制器,使系统最终能够稳定下来,且超调量小于5%,稳定时间小于500s。解:根据经验公式可以大致确定一组PI系数使系统能够稳定下来。对应的程序如下。得到kp=0.8333,Ti=80。对应的控制器的传递函数为,在相应的控制器的作用下系统的输出曲线如下。从图像中可以观察到,经验公式得到的控制器虽然能使系统稳定下来,但输出品质却无法令人满意。因此需要优化控制器的参数,进行精确寻找。1.2.2精确寻找经验法得到的控制器参数仅仅能够使系统稳定下来,但系统的品质往往并不是特别令人满意,因此需要进一步寻找更精确的控制器参数。尽管精确寻找的算法很多,但这些算法的方向都一样的,即是在粗略PID参数附近利用各种方法搜寻使目标函数取最小值的kp、Ti和Td。因此这一步的关键在于目标函数的确定和搜寻方法的选择。1.2.2.1目标函数目标函数用来衡量搜寻当中控制器参数的满意程度,它对于系统辨识或PID参数优化问题极为重要,直接影响最终的辨识或优化效果。但目前并没有成型的理论可以系统地阐述什么样的条件下选用什么样的目标函数,只能通过经验来确定。对于PID参数优化问题,常用的目标函数有以下这么4个。、为了便于写程序,将其写成累加的形式分别为。其中t=i*dt, e=r-y(i)。 e表示整个系统输入值和输出值得差。目标函数即是建立一个衡量系统品质的标准。目标函数的值越小,相应的系统输出的控制品质越好。这四种目标函数的侧重点又各有所不同。更注重于系统的准确性,对系统的快速性没有直接的要求。一般来说,由筛选出来的控制器超调量最小,但稳定时间往往并不是特别理想。是在的基础上加上了对快速性的考虑,由筛选出来的控制器往往比得到的控制器在快速性上更胜一筹。而类似的、也是在系统品质上有所侧重。经过不同的目标函数得到的控制器的各项品质多多少少是有所不同。但不管怎样,通过选择合适的目标函数总能让我们找到符合要求的最优的PID控制器。4种目标函数对应的程序如下。Q=0;ifeType=1 %fori=1:lp e=r-y(i); Q=Q+e*e*dt;endendifeType=2 %fori=1:lp e=r-y(i); Q=Q+i*dt*dt*abs(e);endendifeType=3 %fori=1:lp e=r-y(i); Q=Q+i*dt*dt*e*e;endendifeType=4 %fori=1:lp e=r-y(i); Q=Q+i*dt*i*dt*dt*e*e;endend此外,为了保证控制品质满足响应的要求(如超调量小于5%)还要对各项品质加入上限和惩罚因子。一但某项品质超过上限,则惩罚因子就开始起作用。惩罚因子是一个很大的数,当这一项起作用后目标函数的值会显著增大。惩罚因子的加入形式也是有讲究的。直接在目标函数上加入一个很大的数是无法表示不同系统品质的“越限程度”。因此需要在惩罚因子上乘上一个比例系数。形似如 ,其中EMP是超调量的上限,MP是实际输出的超调量。对超调量、稳定时间加入上限的程序如下。1.2.2.2搜寻方法搜寻方法有很多种,在此以穷举法、随机搜索、以及PSO算法为例详细介绍。1.2.2.2.1 穷举法利用经验公式得到PID控制器的粗略参数后,在其附近能够确定各项参数的一个范围。之后选择合适的步长,在这个范围内寻优。每次得到一组控制器的参数后,可以得到一个目标函数的返回值。要记录下使目标函数值最小的控制器参数作为最优解。继续上例,利用穷举法寻找控制器的最优参数,程序如下。%穷举法PID参数优化clc;clear all;close all;kp,Ti=first;kpmin=0.6*kp;kpmax=3*kp;Timin=Ti;Timax=3*Ti;step_kp=0.1*kp;step_Ti=0.1*Ti;e=1010;kp_b=kpmin;Ti_b=Timin;to=clock;forkp_find=kpmin:step_kp:kpmaxforTi_find=Timin:step_Ti:Timax ec,ym,tm=fangzhen(kp_find,Ti_find);ifece e=ec;kp_b=kp_find;Ti_b=Ti_find;y_f=ym;endendendtime1=etime(clock,to)kp_bTi_b得到的kp=1.25,Ti=224,对应的控制器的传递函数为。对应的系统输出曲线为。1.2.2.2.2随机搜索随机搜索也是一种搜寻PID参数的简单方法。相比较穷举法那种不遗漏的筛选方法,随机搜索的方式会快很多。随机法主要利用了概率论的思想。假设每个点都可能是最优点,那么没必要搜索所有的点。只要随机的搜取最够多的点即有很大可能找到想要的最优解,这样可大大缩短仿真时间。随机搜索对应的程序如下。%随机搜索clc;clear all;close all;kp,Ti=first;kpmin=0.6*kp;kpmax=3*kp;Timin=Ti;Timax=3*Ti;Ti_b=Timin;kp_b=kpmin;e=1010;kp_b=kpmin;Ti_b=Timin;to=clock;fori=1:1000kp_find=kpmin+(kpmax-kpmin)*rand();Ti_find=Timin+(Timax-Timin)*rand(); ec,ym,tm=fangzhen(kp_find,Ti_find);ifece e=ec;kp_b=kp_find;Ti_b=Ti_find;endendtime1=etime(clock,to)kp_bTi_b利用随机搜索对PID参数进行优化得到的系统输出曲线如下。1.2.2.2.3PSO算法粒子群优化(PSO)属于群体智能算法,可以大大缩短优化时间。PSO算法利用了生物学中的群体行为。个体为了寻优,它的前进速度就应该由三个外力决定:自己过去最好的、整个群体当前最好的以及自己现在的运动趋势。由这些合力可以确定它的前进方向,使它不再盲目,因此不必要像穷举法那样将任何位置都走过,或者像随机法那样没有目的仅凭随机的寻找最优值。PSO算法的流程如下。继续上例,通过PSO算法寻找最优的PID控制器,程序如下。%-设定初始值N=10; %粒子个数to=clock;for ii=1:N PSO(ii,1)=kpmin+(kpmax-kpmin)*rand();%PSO(,1)表示kp PSO(ii,2)=Timin+(Timax-Timin)*rand();%PSO(,2)表示Ti E(ii)=1010; %E表示各个点的误差 v(ii,1)=vmin+(vmax-vmin)*rand();%v(ii,1)表示各个点当前的速度 v(ii,2)=vmin+(vmax-vmin)*rand();%v(ii,2)表示各个点当前的速度end%-最优lishi_b=zeros(N,2);%N*2的数组,记录了每个粒子各自的历史最优位置,lishi_b(n,1)表示第n个粒子的历史最优k,lishi_b(n,2)表示第n个粒子的历史最优T;E_ago=zeros(1,N)+1010;%记录了N个粒子各自的历史最小误差now_b=zeros(1,2);%当前群体最优位置,now_b(1)表示k,now_b(2)表示T%-PSO的内循环M=50;%设定的代数forjj=1:50for ii=1:N E(ii),ym,tm=fangzhen(PSO(ii,1),PSO(ii,2);if E(ii)E_ago(ii)E_ago(ii)=E(ii);lishi_b(ii,1)=PSO(ii,1);lishi_b(ii,2)=PSO(ii,2);endend E_now,lli=min(E);%寻找当前群体最优now_b(1)=PSO(lli,1);now_b(2)=PSO(lli,2);ifE_now9/20 %对速度限幅v(ii,1)=9/20;elseif v(ii,1)9/20v(ii,2)=9/20;elseif v(ii,2)-9/20v(ii,2)=-9/20;end PSO(ii,:)=PSO(ii,:)+v(ii,:); %更新位置endend得到的kp=0.76371,Ti=148.3664,对应的控制器的传递函数为。对应的系统输出曲线为。1.3对各种PID优化方法进行分析比较优化方法PI控制器参数(控制器传函为)稳定时间ts超调量Mp衰减率fai最终稳定值ys优化时间经验公式Kp=0.8333,Ti=8044826.18160.9230.99702穷举法Kp=1.25,Ti=2243844.582510.992640.36随机搜索Kp=1.1848,Ti=204.343764.853610.994780.343PSO算法Kp=1.1795,Ti=224.673923.084810.991770.353从图表中可以发现,经过优化,系统的品质明显提升。此外分析不同优化方法得到的控制器可以发现,进过不同优化方法得到的PI控制参数仅仅是略有不同,得到的效果都能令人满意。从表格当中的优化时间当中也很难看出仿真速度的快慢来。但从原理上分析,对于那些十分复杂的系统,优化精度最高的是穷举法。穷举法是一个点紧邻一个点的寻找,在精度的满足范围下没有遗漏。但这同样造成了穷举法的仿真时间要远远落后于其他方法,因此对于复杂系统来说穷举法并不适用。而至于仿真速度最快的方法,对于十分复杂的系统在保证精度的前提下,以PSO算法为代表的智能算法因其巧妙的群体行为学的应用使得优化速度最快,可以在最短的时间内达到人所期望的效果。而相比较而言,智能算法的程序也较为复杂,因此更适合更为复杂的系统。而随机搜索、混沌算法属于较为综合的方法。思想简单,仿真精度、仿真时间都考虑在内,适合较为简单的系统。这些算法带来的好处当中,自我认为最重要的一点在于精度可调。因为对工程当中,因环境影响各项参数的精度都不是很高。这样在写算法的时候即可牺牲优化精度,来换取优化速度,实现效率的最大化。2前馈控制2.1实验原理2.1.1前馈控制在自动控制技术当中,有一种按照干扰量的变化来补偿其对被控量的影响,从而达到减弱干扰量对系统输出的影响的控制方式。我们称这种按干扰进行控制的开环控制方式称为前馈控制。前馈控制的方框图如下,其中R为干扰量。在系统当中加入前馈环节实现完全补偿,即要实现系统的输出y等于0,则前馈控制所在的直通通路的输出为-R。由此可以得到前馈环节的传递函数。得到,称这一环节为动态补偿环节。G(s)往往具有积分环节,由此得到的就会带有纯微分环节。而在实际当中,传递函数为纯微分形式的系统是不存在的,如果不可避免用 替换。总之传递函数为的物理装置很难制作。因此往往用静态补偿代替动态补偿。称前馈环节传递函数为的控制方式为静态前馈控制。这样的前馈装置为简单的放大装置,易于制作,安全可靠。前馈控制的实质为补偿控制。如果给定值为经常发生变动的输入信号,则应用这种控制方法会提高系统的稳定性,也会加快响应速度,减弱扰动对系统输出产生的影响。利用前馈控制进行系统设计也有相应的前提条件,如下。(1)被控对象的传递函数需已知,且要准确。如果被控对象的实际传递函数与我们得到的传递函数有所偏差,称这种情况为模型失配。模型失配会降低系统的输出品质。(2)干扰点是可知且能测量的,否则前馈环节的输入端无法确定。2.1.2前馈反馈控制单纯的前馈控制往往不能很好地补偿干扰,存在着不少局限性。主要是单纯的前馈控制不存在被控量的反馈,对补偿效果没有检验的手段。因此一个固定的前馈控制难以获得良好的控制品质。工业当中常常将前馈与反馈结合在一起,构成所谓的前馈反馈控制系统。前馈反馈控制系统的方框图如下。前馈反馈控制将前馈和反馈的优点结合在了一起,既发挥了前馈控矫正及时、抗扰动的特点,又保持了前馈控制能克服多种干扰并对被控变量始终给予检验的优点。因此前馈反馈控制是过程控制当中有发展前途的控制方式。2.2实验步骤及内容本次试验主要以减温水系统为例来总结前馈控制的特点。工业当中前馈反馈控制的实例有很多,以减温水系统为例。该系统的方框图如下。其中,。R是系统的输入信号,将R简化为1。D是干扰信号。为了研究前馈控制的抗干扰能力,取前一半仿真时间里D=0,后一半仿真时间里D=1。要实现前馈控制,则应满足D*GD(s)+D*Gf(s)*G(s)=0。得到。2.2.1静态前馈控制静态前馈控制系统中前馈环节的传递函数为,本例当中。将静态前馈控制下减温水系统的输出和不加前馈控制减温水系统的输出曲线列于一张图中,如下。分析图中的两条曲线可以发现,在不加扰动之前(t650后加入干扰信号D,两条曲线最终都能够稳定下来,且最终的输出接近于输入信号R。这说明减温水系统无论加不加前馈控制环节最终都能消除扰动,稳定在期望值上。之后再仔细对比两条曲线,可以发现加入静态前馈控制环节后因干扰信号而给输出带来的扰动强度明显弱于不加前馈控制时的强度。因此可以总结出静态前馈控制环节的功能静态前馈控制环节可以提高系统的抗干扰能力,降低干扰对系统输出的影响。2.2.2动态前馈控制动态前馈控制系统中前馈环节的传递函数为,在本系统当中。对该系统进行仿真,得到的仿真曲线为。观察三条曲线可以发现,扰动对动态前馈控制下系统输出的影响程度虽然比不加前馈控制下系统输出的影响程度小,但却大于静态前馈控制下干扰对系统的影响程度。这说明动态系统的抗干扰能力要强于静态系统的抗干扰能力。此外动态前馈补偿环节的装置明显要比静态前馈补偿环节装置复杂。因此在明确知道系统对象的传递函数时,静态前馈控制要优于动态前馈控制。2.2.3模型失配时的前馈控制前馈补偿的前提之一是知道控制对象的传递函数,否则就无法选择前馈环节的物理装置。如果对象的实际传递函数为G(s),而我们通过辨识得到的传递函数G(s),因为某种原因使得G(s)不等于G(s)。在这样的条件下我们称前馈控制系统处于模型失配状态。继续上例,减温水系统的主被控对象传递函数,而我们得到的减温水系统的主被控对象传递函数设为模型失配时前馈环节的传递函数,则。为了研究模型失配时前馈控制系统的响应特性,我们将失配与不失配两种情况下系统的输出曲线绘于下方。2.2.3.1静态前馈控制模型失配问题,可以得到。静态前馈控制系统模型失配与不失配的区别就在于前馈装置的传函是还是。将两种情况下系统的输出列于下方。分析两条曲线可以发现无论模型失配还是不失配,最终静态前馈控制系统的输出都能稳定下来。其次观察因干扰给系统带来的扰动情况。很明显,当模型失配时干扰对系统输出的影响要明显大于模型不失配时干扰对系统输出的影响。而且模型失配时,干扰消除的时间要明显长于模型不失配时的消除时间。可见对于静态前馈系统来说,模型失配会降低系统的抗扰能力。2.2.3.1动态前馈控制模型失配问题,可以得到。动态前馈控制系统模型失配与不失配的区别就在于前馈装置的传函是还是。将两种情况下系统的输出列于下方。分析两条曲线可以发现无论模型失配还是不失配,最终动态前馈控制系统的输出都能稳定下来。其次观察因干扰给系统带来的扰动情况。很明显当模型失配时干扰对系统输出的影响要明显大于模型不失配时干扰对系统输出的影响。而且模型失配时,干扰消除的时间要明显长于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论