自动控制原理MATLAB仿真实验_第1页
自动控制原理MATLAB仿真实验_第2页
自动控制原理MATLAB仿真实验_第3页
自动控制原理MATLAB仿真实验_第4页
自动控制原理MATLAB仿真实验_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

1、自动控制原理MATLAB仿真实验实验一典型环节的MATLAB仿真、实验目的1 .熟悉MATLAB桌面和命令窗口,初步了解 SIMULINK功能模块的使用方法。2 .通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线 的理解。3 .定性了解各参数变化对典型环节动态特性的影响。、SIMULINK 的使用MATLAB中SIMULINK是一个用来对动态系统进行建模、仿真和分析的软件包。利用SIMULINK功能模块可以快速的建立控制系统的模型,进行仿真和调试。1.运行MATLAB软件,在命令窗口栏" >> "提示符下键入simulink命令,按Ent

2、er键或在工具栏单击 按钮,即可进入如图1-1所示的SIMULINK仿真环境下。-可编辑修改-2.选择File菜单下New下的Model命令,新建一个 simulink 仿真环境常规模板。图1-1 SIMULINK仿真界面图1-2系统方框图3.在simulink仿真环境下,创建所需要的系统。以图1-2所示的系统为例,说明基本设计步骤如下:1)进入线性系统模块库,构建传递函数。点击simulink 下的“Continuous ”,再将右边窗口中"Transfer Fen ”的图标用左键拖至新建的"untitled ”窗口。2)改变模块参数。在 simulink仿真环境&quo

3、t;untitled ”窗口中双击该图标,即可改变传 递函数。其中方括号内的数字分别为传递函数的分子、分母各次哥由高到低的系数,数字之间用空格隔开;设置完成后,选择 OK,即完成该模块的设置。3)建立其它传递函数模块。按照上述方法,在不同的simulink 的模块库中,建立系统所需的传递函数模块。例 :比例环节用“ Math ”右边窗口 “ Gain ”的图标。4)选取阶跃信号输入函数。 用鼠标点击simulink下的“Source ”,将右边窗口中"Step" 图标用左键拖至新建的“ untitled ”窗口,形成一个阶跃函数输入模块。5)选择输出方式。用鼠标点击simu

4、link下的"Sinks”,就进入输出方式模块库,通常选用“ Scope ”的示波器图标,将其用左键拖至新建的“untitled ”窗口。6)选择反馈形式。为了形成闭环反馈系统,需选择 “Math ”模块库右边窗口 “ Sum” 图标,并用鼠标双击,将其设置为需要的反馈形式(改变正负号)。7)连接各元件,用鼠标划线,构成闭环传递函数。8)运行并观察响应曲线。用鼠标单击工具栏中的“卜”按钮,便能自动运行仿真环境下的系统框图模型。运行完之后用鼠标双击“ Scope ”元件,即可看到响应曲线。三、实验原理1 .比例环节的传递函数为G(s) 互R22 R 100K,R2 200K乙Ri其对应

5、的模拟电路及 SIMULINK图形如图1-3所示。-可编辑修改-R2图1-32 .惯性环节的传递函数为ZG(s)彳Z1R2R1R2Ci1其对应的模拟电路及ULD/A1'GainScope比例环节的模拟电路及 SIMULINK 图形SIMULINKC1El图3.积分环节(I)的传递函数为Z2G(s)-2乙其对应的模拟电路及 SIMULINKC1R1IT1D/A120.2s 1图形如图Ri1-4100K, R2 200K,C1 1uf所示。Sco i 电1-4惯性环节的模拟电路及SIMULINK 图形R1cls0.1sR1100K,C1 1uf图形如图1-5所示。图1-5积分环节的模拟电路

6、及及SIMULINK 图形4.微分环节(D)的传递函数为-可编辑修改-G(s)Z2Z1R1clsR1100K,C1 10ufC2C10.01uf其对应的模拟电路及 SIMULINK图形如图1-6所示。5 .比例+微分环节(PD )的传递函数为5恒p口,iuwtiu 磨号 cwp 总节的模拟电路及及 SIMULINK图形(0.1s 1)z2R2G(s) 22 (R1cls 1)Z1RiR1 R2 100K,C1 10ufC2C1 0.01uf其对应的模拟电路及 SIMULINK图形如图1-7所示。图1-7比例+微分环节的模拟电路及SIMULINK 图形6 .比例+积分环节(PI)的传递函数为z2

