第7章 控制系統的 MATLAB仿真 本章主要教学内容 >在 MATLAB中描述控制系统的数学模型 系统方框图模型的简化及应用 控制系统的时域分析 控制系统的频域分析 >利用 MATLAB语言进行仿真编程的具体 应用
1 本章主要教学内容 ➢在MATLAB中描述控制系统的数学模型 ➢系统方框图模型的简化及应用 ➢控制系统的时域分析 ➢控制系统的频域分析 ➢利用MATLAB语言进行仿真编程的具体 应用 第7章 控制系统的MATLAB仿真
第7章 控制系統的 MATLAB仿真 本章教学目的及要求 熟悉 MATLAB的基本应用 掌握利用 MATLAB建立数学模型的方法 熟悉控制系统的时域和频域分析 >掌握 MATLAB的仿真编程应用
2 本章教学目的及要求 ➢熟悉MATLAB的基本应用 ➢掌握利用MATLAB建立数学模型的方法 ➢熟悉控制系统的时域和频域分析 ➢掌握MATLAB的仿真编程应用 第7章 控制系统的MATLAB仿真
第7章 控制系統的 MATLAB仿真 7.1控制系统的模型表示 MATLAB提供了数学模型的建立函数和各模型之间的转 换功能函数,可以分别采用传递函数、零极点增益、状态空 间以及动态结构图等4种数学模型来表示控制系统,前3种是 用数学表达式描述的系统模型,每种模型都有连续系统及离 散系统两种类别的表示;而动态结构图是基于传递函数的图 形化形式,是采用 MATLAB中提供的 SIMULINK结构图来实现 的。 MATLAB中使用的数学模型之间的转换也很方便,使得采 用 MATLAB编制的程序更加简单、精炼而高效
3 7.1 控制系统的模型表示 MATLAB 提供了数学模型的建立函数和各模型之间的转 换功能函数,可以分别采用传递函数、零极点增益、状态空 间以及动态结构图等4种数学模型来表示控制系统,前3种是 用数学表达式描述的系统模型,每种模型都有连续系统及离 散系统两种类别的表示;而动态结构图是基于传递函数的图 形化形式,是采用MATLAB中提供的SIMULINK结构图来实现 的。MATLAB中使用的数学模型之间的转换也很方便,使得采 用MATLAB编制的程序更加简单、精炼而高效。 第7章 控制系统的MATLAB仿真
第7章 控制系統的 MATLAB仿真 711系统的传递函数模型表示 传递函数模型通常表示线性定常时不变系统(LTI), 可以是连续的时间系统,也可以是离散的时间系统。 对于离散的时间系统,其脉冲传递函数可表示为: Y()coz+c1=1+…cm12+ num 0(=a0z+a=m-+am-2+an den(=z) 不论是连续的还是离散的时间系统,其传递函数的分子/分 母多项式均按s或z的降幂来排列。在 MATLABI中可直接采用分 子/分母多项式系数构成的两个向量num与den来表示系统, 即
4 7.1.1 系统的传递函数模型表示 传递函数模型通常表示线性定常时不变系统(LTI), 可以是连续的时间系统,也可以是离散的时间系统。 对于离散的时间系统,其脉冲传递函数可表示为: 第7章 控制系统的MATLAB仿真 ( ) ( ) ( ) ( ) ( ) 1 1 0 1 1 1 0 1 den z num z a z a z a z a c z c z c z c U z Y z G z n n n n m m m m = + + + + + + = = − − − − 不论是连续的还是离散的时间系统,其传递函数的分子/分 母多项式均按s或z的降幂来排列。在MATLAB中可直接采用分 子/分母多项式系数构成的两个向量num与den来表示系统, 即:
第7章 控制系統的 MATLAB仿真 num=Co C den=[a1,a2 在 MATLABI中,可用函数命令t()来建立控制系统 的传递函数模型,其调用格式和功能分别为: 1)sys- tf(num, den) (2)Ss=坻( num, del7s);。 (3)Ss=t(M; (4)t5ys=t(5ys);
5 在MATLAB中,可用函数命令tf()来建立控制系统 的传递函数模型,其调用格式和功能分别为: (1)sys= tf(num, den); (2)sys= tf(num, den, Ts) ;。 (3)sys= tf(M) ; (4)tfsys= tf(sys); 第7章 控制系统的MATLAB仿真 = = [ , , , ] [ , , , ] 1 2 0 1 a m den a a a num c c c
第7章 控制系統的 MATLAB仿真 71.2零极点增益模型 当连续系统的传递函数表达式采用系统增益、系 统零点与系统极点来表示时,称之为系统零极点增益模 型。系统零极点增益模型是传递函数模型的一种特殊形 式 离散系统的传递函数零极点增益模型: G(z=k (z+1)(z+2)…(z+mn) (z+P1)(z+p2)…(x+pn)
6 第7章 7.1.2 零极点增益模型 当连续系统的传递函数表达式采用系统增益、系 统零点与系统极点来表示时,称之为系统零极点增益模 型。系统零极点增益模型是传递函数模型的一种特殊形 式。 离散系统的传递函数零极点增益模型: 控制系统的MATLAB仿真 ( )( ) ( ) ( )( ) ( ) ( ) 1 2 1 2 n m z p z p z p z z z z z z G z k + + + + + + =
第7章 控制系統的 MATLAB仿真 在 MATLAB里,连续与离散系统都可直接用向 量Z、p、k构成的矢量组[z,p,k]来表示系统,即 1:-2 p=[p12p2…,pn] 7
7 第7章 在MATLAB里,连续与离散系统都可直接用向 量z、p、k构成的矢量组[z, p, k]来表示系统,即: 控制系统的MATLAB仿真 = = = [ ] [ , , , ] [ , , , ] 1 2 1 2 k p p p z z z n m k p z
第7章 控制系統的 MATLAB仿真 在 MATLABI中,可用函数命令zpk()来建立控制系统 的零极点增益模型,其调用格式和功能分别为: (1) sys- zpk (num, den) (2) sys- zpk(num, den 7S (3) sys-zpk M); (4)折s=zpk(5/S);
8 第7章 在MATLAB中,可用函数命令zpk()来建立控制系统 的零极点增益模型,其调用格式和功能分别为: (1)sys= zpk(num, den) ; (2)sys= zpk(num,den, Ts); (3)sys= zpk(M); (4)tfsys= zpk(sys); 控制系统的MATLAB仿真
第7章 控制系統的 MATLAB仿真 7.1.3状态空间模型 控制系统在主要工作区域内的一定条件下可近似为线性时 不变(LTI)模型,连续LI对象系统总是能用一阶微分方程组 来表示,写成矩阵形式即为状态空间模型: (t)=AX(t)+bU(t) Y(t)=CX(t)+DU()(b) 其中 式(a)系统的状态方程,是由n个一阶微分方程组成的 微分方程组 式(b)—系统的输出方程,是由1个线性代数方程组成的;
9 7.1.3 状态空间模型 控制系统在主要工作区域内的一定条件下可近似为线性时 不变(LTI)模型,连续LTI对象系统总是能用一阶微分方程组 来表示,写成矩阵形式即为状态空间模型: 第7章 控制系统的MATLAB仿真 = + = + ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) t t t b t t t a Y CX DU X AX B U 其中: 式(a)——系统的状态方程,是由n个一阶微分方程组成的 微分方程组; 式(b)——系统的输出方程,是由1个线性代数方程组成的;
第7章 控制系統的 MATLAB仿真 离散系统的状态空间模型可表示为: X(k+1)=AX(k)+ BU(k) Y(k+1)=CX(k+1)+DU(k+1) 式中: U——系统的控制输入向量: X——系统的状态向量; Y——系统的输出向量; k—特定时刻的采样点 A——状态矩阵,由控制对象的参数决定; B——控制矩阵; C——输出矩阵; D——直接传输矩阵
10 第7章 离散系统的状态空间模型可表示为: 控制系统的MATLAB仿真 + = + + + + = + ( 1) ( 1) ( 1) ( 1) ( ) ( ) k k k k k U k Y CX DU X AX B 式中: U——系统的控制输入向量; X——系统的状态向量; Y——系统的输出向量; k——特定时刻的采样点; A——状态矩阵,由控制对象的参数决定; B——控制矩阵; C——输出矩阵; D——直接传输矩阵