自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5

上传人:w****i 文档编号:92454434 上传时间:2019-07-10 格式:PPT 页数:26 大小:151KB
返回 下载 相关 举报
自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5_第1页
第1页 / 共26页
自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5_第2页
第2页 / 共26页
自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5_第3页
第3页 / 共26页
自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5_第4页
第4页 / 共26页
自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5》由会员分享,可在线阅读,更多相关《自动控制原理 第二版课件 教学课件 ppt 作者 王永骥 王金城 王敏 主编 CHAP2幻灯片2.5(26页珍藏版)》请在金锄头文库上搜索。

1、第五节,应用MATLAB控制系统仿真,提纲,一、弹簧-重物-阻尼器系统 二、传递函数 三、结构图模型,引言,MATLAB是一套高性能的数值计算和可视化软件,它集数值分析、矩阵运算和图形显示于一体,构成了一个方便的界面友好的用户环境。 控制系统的分析与设计方法,都是以数学模型为基础进行的。MATLAB可以用于以传递函数形式描述的控制系统。 在本节中,首先举例说明如何使用MATLAB进行辅助分析。然后讨论传递函数和结构图。,一、弹簧-重物-阻尼器系统,弹簧重物阻尼器动力学系统如图2-1所示。重物M的位 移由y(t)表示,用微分方程描述如下:,该系统在初始位移作用下的瞬态响应为:,其中q =cos-