7、"JasZ1R1 R2 100K,C1 10uf其对应的模拟电路及 SIMULINK图形如图1-8所示。lnlagr«tar四、实验内容1.按下列各典型环节的传递函数,建立相应的 SIMULINK 仿真模型,观察并记录其 单位阶跃响应波形。i1 s 1 1ss比例环节Gi(s)惯性环节Gi(s)积分环节Gi(s)微分环节Gi(s) 比例+微分环节(PD) Gi(s) s 2 比例+积分环节(PI) Gi(s)1 乂、 i -2 .观察G (s) ,随着T的变化输出波形的变化Ts i五、实验报告i .画出各典型环节的 SIMULINK仿真模型。3 .记录各环节的单位阶跃响应波

8、形,并分析参数对响应曲线的影响。4 .写出实验的心得与体会。六、预习要求1 .熟悉各种控制器的原理和结构,画好将创建的SIMULINK图形。2 .预习MATLAB中SIMULINK 的基本使用方法。实验二 线性系统时域响应分析一、实验目的1 熟练掌握step( ) 函数和 impulse( ) 函数的使用方法,研究线性系统在单位阶跃、单位脉冲及单位斜坡函数作用下的响应。2通过响应曲线观测特征参量和 n 对二阶系统性能的影响。3熟练掌握系统的稳定性的判断方法。二、基础知识及MATLAB 函数1. 基础知识时域分析法直接在时间域中对系统进行分析,可以提供系统时间响应的全部信息,具有直观、准确的特点

9、。为了研究控制系统的时域特性,经常采用瞬态响应(如阶跃响应、脉冲响应和斜坡响应)。 本次实验从分析系统的性能指标出发,给出了在MATLAB 环境下获取系统时域响应和分析系统的动态性能和稳态性能的方法。用 MATLAB 求系统的瞬态响应时,将传递函数的分子、分母多项式的系数分别以s 的降幂排列写为两个数组num 、 den 。 由于控制系统分子的阶次m 一般小于其分母的阶次n,所以 num 中的数组元素与分子多项式系数之间自右向左逐次对齐,不足部分用零补齐,缺项系数也用零补上。用 MATLAB 求控制系统的瞬态响应-可编辑修改-阶跃响应求系统阶跃响应的指令有:step(num,den)step(

10、num,den,t)y, x=step(num,den)在MATLAB 程序中,先定义入信号下的阶跃响应曲线图。考虑下列系统:该系统可以表示为两个数组, 列。则matlab的调用语句:num=0 025;den=1 425;step(num,den)线时间向量t的范围由软件自动设定,阶跃响应曲线随即绘出时间向量t的范围可以由人工给定(例如 t=0:0.1:10 )返回变量y为输出向量,x为状态向量num,den数组,并调用上述指令,即可生成单位阶跃输C(s) 25一,、-2R(s) s 4s 25每一个数组由相应的多项式系数组成,并且以s的降哥排%定义分子多项式%定义分母多项式%调用阶跃响应函

