直线一级倒立摆控制.doc

上传人:大张伟 文档编号:6087042 上传时间:2020-09-07 格式:DOC 页数:13 大小:245KB
返回 下载 相关 举报
直线一级倒立摆控制.doc_第1页
第1页 / 共13页
直线一级倒立摆控制.doc_第2页
第2页 / 共13页
直线一级倒立摆控制.doc_第3页
第3页 / 共13页
直线一级倒立摆控制.doc_第4页
第4页 / 共13页
直线一级倒立摆控制.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《直线一级倒立摆控制.doc》由会员分享,可在线阅读,更多相关《直线一级倒立摆控制.doc(13页珍藏版)》请在三一文库上搜索。

1、直线一级倒立摆控制直线一级倒立摆系统输入为小车的加速度,输出为倒立摆系统摆杆的角度,被控对象的传递函数为:给系统施加脉冲扰动,输出量为摆杆的角度时,系统框图如下:图 3-4 直线一级倒立摆闭环系统图(脉动干扰)1) 绘制直线一级倒立摆开环根轨迹图、Bode 图和奈奎斯特图clearnum=0.02725;den=0.0102125 0 -0.26705;sys=tf(num,den); %生成传递函数模型rlocus(sys);title(根轨迹); %绘制生成根轨迹figure(1);bode(sys),hold on;grid on;title(bode图); %绘制bode图figure

2、(2);nyquist(sys);hold on;grid on;title(nyquist曲线图); %绘制nyquist曲线图2)用根轨迹法设计控制器,使得校正后系统的要求如下:调整时间t (2%) s = 0.5s;最大超调量 M p 10% 绘制校正后系统的根轨迹图,并给出阶跃响应曲线。ReIm2f2fABCDET、1-1aT-O:clearng=0.02725;dg=0.0102125 0 -0.26705;G=tf(ng,dg); %建立开环函数zeta=0.6;omega=14.6667; %设置阻尼比和自然频率num,den=ord2(omega,zeta); %建立二阶系统的

