自动控制原理实验报告--控制系统的根轨迹和频域特性分析

  • 格式:docx
  • 大小:96.19 KB
  • 文档页数:4

本科实验报告
课程名称:自动控制原理
实验项目:控制系统的根轨迹和频域特性分析实验地点:多学科楼机房
专业班级:学号:
学生姓名:
指导教师:
2012 年5 月15 日
一、实验目的和要求:
1.学会利用MATLAB 绘制系统的根轨迹,并对系统进行分析; 2.学会利用MATLAB 对系统进行频域特性分析。

二、实验内容和原理:
1.基于MATLAB 的控制系统根轨迹分析 1)利用MATLAB 绘制系统的根轨迹
利用rlocus( )函数可绘制出当根轨迹增益k 由0至+∝变化时,闭环系统的特征根在s 平面变化的轨迹,该函数的调用格式为
[r,k]=rlocus(num,den) 或 [r,k]=rlocus(num,den,k)
其中,返回值r 为系统的闭环极点,k 为相应的增益。

rlocus( )函数既适用于连续系统,也适用于离散系统。

rlocus(num,den)绘制系统根轨迹时,增益k 是自动选取的,rlocus(num,den, k)可利用指定的增益k 来绘制系统的根轨迹。

在不带输出变量引用函数时,rolcus( )可在当前图形窗口中绘制出系统的根轨迹图。

当带有输出变量引用函数时,可得到根轨迹的位置列向量r 及相应的增益k 列向量,再利用plot(r,‘x’)可绘制出根轨迹。

2)利用MATLAB 获得系统的根轨迹增益 在系统分析中,常常希望确定根轨迹上某一点处的增益值k ,这时可利用MATLAB 中的rlocfind( )函数,在使用此函数前要首先得到系统的根轨迹,然后再执行如下命令
[k,poles]=rlocfind(num,den) 或 [k,poles]=rlocfind(num,den,p)
其中,num 和den 分别为系统开环传递函数的分子和分母多项式的系数按降幂排列构成的系数向量;poles 为所求系统的闭环极点;k 为相应的根轨迹增益;p 为系统给定的闭环极点。

例3-1 已知某反馈系统的开环传递函数为
)
2)(1()()(++=
s s s k
s H s G
试绘制该系统根轨迹,并利用根轨迹分析系统稳定的k 值范围。

例3-2 已知某正反馈系统的开环传递函数如例3-1所示。

试绘制系统根轨迹,并计算根轨迹上点-2.3±j2.02处的根轨迹增益和此时系统的稳定性。

2. 基于MATLAB 的控制系统频域分析 1)利用MATLAB 绘制系统的Bode 图
MATLAB 提供的函数bode( )可以绘制系统Bode 图,该函数的调用格式为
[mag,phase,w]=bode(num,den)
式中,num 和den 分别为系统开环传递函数的分子和分母多项式的系数按降幂排列构成的系数行向量;w 为频率点构成的向量;mag 为系统的幅值;phase 为系统的相位。

频率向量可由logspace( )函数来构成。

此函数的调用格式为
ω=logspace(m,n,npts)
此命令可生成一个以10为底的指数向量(10m ~10n ),点数由npts 任意选定。

当bode( )函数带输出变量引用函数时,可得系统Bode 图相应的幅值mag ,相位phase 及频率点ω向量,有了这些数据就可利用下面的MATLAB 命令绘制系统的Bode 图。

>>subplot(2,1,1);semilogx(w,20*log10(mag));subplot(2,1,2);semilogx(w,phase)
如果只想绘制出系统的Bode 图,而对获得幅值和相位的具体数值并不感兴趣,则可以采用如下简单的调用格式
bode(num,den)
例3-3 已知二阶系统的开环传递函数为
2
n
n 2
2n
2)()(ωζωω++=s s s H s G 绘制出当ωn =3和ζ=0.3时系统的Bode 图。

2)利用MATLAB 绘制系统的Nyquist 图
MATLAB 提供的函数nyquist( )可以绘制系统Nyquist 图,该函数的调用格式为
[Re,Im,w]=nyquist(num,den)
其中,num 和den 分别为系统开环传递函数的分子和分母多项式的系数按降幂排列构成的系数行向量;Re,Im 和w 分别为频率特性的实部向量、虚部向量和对应的频率向量。

有了这些值就可利用命令plot(Re,Im)来直接绘出系统的奈奎斯特图。

当然,Nyquist 图也可采用与Bode 图类似的简单命令来直接绘制。

例3-4 已知系统的开环传递函数为5
.025.0)()(2
3+++=s s s s H s G 绘制Nyquist 图,并判断系统的稳定性。

三、主要仪器设备:
安装Windows 系统和MATLAB 软件的计算机一台。

四、实验数据记录和处理(实验程序):
(1)例3-1程序:
>>num=1;den=conv([1,0],conv([1,1],[1,2])); >>rlocus(num,den);[k,poles]=rlocfind(num,den)
执行以上命令,并移动鼠标到根轨迹与虚轴的交点处单击鼠标左键后可得如图3-1所示的根轨迹和如下结果: Select a point in the graphics window selected_point = 0.0000 - 1.4142i k =
6.0000 poles =
-3.0000
0.0000 +1.4142i
0.0000 - 1.4142i
由此可见根轨迹与虚轴交点处的增益k =6,这说明当k <6时系统稳定,当k >6时,系统不稳定;利用rlocfind( )函数也可找出根轨迹从实轴上的分离点处的增益k =0.38, 这说明当0<k <0.38时,系统为单调衰减稳定,当0.38<k <6时系统为振荡衰减稳定的。

(2)例3-2程序:
>>num=1;den=conv([1,0],conv([1,1],[1,2]));
>>rlocus(-num,den);[k,poles]=rlocfind(-num,den,-2.3+2.02j) 执行以上命令可得如下结果和如图3-2所示的根轨迹。

k =
15.0166 poles =
-2.3011 + 2.0195i -2.3011 - 2.0195i 1.6021
由此可见,点-2.3 j2.02该点处的增益为15.0166,于正实轴上的1.6021此该系统在所有的正值增益k (3)例3-3程序:
>>wn=3;zeta=0.3; w=logspace(-1,2); >>num=wn.^2;den=[1 2*zeta*wn wn.^2]; >>bode(num,den,w);grid; 执行后得如图3-4所示Bode 图。

在曲线窗口中,通过利用鼠标单击曲线上任意一点,可以获得此点所对应的系统在该点的频率与幅值或频率与相位等有关信息。

(4)例3-4程序:
>>num=0.5;den=[1 2 1 0.5]; nyquist(num,den) 执行后可得如图3-5所示的曲线,由于Nyquist
曲线没有包围(-1,j0)点,且P =0,所以由G (s)H (s)
构成的单位负反馈闭环系统稳定。

在Nyquist 曲线窗口中,也可利用鼠标通过单击 曲线上任意一点,获得此点所对应的系统的开环
频率特性,在该点的实部和虚部及其频率的值,如图3-4所示。

五、讨论、心得:
通过本实验,让我进一步熟练了对matlab 的使用,对控制系统的根轨迹和频域特性分析有了一定的认识,实验做得比较慢,不过结果还是很满意,希望以后在实际中能多用到自控的知识。