控制系统的数学模型

时间:2012-03-17来源:网络

信号流程图和梅逊公式

方块图对于图解表示控制系统,是很有用的。但是当系统很复杂时,方块图的简化过程是很繁杂的。信号流程图,是另一种表示复杂控制系统中系统变量之间关系的方法。这种方法是S.J.梅逊(Mason)首先提出的。

信号流图 信号流图,是一种表示一组联立线性代数方程的图。当将信号流图法应用于控制系统时,首先必须将线性微分方程变换为以s为变量的代数方程。

信号流图是由网络组成的,网络中各节点用定向支线段连接。每一个节点表示一个系统变量,而每两节点之间的联结支路相当于信号乘法器。应当指出,信号只能单向流通。信号流的方向由支路上的箭头表示,而乘法因子则标在支路线上。信号流图描绘了信号从系统中的一点流向另一点的情况,并且表明了各信号之间的关系。

正如所料,信号流图基本上包含了方块图所包含的信息。用信号流图表示控制系统的优点,可以应用所谓梅逊增益公式。根据该公式,不必对信号流图进行简化,就可以得到系统中各变量之间的关系。

定义 在讨论信号流图之前,首先必须定义如下一些术语:

节点,节点用来表示变量或信号的点。
传输,两个节点之间的增益叫传输。
支路,支路是连接两个节点的定向线段。支路的增益为传输。
输出节点或源点,只有输出支路的节点,叫输出节点或源点。它对应于自变量。
输入节点或阱点,只有输入支路的节点,叫输入节点或阱点。它对应于因变量。
混合节点,既有输入支路,又有输出支路的节点,叫混合节点。
通道,沿支路箭头方向而穿过各相连支路的途径,叫通道。如果通道与任一节点相交不多于一次,就叫做开通道。如果通道的终点就是通道的起点,并且与任何其它节点相交不多于一次,就叫做闭通道。如果通道通过某一节点多于一次,但是终点与起点在不同的节点上,那么这个通道既不是开通道,又不是闭通道。
回路,回路就是闭通道。
回路增益,回路中各支路传输的乘积,叫回路增益。
不接触回路,如果一些回路没有任何公共节点,就把它们叫做不接触回路。
前向通道,如果从输出节点(源点)到输入节点(阱点)的通道上,通过任何节点不多于一次,则该通道叫做前向通道。
前向通道增益,前向通道中,各支路传输的乘积,叫前向通道增益。

图2-9表示了节点、支路和支路传输。

信号流图的性质 下面介绍一些信号流图的重要性质。

1. 支路表示了一个信号对另一个信号的函数关系。信号只能沿着支路上的箭头方向通过。
2. 节点可以把所有输入支路的信号叠加,并把总和信号传送到所有支路。
3. 具有输入和输出支路的混合节点,通过增加一个具有单位传输的支路,可以把它变成输出节点来处理。(见图2-9,注意,具有单位传输的支路从x3指向另一个节点,后者也以x3表示。)当然,应当指出,用这种方法不能将混合节点改变为源点。
4. 对于给定的系统,信号流图不是唯一的。由于同一系统的方程可以写成不同的形式,所以对于给定的系统,可以画出许多种不同的信号流图。

信号流图代数 根据前面的定义,可以画出线性系统的信号流图。这样做时,通常将输出节点(源点)放在左面,而输入节点(阱点)放在右面。方程式的自变量和因变量,分别变为输出节点(源点)和输入节点(阱点)。支路的传输可由方程的系数得到。

为了确定输入-输出关系,可以采用梅逊公式。这个公式后面将要介绍。也可以将信号流图简化成只包含输出和输入节点的形式。为了进行这种简化,需采用下列规则:

1. 如图2-10(a)所示,只有一个输出支路的节点的值为x2=ax1。
2. 串联支路的总传输,等于所有支路传输的乘积。因此,通过传输相乘,可以将串联支路合并为单一支路,如图2-10(b)所示。
3. 通过传输相加,可以将并联支路合并为单一支路,如图2-10(c)所示。
4. 混合节点可以消掉,如图2-10(d)所示。
5. 回路可以消掉,如图2-10(e)所示。


图2-10信号流图及其简化

