第2章 连续系统的数学模型

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

num b1 b2 bn1 bn den 1 a1 a2 an1
an
sys tf (num, den)
[例1] 已知系统传递函数为
G(s)
2s 9 s 4 3s 3 2s 2 4s 6
利用MATLAB将上述模型表示出来,并将其建立在工作空间中。 解:
x ˆ 1 1 1 0 x ˆ 1 0.1111 x 0.3333 u ˆ ˆ x 0 1 0 2 2 x ˆ ˆ 3 0 0 2 x 3 0.1111
零极点增益模型换为传递函数模型
(1) 控制系统模型向传递函数或零极点增益形式的转换
1.状态方程向传递函数形式的转换
AX BU X Y C X DU
G ( s) num( s) C (sI A)1 B D den( s)
[num,den]=ss2tf(A,B,C,D,iu)
解:根据电路定律可列写如下方程:
di 1 Ri L idt u i dt C 1 y u 0 idt ( 2) C
x1 i, x 2 u c 1 idt C
(1)
R 1 1 L L x1 1 x L u i x 1 2 0 x2 0 C x y 0 1 1 x2
2.模型向零极点形式的转换
其基本格式为: [z,p,k]=ss2zp(A,B,C,D,iu) → 状态方程模型转换为零极点模型 [z,p,k]=tf2zp(num,den) → 传递函数模型转换为零极点模型 G1=zpk(sys) → 非零极点模型转换为零极点模型
[例6] 已知连续系统的状态空间描述如下,将其转换成零极点形式。
ˆ1 x ˆ2 y 1 0 1 x ˆ3 x
0 1 1 P3 1 1 2 1 2 4
P P1
P2
P 1
0源自文库8889 0.2222 0.1111 0 . 6667 0 . 3333 0 . 3333 0.1111 0.2222 0.1111
2.25 5 2.25 4.25 x 0.25 0.5 1.25 1.75 y 0 2 0 2x 0 .5 4 2 1.25 0.25 x u 2 1.25 1 0.25 0.75 0 1.25
sys=zpk([z],[p],[k])
z z1
p p1
z2 , zm
p2 , p n
函数返回的变量 sys 为连续系统的零极点增益 模型。
[例3] 已知系统传递函数为
G( s)
5( s 20) , s( s 4.6)(s 1)
利用MATLAB将上述模型表示出来。
解:
>> k=5; >> z=-20; >> p=[0,-4.6,-1]; >> sys=zpk([z],[p],[k]) 结果: Zero/pole/gain: 5 (s+20) --------------s (s+4.6) (s+1)
3.状态空间模型
(t ) Ax(t ) Bu(t ) x y(t ) Cx(t ) Du(t ) ( a) (b) (2 4)
2.传递函数的零极点增益模型
(s z1 )(s z 2 )(s z m ) G( s) k (s p1 )(s p2 )(s z n ) (2 3)
在MATLAB里,用函数命令zpk( )来建立控制系统的零极点增 益模型,或者将传递函数模型或者状态空间模型转换为零极点增 益模型。zpk( )函数的调用格式为:
[例8] 《现代控制理论》 教材P46-47 试用canon函数将下列状态空间表达式化为约当标准型。
0 0 x 2 y 1 1 0 0 0 u 0 1 x 3 0 1 0 0x
在现代控制理论课程中变换后的状态空间表达式为:
[例4] 已知系统的状态空间描述为
2.25 5 2.25 4.25 x 0.25 0.5 1.25 1.75 y 0 2 0 2x 0 .5 4 2 1.25 0.25 x u 2 1.25 1 0.25 0.75 0 1.25
Y (s) b1s n1 b2 s n2 bn1s bn num(s) G( s ) n n 1 n2 U ( s) s a1s a2 s an1 den(s)
(2 2)
在MATLAB 语言中,可以利用分别定义的传递函数分子、分母多项式系数 向量方便地加以描述。例如对于(2-2 )式,系统可以分别定义传递函数的 分子、分母多项式系数向量为:
第四章 补充
连续系统常用的数学模型及其转换
1.微分方程及传递函数的多项式模型
d ( n ) y (t ) d ( n 1) y (t ) dy(t ) d ( n 1)u (t ) d ( n 2)u (t ) du(t ) a a a y ( t ) b b b bnu (t ) 1 n 1 n 1 2 n 1 n n 1 n 1 n2 dt dt dt dt dt dt (2 1)
(4) 命令历史窗口“Command History”
[例2] 已知系统传递函数为
G( s)
7(2s 3) s 3 (3s 1)(s 2) 2 (5s 3 3s 8)
利用MATLAB将上述模型表示出来。 解:其MATLAN命令为: num=7*[2,3]; den=conv(conv(conv([1,0,0],[3,1]),conv([1,2],[1,2]),[5,0,3,8]); sys=tf(num,den) 运行结果: Transfer function: 14 s + 21 15 s^8 + 65 s^7 + 89 s^6 + 83 s^5 + 152 s^4 + 140 s^3 + 32 s^2
补充知识:MATLAB的基础知识Ⅰ
一. MATLAB简介
MATLAB具有以下主要特点:
1)超强的数值运算功能。在MATLAB里,有超过 500种的数学、统计、科 学及工程方面的函数可供使用,而且使用简单快捷。由于库函数都由本领域 的专家编写,用户不必担心函数的可靠性。 2)语法限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需 对矩阵预定义就可使用。 3)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操 作系统上运行。 4)强大的数据可视化功能。在FORTRAN和C语言里,绘图都很不容易,但 在MATMB里,数据的可视化非常简单。MATIAB还具有较强的编辑图形界 面的能力。 5)丰富的工具箱;由各学科领域内学术水平很高的专家编写的功能强劲的工 具箱,使用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖 的研究。
(3)约当规范状态方程的实现
在MATLAB中提供给用户一个规范实现函数canon,以进行线性定 常系统模型sys的规范状态空间表达式的实现. 其基本格式:
G1=canon(sys, ’modal’)
同时,规范实现函数canon还可以返回状态变换阵T
[G1,T]=canon(sys,’modal’)
解:>> A=[0,1,0;0,0,1;2,3,0]; >> B=[0;0;1]; >> C=[1,0,0]; >> D=0; >> sys=ss(A,B,C,D,1); >> [G1,T]=canon(sys,'modal')
控制系统建模的基本方法
1. 解析法建立数学模型
如:《现代控制理论》
[例] 试列写如图所示RLC的电路方程,建立系统的状态空间表达 式。
>> a=[2.25,-5,-1.25,-0.5; 2.25,-4.25,-1.25,-0.25; 0.25,-0.5,-1.25,-1; 1.25,-1.75,-0.25,-0.75]; >> b=[4;2;2;0]; >> c=[0,2,0,2]; >> d=0; >> T=1; >> [num,den]=ss2tf(a,b,c,d,T); >> sys=tf(num,den)
在 MATLAB 中,用函数 ss( ) 来建立控制系统的状态空间模 型,或者将传递函数模型与零极点增益模型转换为系统状态空 间模型。ss( )函数的调用格式为: sys=ss(a,b,c,d)
函数的返回变量sys为连续系统的状态空间模型。函数输入参 数a,b,c,d分别对应于系统的A,B,C,D参数矩阵。
(2)系统模型向状态方程形式的转换 其基本格式为: [a,b,c,d]=tf2ss(num,den) [a,b,c,d]=zp2ss(z,p,k) G1=ss(sys)
[例7] 已知系统传递函数为
G(s) 2s 9 s 4 3s 3 2s 2 4s 6
利用MATLAB将上述模型转换成状态空间模型。
4. 三种数学模型之间的转换
表2-1 数学模型转换函数及其功能 函数名 ss2tf ss2zp 函数功能 将系统状态空间模型转换为传递函数模型 将系统状态空间模型转换为零极点增益模型
tf2ss
tf2zp
将系统传递函数模型转换为状态空间模型
将系统传递函数模型转换为零极点增益模型
zp2ss
zp2tf
将系统零极点增益模型换为状态空间模型
二. MATLAB的工作环境 启动MATIAB6.x后,显示的窗口如图所示。
而选中命令窗口中View菜单的“Dock command Window”子菜单又可让 命令窗放回桌面(MATIAB桌面的其他窗口也具有同样的操作功能)。
窗口中的符号“》”,表示MATIAB已准备好,正等待用户输入 命令。用户可以在“》”提示符后面输入命令,实现计算或绘图功 能。 在命令窗口中,可使用方向键对已输入的命令行进行编辑, 如用“↑”键或“↓”键回到上一句指令或显示下一句命令。 (3)工作空间窗口“Work-space” 工作空间指运行MATLMB程序 或命令所生成的所有变量构成的空间。每打开一次MATLAB, MATIAB会自动建立一个工作空间。
利用MATLAB将上述模型表示出来。 P41 作业2-2
解: >> a=[2.25,-5,-1.25,-0.5; 2.25,-4.25,-1.25,-0.25; 0.25,-0.5,-1.25,-1; 1.25,-1.75,-0.25,-0.75]; >> b=[4;2;2;0]; >> c=[0,2,0,2]; >> d=0; >> sys=ss(a,b,c,d)
iu用于指输入量序号,对于单输入系统iu=1;返回结果 num为传递函数分子多项式系数,按s的降幂排列;相应的传 递函数分母系数则包含在矩阵den中。
为了获得传递函数的形式,还可以采用下述方式进行,即:
G1=ss(A,B,C,D); G2=tf(G1)
[例5] 已知连续系统的状态空间描述如下,求相应的传递函数模型。
2.25 5 2.25 4.25 x 0.25 0.5 1.25 1.75 y 0 2 0 2x 0 .5 4 2 1.25 0.25 x u 2 1.25 1 0.25 0.75 0 1.25
相关文档
最新文档