三阶极点配置_第1页
三阶极点配置_第2页
三阶极点配置_第3页
三阶极点配置_第4页
三阶极点配置_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1~ ''七z一1~ ''七z一n^ab0+%z-1+b2z-2+…+G(z-1)F(z-1)极点配置系统控制方框图其中F(z-1)、R(z-1)和G(z-1)为待定多项式,且F(z-1)为首一多项式,>r(幻为参考输入。这样构成的控制系统方框图见图,表达式如下。系统辨识与自适应控制三阶极点配置控制文字说明与本课程感想课题前申设有数学模型A(z-1)y(k)=z-dB(z-1)u(k)+其中A(z-1)=1+aAz-1+…+aB(z-1)=设计控制器为R(z-1)y(k)-F(z-1)rzz-dB(z-1)R(z-1)A(z-1)F(z-1)+zdB(z-1)G(z-1)yr(k)*A(z-1)F(z-1)+z-dB(z-1)G(z-1)

闭环特征多项式为A(z-1)F(z-1)+z-dB(z-1)G(z-i) Ac(z-1)控制的任务是,在不考虑干扰的情况下,使控制输出与期望输出相等,即y(k)=z-dy(k)=z-dB(z-1)R(z-1)A(z-1)F(z-1)+z-dB(z-1)G(z-1)yr(k)=ym(k)z-dBm(z-1)Am(z-1)yr(k)从而有z-dBRAF+z-dBG其中Am, Bm分别为期望的传递函数分母多项式和分子多项式。且两者互质。一般说来,前者由系统性能要求确定,后者根据系统稳态要求和过程不稳定零点确定。将过程的B分成两部分:B=B-B+其中,前者为不稳定和阻尼差的零点,后者为稳定零点。根据工程经验,控制器的引入可抵消过程的稳定零点,保留不稳定零点和阻尼差的零点,同时该零点应保留在期望传递函数分子中。于是F=FB+ B=BB-=Ami!)B-FF1B mm0B-⑴其中,Bm0=Am⑴,B—⑴是为了消除稳态误差。各式化简整理,左边分子分母对消B+,并考虑右边分子分母的阶次低于左边,为使其相等,右边分子分母同乘多项式A0,从而有化简R =Bm。A0AF1+z-dB-GAmA0Bm0Bm0A0AF1+z-dB-G=AmA0两边同乘B+,有A(z-1)F(z-1)+z-dB(z-1)G(z-1)degdegB++degA+degA0由上可的deg2degdegdegB++degA+degA0由上可的deg2deg又因为degAdeg-degB+A、A0B-,和d均为已知,当Am满足该等式的解有无穷组。为使问题有解确定以后可求出多项式F1和G。当A和B-互质时,,不妨假设式左边两项有相同的阶次,并规定degF]=degB-1+d-1degG=degA-1并且右边的阶次小于等于左边阶次.本算法引入了diophantine函数解决了该方程有唯一解的问题,使复杂的问题简单化。三阶极点配置控制本例题是基于二阶极点配置自校正控制研究完成。G(G(s)二 ea(-s)sA3+sA2+s要求的期望特征多项式为T(s)=sA3+1.4sa2+s+0.5且稳态输出无误差。采用零阶保持器,并采用采样周期Ts=0.5s,对上述系统离散化得;G(za(-1))=0.01743za(-2)+0.05832z+0.01229

zA3-2.296z人G(za(-1))=其零点是z1=-3.1212. z2=-0.2258;闭环特征多项式离散化后为Am(za(-1))=1-2.4138z人(-1)+2.0204z6(-2)-0.6065z人(-3)(1) 考虑系统零点不被对消的情况

离散化系统的零点为z1=-3.1212.z2=-0.2258;离散化系统的零点为z1=-3.1212.即B+=1,B-=0.01743z"2+0.05833z+0.01229为使系统无误差,Bm’=Am(1)/B"-(1)从程序运行中得0.04569.Bm=0.0083+0.0292Z”(-1)+0.0065Z”(-2)此时VAL取0.1零点未对消仿真图像零点未对消仿真图像(2) 考虑系统零点被对消的情况离散化系统的零点为z1=-3.1212. z2=-0.2258;为了让这个零点与控制器极点对消,即B+=(1-3.1212Z"(-1))(1-0.2258Z"(-1)),B-=0.01229为使系统无误差,Bm’=Am(1)/B"-(1)从程序运行中得0.5659.Bm=0.0103+0.0337Z”(-1)此时VAL取3.25

零点对消仿真图像三附程序及文字解释%极点配置控制(PPC)(连续系统离散化)极点未对消clearall;closeall;%被控对象离散化den=[1110];num=[1];Ts=0.5;Td=0;%连续系统对象参数sys=tf(num,den,'inputdelay',Td);%连续系统传递函数dsys=c2d(sys,Ts,'zoh');%离散化[dnum,a]=tfdata(dsys,'v');%提取离散系统数据na=length(a)-1;b=dnum(2:na+1);nb=length(b)-1;d=Td/Ts+1;%纯延时%期望特性离散化den=[12*0.7*1「20.5];num=[1];sys=tf(num,den);dsys=c2d(sys,Ts,'zoh');[dnum,Am]=tfdata(dsys,'v');%提取Amnam=length(Am)-1;%期望特征多项式阶次%多项式B的分解br=roots(b);%求B的根.br=-3.2626,-0.2385b0=b(1);b1=1;%b0为B-;b0=0.0182.b1为B+.b1=1Val=0.1;%通过修改临界值,确定B零点是否对消(零点绝对值小于临界值,则被抵消)fori=1:nb%分解B-、B+ifabs(br(i))>=Valb0=conv(b0,[1-br(i)]);elseb1=conv(b1,[1-br(i)]);endendBm1=sum(Am)/sum(b0);Bm=Bm1*b0;%确定多项式Bm.Bm=0.0440%确定多项式A0na0=2*na-1-nam-(length(b1)-1);%观测器最低阶次A0=1;fori=1:na0A0=conv(A0,[10.5]);%生成观测器end%计算Diophantine方程,得到F、G、R[F1,G]=diophantine(a,b0,d,A0,Am);%主意,此处为b0F=conv(F1,b1);R=Bm1*A0;nf=length(F)-1;ng=length(G)-1;nr=length(R)-1;L=400;%控制步数uk=zeros(d+nb,1);%输入初值:uk(i)表示u(k-i)yk=zeros(na,1);%输出初值yrk=zeros(na,1);%期望输出初值yr=10*[ones(L/4,1);-ones(L/4,1);ones(L/4,1);-ones(L/4+d,1)];%期望输出fork=1:Ltime(k)=k*Ts;y(k)=-a(2:na+1)*yk+b*uk(d:d+nb);%采集输出数据u(k)=(-F(2:nf+1)*uk(1:nf)+R*[yr(k+d:T:k+d-min(d,nr));yrk(1:nr-d)]-G*[y(k);yk(1:ng)])/F(1);%求控制量%更新数据fori=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);fori=na:-1:2yk(i)=yk(i-1);yrk(i)=yrk(i-1);endyk(1)=y(k);yrk(1)=yr(k);endsubplot(2,1,1);plot(time,yr(1:L),'r:',time,y);xlabel('t');ylabel('y_r(t)、y(t)');legend(,y_r(t),,,y(t),);subplot(2,1,2);plot(time,u);xlabel(,t,);ylabel(,u(t),);%极点配置控制(PPC)(连续系统离散化)极点已对消clearall;closeall;%被控对象离散化den=[1110];num=[1];Ts=0.5;Td=0;%连续系统对象参数sys=tf(num,den,,inputdelay,,Td);%连续系统传递函数dsys=c2d(sys,Ts,,zoh,);%离散化[dnum,a]=tfdata(dsys,,v,);%提取离散系统数据na=length(a)-1;b=dnum(2:na+1);nb=length(b)-1;d=Td/Ts+1;%纯延时%期望特性离散化den=[12*0.7*1「20.5];num=[1];sys=tf(num,den);dsys=c2d(sys,Ts,,zoh,);[dnum,Am]=tfdata(dsys,,v,);%提取Amnam=length(Am)-1;%期望特征多项式阶次%多项式B的分解br=roots(b);%求B的根.br=-3.2626,-0.2385b0=b(1);b1=1;%b0为B-;b0=0.0182.b1为B+.b1=1Val=3.25;%通过修改临界值,确定B零点是否对消(零点绝对值小于临界值,则被抵消)fori=1:nb%分解B-、B+ifabs(br(i))>=Valb0=conv(b0,[1-br(i)]);elseb1=conv(b1,[1-br(i)]);endendBm1=sum(Am)/sum(b0);Bm=Bm1*b0;%确定多项式Bm.Bm=0.0440%确定多项式A0na0=2*na-1-nam-(length(b1)-1);%观测器最低阶次A0=1;fori=1:na0A0=conv(A0,[10.5]);%生成观测器end%计算Diophantine方程,得到F、G、R[F1,G]=diophantine(a,b0,d,A0,Am);%主意,此处为b0F=conv(F1,b1);R=Bm1*A0;nf=length(F)-1;ng=length(G)-1;nr=length(R)-1;L=400;%控制步数uk=zeros(d+nb,1);%输入初值:uk(i)表示u(k-i)yk=zeros(na,1);%输出初值yrk=zeros(na,1);%期望输出初值yr=10*[ones(L/4,1);-ones(L/4,1);ones(L/4,1);-ones(L/4+d,1)];%期望输出fork=1:Ltime(k)=k*Ts;y(k)=-a(2:na+1)*yk+b*uk(d:d+nb);%采集输出数据u(k)=(-F(2:nf+1)*uk(1:nf)+R*[yr(k+d:-1:k+d-min(d,nr));yrk(1:nr-d)]-G*[y(k);yk(1:ng)])/F(1);%求控制量%更新数据fori=d+nb:-1:2uk(i)=uk(i-1);enduk(1)=u(k);fori=na:-1:2yk(i)=yk(i-1);yrk(i)=yrk(i-1);endyk(1)=y(k);yrk(1)=yr(k);endsubplot(2,1,1);plot(time,yr(1:L),'r:',time,y);xlabel('t');ylabel('y_r(t)、y(t)');legend(,y_r(t),,,y(t),);subplot(2,1,2);plot(time,u);xlabel(,t,);ylabel(,u(t),);diophantine函数function[F1,G]=diophantine(A,B,d,A0,Am)/o个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个%功能:Diophanine方程的求解%调用格式:[F1,G]=diophantine(A,B,d,A0,Am)%输入参数:多项式A、B系数向量、纯延迟d、多项式A0、Am系数向量(行向量)%输出参数:Diophanine方程的解F1、G(行向量)%**************************************************************

温馨提示

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

评论

0/150

提交评论