昆明学院自动控制原理课程设计报告_第1页
昆明学院自动控制原理课程设计报告_第2页
昆明学院自动控制原理课程设计报告_第3页
昆明学院自动控制原理课程设计报告_第4页
昆明学院自动控制原理课程设计报告_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、自动控制原理课程设计报告课程名称: 自 动 控 制 原 理 设计题目:自动控制原理MATLAB仿真院 系:自动控制与机械工程学院班 级:2013级电气工程及其自动化3班 姓 名:烤火卡 学 号:指导教师:李云娟 自动控制原理课程设计报告一 实验目的和意义:1. 了解matlab 软件的基本特点和功能,熟悉其界面,菜单和工具条;掌握线性系统模型的计算机表示方法,变换以及模型间的相互转换。了解控制系统工具箱的组成,特点及应用;掌握求线性定常连续系统输出响应的方法,运用连续系统时域响应函数(impulse,step,lsim),得到系统的时域响应曲线。2. 掌握使用MATLAB软件作出系统根轨迹;利

2、用根轨迹图对控制系统进行分析;掌握使用MATLAB软件作出开环系统的波特图,奈奎斯图;观察控制系统的开环频率特性,对控制系统的开环频率特性进行分析。3. 掌握MATLAB软件中simulink工具箱的使用;熟悉simulink中的功能模块,学会使用simulink对系统进行建模;掌握simulink的方真方法。二 实验原理(1)MATLAB语言的特点及其主要功能:MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simu

3、link两大部分它将数值分析,矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平 MATLAB和Mathematica、Maple并称为三大数学软它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连  matlab开发工作界面接其他编程语言的程序等,主要应用于工程计

4、算、控制设计、信号处理与通讯、图中处理、信号检测、金融建模设计与分析等领域。(2)控制系统仿真时常用的方法和指令 1、控制系统仿真时常用的方法  a、数学仿真也称计算机仿真,就是在计算机上实现描写系统物理过程的数学模型,并在这个模型上对系统进行定量的研究和实验。这种仿真方法常用于系统的方案设计和某些不适合做实物仿真的场合(包括某些故障模式)。它的特点是重复性好、精度高、灵活性大、使用方便、成本较低、可以是实时的、也可以是非实时的。数学仿真的逼真度和精度取决于仿真计算机的精度和数学模型的正确性与精确性。学仿真可采用模拟计算机、数字计算机和数字-模拟混合计算机。b、半物理仿真

5、即采用部分物理模型和部分数学模型的仿真。其中物理模型采用控制系统中的实物,系统本身的动态过程则采用数学模型。半物理仿真统常由满足实时性要求的仿真计算机、运动模拟器(一般采用三轴机械台)、目标模拟器、控制台和部分实物组成。c、全物理仿真  即全部采用物理模型的仿真,又称实物模拟。全物理仿真技术复杂,一般只在必要时才采用。、控制系统仿真时常用的指令1)、Bode图 、绘制Bode图bode函数绘制控制系统幅频和相频图 调用格式bode(sys)  bode(sys, w)  bode(sys1,sys2.sysn) b

6、ode(sys1,sys2.sysn,w)  bode(sys1,plotstyle1,sys2,plotstyle2,.sysn,plotstylen,)mag, phase, w=bode(sys) w频率区间矢量,控制频率起止范围mag, phase, w输出幅值矢量输出相角输出频率区间绘制系统幅频图调用格式 bodemag(sys)  bodemag(sys,  w)  bodemag(sys1,sys2.sysn)  bodemag(s

7、ys1,sys2.sysn,w)  bodemag(sys1,plotstyle1,sys2,plotstyle2,.sysn,plotstylen,) 、系统的增益裕度和相角裕度增益裕度定义:正好使系统频率响应穿过临界点的增益与实际系统增益的值。相角裕度:为了使系统的频率响应通过临界点必须引入的纯相位滞后量。   gm  pm  wcg  wcp =margin(mag,  phase, w) Gm系统增益裕度 &

8、#160;pm系统相角裕度wcg  wcp-表示交叉频率2)、Nichols图对数幅相特性图(Nichols图)是描述系统频率特性的图示方法。该图纵坐标表示频率特性的对数幅值,以分贝为单位;横坐标表示频率特性的相位角。调用格式  nichols(sys)  nichols(sys, w)  nichols(sys1,sys2.sysn)  nichols(sys1,sys2.sysn,w)  nichols(sys1,plotstyle1,sys2,plotstyle2,.s