11、数求取单位阶跃响应曲-可编辑修改-grid%画网格标度线xlabel( 't/s ' ),ylabel( 'c(t)' )%给坐标轴加上说明title( 'Unit-step Respinse of G(s)=25/(sA2+4s+25)' ) %给图形加上标题名则该单位阶跃响应曲线如图 2-1所示:为了在图形屏幕上书写文本,可以用 text命令在图上的任何位置加标注。例如 :text(3.4,-0.06, Y1') 和 text(3.4,1.4, ' Y2')第一个语句告诉计算机,在坐标点 x=3.4,y=-0.06上书

12、写出Y1 '。类似地,第二个语句告诉计算机,在坐标点x=3.4,y=1.4 上书写出Y2'图2-1二阶系统的单位阶跃响应图2-2定义时间范围的单位阶跃响应若要绘制系统t在指定时间(0-10S )内的响应曲线,则用以下语句 :num=0 025;den=1 425;t=0:0.1:10;step(num,den,t)即可得到系统的单位阶跃响应曲线在0-10S间的部分,如图2-2所示。脉冲响应 求系统脉冲响应的指令有:impulse (num,den)时间向量t的范围由软件自动设定,阶跃响应曲线随即绘出impulse (num,den,t)时间向量t的范围可以由人工给定(例如 t=

13、0:0.1:10 )y,x=impulse(num,den)返回变量y为输出向量,x为状态向量y,x,t=impulse(num,den,t)向量t表示脉冲响应进行计算的时间例:试求下列系统的单位脉冲响应C(s)丽G(s)1s2 0.2s 1在matlab 中可表示为num=0 01;den=10.21;impulse(num,den) grid title( ' Unit-impulse Response of G(s)=1/(sA2+0.2s+1)由此得到的单位脉冲响应曲线如图2-3所示。求脉冲响应的另一种方法应当指出,当初始条件为零时,G的单位脉冲响应与sG(s)的单位阶跃响应相

14、同。考虑在上例题中求系统的单位脉冲响应,因为对于单位脉冲输入量,R(s)=1所以Rgc(s)G(s)s2 0.2s 1s2 0.2s 1 s因此,可以将 G(s)的单位脉冲响应变换成sG(s)的单位阶跃响应。向MATLAB输入下列num和den ,给出阶跃响应命令,可以得到系统的单位脉冲响应曲线如图2-4所示。num=0 10; den=10.21;step(num,den) grid title( ' Unit-step Response of sG(s)=s/(sA2+0.2s+1)廿Rm his»t,n)图2-3二阶系统的单位脉冲响应图2-4单位脉冲响应的另一种表示法斜

15、坡响应MATLAB 没有直接调用求系统斜坡响应的功能指令。在求取斜坡响应时,通常利用阶跃响应的指令。基于单位阶跃信号的拉氏变换为1/s ,而单位斜坡信号的拉氏变换为1/s2。因此,当求系统 G(s)的单位斜坡响应时,可以先用 s除G(s),再利用阶跃响应命令,就能求出系统的斜坡响应。例如,试求下列闭环系统的单位斜坡响应。C(s) _R(s) s2对于单位斜坡输入量,R(s)=1/s2,因此C(s)117-2一(s s 1)s s在MATLAB中输入以下命令,得到如图2-5所示的响应曲线:num=0 001; den=1 110;step(num,den) title( ' Unit-R

16、amp Response Cuve for System G(s)=1/(sA2+s+1)far可心E心循好1成/4541|图2-5单位斜坡响应2 .特征参量和n对二阶系统性能的影响标准二阶系统的闭环传递函数为C(S)"、-272R(s)s2 nS n二阶系统的单位阶跃响应在不同的特征参量下有不同的响应曲线。对二阶系统性能的影响设定无阻尼自然振荡频率n 1(rad/s),考虑5种不同的值:=0,0.25,0.5,1.0利用MATLAB对每一种求取单位阶跃响应曲线,分析参数对系统的影响。为便于观测和比较,在一幅图上绘出5条响应曲线(采用“ hold ”命令实现)num=0 0 1;de

17、n1=10 1; den2=10.5 1;den3=111;den4=12 1;den5=141;t=0:0.1:10; step(num,den1,t)grid text(4,1.7,'Zeta=0'); holdstep(num,den2,t)text(3.3,1.5,'0.25')step(num,den3,t)text(3.5,1.2,'0.5')step(num,den4,t)text(3.3,0.9,'1O)step(num,den5,t)text(3.3,0.6,'2.0')title('Step-R

18、esponse Curves for G(s)=1/sA2+2(zeta)s+1')由此得到的响应曲线如图 2-6所示。图2-6不同时系统的响应曲线n对二阶系统性能的影响同理,设定阻尼比 0.25时,当n分别取 应曲线,分析参数n对系统的影响。num1=001;den1=10.5t=0:0.1:10;step(num1,den1,t);grid; hold ontext(3.1,1.4, ' wn=1 ')num2=004;den2=11图2-7 n不同时系统的响应曲线1,2,3时,利用MATLAB求取单位阶跃响1;4;step(num2,den2,t); hold o

19、n text(1.7,1.4, wn=2 )num3=009;den3=11.59;step(num3,den3,t); hold ontext(0.5,1.4, wn=3 )由此得到的响应曲线如图2-7 所示。3 . 系统稳定性判断1 )直接求根判稳roots()控制系统稳定的充要条件是其特征方程的根均具有负实部。因此, 为了判别系统的稳定性,就要求出系统特征方程的根,并检验它们是否都具有负实部。MATLAB 中对多项式求根的函数为roots() 函数。若求以下多项式的根s4 10s3 35s2 50s 24,则所用的MATLAB 指令为 :>> roots(1,10,35,50

20、,24) ans =-4.0000-3.0000-2.0000-1.0000特征方程的根都具有负实部,因而系统为稳定的。2)劳斯稳定判据routh ()劳斯判据的调用格式为:r, info=routh(den)该函数的功能是构造系统的劳斯表。其中,den 为系统的分母多项式系数向量,r 为返routh 表矩阵,info 为返回的routh 表的附加信息。routh 判据判定系统的稳定性。den=1,10,35,50,24;r,info=routh(den)r=1030422435502424info=routh表可以看出,其第一列没有符号的变化,系统是稳定的。-可编辑修改-3)赫尔维茨判据hu

21、rwitz ()赫尔维茨的调用格式为:H=hurwitz ( den ) 。 该函数的功能是构造hurwitz 矩阵。 其中,den 为系统的分母多项式系数向量。hurwitz判据判定系统的稳定性。>>den=1,10,35,50,24;H=hurwitz(den)H=1050352410503524由系统返回的hurwitz矩阵可以看出,系统是稳定的。与前面的分析结果完全一致。注意:routh ()和hurwitz ()不是 MATLAB 中自带的功能函数,须加载 ctrllab3.1文件夹(自编)才能运行。三、实验内容1 .观察函数step()和impulse()的调用格式,假

22、设系统的传递函数模型为G(S)4 :3 3s274s 4s 6s 4s 1可以用几种方法绘制出系统的阶跃响应曲线?试分别绘制。2 .对典型二阶系统2G(s)s22 :s n21)分别绘出n 2(rad/s),分另1J取0,0.25,0.5,1.0 和2.0时的单位阶跃响应曲线, 分析参数 对系统的影响。2)绘制出当 =0.25, n分别取1,2,4,6时单位阶跃响应曲线,分析参数n对系统的影响。3 .系统的特征方程式为 2s4 s3 3s2 5s 10 0 ,试用三种判稳方式判别该系统的稳定 性。4 .单位负反馈系统的开环模型为'KG(s)2(s 2)(s 4)(s 6s 25)试分别

