您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 实验二最少拍控制系统设计20151031doc
实验二基于MATLAB的最少拍控制系统设计一、实验目的:1.掌握最少拍有纹波、无纹波系统的设计方法;2.学会对最少拍控制字体的分析方法;3.了解输入信号对最少拍控制系统的影响及改进措施二、实验内容:设单位反馈线性定常系统的连续部分和零阶保持器的传递函数分别为:)1(2)(0sssG,sesGsTh1)(,采样周期T=1秒。要求系统在单位阶跃输入时实现最少拍控制,求数字控制器的脉冲传递函数)(zD。讨论加上控制器后的系统输出在采样点之间是否存在纹波,若存在纹波,请设计最少拍无纹波控制器。系统结构如图:-)(sRT()Ys)(zD()hGs)(0sG例:-)(sRT()Ys)(zD()hGs)(0sG设单位反馈线性定常系统的连续部分和零阶保持器的传递函数分别为:)1(1)(0sssG,sesGsTh1)(,采样周期T=1秒。要求系统在单位斜坡输入时实现最少拍控制,求数字控制器的脉冲传递函数)(zD。讨论加上控制器后的系统输出在采样点之间是否存在纹波,若存在纹波,请设计最少拍无纹波控制器。1、设计最少拍控制器:步骤:(1)确定有零阶保持器的广义对象)(zGclearall;Closeall;clc;G=zpk([],[0,-1],1);%零极点形式的被控对象T=1;%采样周期Gd=c2d(G,T,'zoh');%广义被控对象脉冲传函广义被控对象的脉冲传递函数为:0.36788(z+0.7183)------------------(z-1)(z-0.3679)可知,广义被控对象没有单位圆外的零极点,也没有纯滞后。即i=j=l=0。(2)输入为单位斜坡时,m=2,s=j+m=2,t=l+i=0最少拍系统应具有的误差脉冲传递函数、闭环脉冲传递函数分别为:2211)(zmzmz121()(1)zz求待定系数,得:221122)(zzzzz22211221)(1zzzzzz(3)确定数字控制器)(zD()()()1()]zDzGzz[(4)闭环系统输出:()()()()()YzRzzUzGz数字控制器的输出:)()()(zDzEzU程序:clearall;clc;G=zpk([],[0,-1],1);%零极点形式的被控对象t=0:0.01:10;u=t;%单位斜坡输入figure(1);lsim(G,u,t);%求未加控制器时系统的单位斜坡响应title('未加控制器时开环系统的单位斜坡响应,灰线:系统输入;蓝线:系统输出');T=1;%采样周期Gd=c2d(G,T,'zoh');%广义被控对象脉冲传函phie=tf([1-21],[100],T);%误差脉冲传函phi=tf([02-1],[100],T);%闭环脉冲传函D=phi/(Gd*phie);%数字控制器脉冲传函D(z)Phie,phi,Gd,D[num1,den1]=tfdata(Gd,'v');[num2,den2]=tfdata(D,'v');ud_1=0;ud_2=0;ud_3=0;ud_4=0;ud_5=0;yd_1=0;yd_2=0;ed_1=0;ed_2=0;ed_3=0;ed_4=0;ed_5=0;fork=1:1:35time(k)=k*T;rin(k)=k*T;%单位斜坡信号%加数字控制器的差分方程yd(k)=num1(2)*ud_1+num1(3)*ud_2-den1(2)*yd_1-den1(3)*yd_2;ed(k)=rin(k)-yd(k);%求偏差%数字控制器的差分方程ud(k)=(num2(1)*ed(k)+num2(2)*ed_1+num2(3)*ed_2+num2(4)*ed_3+num2(5)*ed_4+num2(6)*ed_5-den2(2)*ud_1-den2(3)*ud_2-den2(4)*ud_3-den2(5)*ud_4-den2(6)*ud_5)/den2(1);%数据更新ud_5=ud_4;ud_4=ud_3;ud_3=ud_2;ud_2=ud_1;ud_1=ud(k);ed_5=ed_4;ed_4=ed_3;ed_3=ed_2;ed_2=ed_1;ed_1=ed(k);yd_2=yd_1;yd_1=yd(k);endyd,udfigure(2);plot(time,rin,'r',time,yd,'b',time,ud,'k');xlabel('time');ylabel('rin,yd,ud');title('加数字控制器后单位速度信号的闭环响应及数字控制器的输出');text(3,23,'红线:系统输入;蓝线:系统输出;黑线:控制器输出');0123456789100102030405060708090System:GTime(seconds):5.95Amplitude:25.5未加控制器时开环系统的单位斜坡响应,灰线:系统输入;蓝线:系统输出Time(seconds)Amplitude由图可知,未加控制器的开环系统是不稳定的。输入按照单位斜坡变化,而输出与输入的差异越来越大。不能稳定。为实现最少拍控制,需加控制器。0510152025-50510152025红线:系统输入;蓝线:系统输出;黑线:控制器输出X:2Y:2timerin,yd,ud加数字控制器后的单位斜坡信号的闭环响应及数字控制器的输出系统输出序列:yd=Columns1through902.00003.00004.00005.00006.00007.00008.00009.0000Columns10through1810.000011.000012.000013.000014.000015.000016.000017.000018.0000Columns19through2719.000020.000021.000022.000023.000024.000025.000026.000027.0000Columns28through3528.000029.000030.000031.000032.000033.000034.000035.0000控制器输出序列:ud=Columns1through95.4366-3.18674.0072-1.16002.5515-0.11441.80050.42501.4130Columns10through180.70341.21310.84701.10990.92101.05670.95931.02930.9790Columns19through271.01510.98921.00780.99441.00400.99711.00210.99851.0011Columns28through350.99921.00060.99961.00030.99981.00010.99991.0001可知,加数字控制器后,系统输出与系统输入在2s以后相等,说明系统是稳定的且稳态无静差。调节时间为2s,但观察其数字控制器输出曲线及输出序列发现,其控制器输出在28拍(28s)后才变为恒定值,说明输出在第3拍至第28拍间,仅能保证在采样点上与输入相同,在采样点间不相同,即输出有纹波。此时闭环脉冲传函为:2z-1-------z^2误差脉冲传函为:z^2-2z+1-------------z^2数字控制器为:5.4366z^2(z-0.5)(z-0.3679)(z-1)-----------------------------------z^2(z+0.7183)(z-1)^22、最少拍无纹波控制器:步骤:(1)确定有零阶保持器的广义对象)(zG,广义被控对象脉冲传函:0.36788(z+0.7183)------------------(z-1)(z-0.3679)广义被控对象没有单位圆外的零极点,也没有纯滞后。即i=j=l=0。(2)由G(z)有一个单位圆内的零点-0.7183,要实现无纹波,则最少拍系统的闭环脉冲传递函数要求将单位圆内圆外的所有零点都包含进来。此时零点个数i=1。(3)输入为单位斜坡时,m=2,s=j+m=2,t=l+i=0+1=1。应具有的误差脉冲传递函数、闭环脉冲传递函数分别为:321122111))(7183.0())(7183.01())(7183.01()(zbazzbzazzzmzmzz32121121))(12()1)(21()1()1()(1zfzzzfzzzfzzz因1)()(1zz,有1))(12())(7183.0(323zfzzzzbazz得方程组:f=(1+0.718*2)/(2.718+1/0.718);a=2-f;b=-f/0.718;(3)确定数字控制器)(zD()()()1()]zDzGzz[(4)闭环系统输出:()()()()()YzRzzUzGz数字控制器的输出:)()()(zDzEzU程序:clearall;closeall;clc;G=zpk([],[0,-1],1);%%零极点形式的被控对象t=0:0.01:10;u=t;%单位斜坡输入figure(1);lsim(G,u,t);%求未加控制器时系统的单位斜坡响应title('未加控制器时开环系统的单位斜坡响应,灰线:系统输入;蓝线:系统输出');T=1;%采样周期Gd=c2d(G,T,'zoh');%广义被控对象脉冲传函%求误差脉冲传函及闭环脉冲传函z=tf([10],[1],1);%定义z为算子f=(1+0.718*2)/(2.718+1/0.718);a=2-f;b=-f/0.718;phie=(z^2-2*z+1)*(z+f)/z^3;%误差脉冲传函phi=(a*z+b)*(z+0.718)/z^3;%闭环脉冲传函D=phi/(Gd*phie);%数字控制器脉冲传函D(z)Gd,D,phie,phi[num1,den1]=tfdata(Gd,'v');%求脉冲传函的分子分母多项式[num2,den2]=tfdata(D,'v');ud_1=0;ud_2=0;ud_3=0;ud_4=0;ud_5=0;ud_6=0;ud_7=0;yd_1=0;yd_2=0;ed_1=0;ed_2=0;ed_3=0;ed_4=0;ed_5=0;ed_6=0;ed_7=0;fork=1:1:25time(k)=k*T;rin(k)=k*T;%单位斜坡信号%加数字控制器的差分方程yd(k)=num1(2)*ud_1+num1(3)*ud_2-den1(2)*yd_1-den1(3)*yd_2;ed(k)=rin(k)-yd(k);%数字控制器的差分方程ud(k)=(num2(1)*ed(k)+num2(2)*ed_1+num2(3)*ed_2+num2(4)*ed_3+num2(5)*ed_4+num2(6)*ed_5+num2(7)*ed_6+num2(8)*ed_7-den2(2)*ud_1-den2(3)*ud_2-den2(4)*ud_3-den2(5)*ud_4-den2(6)*ud_5-den2(7)*ud_6-den2(8)*ud_7)/den2(1);ud_7=ud_6;ud_6=ud_5;ud_5=ud_4;ud_4=ud_3;ud_3=ud_2;ud_2=ud_1;ud_1=ud(k);ed_7=ed_6;ed_6=ed_5;ed_5=ed_4;ed_4=ed_3;ed_3=ed_2;ed_2=ed_1;ed_1=ed(k);yd_2=yd_1;yd_1=yd(k);endyd,udfigure(2);plot(time,rin,'r',time,yd,'b',time,ud,'k');xlabel('time');ylabel('rin,yd,ud');title('加数字控制器后单位速度信号的闭环响应及数字控制器的输出');text(1.5,4.5,'红线:系统输入;蓝线:系统输出;黑线:控制器输出'
本文标题:实验二最少拍控制系统设计20151031doc
链接地址:https://www.777doc.com/doc-2458744 .html