资源描述:
《第3章 控制系统的数学模型及其转换ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章:控制系统的数学模型及其转换在线性系统理论中,一般常用的数学模型形式有:传递函数模型(系统的外部模型)状态方程模型(系统的内部模型)零极点增益模型(传递函数模型的一种)这些模型之间都有着内在的联系,可以相互进行转换。按系统性能分:线性系统和非线性系统;连续系统和离散系统;定常系统和时变系统;确定系统和不确定系统。1、线性连续系统:用线性微分方程式来描述,如果微分方程的系数为常数,则为定常系统;如果系数随时间而变化,则为时变系统。今后我们所讨论的系统主要以线性定常连续系统为主。2、线性定常离散系统:离散系统指系统的某处或多处的信号为脉冲序列或数码形式。这类系统用差分方
2、程来描述。3、非线性系统:系统中有一个元部件的输入输出特性为非线性的系统。下面来分析各种数学模型的MATLAB表示形式3.1系统的类型对线性定常系统,式中s的系数均为常数,且a1不等于零,这时系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num和den表示。num=[b1,b2,…,bm,bm+1]den=[a1,a2,…,an,an+1]注意:它们都是按s的降幂进行排列的。3.2传递函数描述一、连续系统的传递函数模型连续系统的传递函数如下:(1)递函数的Maltab模型num=[b1,b2,…,bm,bm+1]den=[a1
3、,a2,…,an,an+1]可用命令tf()建立一个传递函数模型,或将零极点增益模型或状态空间模型转变为传递函数模型。(2)传递函数模型命令tf()调用格式sys=tf(num,den)sys=tf(mum,den,Ts)%用于生成离散传体函数,Ts为采样时间。sys=tf(M)%用于生成静态增益s传递函数,sys=tf(‘s’)%用于生成拉普拉斯变量s的有理传递函数tfsys=tf(sys)sys=tf(num,den,’Property1’,Value1,……,’PropertyN’,ValueN):用于生成传递函数模型,同时定义传递函数的属性值。传递函数的属性值可
4、用get(sys)命令来查看例3.1(3)多输入多输出系统(MIMO)传递函数模型对多输入多输出系统,分子、分母为元胞类型向量。元胞数组:元胞数组的基本元素是元胞,元胞可以存放任何类型数据,而且同一个元胞数组的各元胞(cell)中的内容可以不同。元胞数组的定义符是{},例:A={[01],3;‘thisisbook’,[25]}。元胞数组元素内容的访问用{},如:A{1,1},结果得到[01],或者使用单下标,如A{2},结果是“thisisbook”。例:给定一个多入多出系统:试生成其仿真模型解:命令如下:num={11;2[12]};den={[11],[12];1,
5、[12]};sys=tf(num,den)注意:元素sys(i,j)表示输入j对输出i的传递函数。(4)传递函数模型生成方法(二)利用拉普拉斯变量因子“s”直接生成传递函数模型。例:已知传递函数模型如下,利用拉普拉斯变量因子“s”直接生成传递函数模型。解:命令如下:s=tf('s');%定义拉普拉斯变量ssys=(s+1)/(s*(s^2+s+2))零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。在MATLAB中零极点增益模型用[z,p,K]向量组表示。生成零极点增益模型的matl
6、ab函数为zpk():z=[z1,z2,…,zm]p=[p1,p2,...,pn]K=[k]二、零极点增益模型K为系统增益,zi为零点,pj为极点(1)零极点增益模型zpk函数调用格式sys=zpk(z,p,k)%生成零极点增益模型sys=zpk(z,p,k,Ts)sys=zpk(M)%生成静态增益s传统函数sys=zpk(s)%生成拉普拉斯因子szsys=zpk(sys)%将传递函数、状态空间模型转换为零极点增益模型1)例:建立下述传递函数模型的matlab表示》num=[12,24,0,20];den=[24622];sys=tf(num,den)借助多项式乘法函数c
7、onv来处理:num=4*conv([1,2],conv([1,6,6],[1,6,6]));den=conv([1,0],conv([1,1],conv([1,1],conv([1,1],[1,3,2,5]))));sys=tf(num,den)2)3)零极点增益模型:4)零极点增益模型:z=[];p=[-1,-2,-3-4j,-3+4j];k=5;sys=zpk(z,p,k)z=[-3,0];p=[-1,50,-10];k=1;sys=zpk(z,p,k)例题3.5matlab表示给出零极点增益模型解:命令如下z={[];