控制系统数学模型及其转换课件.ppt

上传人:rrsccc 文档编号:9320163 上传时间:2021-02-18 格式:PPT 页数:77 大小:1.55MB
返回 下载 相关 举报
控制系统数学模型及其转换课件.ppt_第1页
第1页 / 共77页
控制系统数学模型及其转换课件.ppt_第2页
第2页 / 共77页
控制系统数学模型及其转换课件.ppt_第3页
第3页 / 共77页
控制系统数学模型及其转换课件.ppt_第4页
第4页 / 共77页
控制系统数学模型及其转换课件.ppt_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《控制系统数学模型及其转换课件.ppt》由会员分享,可在线阅读,更多相关《控制系统数学模型及其转换课件.ppt(77页珍藏版)》请在三一文库上搜索。

1、控制系统数学模型及其转换,返回总目录,第3章控制系统数学模型及其转换,控制系统数学模型及其转换,仿真是对数学模型进行的试验,建模是仿真的基础,系统模型化技术是系统仿真的核心。 本章首先给出控制系统数学模型的分类,介绍控制系统常用的数学模型的描述形式,最后给出各种数学模型,如微分方程、传递函数、状态空间等之间转换和MATLAB实现。,控制系统数学模型及其转换,一.连续和离散系统,系 统 类 型,根据系统变量是时间连续函数还是时间离散函数,系统分为连续系统和离散系统。 (1) 连续系统系统输入、输出信号都是连续时间信号。(一般L、R、C电路) (2) 离散系统系统输入、输出信号都是离散时间信号。(

2、数字计算机) (3) 混合系统系统输入、输出信号包含连续信号和离散信号。(计算机控制系统 ) 连续时间系统的数学模型用微分方程描述。离散时间系统的数学模型用差分方程描述。,控制系统数学模型及其转换,二. 线性和非线性系统,根据输入输出关系是否同时满足齐次性和叠加性,系统分为线性和非线性。假设系统在没有外界信号作用之前处于静止状态,在输入信号u1和u2或a1u1和 a2u2作用下,有 式中, 为任意实数, 为输入输出之间函数关系。那么,该系统称为线性系统,否则是非线性系统。,系 统 类 型,控制系统数学模型及其转换,系 统 类 型,线性时变系统:,非线性定常系统:,线性定常系统:,根据模型参数是

3、否随时间变化,线性系统又可细分为线性定常系统和线性时变系统。参数不随时间变化的系统,称为时不变系统或定常系统,否则称为时变系统。,控制系统数学模型及其转换,三.确定和随机系统,系 统 类 型,根据系统输入、输出和内部状态呈现的规律,系统分为确定性系统与随机性系统。输入输出之间函数关系能够用确定性模型描述的系统,称为确定性系统,否则称为随机系统(或不确定性系统)。例如,式中,,分别为状态变量和输出变量,,为噪声。,控制系统数学模型及其转换,控制系统常用数学模型,一. 连续系统,式中,,分别为系统输入量、输出量,n为系统的阶次,,及各阶导数的的初始值为,为参数,均为实常数。,已知输出变量,1微分方

4、程 一个连续系统可以表示成高阶微分方程,即,控制系统数学模型及其转换,控制系统常用数学模型,稍加整理,并记,2传递函数 若系统的初始条件为零,那么对微分方程两边取拉普拉斯变换后可得,称为系统的传递函数。,控制系统数学模型及其转换,控制系统常用数学模型,=AX+BU 状态方程 Y=CX+DU 输出方程,系统的动态特性是用由状态变量构成的一阶微分方程组来描述。状态空间表达式包括状态方程和输出方程。线性定常系统的状态空间描述为,3状态空间描述,r维输入向量,n维状态向量,m维输出向量,控制系统数学模型及其转换,控制系统常用数学模型,维输出矩阵,维直接传递矩阵,维系统矩阵,维输入矩阵,控制系统数学模型