梅逊公式 用梅逊公式可以直接求信号流图的传输。表示为

(2-18)

式中,Pk=第k条前向通道的通道增益或传输;

Δ=流图的特征式
=1-(所有不同回路的增益之和)+(每两个互不接触回路增益乘积之和)
-(每三个互不接触回路增益乘积之和)+…


Δk=在除去与第k条前向通道相接触的回路的流图中,第k条前向通道特征式的余因子。

总之,熟悉了梅逊公式之后,根据它去求解系统的传输,远比用方块图变换方法简便有效,对于复杂的多环系统和多输入、多输出系统尤其明显。因此,信号流图得到了广泛的实际应用,并常用于控制系统的计算机辅助设计。

例2-4 将图2-11所示的系统方框图化为信号流图之。求系统传递函数C(s)/R(s)。

图2-11 多回路系统
图2-12 图2-11所示系统的信号流图

在这个系统中,输入量R(s)和输出量C(s)之间,只有一条前向通道。前向通道的增益为
P1=G1G2G3
从图2-12可以看出,这里有三个单独的回路。这些回路的增益为


L1=G1G2H1
L2=-G2G3H2
L3=-G1G2G3

应当指出,因为所有三个回路具有一条公共支路,所以这里没有不接触的回路。因此,特征式Δ为
Δ=1-(L1+L2+L3)
=1-G1G2H1+G2G3H2+G1G2G3
沿联接输入节点和输出节点的前向通道,特征式的作因子Δ1,可以通过除去与该通道接触的回路的方法而得到。因为通道P1与三个回路都接触,所以得到
Δ1=1
因此,输入量R(s)和输出量C(s)之间的总增益,或闭环传递函数为

这与通过方块图简化所得到的闭环传递函数完全相同。这样,利用梅逊公式,不必对流图进行简化,就能够求得总增益C(s)/R(s)。

例2-5 根据梅逊公式求图2-13的信号流图的总传输。

图2-13 例2-5中系统的信号流图

解 此系统有六个回环,即ab、cd、ef、ij和kfdb,因此

两个互不接触的回环有七种组合,即abef、abgh、abij、cdgh、cdij、efij及kfdbij,所以

三个互不接触的回环只有ab、ef和ij,故

由此可求特征式

从源点到阱点有两条前向通道。一条为acegi,它与所有的回环均有接触,因此
P1=acegi
Δ1=1


另一条前向通道为kgi它不与回环cd接触,所以
P2=kgi
Δ2=1-cd


将以上结果代入式(2-18),可得总传输

例2-6 已知RC电路如图2-14所示,请画出其结构图。

图2-14 例2-6题图

解:根据电路的特性,由图可知

中间回路:

(2-21)

由(2-19)式知:

(2-22)

由(2-21)式知:

(2-23)

由(2-20)式知:

(2-24)

则由(2-22)、(2-23)、(2-24)式求出结构图如下:

图2-15 系统结构图

在这一类系统结构图的求解过程中,需要注意的是,其解不是唯一的。

状态空间模型的简介

状态空间分析法是现代控制理论的基础,不仅可以描述系统的输入输出之间的关系,而且还可以描述系统的内部特性,是一种内部描述,特别适用于多输入多输出系统,也适用于时变系统、非线性系统和随机控制系统,它采用状态空间表达式作为描述系统的数学模型。是对系统的一种完全描述。

2.7.1 状态、状态变量及状态空间方程

这里介绍有关状态、状态变量及状态空间方程等的基本概念。

1. 状态 动态系统的状态是系统的最小一组变量(称为状态变量),只要知道了在t=t0时的一组变量和t3t0时的输入量,就能够完全确定系统在任何t3t0时刻的行为。
2. 状态变量 动态系统的状态变量是确定动态系统状态的最小一组变量。如果至少需要n个变量x1,x2,××× ,xn才能完全描述动态系统的行为(即一旦给出t3t0时的输入量,并且给定t=t0时的初始状态,就可以完全确定系统的未来状态),则这个变量就是一组状态变量。
3. 状态向量 如果完全描述一个给定系统的行为需要n个状态变量,那么这n个状态变量可以看作是向量X的n个分量,该向量就称为状态向量。因此,状态向量也是一种向量,一旦t=t0时的状态给定,并且给出t3t0时的输入量U(t),则任意时间t3t0时的系统状态X(t)便可以唯一地确定。
4. 状态空间 由x1轴,x2轴,××× ,xn轴所组成的n维空间称为状态空间。任何状态都可以用状态空间中的一点来表示。
5. 状态方程 用状态变量描述系统的动态方程。

