控制系统实验指导(DOC)

  • 格式:doc
  • 大小:764.50 KB
  • 文档页数:18

《控制工程基础》实验报告

班 级:

学 号:

姓 名:

指导老师:

实验一 控制系统的阶跃响应

实验时间: 学 时: 2

一、实验目的

通过阶跃响应曲线来研究二阶系统的特征参数阻尼比ξ和无阻尼自然振荡频率Wn对系统动态性能的影响。掌握时域的分析方法。

二、实验准备

MATLAB中控制系统数学模型的表示方法

⑴ 多项式模型

对线性定常连续系统的传递函数G(s)的表示:

在MATLAB中,此系统可以由其分子和分母多项式的系数(按s的降幂排列)所构成的两个向量唯一地确定下来,即: num=[bm,bm-1,…,b0],den=[am,am-1,…,a0]

另外在MATLAB中,可以用函数TF可以生成一个系统多项式传递函数模型,其调用格式为:sys=tf(num,den)

例如:若已知系统的传递函数为:

在MATLAB命令环境中输入:num=[6 12 6 10];

den=[1 2 3 1 1];

sys=tf(num,den) 则显示:

Transfer function:

6 s^3 + 12 s^2 + 6 s + 10

---------------------------

s^4 + 2 s^3 + 3 s^2 + s + 1

若再输入: printsys(num,den) 则有显示:

num/den =

6 s^3 + 12 s^2 + 6 s + 10

----------------------------

s^4 + 2 s^3 + 3 s^2 + s + 1

说明:

①num,den语句后的分号“;”是MATLAB语句的换行号(相当于Enter);

②函数printsys()用于构造并显示传递函数G(s)的多项式模型。显示变量num/den为通用的的输出显示格式,与输入变量名称无关。

③所给传递函数若为因式相乘形式,则需要利用MATLAB中的多项式乘法运算函数conv(),其调用方式为:c= conv(多项式1,多项式2),c为两多项式之积。

例如:若给定系统的传递函数为:G(s)=18(s+1)/[(s+5)(s+25)(s+0.4)],则分子分母多项式可分别表示为:num=18*[1,1]; den=conv(conv([1 5],[1 25]),[1 0.4]);

其中函数conv()用于计算多项式乘积,输出结果为多项式系统的降幂排列。 ④函数[num,den]=feedback(num1,den1,num2,den2,X)用于计算一般反馈系统的闭环传递函数。其中前向传递函数为G(s)=num1/den1,反馈传递函数为H(s)=num2/den2。右变量为G(s)和H(s)的参数,左变量返回系统的闭环参数,X=1为正反馈,X=-1为负反馈,缺省时作负反馈计。

⑵ 零极点模型(Zero-Pole,简称ZP)

线性定常连续系统的传递函数G(s)一般可以表示为零点、极点的形式:

G(s)=k*[(s-z1)(s-z2)…(s-zm)]/[(s-p1)(s-p2)…(s-pn)]

由于m个零点,n个极点及增益k可以唯一地确定一个系统,所以可以用:

z=[z1,z2,…,zm];p=[p1,p2,…,pn];k=k0来表示零极点模型。

注意:在MATLAB中,

①多项式模型转换为零极点模型的调用命令为:[z,p,k]=tf2zp(num,den);

②零极点模型转换为多项式模型的调用命令为:[num,den]=zp2tf(z,p,k);

③如果已知二阶系统的两个参数——自然振荡频率ωn和无阻尼系数ξ,则可以通过函数ORD2()求出此系统传递函数模型和状态方程模型,其分别调用格式为:

[A,B,C,D]=ord2(ωn,ξ),调用结果返回连续二阶系统状态方程的系数矩阵A,B,C,D的表达式;而[NUM,DEN]=ord2(ωn,ξ),调用结果返回连续二阶系统用分子和分母多项式表示的传递函数。

注:状态方程是现代控制理论描述系统模型的一种方法。状态方程模型可以表示为:

=Ax+Bu

y=Cx+Du,其中x为状态向量,u为输入向量,y为输出向量,A、B、C、D为系统状态方程系数矩阵。在MATLAB中,可以用函数SS建立一个系统状态方程模型,调用格式为:SYS=ss(A,B,C,D)

⒋ MATLAB中求控制系统的阶跃响应的函数命令格式

函数格式1:step(num,den)

说明1:给定num和den,求系统的阶跃响应。时间向量t的范围自动设定。

函数格式2:step(num,den,t)

说明2:同说明2,其中时间向量t的范围可以由人工设定(如:t=0:0.1:10)。

函数格式3:[y,x]= step(num,den)

说明3:返回变量格式。计算所得的输出y,状态x及时间向量t返回至MATLAB命令窗口,不作图。

上述更详细的命令说明,可在MATLAB窗口键入“help step”在线查阅。

注意:若给定特征多项式系数向量,可以用命令调用格式damp(den)来计算系统的闭环根、阻尼比ξ和无阻尼自然振荡频率Wn。

三、实验内容及步骤

