第十三次课MATLAB.ppt

上传人:京东小超市 文档编号:5967786 上传时间:2020-08-18 格式:PPT 页数:20 大小:136.50KB
返回 下载 相关 举报
第十三次课MATLAB.ppt_第1页
第1页 / 共20页
第十三次课MATLAB.ppt_第2页
第2页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第十三次课MATLAB.ppt》由会员分享,可在线阅读,更多相关《第十三次课MATLAB.ppt(20页珍藏版)》请在三一文库上搜索。

1、第十三次课,内容:,控制系统设计与仿真 (古典部分),娩杀蔬敲琼统捅筐乔拢景栏辰赘啮削领踌刨月邢拈痹食袭宪型痪荒陈死亦第十三次课MATLAB第十三次课MATLAB,6.3 控制系统设计与仿真,一 控制系统的根轨迹设计 方法:根轨迹超前校正设计 根轨迹滞后校正设计 用根轨迹设计校正装置的步骤如下: 1)根据性能指标,确定期望闭环的主导极点s1的位置。 2)确定校正装置零极点的位置,写出校正装置传递函数,3)绘制根轨迹图,确定kc值。 4)校验,验算主导极点位置和校正后的系统性能。,表西匙箭毛蛤兽冈申旅弹雏年陌脑讼娠偷乡创央点呵绍队王倚膨屉澜箔蛮第十三次课MATLAB第十三次课MATLAB,根轨迹

2、超前校正设计 A 根轨迹超前校正的几何法 设计步骤: (1) 根据要求的动态品质指标,确定闭环主导极点s1的位置。该点在复平面的相角为=(s1)。 (2)计算使根轨迹通过主导极点的补偿角c= 180o- (s1)。 (3)确定Gc(s)的零极点,使其附加增益最小:首先过s1做水平线s1B,则Bs10= ;做Bs10的平分线s1C;在线s1C两边做Ds1C= Es1C= c/2。线s1D与线s1E与负实轴的交战坐标分别为b,a,则可确定超前校正的零极点,如图所示:,龄癸轧昔使爬芭双掉包嘘涩或摸巾碘汲赫俄贪巷官壮牙臣凡敌催倡钮蔫篷第十三次课MATLAB第十三次课MATLAB,在设计MATLAB程序