2-A1 状态空间模型的概念说明

已知系统

其状态方程可以用下列方程描述:

(2-25)

由上式可知,如果已知uc(t)和i(t)的初始值,以及在t3t0时的外加输入信号,就能够完全唯一地确定在t3t0时的任何时间的系统状态。状态方程也可以写成矩阵方程的形式。例如:

(2-26)

通常,用x表示状态矢量,用x1,x2,... 表示其分量。对于上式,如令

式(2-26)又可写为

(2-27)

此处其输出方程为

(2-28)

此处

需要指出的是,从理论上讲,描述系统状态的状态变量的选择不是唯一的,可以有无穷多个解。

2.7.2 线性定常控制系统的状态方程描述

本教材研究对象主要为线性定常系统,这里简单介绍一下线性定常系统的状态方程:

1. 单输入单输出线性定常系统状态方程

(2-29)

式中y为输出量,x为输入量,a1、a2、...、an和bn为常系数。

当令

此时,可将式(2-29)改写为n个一阶微分方程,即

或用矩阵方程表示:

上式可简写为

式中

系统的输出方程为

2. 多变量线性定常系统状态方程

推广到多变量线性定常系统的一般情况,此时的系统传递函数可表示为:

式中 i=1,2,...,n;j=1,2,...,m。可用矩阵方程表示为:

此处


2.7.3线性定常系统状态空间表达式的结构图和信号流图

系统的状态方程和输出方程也可以用结构图的方式表达出来,它形象地说明了系统输入、输出和系统状态之间的信息传递关系。在采用模拟计算机对系统仿真时,它更是一个得力的工具。图2- 16所示为n维线性定常系统的结构图。


图2-16 n维线性定常系统的结构图

同样,也可以画出n维线性定常系统的信号流图(见图2-17所示)。


图2-17 n维线性系统的信号流图


2.7.3线性定常系统状态空间表达式的结构图和信号流图

下面仔细分析一下单输入单输出系统的传递函数与状态空间之间的关系:
设所要研究系统的传递函数为:

该系统在状态空间中可以用下列方程表示:

(2-30)

(2-31)

式中X为状态向量,u为输入量,y为输出量。则当满足零初始条件时,式(2-30)及(2-31)的拉普拉斯变换为:

用(sI-A)-1左乘式(2-32)等号两边,得到:
X(s)=(sI-A)-1BU(s) (2-34)
把方程(2-34)代入(2-33),得到

(2-35)

由方程(3-35)可以看出

这就是以A、B、C和D的形式表示的传递函数。应该指出,传递函数矩阵具有不变性,亦即,对状态方程进行线性变换后,其对应的传递函数矩阵应该不变,从而保证了所描述系统的输入-输出特性不变。

数学模型的MATLAB描述

控制系统常用的数学模型有三种:传递函数、零极点增益和状态空间。每种模型均有连续/离散之分,它们各有特点,有时需在各种模型之间进行转换。本节主要介绍它们的MATLAB表示及三种模型之间的相互转换。

2.8.1连续系统数学模型的MATLAB表示

1. 传递函数模型

当:

则在MATLAB中,直接用分子/分母的系数表示,即
num=[b0,b1,…,bm];
den = [a0,a1,…,an];

例2-7 用MATLAB表示传递函数为 的系统。


解:在MATLAB环境下输入
ng=[1 1]; dg=[1 3 2];
printsys(ng,dg) %此处printsys命令是传递函数显示命令。


则执行后得到如下结果:

2. 零极点增益模型

当:

则在MATLAB中,用[z,p,k]矢量组表示,即
z=[z0,z1,…,zm];
p=[p0,p1,…,pn];
k=[k];

例2-8 用MATLAB表示传递函数为 的系统。


