现代控制理论实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一 线性定常系统模型
一 实验目的
1. 掌握线性定常系统的状态空间表达式。学会在MATLAB 中建立状态空间模型的方法。
2. 掌握传递函数与状态空间表达式之间相互转换的方法。学会用MATLAB 实现不同模型之间的相互转换。
3. 熟悉系统的连接。学会用MATLAB 确定整个系统的状态空间表达式和传递函数。
4. 掌握状态空间表达式的相似变换。掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。学会用MATLAB 进行线性变换。
二 实验原理
1. 线性定常系统的数学模型
在MA TLAB 中,线性定常(linear time invariant, 简称为 LTI )系统可以用4种数学模型描述,即传递函数(TF)模型、零极点增益(ZPK)模型和状态空间(SS)模型以及SIMULINK 结构图。前三种数学模型是用数学表达式表示的,且均有连续和离散两种类型,通常把它们统称为LTI 模型。
1) 传递函数模型(TF 模型)
令单输入单输出线性定常连续和离散系统的传递函数分别为
11101)()()(a s a s a s b s b s b s b s U s Y s G n n n m m m m ++++++++==---- (1-1) 和
11101)()()(a z a z a z b z b z b z b z U z Y z G n n n m m m m ++++++++==---- 。 (1-2) 在MA TLAB 中,连续系统和离散系统的传递函数都用分子/分母多项式系数构成的两个行向量num 和den 表示,即
[]01b b b num m =,[]011a a den n -=
系统的传递函数模型用MATLAB 提供的函数tf( )建立。函数tf ( )不仅能用于建立系统传递函数模型,也能用于将系统的零极点增益模型和状态空间模型转换为传递函数模型。该函数的调用格式如下:
),(den num tf G = 返回连续系统的传递函数模型G 。
),,(Ts den num tf G = 返回离散系统的传递函数模型G 。Ts 为采样周期,当Ts =-1或者Ts =[]时,系统的采样周期未定义。
)(G tf Gtf = 可将任意的LTI 模型G 转换为传递函数模型Gtf 。
2) 零极点增益模型(ZPK 模型)
系统的零极点增益模型是传递函数模型的一种特殊形式。令线性定常连续和离散系统的零极点形式的传递函数分别为
)
())(()())(()()()(2121n m p s p s p s z s z s z s K s U s Y s G ++++++== (1-3)
和
)
())(()())(()()()(2121n m p z p z p z z z z z z z K z U z Y z G ++++++== (1-4) 在MATLAB 中,连续和离散系统的零点和极点都用行向量z 和p 表示,即 []m z z z z 21=,[]n p p p p
21=。 系统的零极点增益模型用MATLAB 提供的函数zpk ( )建立。函数zpk( )不仅能用来建立系统零极点增益模型,也能用于将系统的传递函数模型和状态空间模型转换为零极点增益模型。该函数的调用格式如下:
),,(k p z zpk G = 返回连续系统的零极点增益模型G 。
),,,(Ts k p z zpk G = 返回离散系统的零极点增益模型G 。Ts 为采样周期,当Ts =-1或者Ts =[]时,系统的采样周期未定义。
)(G zpk Gzpk = 可将任意的LTI 模型G 转换为零极点增益模型Gzpk 。
3) 状态空间模型(SS 模型)
令多输入多输出线性定常连续和离散系统的状态空间表达式分别为
)()()(t Bu t Ax t x
+= )()()(t Du t Cx t y += (1-5)
和
)()()1(k Bu k Ax k x +=+
)()()(k Du k Cx k y += (1-6)
在MATLAB 中,连续系统和离散系统的状态空间模型都用MATLAB 提供的函数ss ( )建立。函数ss ( )不仅能用于建立系统的状态空间模型,也能用于将系统的传递函数模型和零极点增益模型转换为状态空间模型。该函数的调用格式如下:
),,,(D C B A ss G = 返回连续系统的状态空间模型G 。
),,,,(Ts D C B A ss G = 返回离散系统的状态空间模型G 。Ts 为采样周期,当Ts =1或者Ts =[]时,系统的采样周期未定义。
)(G ss Gss = 可将任意的LTI 模型G 转换为状态空间模型Gss 。
2.模型转换
上述三种LTI 模型之间可以通过函数tf( ),zpk( )和ss( )相互转换。线性定常系统的传递函数模型和零极点增益模型是唯一的,但系统的状态空间模型是不唯一的。函数ss( )只能将传递函数模型和零极点增益模型转换为一种指定形式的状态空间模型。
三 实验内容
1. 已知系统的传递函数 (a) )3()1(4)(2++=s s s s G (b) 3
486)(22++++=s s s s s G (1)建立系统的TF 或ZPK 模型。
(2)将给定传递函数用函数ss( )转换为状态空间表达式。再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。
解:(a ))
3()1(4)(2++=s s s s G (1)TF 模型
在命令窗中运行下列命令
>> num=4;den=[1 5 7 3];G=tf(num,den)
Transfer function:
4
---------------------
s^3 + 5 s^2 + 7 s + 3
ZPK 模型
在命令窗中运行下列命令
>> z=[];p=[0 -1 -1 -3];k=4;G=zpk(z,p,k)
Zero/pole/gain:
4
---------------
s (s+1)^2 (s+3)
(2)在命令窗中运行下列命令
>> num=4;den=[1 5 7 3];Gtf=tf(num,den);
>> Gss=ss(Gtf)
a =
x1 x2 x3
x1 -5 -0.875 -0.09375
x2 8 0 0
x3 0 4 0
b =
u1
x1 0.25
x2 0