《控制系统的频域分析实验报告(共7页).doc》由会员分享,可在线阅读,更多相关《控制系统的频域分析实验报告(共7页).doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上课程名称: 控制理论乙 指导老师: 成绩:_实验名称: 控制系统的频域分析 实验类型:_同组学生姓名:_一、实验目的和要求用计算机辅助分析的方法,掌握频率分析法的三种方法,即Bode图、Nyquist曲线、Nichols图。二、实验内容和原理(一)实验原理1Bode(波特)图设已知系统的传递函数模型:则系统的频率响应可直接求出: MATLAB中,可利用bode和dbode绘制连续和离散系统的Bode图。 2Nyquist(奈奎斯特)曲线 Nyquist曲线是根据开环频率特性在复平面上绘制幅相轨迹,根据开环的Nyquist线,可判断闭环系统的稳定性。 反馈控制系统稳定的
2、充要条件是,Nyquist曲线按逆时针包围临界点(-1,j0)p圈,为开环传递函数位于右半s一平面的极点数。在MATLAB中,可利用函数nyquist和dnyquist绘出连续和离散系统的乃氏曲线。3Nicho1s(尼柯尔斯)图 根据闭环频率特性的幅值和相位可作出Nichols图,从而可直接得到闭环系统的频率特性。在MATLAB中,可利用函数nichols和dnichols绘出连续和离散系统的Nichols图。(二)实验内容1一系统开环传递函数为 绘制系统的bode图,判断闭环系统的稳定性,并画出闭环系统的单位冲击响应。2一多环系统R(s)C(s)10G(S)其结构如图所示试绘制Nyquist
3、频率曲线和Nichols图,并判断稳定性。(三)实验要求1编制MATLAB程序,画出实验所要求的Bode图 、 Nyquist图 、Nichols图。2在Simulink仿真环境中,组成系统的仿真框图,观察单位阶跃响应曲线并记录之。三、主要仪器设备计算机一台以及matlab软件,simulink仿真环境四、操作方法与实验步骤1、程序解决方案:在MATLAB中建立文件pinyu.m,其程序如下:%频域响应函数a0=0 0 0 50;b1=1 1;b2=1 5;b3=1 -2;b0=conv(b1,conv(b2,b3);H1=tf(a0,b0);fprintf(第一题开环传递函数);H1figu
4、re;bode(H1);title(第一题开环伯德图);xlabel(w);grid on;%闭环传递函数aa=a0;bb=b0+a0;H=tf(aa,bb);fprintf(第一题闭环传递函数);Hfigure;impulse(H,20);title(第一题单位冲激响应);xlabel(t/s);ylabel(c(t);grid on;%第二题c0=0 0 16.7 0;d0=conv(conv(0.85,1,0.25,1),0.0625,1);d1=c0+d0;G1=tf(c0,d0);Gs=tf(10*c0,d1);cc=10*c0;dd=10*c0+d1;G=tf(cc,dd);fpr
5、intf(第二题闭环传递函数);Gfigure;nyquist(Gs);title(第二题Nyquist图);figure;nichols(Gs);title(第二题Nichols图);在MATLAB命令窗口中输入下列命令,得到结果 pinyu第一题开环传递函数 Transfer function: 50-s3 + 4 s2 - 7 s - 10 第一题闭环传递函数 Transfer function: 50-s3 + 4 s2 - 7 s + 40 第二题闭环传递函数 Transfer function: 167 s-0.01328 s3 + 0.2813 s2 + 184.9 s + 1其
6、输出的曲线如下2、Simulink仿真环境实现方式第一题:在simulink中建立以下模型:点击运行,得到如下所示的波形:第二题:在simulink中建立以下模型:点击运行,得到如下所示的波形:五、实验结果与分析 1、对于第一个系统来说,观察其伯德图可知,当其幅频特性穿越0dB线(即剪切频率)时所对应的系统相角,因此其相位裕度,由此可见系统是不稳定的。通过观察其单位冲激响应和单位阶跃响应也可以得到同样的结论。2、通过对第二个系统的奈奎斯特曲线分析可知,由于开环系统在右半平面没有开环极点,并且奈奎斯特曲线包围(-1,j0)的圈数为0,因此Z=0,所以系统是稳定的,通过观察其阶跃响应也可以得到同样
7、的结论。六、讨论、心得通过该实验,我了解了利用MATLAB进行系统稳定性分析的方法。大体来说,有以下几种方式:一种是自己手算出系统的开环传递函数(多数时候题目会给出),然后调用tf()函数和nyquist()函数来求得系统的开环奈奎斯特曲线,通过判断N的值从而计算出Z的值判断系统是否稳定;当遇到有多个环节或者反馈系统中还嵌有反馈时,可以通过自己编写的一些程序来求出系统的开环传递函数,从而调用nyquist(Gs)函数来求奈奎斯特曲线,当然求闭环传递函数的奈奎斯特曲线然后根据曲线对(0,j0)包围的圈数判断,这与根据开环传递函数的奈奎斯特曲线对(-1,j0)包围的圈数判断是等效的。还有一种方法是利用matlab中的simulink模块,直接建立系统的模型,通过示波器观察其单位阶跃响应曲线来分析系统的稳定性。如果响应是收敛的,则系统稳定,若响应发散,则系统是不稳定的。本实验主要做的工作在编写了一个.m文件,通过运行该文件可以一次性完成程序解决方案,得到希望的结果和图像,这种方法与上一个MATLAB中编写的function文件时有所区别的。Function文件在调用时格式为output=function(input),程序运行时有返回值,而本实验编写的.m文件只需要在命令窗口中输入文件名直接运行即可。专心-专注-专业