9、ysn,plotstylen,)mag, phase, w=nichols(sys) mag, phase=nichols(sys, w) 3)、Nyquist图 系统频率特性的极坐标图Nyquist图 调用格式 nyquist(sys)  nyquist(sys, w)  nyquist(sys1,sys2.sysn)  nyquist(sys1,sys2.sysn,nyquist(sys1,plotstyle1,sys2,plotstyle2,.sys

10、n,plotstylen,)mag, phase, w=nyquist(sys) mag, phase=nyquist(sys, w) 4)、一般频率响应图调用格式h=freqs(num , den, w)   h  ,w=freqs(num,  den)  h  ,w=freqs(num ,den,  f)    freqs(num&#

11、160; ,den) Num传递函数分子矢量 den传递函数分母矢量 W频率区间矢量 5)、频率响应的奇异值图调用格式  sigma(sys)  sigma(sys, w)  sigma(sys ,w, type) sigma(sys1,sys2.sysn)   sigma(sys1,sys2.sysn,w)   sigma(sys1,sys2.sysn,w, typesigma(sys1,plo

12、tstyle1,sys2,plotstyle2,.sysn,plotstylen,) sv, w=sigma(sys)     sv=sigma(sys, w) Type绘制奇异值图的类型  Type=1 控制系统的频率响应H的奇异值图Type=2 控制系统的频率响应I+H的奇异 Type=3 控制系统的频率响应I+H-1的奇异值图Sv频率的奇异值plotstyle绘制奇异值曲线的特性 6)、绘制根轨迹  、求系统的零点、极点、增益调用

13、格式   p=pole(sys)   计算控制系统的极点  Z=zero(sys)   计算控制系统的零点  z, gain=zero(sys)   计算控制系统的零点、增益。、绘制系统极点、零点图  调用格式   pzmap(sys)  pzmap(sys1,sys2,sysn)   p z=pzmap(sys) 、

14、绘制根轨迹图  调用格式   rlocus(sys)   rlocus(sys ,k) Rlocus(sys1,sys2,)   r  k=rlocus(sys)  r=rlocus(sys,k) k表示增益   r系统的极点 三 实训内容1.用matlab语言编制程序,实现以下系统:1) #程序如下:num=5,24,0,18; den=1,4,6,2,2; G=tf(num,den)

15、 Transfer function: 5 s3 + 24 s2 + 18 - s4 + 4 s3 + 6 s2 + 2 s + 22)#程序如下#:num=4*conv(1,2,conv(1,6,6,1,6,6); den=conv(1,0,conv(1,1,conv(1,1,conv(1,1,1,3,2,5); G=tf(num,den) Transfer function: 4s5 + 56 s4 + 288 s3 + 672 s2 + 720 s + 288 - s7 + 6 s6 + 14 s5 + 21 s4 + 24 s3 + 17 s2 + 5 s2.两环节G1、G2串联,求等

16、效的整体传递函数G(s) 【实验原理】: 若假定两环节均为单输入单输出的系统SA和SB。 两个环节级联:sysseries(SA,SB)#程序如下#:G1=tf(2,1,3);G2=tf(7,1,2,1);sys=series(G1,G2) Transfer function: 14 - s3 + 5 s2 + 7 s + 33.两环节G1、G2并联,求等效的整体传递函数G(s) 【实验原理】: 若假定两环节均为单输入单输出的系统SA和SB。两个环节并联:sys=parallel(SA,SB)#程序如下#: G1=tf(2,1,3); G2=tf(7,1,2,1); sys=parallel(

17、G1,G2) Transfer function: 2 s2 + 11 s + 23 - s3 + 5 s2 + 7 s + 34.已知系统结构如图,求闭环传递函数。其中的两环节G1、G2分别为【实验原理】: 若假定两环节均为单输入单输出的系统SA和SB。 A环节前向,B环节反馈:S=feedback(SA,SB)#程序如下#: G1=tf(3,100,1,2,81); G2=tf(2,2,5); G=feedback(G1,G2) Transfer function: 6 s2 + 215 s + 500 - 2 s3 + 9 s2 + 178 s + 605 G=feedback(G1,G

18、2,1) Transfer function: 6 s2 + 215 s + 500 - 2 s3 + 9 s2 + 166 s + 2055.已知某闭环系统的传递函数为,求其单位阶跃响应曲线,单位脉冲响应曲线。#实验原理#: LTI模型的阶跃响应函数step( ) 格式:step(sys) 功能:绘制系统sys(sys由函数tf、zpk或ss产生)的阶跃响应,结果不返回数据,只返回图形。对多输入多输出模型,将自动求每一输入的阶跃响应。 LTI模型的单位冲激响应函数impulse( ) 格式:impulse(sys) 功能:绘制系统sys(sys由函数tf、zpk或ss产生)的单位冲激响应,结