23、用劳斯稳定判据和赫尔维茨稳定判据判断系统的稳定性,并求出使得闭环系统稳定的K值范围。四、实验报告1 .根据内容要求,写出调试好的MATLAB语言程序,及对应的 MATLAB运算结果。2. 记录各种输出波形,根据实验结果分析参数变化对系统的影响。3总结判断闭环系统稳定的方法,说明增益K 对系统稳定性的影响。4写出实验的心得与体会。五、预习要求1. 预习实验中基础知识,运行编制好的MATLAB 语句,熟悉MATLAB 指令及 step( )和 impulse( ) 函数。2. 结合实验内容,提前编制相应的程序。3思考特征参量和 n 对二阶系统性能的影响。4熟悉闭环系统稳定的充要条件及学过的稳定判据

24、。-可编辑修改-o实验三线性系统的根轨迹一、实验目的1 .熟悉MATLAB用于控制系统中的一些基本编程语句和格式。2 .利用MATLAB语句绘制系统的根轨迹。3 .掌握用根轨迹分析系统性能的图解方法。4 .掌握系统参数变化对特征根位置的影响。二、基础知识及 MATLAB 函数根轨迹是指系统的某一参数从零变到无穷大时,特征方程的根在s平面上的变化轨迹。这个参数一般选为开环系统的增益Ko课本中介绍的手工绘制根轨迹的方法,只能绘制根轨迹草图。而用 MATLAB可以方便地绘制精确的根轨迹图,并可观测参数变化对特征根位置 的影响。假设系统的对象模型可以表示为 b1sm b2sm 1 L bms bm 1