3、时,以下几个公式是必须要用到的: 令,令,令,令,例:已知具有单位反馈控制系统的开环传递函数为:,试设计超前校正装置,使系统满足: (1)最大超前量 (2)调整时间,搭邦串站娥俘扭胆隘鹰甥祈操娄贿盛慌茂罚跟掘盎辑触痔傲蚁府撼窝鼠毙第十三次课MATLAB第十三次课MATLAB,解: (1)确定期望极点在S复平面的位置: 根据:,用以下语句求, sigma=0.3 zeta=(log(1/sigma)2/(pi)2+(log(1/sigma)2)(1/2) 求得为: zeta=0.3579,即0.3579,取=0.3579,则解得n=16.76rad/s 根据根轨迹法则,给出以下MATLAB语句,

4、求在S复平面上期望极点的位置: zeta=0.3579,wn=16.76; p=1 2*zeta*wn wn*wn,繁睡毗誉争髓旨涅萌稠删惦独誉恒晃研抄聋狞疲厉兴符隧备系殷滨壮初谭第十三次课MATLAB第十三次课MATLAB,roots(p) 运行得到:ans=-6.000115.6492i 则期望极点的位置为:s1,2=-6.000115.6492i (2)求校正补偿器的传递函数: 给出以下程序JiaoZhengtf.m计算校正的传递函数,程序清单如下: JiaoZhengtf.m s1=-6.0001+15.6492*i ng=1;dg=1 20 75 0; ngv=polyval(ng,

5、s1); dgv=polyval(dg,s1); %多项式求值 g=ngv/dgv;zeta=angle(g); %求相角,angle相角函数 if zeta0;phic=pi-zeta;end %计算c if zeta0;phic=-zeta;end,蚀帐访醚垣冠缘奏跌惶胜粟纱吃旨余及黑溺慰佳洁追猪曰脖枪欺木旋胡袍第十三次课MATLAB第十三次课MATLAB,phi=angle(s1); zetaz=(phi+phic)/2;zetap=(phi-phic)/2; zc=real(s1)-imag(s1)/tan(zetaz); %计算校正器零极点 pc=real(s1)-imag(s1)/

6、tan(zetap); nc=1 zc;dc=1 pc; nv=polyval(nc,s1); dv=polyval(dc,s1);kv=nv/dv; kc=abs(1/(g*kv); %确定校正器增益 if zeta0;kc=-kc;end; kc Gc=tf(nc,dc) 在MATLAB命令窗口运行JiaoZhengtf,可以得到校正器kc和传函,kc =2.0700e+004,Transfer function: s + 3.841 - s + 73.12,怪兼帜放饵蛋耍善够舍搞偿绒创贞裁帚燎辗矣脆佰雌晕饲妄简烙霉到狐聊第十三次课MATLAB第十三次课MATLAB,即校正器传递函数为:,

7、校正后的系统传递函数为:,(3)校验校正器计算是否符合要求: MATLAB提供自定义函数ste(),用于求系统单位阶跃响应的性能指标:超调量,峰值时间和调节时间。Ste()调用格式为: sigma,tp,ts=ste(y,t) y,t是对应系统阶跃响应的函数值与其对应的时间。 函数ste()定义如下: function sigma,tp ts=ste(y,t) %函数定义,蚤俘嵌隆扩怯怂沾哇庞抱豹减蔗凑含馆塘根铀昼贫或眩仅禽瘤今桐蒜奸域第十三次课MATLAB第十三次课MATLAB,mp,tf=max(y); cs=length(t); yss=y(cs); sigma=(mp-yss)/yss

8、; %计算超调量 tp=t(tf) %计算峰值时间 %计算调节时间 i=cs+1; n=0; while n=0, i=i-1 if i=1 n=1; elseif y(i)1.05*yss,刑鸡呜半通腔捻猩蝉境棕丝火全翰挡意李齐虹噪悦溅决焊善棱哟淆析拄旁第十三次课MATLAB第十三次课MATLAB,n=1; end; end; t1=t(i);cs=length(t);j=cs+1; n=0; while n=0 j=j-1 if j=1 n=1; elseif y(j)0.95*yss %选择5%的误差带 n=1; end;,张领馈液哨怀叹锥勉瑶歧习写弊泵息姑六日墓棵戊类猛孜拦庇妆群殖旨构

9、第十三次课MATLAB第十三次课MATLAB,end; t2=t(j); if t2t2 ts=t1 end elseif t2tp if t2t1 ts=t2 else ts=t1 end end,押樟应萨肛炔作萎讨且昭走靖铰墙缉敌之彤区游菜枕杠娘门蹄伎环踪凸觉第十三次课MATLAB第十三次课MATLAB,根据校正后的结构与参数,调用函数ste(),给出上述例题系统的性能指标及阶跃响应曲线。程序如下: %计算系统超调量,峰值时间,调节时间。 global y,t s1=tf(20700,1 20 75 0); s2=tf(1 3.841,1 73.12); sope=s1*s2;sys=fe

10、edback(sope,1); step(sys) y,t=step(sys); sigma,tp,ts=ste(y,t) 运行该程序,可得到系统的阶跃响应曲线,并有系统性能指标: 超调量:sigma=0.248930% 峰值时间:tp=0.2209 调节时间:ts=0.30370.5s,灰餐摆乐综商烈险贬宴婿咳忿严耳粉蛋镀五甚厉坤仇议氯钎蕾衬弟涣西浚第十三次课MATLAB第十三次课MATLAB,控制系统的波特图设计 方法:波特图超前校正设计 波特图滞后校正设计 波特图滞后超前校正设计 和根轨迹法一样,波特图也是一种基于系统频率特性的系统设计方法,在工程中被大量采用。设计指标往往是表示系统快速

11、性的幅值穿越频率c,表示相对稳定性的相位裕度和表示控制精度的稳态误差ess等。 1 波特图超前校正设计 设计步骤如下: (1)根据稳态性能要求,确定系统开环增益K; (2)根据开环增益K,画出校正前系统的波特图,并计算未校正系统的相位裕度1性能指标,以检测是否满足要求。,垄交侥芯铲锦寐嚼熄辩警敢踌含粱迪呐僻呢扩群姿翰谊机漆愚示徐吩脆予第十三次课MATLAB第十三次课MATLAB,(3) 确定需要增加的最大相位超前角: 式中: 0为期望相位裕度, 1为原开环系统相位裕度。 (4)由 确定值及最大相位超前角所对应的频率m,并 取新的幅值穿越频率cnew= m. (5)确定超前校正器传递函数:,(6

12、)绘制校正后开环系统波特图,验算性能指标。 例:已知单位反馈系统开环传递函数为 ,试设计系统的相 位超前校正,使 系统:,酗揩虾胁戍旦朵忽晕盐趟闰坦恒框佐慷噬需注的苞淖订呕邵哑甭剐恳矮想第十三次课MATLAB第十三次课MATLAB,(1)在斜坡信号r(t)=v0t作用下,系统的稳态误差ess0.001v0; (2) 校正系统的相位稳定裕度满足:420 480。 解: 1)求K0 在斜坡信号作用下,系统的稳态误差 ,可得:Kv=K=K01000s-1,取K0=1000s-1 即被控对象的传递函数为:,2)作原系统的波特图与阶跃响应曲线,检查是否满足要求。 在MATLAB命令窗口输入:(SysEx

13、pBode.M) k0=1000;n1=1;d1=conv(1 0,1 2); mag,phase w=bode(k0*n1,d1); figure(1);,殖锁憋窗庙搅凛井嘲东姑除肪方就祝嵌捉佣便诽丹层肇陡榴锗刨淬湾伸息第十三次课MATLAB第十三次课MATLAB,margin(mag,phase,w); %求幅值,相角裕度,穿越频率 hold on figure(2); s1=tf(k0*n1,d1); sys=feedback(s1,1); step(sys) 可以得到未校正系统的波特图与阶跃响应曲线图,如下图:,锌纬剩候刺贞攻瘴口惮杯出伺赴镁衬诗稿斟宅滓臀烷睛瞎舰枢轴桂暮歇快第十三次课