2、1z ,初始位移是y(0)。 系统的瞬态响应当z1时为欠阻尼,当z时为过阻尼, 当z1时为临界阻尼。,过阻尼情况:y(0)=0.15 m wn= (弧度/秒) ( ) 欠阻尼情况:y(0)=0.15 m wn= (弧度/秒) ( ),利用MATLAB程序unforced.m,可以显示初始位移为y(0) 的物体自由运动曲线,如图2-63所示。 在unforced.m程序中,变量y(0),wn,t,z 1和z 2的值由指令 直接输入工作区,然后运行unforced.m程序就可以产生响应曲 线。,y0=0.15;wn=sqrt(2); zeta1=3/(2*sqrt(2); zeta2=1/(2*s

3、qrt(2); t=0:0.1:10; unforced,(a)MATLAB指令窗口,* 计算系统在给定初始条件下的自由运动 t1=acos(zeta1)*ones(1,length(t); t2=acos(zeta2)*ones(1,length(t); c1=(y0/sqrt(1-zeta12); c2=(y0/sqrt(1-zeta22); y1=c1*exp(-zeta1*wn*t)sin(wn*sqrt(1-zeta12)*t+t1); y2=c2*exp(-zeta2*wn*t)sin(wn*sqrt(1-zeta22)*t+t2); * 计算运动曲线的包络线 bu=c2*exp(

4、-zeta2*wn*t);bl=-bu; * 画图 plot(t,y1, -,t,y2,-,t,bu, -,bl, -),grid xlabel(Timesec), ylabel(y(t) Displacementm) text(0.2,0.85,oeverdamped zeta1=,num2str(zeta1), ) text(0.2,0.80,underdamped zeta2=,num2str(zeta2), ),(b)分析弹簧重物阻尼器的MATLAB程序unforced.m 图2-63 分析弹簧重物阻尼器的MATLAB指令,图2-64 弹簧重物阻尼器的自由运动曲线,在欠阻尼和过阻尼情况

5、下的响应曲线如图2-64所示 :,MATLAB可分析以传递函数形式描述的系统。分子多项式和 分母多项式都必须在MATLAB指令中指定。,在MATLAB中多项式由行向量组成,这些行向量包含了降次 排列的多项式系数。例如多项式p(s)=1s3+3s2+0s1+4s0,按图2-65 的格式输入p=1 3 0 4,,p=1 3 0 4; r=roots(p) r= -3.3553e+00 1.7765e-01+1.0773e+00j 1.7765e-01-1.0773e+00j p=poly(r) p= 1.000 3.000 0.000-0.000j 4.000+0.000j,图2-65 输入多项式

6、并求根,矩阵乘法由MATLAB的conv()函数完成。把两个多项式相乘 合并成一个多项式n(s),即: n(s)= (3s2 +2s +1) (s +4) = 3s3 +14s2 +9s +4,与此运算相关的MATLAB函数就是conv()。函数polyval()用来计 算多项式的值。多项式n(s)在s = -5处值为n (-5) = -66,见图2-66。,p=3 2 1;q=1 4; n=conv(p,q) n= 3 14 9 4 value=polyval(n,-5) value= -66,图2-66 MATLAB的conv()函数和polyval()函数,设传递函数为G(s)=num/

7、den,其中num和den均为多项式。利 用函数:,二、传递函数,P , Z=pzmap(num , den),可得G(s)的零极点位置,即P为极点位置列向量,Z为零点位 置列向量。该指令执行后自动生成零极点分布图。 考虑传递函数:,和,图2-67 零极点图,传递函数G(s)/H(s)的零极点图如图2-67所示,相应的MATLAB 指令如图2-68所示。,numg=6 0 1;deng=1 3 3 1; z=roots(numg) z= 0+0.4082j 0-0.4082j p=roots1(deng) p= -1 -1 -1 n1=1 1; n2=1 2; d1=1 2*j; d2=1 2

8、*j; d3=1 3; numh=conv(n1,n2); denh=conv(d1,conv(d2,d3); num=conv(numg,denh); den=conv(deng,numh); printsys(num,den) num/den= 6s5+18s4+25s3+,图2-68 绘制零极点图指令,三、结构图模型,一个开环控制系统可以通过G1 (s)与G2 (s)两个环节的串联而得到,利用series()函数可以求串联连接的传递函数,函数的具体形式为: num,den= series(num1,den1, num2,den2) 例如G1 (s)和G2 (s)的传递函数分别为:,则,串

9、联函数的用法示于图2-69:,num1=1;den1=500 0 0; num2=1 1;den2=1 2; num,den=series(num1,den1,num2,den2); printsys(num,den) num/den= s+1 500s3+1000s2,图2-69 series函数的用法,当系统是以并联的形式连接时,利用parallel()函数可得到系 统的传递函数。指令的具体形式为: 系统以反馈方式构成闭环,则系统的闭环传递函数为:,num,den= parallel (num1,den1, num2,den2),求闭环传递函数的MATLAB函数有两个:cloop()和fe

10、edback() 其中cloop()函数只能用于H (s)=1(即单位反馈)的情况。 cloop()函数的具体用法为: num,den= cloop (numg,deng, sign) 其中numg和deng分别为G (s)的分子和分母多项式,sign=1为正 反馈,sign= -1为负反馈(默认值)。,feedback()函数的用法为: num,den= feedback (numg,deng,numh,denh, sign) 其中numh为H (s)的分子多项式,denh为分母多项式。 闭环反馈系统的结构图如图2-70所示,被控对象G(s)和控制 部分Gc (s)以及测量环节H (s)的传

11、递函数分别为:,,,图2-70 闭环反馈系统的结构图,应用series()函数和feedback()函数求闭环传递函数的MATLAB 指令如图2-71 所示:,numg=1;deng=5 0 0; numc=1 1;denc=1 2; numh=1;denh=1 10; num1,den1=series(numc,denc,numg,deng); num,den=feedback(num1,den1,numh,denh,-1); printsys(num,den) num/den= s2+11s+10 5s4+60s3+100s2+s+1,图2-71 feedback()函数的应用,例2.12

12、 一个多环的反馈系统如图2-49所示,给定各环节的传 递函数为:,试求闭环传递函数GB(s)=C(s)/R(s)。,解 求解步骤如下: 步骤1:输入系统各环节的传递函数; 步骤2:将H2的综合点移至G2后; 步骤3:消去G3,G2,H2环; 步骤4:消去包含H3的环; 步骤5:消去其余的环,计算GB (s)。 根据上述步骤的MATLAB指令以及计算结果在图2-72中。,ng1=1;dg1=1 10; ng2=1;dg2=1 1; ng3=1 0 1;dg3=1 4 4; ng4=1 1;dg4=1 6; nh1=1;dh1=1; nh2=2;dh2=1;,nh3=1 1;dh3=1 2; n1

13、,d1=series(ng2,dg2,nh2,dh2); n2,d2=feedback(ng3,dg3,n1,d1,-1); n3,d3=series(n2,d2,ng4,dg4); n4,d4=feedback(n3,d3,nh3,dh3,-1); n5,d5=series(ng1,dg1,ng2,dg2); n6,d6=series(n5,d5,n4,d4); n7,d7=cloop(n6,d6,-1); printsys(n7,d7) num/den= s4+ 3s3+ 3s2+3s+2 2s6+38s5+261s4+1001s3+1730s2+1546s+732,图2-72 多环结构图

14、简化,通过pzmap()或roots()函数可查看传递函数是否有相同的零极 点,还可使用minreal()函数除去传递函数共同的零极点因子。 如图2-73所示。,numg=1 6 11 6;deng=1 7 12 11 5; printsys(numg,deng) numg/deng= s3+6s2+11s+6 s4+7s3+12s2+11s+5 num,den=minreal(numg,deng); printsys(num,den) 1 pole-zeros cancelled num/den= s2+4s+3 s3+6s2+6s+5,图2-73 minreal()函数的应用,例2.2所示

15、的位置随动系统,在给定各元件参数并忽略La和令 ML = 0的情况下,其结构图如图2-74所示:,图2-74 位置随动系统的结构图,第一步求闭环传递函数GB (s)=q c(s) /q r(s),求解过程及结果 如图2-75所示。第二步利用step()函数计算参考输入q r (t)为单位 阶跃信号时输出q c (t)的响应。,num1=200; den1=20;num2=1; den2=2 0.5 0; num3=0.2 0; den3=1; num4=540; den4=1; na,da=series(num1,den1,num2,den2); nb,db=feedback(na,da,num3,den3,-1); nc,dc=series(nb,db,num4,den4); num,den=cloop(nc,dc,-1); printsys(num,den) num/den= 5400 2s2+2.5s+5400 t=0:0.005:3; y,t=step(num,den,t); plot(t,y),grid,图2-75 位置随动系统的结构图简化及阶跃响应指令,图2-76 位置随动系统的阶跃响应曲线,图2-76给出了位置随动系统

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号