文档介绍:CH4、控制系统的分析方法
早期的控制系统分析过程复杂而耗时,如想得到一个系统的冲激响应曲线,首先需要编写一个求解微分方程的子程序,然后将已经获得的系统模型输入计算机,通过计算机的运算获得冲激响应的响应数据,然后再编写一个绘图程序,将数据绘制成可供工程分析的响应曲线。
MATLAB控制系统工具箱和SIMULINK辅助环境的出现,给控制系统分析与设计带来很多方便。
控制系统的分析包括系统的稳定性分析、时域分析、频域分析及根轨迹分析。
11/10/2017
1
第一节控制系统的稳定性分析
系统特征方程的一般形式为
对于连续时间系统,如果闭环极点全部在S平面左半平面,
则系统是稳定的;否则系统是不稳定的。
对于离散时间系统,如果系统全部极点都位于Z平面的单位圆内,
则系统是稳定的。
若连续时间系统的全部零点都位于S左半平面;或若离散时间系统的全部零点都位于Z平面单位圆内,则系统是最小相位系统。
一、系统稳定及最小相位系统判据
11/10/2017
2
2、直接判别
MATLAB提供了直接求取系统所有零极点的函数,因此可以直接根据零极点的分布情况对系统的稳定性及是否为最小相位系统进行判断。
二、系统稳定及最小相位系统的判别方法
1、间接判别(工程方法)
劳斯判据:劳斯表中第一列各值严格为正,则系统稳定,如果劳斯表第一列中出现小于零的数值,系统不稳定。
胡尔维茨判据:当且仅当由系统分母多项式构成的胡尔维茨矩阵为正定矩阵时,系统稳定。即系统稳定的充要条件:
11/10/2017
3
已知某系统的模型如右所示:
要求判断系统的稳定性及系统是否为最小相位系统。
系统模型如下所示,判断系统的稳定性,以及系统是否为最小相位系统。
11/10/2017
4
ii=find(条件式)
用来求取满足条件的向量的下标向量,以列向量表示。
例如 (p>0),其含义就是找出极点向量p中满足实部的值大于0的所有元素下标,并将结果返回到ii向量中去。这样如果找到了实部大于0的极点,则会将该极点的序号返回到ii下。如果最终的结果里ii的元素个数大于0,则认为找到了不稳定极点,因而给出系统不稳定的提示,若产生的ii向量的元素个数为0,则认为没有找到不稳定的极点,因而得出系统稳定的结论。
pzmap(p,z)
根据系统已知的零极点p和z绘制出系统的零极点图
11/10/2017
5
第二节控制系统的时域分析
一、时域分析的一般方法
系统仿真实质上就是对系统模型的求解。对控制系统来说,一般模型可转化成某个微分方程或差分方程表示。一个动态系统的性能常用典型输入作用下的响应来描述。响应是指零初始值条件下某种典型的输入函数作用下对象的响应,因此在仿真过程中,一般以某种数值算法从初态出发,逐步计算系统的响应,最后绘制出系统的响应曲线,这样可分析系统的性能。
控制系统最常用的时域分析方法是,当输入信号为单位阶跃和单位冲激函数时,求出系统的输出响应,分别称为单位阶跃响应和单位冲激响应。
11/10/2017
6
对一阶系统
微分方程:
闭环传递函数:
参数:时间常数T
性能指标:
调节时间ts
超调量σ%
11/10/2017
7
对二阶系统
微分方程:
闭环传递函数: 其中
参数:阻尼比ζ
无阻尼自然振荡频率ωn
性能指标:上升时间tr;峰值时间tp;调节时间ts;
超调量σ%
在MATLAB中提供了求取单位阶跃和单位冲激输入下系统响应的函数。
求取系统单位阶跃响应:step()
求取系统的冲激响应:impulse()
11/10/2017
8
1、step()函数的用法
y=step(num,den,t):其中num和den分别为系统传递函数描述中的分子和分母多项式系数,t为选定的仿真时间向量,一般可以由t=0:step:end等步长地产生出来。该函数返回值y为系统在仿真时刻各个输出所组成的矩阵。
[y,x,t]=step(num,den):此时时间向量t由系统模型的特性自动生成, 状态变量x返回为空矩阵。
[y,x,t]=step(A,B,C,D,iu):其中A,B,C,D为系统的状态空间描述矩阵,iu用来指明输入变量的序号。x为系统返回的状态轨迹。
11/10/2017
9
如果对具体的响应值不感兴趣,而只想绘制系统的阶跃响应曲线,可调用以下的格式:
step(num,den);step(num,den,t);step(A,B,C,D,iu,t);step(A,B,C,D,iu);
线性系统的稳态值可以通过函数dcgain()来求取,其调用格式为:dc=dcg