信号流图的计算机解法 设信号流图中有K个输入节点,K个中间节点和 输出节点,分别代表输入信号u;(i=1,2,.Ki) 和系统状态x(j=1,2,K)。令q=z1,则信号 流图中的任何节点变量x可以表为输入变量u和 和其它节点变量x的线性组合: 号立0+%U=12,) 用矩阵表示可写成: 11
11 信号流图的计算机解法 设信号流图中有Ki个输入节点,K个中间节点和 输出节点,分别代表输入信号ui(i=1,2,…Ki) 和系统状态xj(j=1,2,…K)。令q= z-1,则信号 流图中的任何节点变量xj可以表为输入变量ui和 和其它节点变量xj的线性组合: 用矩阵表示可写成: 1 ( 1,2, , ) K Ki j jk k ji i k i x Q x P u j K = = + =
信号流图的计算机解法 XI Q11Q12… 乃1乃2…i X= x2 021022… Q2K X2 P21P22…P2 1U2 OX +PU XK 9K1OK2·OKKXK」Pk1PK2…PG4 其中:X=x,X2,,]T为K阶状态变量列向量, U=[u1,u2,…,uk]T为Ki阶输入列向量,Q为 K×K阶的连接矩阵,P为K×K阶的输入矩阵。 令W=XU为以U向量为输入,X向量为输出的系统 函数,把QX移到等式左方,不难得到: 12
12 信号流图的计算机解法 其中:X = [x1 , x2 , …, xK ] T 为K阶状态变量列向量, U=[u1 , u2 , … , uKi] T 为Ki阶输入列向量,Q为 K×K阶的连接矩阵,P为K×Ki阶的输入矩阵。 令W=X/U为以U向量为输入,X向量为输出的系统 函数,把QX移到等式左方,不难得到: QX PU u u u P P P P P P P P P x x x Q Q Q Q Q Q Q Q Q x x x X K K Ki i i i K K KK K K K K = + + = = 2 1 1 2 2 1 2 2 2 1 1 1 2 1 2 1 1 2 2 1 2 2 2 1 1 1 2 1 2 1 I Q P U X W 1 ( ) − = = −
信号流图的计算机解法 其中W为K×K的矩阵,也称传递矩阵。若只有 一个输入,则W为K阶单列向量,表示输入为 U,输出为X(其中含K个变量)的K个传递函数 组成的向量。 这个简明的公式就等价于信号流图中的梅森公式。 只要写出P和Q,任何复杂系统的传递矩阵都可 用这个简单的式子求得。在没有计算工具的时 候,计算(-Q)-1涉及一个阶次很高的矩阵的求 逆运算,所以虽然简明却不好使用。现在有了 科学计算软件,这就不是问题了。 13
13 信号流图的计算机解法 其中W为K×Ki的矩阵,也称传递矩阵。若只有 一个输入,则W为K阶单列向量,表示输入为 U,输出为X(其中含K个变量)的K个传递函数 组成的向量。 这个简明的公式就等价于信号流图中的梅森公式。 只要写出P和Q,任何复杂系统的传递矩阵都可 用这个简单的式子求得。在没有计算工具的时 候,计算(I-Q) –1涉及一个阶次很高的矩阵的求 逆运算,所以虽然简明却不好使用。现在有了 科学计算软件,这就不是问题了
信号流图的计算机解法 用来解此题的计算软件必须有公式推导功能: 由于待求的传递函数中存在着一个无法赋值的 符号变量q=z1,它无法为仅会做数值运算的软 件所接受。幸而MATLAB已经引进了符号推理 的功能。只要在程序的开始,规定某些变量是 符号变量,系统就不会去追究它的值,而在运 算中始终保留这个符号。 定义符号变量使用的MATLAB命令是syms。 syms q s t 规定了q,S,t三个变量是符号变量。 14
14 信号流图的计算机解法 用来解此题的计算软件必须有公式推导功能: 由于待求的传递函数中存在着一个无法赋值的 符号变量q= z-1,它无法为仅会做数值运算的软 件所接受。幸而MATLAB已经引进了符号推理 的功能。只要在程序的开始,规定某些变量是 符号变量,系统就不会去追究它的值,而在运 算中始终保留这个符号。 定义符号变量使用的MATLAB命令是syms。 syms q s t 规定了q,s,t三个变量是符号变量
用MATLAB解信号流图的方法 (1).使用syms命令定义q和其他符号变量: (2).由于Q矩阵中含q,它应当是符号矩阵。矩阵 的属性是由第一个赋值元素的属性决定的。所 以程序中給Q赋值的第一条语句的右端,必须 含符号变量。 (3).Q和P阵都有很多个元素,但不需要逐个赋值。 首先应该把非零的元素赋值,最后只要把矩阵 右下角的元素赋值,矩阵中所有左上方的未赋 值元素都会自动赋零。 15
15 用MATLAB解信号流图的方法 (1).使用syms命令定义q和其他符号变量; (2).由于Q矩阵中含q,它应当是符号矩阵。矩阵 的属性是由第一个赋值元素的属性决定的。所 以程序中給Q赋值的第一条语句的右端,必须 含符号变量。 (3). Q和P阵都有很多个元素,但不需要逐个赋值。 首先应该把非零的元素赋值,最后只要把矩阵 右下角的元素赋值 ,矩阵中所有左上方的未赋 值元素都会自动赋零