1、自动控制原理MATLAB仿真实验报告一、实验目的学习利用MATLAB进行控制系统时域分析,包括典型响应、判断系统稳定性和分析系统的动态特性;二、预习要点1、 系统的典型响应有哪些?2、 如何判断系统稳定性?3、 系统的动态性能指标有哪些?三、实验方法 (一) 四种典型响应1、 阶跃响应:阶跃响应常用格式: 1、;其中可以为连续系统,也可为离散系统。 2、;表示时间范围0-Tn。 3、;表示时间范围向量T指定。 4、;可详细了解某段时间的输入、输出情况。2、 脉冲响应:脉冲函数在数学上的精确定义: 其拉氏变换为:所以脉冲响应即为传函的反拉氏变换。脉冲响应函数常用格式: ; (二) 分析系统稳定性
2、 有以下三种方法:1、 利用pzmap绘制连续系统的零极点图;2、 利用tf2zp求出系统零极点;3、 利用roots求分母多项式的根来确定系统的极点(三) 系统的动态特性分析Matlab提供了求取连续系统的单位阶跃响应函数step、单位脉冲响应函数impulse、零输入响应函数initial以及任意输入下的仿真函数lsim.四、实验内容(一) 稳定性1 系统传函为,试判断其稳定性2 用Matlab求出的极点。%Matlab计算程序num=3 2 5 4 6;den=1 3 4 2 7 2;G=tf(num,den);pzmap(G);p=roots(den)运行结果:p = + - + -
3、图1-1 零极点分布图由计算结果可知,该系统的2个极点具有正实部,故系统不稳定。%求取极点num=1 2 2;den=1 7 3 5 2;p=roots(den)运行结果:p = + - 故的极点s1= , s2= + , s3= - , s4= (二)阶跃响应1. 二阶系统1)键入程序,观察并记录单位阶跃响应曲线2)计算系统的闭环根、阻尼比、无阻尼振荡频率,并记录3)记录实际测取的峰值大小、峰值时间及过渡过程时间,并填表:由图1-3及其相关理论知识可填下表:=实际值理论值峰值Cmax峰值时间tp过渡时间ts4)修改参数,分别实现和的响应曲线,并记录5)修改参数,分别写出程序实现和的响应曲线,
4、并记录%单位阶跃响应曲线num=10;den=1 2 10;step(num,den); title(Step Response of G(s)=10/(s2+2s+10);图1-2 二阶系统单位阶跃响应曲线 %计算系统的闭环根、阻尼比、无阻尼振荡频率 num=10;den=1 2 10;G=tf(num,den); wn,z,p=damp(G)运行结果:wn = z = p = + - 由上面的计算结果得系统的闭环根s= -13i ,阻尼比、无阻尼振荡频率图1-3 单位阶跃响应曲线(附峰值等参数)第4)题:%kosi=1阶跃响应曲线wn=sqrt(10);kosi=1;G=tf(wn*wn,
5、1 2*kosi*wn wn*wn);step(G);title(Step Response of kosi=1);%kosi=2的阶跃响应曲线wn=sqrt(10);kosi=2;G=tf(wn*wn,1 2*kosi*wn wn*wn);step(G);title(Step Response of kosi=2);当wn不变时,由和的响应曲线可归纳:平稳性,由曲线看出,阻尼系数 ,超调量,响应的振荡,平稳性好;反之, ,振荡,平稳性差。快速性,ts,快速性差;反之, , ts ;但过小,系统响应的起始速度较快,但振荡强烈,影响系统稳定。第5)题:%wn1=的阶跃响应曲线w0=sqrt(10
6、);kosi=1/sqrt(10);wn1=*w0;G=tf(wn1*wn1,1 2*kosi*wn1 wn1*wn1);step(G);title(Step Response of wn1=);图1-6 wn1=的阶跃响应曲线%wn2=2w0的阶跃响应曲线w0=sqrt(10);kosi=1/sqrt(10);wn2=2*w0;G=tf(wn2*wn2,1 2*kosi*wn2 wn2*wn2);step(G);title(Step Response of wn2=2w0);图1-7 wn2=2w0的阶跃响应曲线由图1-6和图1-7得:当一定时,n,ts,所以当一定时,n越大,快速性越好。2
7、. 作出以下系统的阶跃响应,并与原系统响应曲线进行比较,作出相应的实验分析结果(1),有系统零点的情况(2),分子、分母多项式阶数相等(3),分子多项式零次项为零(4),原响应的微分,微分系数为1/10%各系统阶跃响应曲线比较G0=tf(10,1 2 10);G1=tf(2 10,1 2 10);G2=tf(1 10,1 2 10);G3=tf(1 0,1 2 10);G4=tf(1 0 ,1 2 10);step(G0,G1,G2,G3,G4); grid on;title(实验 Step Response 曲线比较);图1-8 各系统的阶跃响应曲线比较3. 单位阶跃响应: 求该系统单位阶跃
8、响应曲线,并在所得图形上加网格线和标题%单位阶跃响应G=tf(25,1 4 25);step(G);grid on;title(实验 Step Response of G(s)=25/(s2+4s+25);图1-9 阶跃响应曲线(三)系统动态特性分析用Matlab求二阶系统和的峰值时间上升时间调整时间超调量。%G1阶跃响应G1=tf(120,1 12 120);step(G1);grid on;title( Step Response of G1(s)=120/(s2+12s+120);图1-10 阶跃响应曲线由图知=,=,= ,超调量=% G2单位阶跃响应G2=tf(,1 );step(G2
9、);grid on;title( Step Response of G2(s)=(s2+);图1-11 阶跃响应曲线实验二 MATLAB及仿真实验(控制系统的根轨迹分析)一 实验目的1利用计算机完成控制系统的根轨迹作图2了解控制系统根轨迹图的一般规律3利用根轨迹图进行系统分析二 预习要点1. 预习什么是系统根轨迹?2. 闭环系统根轨迹绘制规则。三 实验方法(一) 方法:当系统中的开环增益k从0到变化时,闭环特征方程的根在复平面上的一组曲线为根轨迹。设系统的开环传函为:,则系统的闭环特征方程为:根轨迹即是描述上面方程的根,随k变化在复平面的分布。(二) MATLAB画根轨迹的函数常用格式:利用M
10、atlab绘制控制系统的根轨迹主要用pzmap,rlocus,rlocfind,sgrid函数。1、零极点图绘制 p,z=pzmap(a,b,c,d):返回状态空间描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。 p,z=pzmap(num,den):返回传递函数描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。 pzmap(a,b,c,d)或pzmap(num,den):不带输出参数项,则直接在s复平面上绘制出系统对应的零极点位置,极点用表示,零点用o表示。 pzmap(p,z):根据系统已知的零极点列向量或行向量直接在s复平面上绘制出对应的零极点位置,极点用表示,零点用o
11、表示。2、根轨迹图绘制 rlocus(a,b,c,d)或者rlocus(num,den):根据SISO开环系统的状态空间描述模型和传递函数模型,直接在屏幕上绘制出系统的根轨迹图。开环增益的值从零到无穷大变化。 rlocus(a,b,c,d,k)或rlocus(num,den,k): 通过指定开环增益k的变化范围来绘制系统的根轨迹图。 r=rlocus(num,den,k) 或者r,k=rlocus(num,den) :不在屏幕上直接绘出系统的根轨迹图,而根据开环增益变化矢量k ,返回闭环系统特征方程1k*num(s)/den(s)=0的根r,它有length(k)行,length(den)-1
12、列,每行对应某个k值时的所有闭环极点。或者同时返回k与r。 若给出传递函数描述系统的分子项num为负,则利用rlocus函数绘制的是系统的零度根轨迹。(正反馈系统或非最小相位系统)3、rlocfind()函数 k,p=rlocfind(a,b,c,d)或者k,p=rlocfind(num,den)它要求在屏幕上先已经绘制好有关的根轨迹图。然后,此命令将产生一个光标以用来选择希望的闭环极点。命令执行结果:k为对应选择点处根轨迹开环增益;p为此点处的系统闭环特征根。 不带输出参数项k,p时,同样可以执行,只是此时只将k的值返回到缺省变量ans中。4、sgrid()函数 sgrid:在现存的屏幕根轨
13、迹或零极点图上绘制出自然振荡频率wn、阻尼比矢量z对应的格线。 sgrid(new):是先清屏,再画格线。 sgrid(z,wn):则绘制由用户指定的阻尼比矢量z、自然振荡频率wn的格线。四 实验内容1 要求:二、 记录根轨迹的起点、终点与根轨迹的条数;三、 确定根轨迹的分离点与相应的根轨迹增益;四、 确定临界稳定时的根轨迹增益%Matlab计算程序z=;p=0 -1 -2;k=1;G=zpk(z,p,k);figure(1);pzmap(G)figure(2);rlocus(G)title(实验所作曲线);(a)由图2-2知,起点分别为0,-1,-2,终点为无穷远处,共三条根轨迹.(b) 结
14、合图2-3和图2-5得分离点d=,相应的根轨迹增益k=. (c) 结合图2-3和图2-4得临界稳定时的根轨迹增益=图2-1 零、极点分布图图2-2 根轨迹图图2-3 根轨迹图(2)%求临界稳定时的根轨迹增益Kglz=;p=0 -1 -2;k=1;G=zpk(z,p,k);rlocus(G)title(实验 临界稳定时的根轨迹增益Kgl);k,p=rlocfind(G)运行结果:Select a point in the graphics windowselected_point = + k = p = + - 图2-4 根轨迹图(3)%求取根轨迹的分离点与相应的根轨迹增益z=;p=0 -1 -2;k=1;G=zpk(z,p,k);rlocus(G)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1