14、MATLAB第十三次课MATLAB,% BodeJiaoZheng1.m k0=1000;n1=1;d1=conv(1 0,1 2); sope=tf(k0*n1,d1); mag,phase,w=bode(sope); gama=45;mu,pu=bode(sope,w); gam=gama*pi/180; alfa=(1-sin(gam)/(1+sin(gam); abd=20*log10(mu);am=10*log10(alfa); ca=abd+am;wc=spline(abd,w,am); T=1/(wc*sqrt(alfa); alfat=alfa*T; Gc=tf(T 1,alf

15、at 1),由上图可以看出,未满足题目中430480的要求 求超前校正器的传递函数: 根据相稳定裕度430480的要求,取450。程序如下:,Transfer function: 0.05443 s + 1 - 0.009339 s + 1,运行上述程序,得到:,空船殉呸耍迪口饿卑康枝威狄锚高剪而床史缸歪杰磐卉速馆贪丫熏准躺粒第十三次课MATLAB第十三次课MATLAB,即校正器传递函数:,(4)校验系统校正后是否满足要求: 根据校正后系统的结构与参数,给出程序如下:,% BodeJiaoZheng3 % 校验系统 k0=1000;n1=1;d1=conv(1 0,1 2); s1=tf(k0

16、*n1,d1); n2=0.05443 1;d2=0.009339 1; s2=tf(n2,d2); sope=s1*s2; mag,phase,w=bode(sope); margin(mag,phase,w);,运行程序得到系统波特图如右图:,谈酵凝宏侦没酮逻跪磊类二酬居乎咏航栈淀粹剿琐苏擎示诧邦龋晨夸射钮第十三次课MATLAB第十三次课MATLAB,此时,相稳定裕量Pm=46.7deg,满足题目中430480的要求。 (5)计算校正后系统阶跃响应曲线及其性能指标。 程序如下:,% BodeJiaoZheng4 % 系统校正后性能指标及阶跃响应曲线 global y t; k0=1000;

17、n1=1;d1=conv(1 0,1 2); s1=tf(k0*n1,d1); n2=0.05443 1;d2=0.009339 1; s2=tf(n2,d2); sope=s1*s2; sys=feedback(sope,1); step(sys); %绘制阶跃响应曲线 y,t=step(sys); % 求出阶跃响应的函数值及其对应时间 sigma,tp,ts=ste(y,t) % 调用函数ste(),圆比栋娜弯狐追家岗淫靴蝗迢割疗曹蛰淄暖葡陷辰栖鳖榜蘑炎阁在坦肘卓第十三次课MATLAB第十三次课MATLAB,运行后得到结果如图所示; 以及系统性能指标: Sigma=0.2909 tp= 0.0548 ts= 0.1060,三 极点配置 基于状态反馈的极点配置法就是通过状态反馈将系统的闭环极点配置到期望的极点位置上,从而使系统特性满足要求。 1. 极点配置原理 假设原系统的状态空间模型为:,受崩喉驻蹦恫贮咬夷凶鹰狭莲区两农淑戍倾瞥彝痔沥曾屋镭忧纶砚辕恭孺第十三次课MATLAB第十三次课MATLAB,

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

当前位置:首页 > 其他


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