3、分子项和分母项s=roots(den);s1=s(1); %确定闭环极点s,取其中一点即可ng=G.num1;dg=G.den1;ngv=polyval(ng,s1);dgv=polyval(dg,s1);G=ngv/dgv;Phi=angle(G); %确定s1的相位角 Phi_c=pi-Phi;Phi=angle(s1); %确定s1的相位角theta_z=(Phi+Phi_c)/2; %定义theta_ztheta_p=(Phi-Phi_c)/2; %定义theta_pZ_c=real(s1)-imag(s1)/tan(theta_z); %计算超前校正环节的零点Z_cP_c=real(

4、s1)-imag(s1)/tan(theta_p); %计算超前校正环节的极点P_cnk=1 -Z_c;dk=1 -P_c;nkv=polyval(nk,s1);dkv=polyval(dk,s1);kv=nkv/dkv;Kc=abs(1/G/kv) %根据幅值条件计算KcGc=tf(nk,dk)G=tf(ng,dg);GGc=G*Gc*Kc; %传递函数Gc和增益Kc组成超前校正环节figure(1);step(feedback(GGc,1); %绘制校正后闭环系统阶跃响应hold on;title(校正后闭环系统阶跃响应);figure(2);rlocus(GGc);hold on;tit

5、le(校正后的系统的根轨迹);%校正后的系统的根轨迹由超调量的计算公式得到的关系图:Zeta和omega取不同值时系统的超调量和调节时间Zeta0.70.850.850.870.90.880.890.890.8950.899omega14.6714.714.814.8514.8514.8514.91515.115.1超调量19.211.311.510.79.3910.39.9310.110.19.956调节时间0.4440.5040.5010.5010.5160.510.5110.5080.5070.508clearng=0.02725;dg=0.0102125 0 -0.26705;G=tf

6、(ng,dg); %建立开环函数zeta=0.895omega=15.10; %设置阻尼比和自然频率num,den=ord2(omega,zeta); %建立二阶系统的分子项和分母项s=roots(den);s1=s(1); %确定闭环极点s,取其中一点即可ng=G.num1;dg=G.den1;ngv=polyval(ng,s1);dgv=polyval(dg,s1);G=ngv/dgv;Phi=angle(G); %确定s1的相位角 Phi_c=pi-Phi;Phi=angle(s1); %确定s1的相位角theta_z=(Phi+Phi_c)/2; %定义theta_ztheta_p=(

7、Phi-Phi_c)/2; %定义theta_pZ_c=real(s1)-imag(s1)/tan(theta_z); %计算超前校正环节的零点Z_cP_c=real(s1)-imag(s1)/tan(theta_p); %计算超前校正环节的极点P_cnk=1 -Z_c;dk=1 -P_c;nkv=polyval(nk,s1);dkv=polyval(dk,s1);kv=nkv/dkv;Kc=abs(1/G/kv);Gc=tf(nk,dk);G=tf(ng,dg);GGc=G*Gc*Kc; %传递函数Gc和增益Kc组成超前校正环节figure(1);step(feedback(GGc,1);

8、%绘制校正后闭环系统阶跃响应hold on;title(校正后闭环系统阶跃响应);figure(2);rlocus(GGc);hold on;title(校正后的系统的根轨迹); %校正后的系统的根轨迹得到系统增益Kc以及传递函数Gc为167.5932(s+7.342)(s+29.3)Zero-Pole0.027250.0102125s +-0.267052Transfer FcnStepScope195.5233(s+6.162)(s+37)Zero-Pole0.027250.0102125s +-0.267052Transfer FcnStepScope3)通过改变控制器的极点和零点,得到

9、不同的控制效果clearng=0.02725;dg=0.0102125 0 -0.26705;G=tf(ng,dg); %建立开环函数for m=10:25:40nk=1 7.342;dk=1 m;Kc=167.5; %根据幅值条件计算KcGc=tf(nk,dk);GGc=G*Gc*Kc; %传递函数Gc和增益Kc组成超前校正环节figure(1);step(feedback(GGc,1); %绘制校正后闭环系统阶跃响应title(不同极点下的系统阶跃相应);hold on;endclearng=0.02725;dg=0.0102125 0 -0.26705;G=tf(ng,dg); %建立开

10、环函数for m=4:12:20nk=1 m;dk=1 29.3;Kc=167.5; %根据幅值条件计算KcGc=tf(nk,dk);GGc=G*Gc*Kc; %传递函数Gc和增益Kc组成超前校正环节figure(1);step(feedback(GGc,1); %绘制校正后闭环系统阶跃响应title(不同零点下的系统阶跃相应);hold on;end为使位于右半平面的根轨迹进入左边平面,因此增加一个坐半平面的零点,假设为-15,得到系统新的根轨迹如下:2手动校正后的根轨迹图(增加零点)添加零点后的阶跃响应图给系统增加一个极点,观察极点对系统的影响,增加极点-10添加极点后的阶跃响应图4)用频

11、域响应法设计超前校正控制器G (s) c ,使得系统的静态位置误差常数为10,相位裕量为50o,增益裕量等于或大于10 分贝。给出阶跃响应曲线。确定校正环节的增益,使串联校正环节后的系统满足稳态误差要求,绘制增益校正后系统的伯德图;l 根据所需的相位稳定裕度及在原幅值交角频率处引入的校正环节有最大相位超前角的设计原则,确定所需校正环节的最大相位超前角;l 计算校正环节的衰减系数。,根据,得到; l 确定了衰减系统,就可以确定超前校正装置和,可以看出,最大相位超前角小.发生在两个转角频率的几何中心上,即。l 检查添加校正环节后的系统是否满足要求,如不能满足,则需重新确定新的稳态误差和相位稳定裕度

12、等,进行重新计算。的计算方法如下:超前校正环节的相位角:在原系统的幅值交角频率处引人的校正环节有最大相位超前角,因此,在有最大值,此外,超前校正环节在最大相位超前角处有下列关系式:代入上式,得到所需的相位超前角:考虑到引人超前校正环节后,除了引入极点外,还引入了零点,它会引起幅值交角频率的升高,并使相位裕度下降,因此,在确定时,通常在计算值上预先增加一定的安全量,例如,通常增加的安全量。根据根据静态速度误差系数为10, 得到校正环节的增益Clearng=0.02725;dg=0.0102125 0 -0.26705;G=tf(ng,dg); %生成待校正系统传递函数Kc=98; %设置校正环节

13、增益KcdPm=50+5; %设置所需相位裕度dPm,增加量取5度mag,phase,w=bode(G*Kc); %生成波特图矩阵形式Mag=20*log10(mag); %生成开环幅值GM,Pm,Wcg,Wcp=margin(G*Kc); %计算未校正系统的相角裕度phi=(dPm-Pm)*pi/180; %计算网络系数alpha=(1+sin(phi)/(1-sin(phi);Mn=-10*log10(alpha);Wcgn=spline(Mag,w,Mn); %确定校正后系统的截止频率WcgnT=1/Wcgn/sqrt(alpha);Tz=alpha*T; %确定校正器的交接频率(1/T

14、和1/alpha*T)Gc=tf(Tz 1,T 1); %得到校正器传递函数;figure(1);margin(G*Kc);hold on;margin(G*Kc*Gc); %画出bode图GM1,Pm1,Wcg1,Wcp1=margin(G*Kc*Gc)%验证校正后系统的相位裕度和相位增益figure(2);step(feedback(G*Kc*Gc,1); %画出校正后系统的阶跃响应相位得到添加控制器后的直线一级倒立摆 Bode 图和 Nyquist 图(一阶控制器)0.1119s+10.01113s+1Transfer Fcn10.027250.01021s +-0.26712Trans

15、fer FcnStepScope98Gain5)设计PID控制器,并给出控制效果。clearng=0.02725;dg=0.0102125 0 -0.26705;num2=19,78.4,29.4;den2=1,0;sys2=tf(num2,den2);G1=tf(ng,dg); G=series(G1,sys2); Kc=98; %设置校正环节增益KcdPm=50+5; %设置所需相位裕度dPm,增加量取5度mag,phase,w=bode(G*Kc); %生成波特图矩阵形式Mag=20*log10(mag); %生成开环幅值GM,Pm,Wcg,Wcp=margin(G*Kc); %计算未校

16、正系统的相角裕度phi=(dPm-Pm)*pi/180; %计算网络系数alpha=(1+sin(phi)/(1-sin(phi);Mn=-10*log10(alpha);Wcgn=spline(Mag,w,Mn); %确定校正后系统的截止频率WcgnT=1/Wcgn/sqrt(alpha);Tz=alpha*T; %确定校正器的交接频率(1/T和1/alpha*T)Gc=tf(Tz 1,T 1); %得到校正器传递函数;figure(1);margin(G*Kc);hold on;margin(G*Kc*Gc); %画出bode图GM1,Pm1,Wcg1,Wcp1=margin(G*Kc*Gc)%验证校正后系统的相位裕度和相位增益figure(2);step(feedback(G*Kc*Gc,1); %画出校正后系统的阶跃响应相位得到

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1