19、果不返回数据,返回图形。#程序如下#:sys=tf(10,25,0.16,1.96,10,25);step(sys);title('阶越响应');grid图5.1单位阶跃响应曲线sys=tf(10,25,0.16,1.96,10,25);impulse(sys);title('脉冲响应');grid图5.2脉冲响应曲线6.典型二阶系统的传递函数为 , 为自然频率, 为阻尼比,试绘出当=0.5,分别取-2、0、2、4、6、8、10时该系统的单位阶跃响应曲线;分析阻尼比分别为0.5、1时系统的稳定性。【实验原理】:x=0.5时,利用阶跃响应函数step( )绘制分别

20、取0、2、4、6、8、10时的阶跃响应曲线。解:(1),x=0.5,分别取-2、0、2、4、6、8、10时该系统的单位阶跃响应曲线#程序如下#:>> G0=tf(0,4,1,-2,4); %=0.5 Wn=-2>> G1=tf(0,4,1,2,4); %=0.5 Wn=2>> G2=tf(0,16,1,4,16); %=0.5 Wn=4>> G3=tf(0,36,1,6,36); %=0.5 Wn=6>> G4=tf(0,64,1,8,64); %=0.5 Wn=8>> G5=tf(0,100,1,10,100); %=0

21、.5 Wn=10>> step(G0,G1,G2,G3,G4,G5); %计算并绘制系统的单位阶跃响应title('单位阶跃响应')grid图6.1单位阶跃响应曲线(2)x=-0.5,x =-1时的阶跃响应曲线#程序如下#:>> G6=tf(0,100,1,-10,100);%§=-0.5,Wn=10时的单位阶跃响应 >> G7=tf(0,100,1,-20,100);%§=-1,Wn=10时的单位阶跃响应 >>step(G6,G7);title('§=-0.5,§=-1时的阶跃响应

22、') 分析稳定性: 从§=-0.5,§=-1时的阶跃响应曲线图可以看出,曲线不收敛,而是发散的,说明系统是不稳定的。7. 设有一高阶系统开环传递函数为,试绘制该系统的零极点图和闭环根轨迹图。#实验原理#: 求系统的零点、极点、增益 调用格式 p=pole(sys) 计算控制系统的极点 Z=zero(sys) 计算控制系统的零点 z, gain=zero(sys) 计算控制系统的零点、增益 绘制系统极点、零点图 调用格式 pzmap(sys) pzmap(sys1,sys2,sysn) p z=pzmap(sys) 绘制根轨迹图 调用格式 rlocus(sys) rl

23、ocus(sys ,k) Rlocus(sys1,sys2,) r k=rlocus(sys) r=rlocus(sys,k) k表示增益 r系统的极点#程序如下#: 1)系统的零极点 #输入如下指令#: num=0.016,0.218,1.436 ,9.359; den=0.06,0.268,0.635,6.271; z,p,k=tf2zp(num,den)Pzmap(num,den) 运行结果: z = -10.4027 -1.6111 + 7.3235i -1.6111 - 7.3235i p = -5.7710 0.6522 + 4.2054i 0.6522 - 4.2054i k =

24、0.2667图7.1 系统的零极点图 2)系统的闭环根轨迹 #输入如下指令#: num=0.016 0.218 1.436 9.359; den=0.06 0.268 0.635 6.271; rlocus(num,den) 图7.2 系统的闭环根轨迹图8.单位反馈系统前向通道的传递函数为: ,试绘制该系统的Bode图和Nyquist曲线,说明软件绘制曲线与手动绘制曲线的异同。#实验原理#: 1)、Bode图 调用格式 bode(sys) bode(sys, w) bode(sys1,sys2.sysn) bode(sys1,sys2.sysn,w) bode(sys1,plotstyle1,

25、sys2,plotstyle2,.sysn,plotstylen,) mag, phase, w=bode(sys) w频率区间矢量,控制频率起止范围 mag, phase, w输出幅值矢量 输出相角 输出频率区间 增益裕度定义:正好使系统频率响应穿过临界点的增益与实际系统增益的比值。 相角裕度:为了使系统的频率响应通过临界点必须引入的纯相位滞后量。 调用格式 gm pm wcg wcp=margin(sys) gm pm wcg wcp =margin(mag, phase, w) Gm系统增益裕度 pm系统相角裕度 wcg wcp-表示交叉频率 2)、Nyquist图 调用格式 nyqui

26、st(sys) nyquist(sys, w) nyquist(sys1,sys2.sysn) nyquist(sys1,sys2.sysn,w)nyquist(sys1,plotstyle1,sys2,plotstyle2,.sysn,plotstylen,) mag, phase, w=nyquist(sys) mag, phase=nyquist(sys, w)#程序如下#num=2,8,12,8,2; den=1,5,10,10,5,1; Bode(num,den)grid图8.1Bode图num=2,8,12,8,2;den=1,5,10,10,5,1;nyquist(num,den