5、及其转换,控制系统常用数学模型,对于线性时变系统,系数矩阵A,B,C,D,均与时间t有关,状态空间描述为,控制系统数学模型及其转换,控制系统常用数学模型,1差分方程 设系统差分方程为,引进后移算子,可得,二. 离散系统,控制系统数学模型及其转换,控制系统常用数学模型,2离散传递函数(Z传函) 假设系统的初始条件为零,即,则得,系统传递函数,为,在初始条件为零时,,与,等价。,控制系统数学模型及其转换,控制系统常用数学模型,3. 离散状态空间描述 多变量离散状态空间表达式,控制系统数学模型及其转换,控制系统常用数学模型,三. MATLAB模型表示,MATLAB的控制系统工具箱提供传递函数模型、零

6、极点增益模型、状态空间模型的生成函数。,线性模型生成函数,控制系统数学模型及其转换,控制系统常用数学模型,1. 传递函数模型(transfer function model: TF) 已知传递函数模型,由分子和分母多项式系数可以唯一确定传递函数。 分子向量 num=,分母向量 den=,控制系统数学模型及其转换,控制系统常用数学模型,用命令tf( )可建立传递函数模型,或将零极点增益模型和状态空间模型化为传递函数模型。 sys = tf(num,den);%用于生成连续传递函数; sys = tf(num,den,Ts);%用于生成离散传递函数; sys = tf(num,den,Proper

7、ty1,Value1,.,PropertyN,ValueN);% 用于生成具有LTI模型属性的连续传递函数; sys = tf(num,den,Ts,Property1,Value1,.,PropertyN,ValueN);% 用于生成具有LTI模型属性的离散传递函数; tfsys = tf(sys);%用于将任意状态空间模型SS或零极点增益模型ZPK的LTI对象sys转换成传递函数形式,控制系统数学模型及其转换,控制系统常用数学模型,给定SISO系统传递函数为,使用MATLAB表示该传递函数 num=2 1;den=3 4 1; sys1=tf(num, den) 运行结果: Transfe

8、r function: 2 s + 1 - 3 s2 + 4 s + 1,控制系统数学模型及其转换,控制系统常用数学模型,给定SISO系统传递函数为,使用MATLAB表示该传递函数 num=1.3 2 2.5; den=1 0.5 1.2 1; sys2=tf(num,den,inputdelay,2) 运行结果: Transfer function: 1.3 s2 + 2 s + 2.5 exp(-2*s) * - s3 + 0.5 s2 + 1.2 s + 1,控制系统数学模型及其转换,控制系统常用数学模型,给定多输入-多输出MIMO系统,MATLAB命令: num=1 1;2 1 1 ;

9、 den=1 1,1 2;1,1 2; sys3=tf(num,den),控制系统数学模型及其转换,控制系统常用数学模型,结果为: Transfer function from input 1 to output. 1 #1: - s + 1 #2: 2 Transfer function from input 2 to output. 1 #1: - s + 2 s + 1 #2: - s + 2,控制系统数学模型及其转换,控制系统常用数学模型,若一采样周期为0.2s的离散MIMO传递函数为,MATLAB命令如下: num=1 1,1 0;1,2; %分子 den=1 2 1,1 0 2;2

10、 1,1 1; %分母 sys4=tf(num,den,0.2),控制系统数学模型及其转换,控制系统常用数学模型,Transfer function from input 1 to output. z + 1 #1: - z2 + 2 z + 1 1 #2: - 2 z + 1 Transfer function from input 2 to output. z #1: - z2 + 2 2 #2: - z + 1 Sampling time: 0.2,控制系统数学模型及其转换,控制系统常用数学模型,2. 零极点增益模型( zero-pole-gain model: ZPK ) 零极点模型是

11、传递函数的一种特殊形式,离散系统,连续系统,控制系统数学模型及其转换,控制系统常用数学模型,用命令zpk( )可以建立零极点增益模型,或将传递函数模型和状态空间模型变化为零极点增益模型。 语法格式 sys = zpk(z,p,k) sys = zpk(z,p,k,Ts) sys = zpk(z,p,k,Property1,Value1,.,PropertyN,ValueN) sys = zpk(z,p,k,Ts,Property1,Value1,.,PropertyN,ValueN) zsys = zpk(sys) zpk( )函数调用方法与tf( )一致。,控制系统数学模型及其转换,控制系统