25、 G(s) KGo(s) K 1n -m-m25 aisL bn 1S an系统的闭环特征方程可以写成1 KGo(s) 0对每一个K的取值,我们可以得到一组系统的闭环极点。如果我们改变K的数值,则可以得到一系列这样的极点集合。若将这些K的取值下得出的极点位置按照各个分支连接起来,则可以得到一些描述系统闭环位置的曲线,这些曲线又称为系统的根轨迹。绘制系统的根轨迹 rlocus ()MATLAB中绘制根轨迹的函数调用格式为:rlocus(num,den)开环增益k的范围自动设定。rlocus(num,den,k)开环增益k的范围人工设定。量k。rlocus(p,z)r=rlocus(num,den

26、)r,止rlocus(num,den)依据开环零极点绘制根轨迹。不作图,返回闭环根矩阵。不作图,返回I环根矩阵 r和对应的开环增益向其中,num,den分别为系统开环传递函数的分子、分母多项式系数,按s的降哥排列。K为根轨迹增益,可设定增益范围。例3-1:已知系统的开环传递函数G(s) K3 (s2 1一,绘制系统的根轨迹的s 4s 2s 9%定义分子多项式matlab的调用语句如下:num=1 1;den=1 4 2 9;%定义分母多项式rlocus (num,den)%绘制系统的根轨迹grid%画网格标度线xlabel( ' Real Axis ' ),ylabel(Ima

27、ginary Axis ')%给坐标轴加上说明%给图形加上标题名的调用格式如下,对应的title( ' Root Locus ')则该系统的根轨迹如图 3-1 (a)所示。若上例要绘制 K在(1, 10)的根轨迹图,则此时的 matlab根轨迹如图3-1 (b)所示。num=1 1; den=1 4 2 9;k=1:0.5:10;rlocus (num,den,k)1)确定闭环根位置对应增益值K的函数rlocfind ()在MATLAB中,提供了 rlocfind 函数获取与特定的复根对应的增益K的值。在求出的根轨迹图上,可确定选定点的增益值K和闭环根r (向量)的值。

28、该函数的调用格式为:k,r=rlocfind(num,den)执行前,先执行绘制根轨迹命令rlocus (num,den ),作出根轨迹图。执行 rlocfind命令时,出现提示语句"Select a point in the graphics window ”,即要求在根轨迹图上选定闭环极点。将鼠标移至根轨迹图选定的位置,单击左键确定,根轨迹图上出现“+”标记,即得到了该点的增益 K和闭环根r的返回变量值。 2 s 5s 6例3-2:系统的开环传递函数为G(s) K 3 s 26一,试求:(1)系统的根轨迹;(2)s3 8s2 3s 25系统稳定的K的范围;(3) K=1时闭环系统

29、阶跃响应曲线。则此时的matlab的调用格式为:G=tf(1,5,6,1,8,3,25);rlocus (G);%绘制系统的根轨迹k,r=rlocfind(G)%确定临界稳定时的增益值k和对应的极点rG_c=feedback(G,1);%形成单位负反馈闭环系统step(G_c)%绘制闭环系统的阶跃响应曲线则系统的根轨迹图和闭环系统阶跃响应曲线如图3-2所示。其中,调用rlocfind ()函数,求出系统与虚轴交点的K值,可得与虚轴交点的K值为0.0264 ,故系统稳定的K的范围为K (0.0264,)。2)绘制阻尼比和无阻尼自然频率 n的栅格线sgrid()当对系统的阻尼比和无阻尼自然频率n有

30、要求时,就希望在根轨迹图上作等或等n线。matlab中实现这一要求的函数为sgrid(),该函数的调用格式为:SgAd(, n) 已知 和n的数值,作出等于已知参数的等值线。sgrid( dew')作出等间隔分布的等和n网格线。1例3-3:系统的开环传递函数为G(s) ,由rlocfind 函数找出能广生王导极s(s 1)(s 2)点阻尼 =0.707的合适增益,如图 3-3(a)所示。G=tf(1,conv(1,1,1,2),0);zet=0.1:0.2:1;wn=1:10;sgrid(zet,wn);hold on;rlocus(G)k,r=rlocfind(G)Select a

31、point in the graphics windowselected_point =-0.3791 + 0.3602i k =0.6233 r =-2.2279-0.3861 + 0.3616i-0.3861 - 0.3616i(a)根轨迹图形(b) K=1时的阶跃响应曲线图3-2 系统的根轨迹和阶跃响应曲线(a)根轨迹上点的选择(b)闭环系统阶跃响应图3-3由根轨迹技术设计闭环系统-可编辑修改-同时我们还可以绘制出该增益下闭环系统的阶跃响应,如图 3-3(b) 所示。 事实上, 等或等n线在设计系补偿器中是相当实用的,这样设计出的增益K=0.6233 将使得整个系统的阻尼比接近0.707

32、 。由下面的MATLAB 语句可以求出主导极点,即r(2.3) 点的阻尼比和自然频率为G_c=feedback(G,1);step(G_c)dd0=poly(r(2:3,:);wn=sqrt(dd0(3);zet=dd0(2)/(2*wn);zet,wn ans =0.72990.5290我们可以由图3-3(a) 中看出,主导极点的结果与实际系统的闭环响应非常接近,设计的效果是令人满意的。3)基于根轨迹的系统设计及校正工具rltoolmatlab 中提供了一个系统根轨迹分析的图形界面,在此界面可以可视地在整个前向通路中添加零极点(亦即设计控制器),从而使得系统的性能得到改善。实现这一要求的工具

33、为 rltool ,其调用格式为:rltool 或 rltool(G)例 3-4: 单位负反馈系统的开环传递函数G(s) s 0.125s2(s 5)(s 20)(s 50)输入系统的数学模型,并对此对象进行设计。den=conv(1,5,conv(1,20,1,50),0,0;num=1,0.125;G=tf(num,den); rltool(G)该命令将打开rltool工具的界面,显示原开环模型的根轨迹图,如图 3-4 (a)所示。单击该图形菜单命令 Analysis中的Response to Step Command复选框,则将打开一个新的窗口,绘制系统的闭环阶跃响应曲线,如图 3-4

34、(b)所示。可见这样直接得出的系统 有很强的振荡,就需要给这个对象模型设计一个控制器来改善系统的闭环性能。 .n同月月E* C*rm iirii JfflMfcw E万工,曰'1 M. I K IPL 3州卯即 IUr-3占hd Laojs Ed hi 由P Retf WUp!-L'la)原对象模型的根轨迹(b)闭环系统阶跃响应-可编辑修改-图3-4根轨迹设计工具界面及阶跃响应分析(s 38.31)(s 10.26)GC(s) 181307.29单击界面上的零点和极点添加的按钮, 可以给系统添加一对共轲复极点, 两个稳定零点, 调整它们的位置,并调整增益的值, 通过观察系统的闭

35、环阶跃响应效果, 则可以试凑地设计 出一个控制器:(s 61.3 j0.84)(s 61.3 j0.84)在此控制器下分别观察系统的根轨迹和闭环系统阶跃响应曲线。可见,rltool可以作为系统综合的实用工具,在系统设计中发挥作用。三、实验内容1 .请绘制下面系统的根轨迹曲线G(s)Ks(s2 2s 2)(s2 6s 13)G(s)G(s)K(s 12)(s 1)(s2 12s 100)(s 10)K(0.05 1)s(0.0714s 1)(0.012s2 0.1s 1)同时得出在单位阶跃负反馈下使得闭环系统稳定的K值的范围。2 .在系统设计工具rltool界面中,通过添加零点和极点方法,试凑出

36、上述系统,并观 察增加极、零点对系统的影响。四、实验报告1 .根据内容要求,写出调试好的MATLAB语言程序,及对应的结果。2 .记录显示的根轨迹图形,根据实验结果分析根轨迹的绘制规则。3 .根据实验结果分析闭环系统的性能,观察根轨迹上一些特殊点对应的K值,确定闭环系统稳定的范围。4 .根据实验分析增加极点或零点对系统动态性能的影响。5 .写出实验的心得与体会。五、预习要求1. 预习实验中的基础知识,运行编制好的MATLAB 语句,熟悉根轨迹的绘制函数rlocus() 及分析函数rlocfind(),sgrid() 。2. 预习实验中根轨迹的系统设计工具rltool ,思考该工具的用途。3.

37、掌握用根轨迹分析系统性能的图解方法,思考当系统参数K 变化时,对系统稳定性的影响。4思考加入极点或零点对系统动态性能的影响。-可编辑修改-可编辑修改-实验四 线性系统的频域分析一、实验目的1 .掌握用MATLAB语句绘制各种频域曲线。2 .掌握控制系统的频域分析方法。二、基础知识及 MATLAB 函数频域分析法是应用频域特性研究控制系统的一种经典方法。它是通过研究系统对正弦信号下的稳态和动态响应特性来分析系统的。采用这种方法可直观的表达出系统的频率特性, 分析方法比较简单,物理概念明确。1 .频率曲线主要包括三种:Nyquist 图、Bode图和Nichols 图。1) Nyquist图的绘制

38、与分析nyquist(num,den)nyquist(num,den,w)Re,Im= nyquist(num,den)例4-1:已知系统的开环传递函数为判断系统的稳定性。num=2 6;den=1 2 5 2;z,p,k=tf2zp(num,den); pnyquist(num,den)极点的显示结果及绘制的Nyquist频率响应w的范围由软件自动设定频率响应w的范围由人工设定返回奈氏曲线的实部和虚部向量,不作图、2s 6、一y 、,G(s) 32,试绘制Nyquist图,并s3 2s2 5s 23*i*;fa.-1,l( iN:V-i1一:jfly|图如图4-1所图4-1开环极点的显布结果

39、及 Nyquist图MATLAB中绘制系统Nyquist图的函数调用格式为:o示。由于系统的开环右根数P=0 ,系统的Nyquist曲线没有逆时针包围(-1 , j0)点,所以闭环系统稳定。P =-0.7666 + 1.9227i-0.7666 - 1.9227i-0.466823若上例要求绘制(10 2,103)间的Nyquist图,则对应的 MATLAB语句为:num=2 6;den=1 2 5 2;w=logspace(-1,1,100); 即在10-1和10 1之间,产生 100个等距离的点 nyquist(num,den,w)2) Bode图的绘制与分析系统的Bode图又称为系统频率

40、特性的对数坐标图。Bode图有两张图,分别绘制开环频率特性的幅值和相位与角频率的关系曲线,称为对数幅频特性曲线和对数相频特性曲线。MATLAB中绘制系统Bode图的函数调用格式为:bode(num,den)频率响应 w的范围由软件自动设定bode(num,den,w)频率响应w的范围由人工设定mag,phase,w=bode(num,den,w)指定幅值范围和相角范围的伯德图例4-2:已知开环传递函数为 G(s)?0(0.2S “,试绘制系统的伯德图。s(s 16s 100)num=0 06 30;den=1 161000;w=logspace(-2,3,100);bode(num,den,w

41、)grid绘制的Bode图如图4-2(a)所示,其频率范围由人工选定,而伯德图的幅值范围和相角范围是自动确定的。当需要指定幅值范围和相角范围时,则需用下面的功能指令:mag,phase,w=bode(num,den,w)Uulu Liagram .f g|/)=11|1叫村平山力:”浦亘 : l i liiiiii= iJL”ii“.u"JI 三二 I,二:叶:*金,rT rnla-a'u;n!iH:10-1 id itf ID® io1 *1三1一 :4-4»T = m ;L七工救泞棚阙;:;:;' H" " !;T:,,,*

42、-. e . r<-s aa aak i I .b. >> Lia:养:二H ID1 lj Itf图4-2(a)幅值和相角范围自动确定的 Bode图图4-2(b)指定幅值和相角范围的Bode图mag,phase是指系统频率响应的幅值和相角,由所选频率点的w值计算得出。其中,幅值的单位为dB ,它的算式为 magdB=20lg10(mag) 。指定幅值范围和相角范围的MATLAB调用语句如下,图形如图4-2(b)所示。num=0 01530;den=1 161000;w=logspace(-2,3,100);mag,phase,w=bode(num,den,w);%指定Bode

43、图的幅值范围和相角范围subplot(2,1,1); % 将图形窗口分为 2*1个子图,在第1个子图处绘制图形semilogx(w,20*log10(mag); %使用半对数刻度绘图,X轴为log10 刻度,丫轴为线性刻度grid onxlabel( w/sA-1'); ylabel( L(w)/dB ');title( Bode Diagram of G(s)=30(1+0.2s)/s(sA2+16s+100)');subplot(2,1,2);% 将图形窗口分为2*1个子图,在第2个子图处绘制图形 semilogx(w,phase);grid onxlabel( W

44、/sA-1 '); ylabel( ' (0)');注意:半Bode图的绘制可用semilgx函数实现,其调用格式为semilogx(w,L),其中L=20*log10(abs(mag) 。3) Nichols 图的绘制在MATLAB中绘制Nichols图的函数调用格式为:mag,phase,w=nichols(num,den,w)Plot(phase,20*log10(mag)例4-3:单位负反馈的开环传递函数为G(s)102,绘制Nichols 图。对应的3s2 9s图 4-3 Nichols 图MATLAB语句如下,所得图形如图 4-3所示:num=10; den

45、=1 3 9 0;w=logspace(-1,1,500);mag,phase=nichols(num,den,w);plot(phase,20*log10(mag)ngrid %绘制nichols 图线上的网格2.幅值裕量和相位裕量幅值裕量和相位裕量是衡量控制系统相对稳定性的重要指标,需要经过复杂的运算求取。应用MATLAB功能指令可以方便地求解幅值裕量和相位裕量。其MATLAB调用格式为:Gm,Pm,Wcg,Wcp=margin(num,den)其中,Gm,Pm分别为系统的幅值裕量和相位裕量,而Wcg,Wcp分别为幅值裕量和相位裕量处相应的频率值。另外,还可以先作 bode图,再在图上标注

46、幅值裕量Gm和对应的频率Wcg ,相位裕量Pm和对应的频率 Wcp 。其函数调用格式为:margin(num,den)例4-4:对于例4-3中的系统,求其稳定裕度,对应的MATLAB语句如下:num=10; den=13 9 0;gm,pm,wcg,wcp=margin(num,den);gm,pm,wcg,wcpgm =2.7000pm =64.6998wcg =3.0000wcp =1.1936如果已知系统的频域响应数据,还可以由下面的格式调用函数Gm,Pm,Wcg,Wcp=margin(mag,phase,w)其中(mag,phase,w )分别为频域响应的幅值、相位与频率向量。三、实验

47、内容1 .典型二阶系统绘制出6,0.1 , 0.3, 0.5 , 0.8 , 2的bode图,记录并分析对系统bode图的影响。2 .系统的开环传递函数为G(s)102 一Z7s (5s 1)(s 5)G(s)8(s 1)2 ,2 7s (s 15)(s 6s 10)G(s)4(s/3 1)s(0.02s 1)(0.05s 1)(0.1s 1)绘制系统的Nyquist曲线、Bode图和Nichols图,说明系统的稳定性,并通过绘制阶跃响 应曲线验证。s 13 .已知系统的开环传递函数为G(s) 2 s 1一。求系统的开环截止频率、穿越频率、s (0.1s 1)幅值裕度和相位裕度。应用频率稳定判

48、据判定系统的稳定性。四、实验报告1 .根据内容要求,写出调试好的 MATLAB语言程序,及对应的结果。2 .记录显示的图形,根据实验结果与各典型环节的频率曲线对比分析。3 .记录并分析对二阶系统bode图的影响。4 .根据频域分析方法分析系统,说明频域法分析系统的优点。5 .写出实验的心得与体会。五、预习要求1 .预习实验中的基础知识,运行编制好的 MATLAB语句,熟悉绘制频率曲线的三种图形函数 nyquist ()、bode ()和 nichols ()。2 .掌握控制系统的频域分析方法,理解系统绝对稳定性和相对稳定性的判断方法。-可编辑修改-实验五线性系统串联校正、实验目的1 .熟练掌握

49、用MATLAB语句绘制频域曲线。2 .掌握控制系统频域范围内的分析校正方法。3 .掌握用频率特性法进行串联校正设计的思路和步骤。二、基础知识控制系统设计的思路之一就是在原系统特性的基础上,对原特性加以校正,使之达到要求的性能指标。最常用的经典校正方法有根轨迹法和频域法。而常用的串联校正装置有超前校正、滞后校正和超前滞后校正装置。本实验主要讨论在MATLAB环境下进行串联校正设计。1.基于频率法的串联超前校正超前校正装置的主要作用是通过其相位超前效应来改变频率响应曲线的形状,产生足够大的相位超前角,以补偿原来系统中元件造成的过大的相位滞后。因此校正时应使校正装置的最大超前相位角出现在校正后系统的

50、开环截止频率c处。-可编辑修改-K例5-1:单位反馈系统的开环传递函数为G(s),试确定串联校正装置的特性,使s(s 1)系统满足在斜坡函数作用下系统的稳态误差小于0.1 ,相角裕度r045 o解:根据系统静态精度的要求,选择开环增益12ess LirmsE Umss-0.1 K 101s(s 1)B K 12 ,求原系统的相角裕度。w=0.1:1000;n0);>>num0=12;den0=2,1,0;gm1,pm1,wcg1,wcp1=margin(num0,demag1,phase1=bode(num0,den0,w);图5-1 原系统的Bode图gm1,pm1,wcg1,w

51、cp1margin(num0,den0)%计算系统的相角裕度和幅值裕度,并绘制出 Bode图grid;ans =Inf 11.6548Inf 2.4240由结果可知,原系统相角裕度r 11.60, c2.4rad / s ,不满足指标要求,系统的Bode图如图5-1所示。考虑采用串联超前校正装置,以增加系统的相角裕度。确定串联装置所需要增加的超前相位角及求得的校正装置参数。0,450 ,0为原系统的相角裕度,取50 ,令1 sin m/(1 sin m),>>e=5;r=45;r0=pm1;phic=(r-r0+e)*pi/180;alpha=(1+sin(phic)/(1-sin(phic);将校正装置的最大超前角处的频率m作为校正后系统的剪切频率co则有:120lg Gc(j c)G°(j c) 0 |G°(j c) =即原系统幅频特性幅值等于20lg1时的频率,选为根据c ,求出校正装置的参数T。即TT=1/(wc*sqrt(alpha); numc=alpha*T,1;denc=T,1;%原系统与校正装置串联%返回系统新的相角裕度和幅值裕度%显示校正装置的传递函数:');%显示系统新的传递函数%计算指定频率内校

温馨提示

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

评论

0/150

提交评论