解:在MATLAB环境下输入
z=-1; p=[0 -1 -2]; k=1.5;
[num,den]=zp2tf[z,p,k];
printsys(num,den) %此处printsys命令是传递函数显示命令。
则执行后得到如下结果:

3. 状态空间模型

当:

则在MATLAB中,该控制系统可用(a,b,c,d)矩阵组表示。

4. 传递函数的部分分式展开

当:

在MATLAB中直接用分子/分母的系数表示时有
num=[b0,b1,…,bm];
den = [a0,a1,…,an];
则命令
[r,p,k] = residue(num,den)
将求出两个多项式Y(s)和X(s)之比的部分分式展开的留数、极点和直接项。Y(s)/X(s)的部分分式展开由下式给出:

例2-A2 考虑下列传递函数:

命令 [r,p,k] = residue(num,den)
将给出下列结果:

[r,p,k]=residue(num,den)
r=
-6.000
-4.000
3.000
p=
-3.000
-2.000
-1.000
k=
2

留数为列向量r,极点位置为列向量p,直接项是行向量k。以下是Y(s)/X(s)的部分分式展开的MATLAB表达形式:

命令
[num,den] = residue(r,p,k)


执行后得到如下结果:

[num,den]=residue(r,p,k)
num=
2.0000 5.0000 3.0000 6.0000
den=
1.0000 6.0000 11.0000 6.0000



2.8.2离散系统数学模型的MATLAB表示

1. 传递函数模型:

2. 零极点增益模型:

3. 状态空间模型:

2.8.3模型之间的转换

同一个控制系统都可用上述三种不同的模型表示,为分析系统的特性,有必要在三种模型之间进行转换。MATLAB的信号处理和控制系统工具箱中,都提供了模型变换的函:ss2tf,ss2zp,tf2ss,tf2zp,zp2ss,zp2tf,它们的关系可用图2-17所示的结构来表示。


图2-18 三种模型之间的转换

说明:

ss2tf命令:将状态空间模型转换成传递函数模型。
格式为:[num,den]=ss2tf(A,B,C,D,iu)
式中,iu为输入的序号。转换公式为

ss2zp命令:将状态空间模型转换成零极点增益模型。
格式为:[Z, P, K]=ss2zp(A, B, C, D, iu)
式中,iu为输入的序号。

tf2ss命令:将传递函数模型转换成状态空间模型。
格式为:[A, B, C, D]=tf2ss(num, den)

tf2zp命令:将传递函数模型转换成零极点增益模型。
格式为:[Z, P, K]=tf2zp(num, den)

zp2ss命令:将零极点模型转换成状态空间模型。
格式为:[A, B, C, D]=zp2ss(Z, P, K)

zp2tf命令:将零极点模型转换成传递函数模型。
格式为:[num, den]=zp2tf(Z, P, K)

2.8.4控制系统建模

对简单系统的建模可直接采用三种基本模型:传递函数、零极点增益、状态空间模型。但实际中经常遇到几个简单系统组合成一个复杂系统。常见形式有:并联、串联、闭环及反馈等连接。

1. 并联:将两个系统按并联方式连接,在MATLAB中可用parallel函数实现。命令格式为:[nump, denp] = parallel(num1, den1, num2, den2) 其对应的结果为:Gp(s)=G1(s)+G2(s)

2. 串联:将两个系统按串联方式连接,在MATLAB中可用series函数实现。命令格式为:[nums, dens] = series(num1, den1, num2, den2) 其对应的结果为:Gs(s)=G1(s)+G2(s)

3. 闭环:将系统通过正负反馈连接成闭环系统,在MATLAB中可用feedback函数实现。命令格式为:[numf, denf] = feedback(num1, den1, num2, den2, sign) sign为可选参数,sign=-1为负反馈,而sign=1对应为正反馈。缺省值为负反馈。其对应的结果为:

4. 单位反馈:将两个系统按反馈方式连接成闭环系统(对应于单位反馈系统),在MATLAB中可用cloop函数实现。命令格式为:[numc, denc] = cloop(num, den, sign) sign为可选参数,sign=-1为负反馈,而sign=1对应为正反馈。缺省值为负反馈。其对应的结果为:

1 2

关键词: 控制系统 数学模型

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版