12、常用数学模型,给定一零极点增益模型,使用MATLAB表示该传递函数。 MATLAB命令如下: z=0;-0.5; p=0.3;0.1-j,0.1+j; k=1;2; sys=zpk(z,p,k,),控制系统数学模型及其转换,控制系统常用数学模型,Zero/pole/gain from input to output. z #1: - (z-0.3) 2 (z+0.5) #2: - (z2 - 0.2z + 1.01) Sampling time: unspecified,控制系统数学模型及其转换,控制系统常用数学模型,将传递函数 化为零极点增益模型,Matlab命令: num=1.3 2 2.

13、5; den=1 0.5 1.2 1; sys2=tf(num,den,inputdelay,2) sys6=zpk(sys2),控制系统数学模型及其转换,控制系统常用数学模型,Transfer function: 1.3 s2 + 2 s + 2.5 exp(-2*s) * - s3 + 0.5 s2 + 1.2 s + 1 Zero/pole/gain: 1.3 (s2 + 1.538s + 1.923) exp(-2*s) * - (s+0.7307) (s2 - 0.2307s + 1.369),控制系统数学模型及其转换,控制系统常用数学模型,3状态空间模型(state-space m

14、odel: SS) 线性定常状态空间模型描述为,式中,,为状态向量,,为输入向量,,是输出向量。,控制系统数学模型及其转换,控制系统常用数学模型,用命令ss( )可以建立状态空间模型,或将传递函数模型和零极点增益模型转化为状态空间模型。 语法调用格式: sys = ss(a,b,c,d) sys = ss(a,b,c,d,Ts) sys = ss(a,b,c,d,Property1,Value1,.,PropertyN,ValueN) sys = ss(a,b,c,d,Ts,Property1,Value1,.,PropertyN,ValueN) sys_ss = ss(sys) sys_ss

15、 = ss(sys,minimal); %最小阶实现 ss函数的调用方法与tf( )、zpk( )一致。,控制系统数学模型及其转换,控制系统常用数学模型,状态空间模型,用MATLAB表示为 A=0 1 0; 0 0 1; -5 -20 -1; B=0;0; 1; C=1 0 0; D=0; sys=ss(A,B,C,D),控制系统数学模型及其转换,控制系统常用数学模型,结果为: a = x1 x2 x3 x1 0 1 0 x2 0 0 1 x3 -5 -20 -1 b = u1 x1 0 x2 0 x3 1 c = x1 x2 x3 y1 1 0 0 d = u1 y1 0 Continuou

16、s-time model。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,MATLAB实现模型转换有两种不同的方式。 方式1:简单的模型转换 首先生成任一指定的模型对象(tf,ss,zpk),然后将该模型对象类作为输入,调用欲转换的模型函数即可。 例如:欲将传递函数转换为状态空间模型 sys=tf(num,den); a,b,c,d=ss(sys),控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,方式2:直接调用模型转换函数 连续模型之间三种形式的数学模型相互转换函数类型包括tf2ss、ss2tf、zp2tf、tf2zp、ss2zp、zp2ss,共六个函数

17、。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,一.化传递函数为状态空间模型,函数tf2ss用于将传递函数化成状态空间模型,调用格式如 A,B,C,D = tf2ss(num,den); 其中,输入num,den分别为传递函数分子和分母多项式系数;输出A,B,C,D为状态空间模型系数矩阵。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,将传递函数,化成状态空间表达式 方式1: num = 0 2 3; 1 2 1;%分子多项式系数 den = 1 0.4 1; 1 0.4 1;% 分母多项式系数 tfsys=tf(num,den); %生成传递函数 s

18、ssys=ss(tfsys) ;%转化为状态空间模型,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,结果为: a = x1 x2 x1 -0.4 -0.5 x2 2 0 b = u1 x1 2 x2 0 c = x1 x2 y1 1 0.75 y2 0.8 0 d = u1 y1 0 y2 1,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,方式2: num = 0 2 3; 1 2 1; den = 1 0.4 1; A,B,C,D = tf2ss(num,den) 结果为: A = -0.4000 -1.0000 1.0000 0 B = 1 0 C