27、)v=-2,2,-2,2;axis(v)gridtitle('Nyquist曲线')图8.2Nyquist曲线软件绘制曲线与手动绘制曲线的异同: 软件绘制曲线能准确的显示函数的图像,有利于分析计算。手动绘制曲线是采用对数幅频渐进线的方法得到。这种方法省去了逐点连线的繁琐,有利于分析系统稳定性等方面的问题。 9已知某控制系统的开环传递函数,试绘制系统的开环频率特性曲线,并求出系统的幅值与相位裕量。【实验原理】: Nichols图 对数幅相特性图(Nichols图)是描述系统频率特性的图示方法。该图纵坐标表示频率特性的对数幅值,以分贝为单位;横坐标表示频率特性的相位角。 调用格式

28、nichols(sys) nichols(sys, w) nichols(sys1,sys2.sysn) nichols(sys1,sys2.sysn,w) nichols(sys1,plotstyle1,sys2,plotstyle2,.sysn,plotstylen,) mag, phase, w=nichols(sys) mag, phase=nichols(sys, w)#程序如下#:>> G=tf(1.5,conv(conv(1,0,1,1),1,2);>> bode(G) gridGm,Pm,Wcg,Wcp=margin(G)#输出结果#Gm = 4.000

29、0Pm = 41.5340 相角裕度Wcg = 1.4142Wcp = 0.6118图9.1Bode图10.在SIMULINK中建立系统,该系统阶跃输入时的连接示意图如下。k为学生学号后三位。绘制其单位阶跃响应曲线,分析其峰值时间tp、延迟时间td、上升时间tr、调节时间ts及超调量。 【实验原理】: y,t=step(G) 该函数还同时返回了自动生成的时间变量t,对返回的这一对变量y和t的值进行计算,可以得到时域性能指标。 峰值时间(timetopeak)可由以下命令获得: Y,k=max(y); timetopeak=t(k) 应用取最大值函数max()求出y的峰值及相应的时间,并存于变量

30、Y和k中。然后在变量t中取出峰值时间,并将它赋给变量timetopeak。 最大(百分比)超调量(percentovershoot)可由以下命令得到: C=dcgain(G); Y,k=max(y); percentovershoot=100*(Y-C)/C dcgain( )函数用于求取系统的终值,将终值赋给变量C,然后依据超调量的定义,由Y和C计算出百分比超调量。 上升时间(risetime)可利用MATLAB中控制语句编制M文件来获得。首先简单介绍一下循环语句while的使用。 C=dcgain(G); n=1; while y(n)<C n=n+1; end risetime=t

31、(n) 在阶跃输入条件下,y 的值由零逐渐增大,当以上循环满足y=C时,退出循环,此时对应的时刻,即为上升时间。 调节时间(setllingtime)可由while语句编程得到: C=dcgain(G); i=length(t); while(y(i)>0.98*C)&(y(i)<1.02*C) i=i-1; end setllingtime=t(i) 用向量长度函数length( )可求得t序列的长度,将其设定为变量i的上限值。本人学号后三位为231,所以K=231.图10.1连接示意图图10.2#程序如下#:num1=1;den1=1 0;sys1=tf(num1,de

32、n1);num2=231;den2=1 9;sys2=tf(num2,den2);sys12=sys1*sys2;G=feedback(sys12,1);step(G)grid图10.2单位阶跃响应曲线分析峰值时间:#程序: num=231; den=1 9 231; y,x,t=step(num,den); peak,k=max(y); overshoot=(peak-1)*100 16tp,延迟时间td,上升时间tr,调节时间ts及超调量: tp=t(k) n=1; while y(n)<1n=n+1;end tr=y(n)m=length(t)while(y(m)>0.98)

33、&(y(m)<1.02)m=m-1;endts=t(m)运行结果overshoot = 37.6526tp = 0.2215tr = 1.0886m = 104ts = 0.8743:*11. 给定系统如下图所示,设计一个串联校正装置,使幅值裕度大于h>10分贝,相位裕度大于等于45度。#程序如下#:num=100;den=0.04,1,0G=tf(num,den);gw,pw,wcg,wcp=margin(G)G1=tf(100,0.04,1,0);G2=tf(100*0.025,1,conv(0.04,1,0,0.01,1)bode(G1)holdbode(G2,'r')gridfigureG1c=feedback(G1,1);G2c=feedback(G2,1);step(G1c)holdstep(G2c,'r')grid运行结果:den = 0.0400 1.0000 0gw = Infpw = 2

温馨提示

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

评论

0/150

提交评论