1、 已知系统开环传递函数为G(s)H(s)=100/(s^2+2*zta*10+100),zta取0,0.25,0.5,0.75,1,1.25试利用MATLAB分别画出其2单位的阶跃响应并保存。

图像:

2、 zta取0.25,wn取10,30,50试利用MATLAB分别画出其2单位的阶跃响应并保存。

图像:

3.比较上面的结果。

1. 2阶系统单位阶跃响应的过渡过程随着阻尼比ξ的减小,其振荡特性表现得愈加强烈,单仍未衰减振荡。当ξ=0是,达到等幅振荡;当ξ=1和ξ>1时,二阶系统的过渡过程具有单调上升的特性。从过渡过程的持续时间来看,在无振荡单调上升曲线中,以ξ=1时的过渡过程时间最短。在欠阻尼系统中,当ξ=0.4~0.5时,不仅其过渡过程时间比ξ=1时的更短,而且振荡不太严重。如图1所示,因此可以通过改变阻尼比,来实现对最大超调量Mp调整。实际具体设计控制系统是是根据对最大超调量Mp的要求来确定阻尼比的。

2. 在系统阻尼比相同的情况下,改变不同的无阻尼固有频率可以得到图2曲线,分析可知,增大Wn可以迅速减少系统的调整时间。因此调整时间ts主要由系统的Wn来确定。改变Wn对系统的振动特性指标Mp是没有影响的。

3.要使二阶系统具有满意的动态性能指标,必须选择合适的阻尼比ξ和无阻尼固有频率Wn。提高Wn,可以提高系统的响应速度,减少上升时间tr,峰值时间tp和调整时间ts;增大ξ,可以减弱系统的振荡性能,降低超调量Mp,但增大上升时间tr和峰值时间tp。

4. 系统的响应速度和振荡性能之间存在矛盾,因此要合适选择ξ和Wn。

实验二 控制系统的频率特性分析

实验时间: 学 时: 2

一、实验目的

掌握控制系统频率特性的分析方法。会用Bode图,Nyquist图。

二、实验准备

MATLAB控制工具箱中可用于系统频率特性曲线绘制和分析的函数有:

bode(sys):计算并在当前窗口绘Bode图,频率范围由MATLAB系统自动确定。

注:在MATLAB中,此系统可以由其分子和分母多项式的系数(按s的降幂排列)所构成的两个向量唯一地确定下来,即: num=[bm,bm-1,…,b0],den=[am,am-1,…,a0]

可以用函数TF可以生成一个系统多项式传递函数模型,其调用格式为:sys=tf(num,den)

bode(sys,ω):显式定义绘图的频率范围,在定义频率范围绘制系统Bode图。ω为对数等分,由对数等分函数logspace(d1,d2,n)完成,命令中d1、d2为之间的变量范围,n为等分点,例如ω=logspace(-1,1,100)。ω有两种定义方式,分别为定义频率范围 [ωmin,ωmax]和定义频率点[ω1,ω2,…,ωn]。

bode(sys1,sys2,…,sysn):同时在一个窗口绘制多个系统的频率特性曲线。

(注意:这里多个系统须具有相同的输入、输出数;可同时含连续时间和离散时间系统)。

bode(sys1,sys2,…,sysn,ω):显式定义ω范围,具体同上。

[mag,phase,ω]=bode(sys):不显示图形,仅将Bode图数据(幅值、相位、相应的频率)放在mag,phase,ω三个变量中。

类似Bode图绘制,有Nyquist图和Nichols图绘制的函数如下:

nyquist(sys):在当前窗口绘Nyquist图。

nyquist(sys,ω):显式定义ω,在定义频率范围绘制系统Nyquist图。

nyquist(sys1,sys2,…,sysn):同时在一个窗口绘制多个系统的Nyquist轨线

[re,im,ω]=nyquist(sys):不显示图形,仅将Nyquist图数据(实p、虚p、相应的频率)放在re,im,ω三个变量中。

nichols(sys):在当前窗口绘Nichols轨线。

nichols(sys,ω):显式定义ω,在定义频率范围绘制系统Nichols图。

nichols(sys1,sys2,…,sysn):同时在一个窗口绘制多个系统的Nichols轨线。

[mag,phase,ω]=nichols(sys):不显示图形,仅将Nichols轨线数据(幅值、相位、相应的频率)放在mag,phase,ω三个变量中。

[Gm,Pm,Wcg,Wcp]=margin(sys):计算系统的增益、相位裕量,幅值剪切频率和相位剪切频率。Gm对应于计算系统的增益裕量,Pm对应于相位裕量,Wcg为幅值剪切频率, Wcp为相位剪切频率。

margin(sys):在当前窗口绘制系统Bode图,并标出相位裕量,幅值裕量,幅值剪切频率和相位剪切频率。

ngrid:在Nichols曲线图上加等M网线。

另外,还有部分作图辅助函数:

logspace(d1,d2,n):将某个变量ω作对数等分,命令中d1、d2为之间的变量范围,n为等分点。

Semilogx(x,y):半对数绘图命令,函数格式同以前学过的plot()。