19、= 2.0000 3.0000 1.6000 0 D = 0 1,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,二. 化传递函数为零极点增益模型,函数tf2zp用于将传递函数化成零极点增益模型形式 z,p,k = tf2zp(num,den) 其中,num,den分别为传递函数的分子和分母多项式系数;z,p,k为零极点增益模型的零点、极点和增益向量。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,将传递函数 化为零极点增益模型。,方式1: zpk(tf(2 1,3 4 1) Zero/pole/gain: 0.66667 (s+0.5) - (s+1)

20、(s+0.3333),方式2: z,p,k=tf2zp(2 1,3 4 1) z = -0.5000 p = -1.0000 -0.3333 k = 0.6667,因此零极点增益模型为,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,三. 化零极点增益模型为状态空间模型,函数zp2ss用于将零极点增益模型,化成状态空间模型,zp2ss调用格式 A,B,C,D = zp2ss(z,p,k) 其中,输入z,p,k为零极点增益模型的零点、极点和增益向量。输出A,B,C,D为状态空间模型系数矩阵。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,零极点增益模型 化成

21、状态空间表达式,方式1: z=-2; p=-1 -3 -3; k=2; zpksys=zpk(z,p,k); sssys=ss(zpksys),方式2: z=-2; p=-1 -3 -3; k=2; A,B,C,D=zp2ss(z,p,k),控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,四. 化连续状态方程为离散状态方程,设连续系统状态空间方程为,假设输入端加上虚拟采样开关和虚拟信号重构器,输出端加一个虚拟采样开关,虚拟采样周期为T,两者同步。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,1. 采用零阶保持器的离散状态方程 设kT及(k+1)T为两个依

22、次相连的采样瞬时,保持器为零阶保持器,u(t)在kT及(k+1)T之间保持不变,式(2)式(1)乘以eAT,可得,(1),(2),控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,离散的状态空间表达式为,式中,,不变;,为采样周期。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,2. 采用一阶保持器的离散状态方程 保持器使为斜坡函数(梯形近似),则对,离散的状态空间表达式为,式中,,不变。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,3. 连续系统离散化的MATLAB方法 c2d( )可以将连续系统化成等价的离散化模型,格式如下: sy

23、sd = c2d(sys,Ts) sysd = c2d(sys,Ts,method) 其中,sys为连续时间系统模型,Ts为采样周期,单位为秒(s)。method定义离散化方法,method的取 (1) zoh 采用零阶保持器。 (2) foh 采用一阶保持器。 (3) tustin 采用双线性(tustin)逼近方法。 (4) matched 采用SISO系统的零极点匹配法。 默认时,method=zoh。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,采用一阶保持器,采样周期为0.5s,离散化下列状态方程,MATLAB程序: sys=ss(0 1; 0 -2, 0 1,

24、1 0,0); dss=c2d(sys,0.5,foh),控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,结果为: a = x1 x2 x1 1 0.3161 x2 0 0.3679 b = u1 x1 0.1501 x2 0.1998 Sampling time: 0.5 Discrete-time model,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,五.化状态空间模型为传递函数,消去中间项,后,可得系统的传递函数矩阵,对方程式两端分别取拉普拉斯变换(设初始条件为零),得,假设状态空间表达式,控制系统数学模型及其转换,利用MATLAB实现数学模型之

25、间的转换,将状态空间方程化为传递函数的方法有: 1 如果系统只有一个输入,则可采用 num,den = ss2tf (A,B,C,D) 或 num,den = ss2tf (A,B,C,D,1) 2 对多输入的系统,则可采用 num,den = ss2tf A,B,C,D,iu 这里,iu是输入的标号。例如,如果系统有三个输入(u1,u2,u3),则iu必须为1、2或3中的一个,其中1表示u1,2表示u2,3表示u3。,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,将状态空间模型,转换为传递函数和零极点增益模型,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转

26、换,MATLAB命令: A=0 1 0; 0 0 1; -5 -20 -1; B=0;0; 1; C=1 0 0; D=0; num,den=ss2tf(A,B,C,D); tf(num,den) z,p,k=ss2zp(A,B,C,D); zpk(z,p,k),控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,Transfer function: -1.11e-015 s2 + 1.421e-014 s + 1 - s3 + s2 + 20 s + 5,Zero/pole/gain: 1 - (s+0.2524) (s2 + 0.7476s + 19.81),控制系统数学模型

27、及其转换,利用MATLAB实现数学模型之间的转换,多入单出系统状态空间表达式,包括两个传递函数:Y1(s)/U1(s)、Y1(s)/U2(s)(当考虑输入u1时,可设u2为零。反之亦然),试将其化成传递函数形式,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,MATLAB命令: A=0 1 0; 01 1; -5.008 25.1026 -5.032471; B=0 1; 25.04 2; 121.005 3; C=1 0 0; D=0 0; num,den=ss2tf(A,B,C,D,1); Sys1=tf(num,den),传递函数Y1(s)/U1(s)为 Transfe

28、r function: -3.553e-015 s2 + 25.04 s + 247 - s3 + 4.032 s2 30.14 s + 5.008,控制系统数学模型及其转换,利用MATLAB实现数学模型之间的转换,num,den=ss2tf(A,B,C,D,2); Sys2=tf(num,den) 传递函数Y1(s)/U2(s)为 Transfer function: s2 + 6.032 s 17.07 - s3 + 4.032 s2 30.14 s + 5.008,控制系统数学模型及其转换,模 型 实 现,所谓实现,就是根据描述系统输入/输出动态关系的运动方程式或传递函数建立系统的状态空

29、间表达式。所求得的状态空间表达式保持原传递函数的输入/输出关系,同时反映内部动态变化。 实现不是唯一的,会有无穷多个状态空间表达式能够获得相同的输入/输出关系。,控制系统数学模型及其转换,模 型 实 现,并非任意的微分方程和传递函数都能求得其实现,实现存在的条件是,考虑单变量线性定常系统,传递函数为,模型的实现就是根据微分方程或传递函数找出状态空间表达式,控制系统数学模型及其转换,模 型 实 现,一.能控标准型,设传递函数为,令,控制系统数学模型及其转换,模 型 实 现,取状态,状态方程为,输出方程为,控制系统数学模型及其转换,模 型 实 现,二. 对角标准型,已知系统传递函数,根据系统特征根

30、情况,展开成部分分式,求得与之对应的状态空间表达式。,控制系统数学模型及其转换,模 型 实 现,式中,,为分母多项式极点,即系统特征根。,将其展成部分分式,式中,,为待定系数,计算公式,所以,1. 特征根互异情况,控制系统数学模型及其转换,模 型 实 现,Step 1:选择状态变量,控制系统数学模型及其转换,模 型 实 现,Step 2:化为状态变量的一阶方程组为,控制系统数学模型及其转换,模 型 实 现,Step 3:写成状态空间方程向量形式为,控制系统数学模型及其转换,模 型 实 现,2. 特征根有重根情况,设有重的主根 ,其余 , , 是互异根。,部分分式为,待定系数计算公式,控制系统数

31、学模型及其转换,模 型 实 现,控制系统数学模型及其转换,模 型 实 现,Step 1:选择状态变量,控制系统数学模型及其转换,模 型 实 现,Step 2:化为状态变量的一阶方程组为,控制系统数学模型及其转换,模 型 实 现,Step 3:写成状态空间方程向量形式为,控制系统数学模型及其转换,模 型 实 现,设,,试求状态空间表达式。,解:极点为,待定系数,,,,,控制系统数学模型及其转换,模 型 实 现,状态空间模型为,控制系统数学模型及其转换,模 型 实 现,设,,试求状态空间表达式。,解:系统有三个极点,,,,待定系数,控制系统数学模型及其转换,模 型 实 现,状态方程为,控制系统数学模型及其转换,小结,本章首先给出控制系统数学模型的分类,介绍控制系统常用的数学模型的描述形式,最后给出各种数学模型,如微分方程、传递函数、状态空间等之间转换和MATLAB实现。 掌握各种数学模型的MATLAB生成与转换方法。 理解和掌握模型实现理论和方法。 理解和掌握连续系统的离散化方法。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1