- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
控制系统模型的建立
实验目的
1、掌握利用MATLAB建立控制系统模型的方法。
2、掌握系统的各种模型表述及相互之间的转换关系。
3、学习和掌握系统模型连接的等效变换。
实验原理
系统模型的MATLAB描述
系统的模型描述了系统的输入、输出变量以及内部各变量之间的关系,表征一个系统的模型有很多种,如微分方程、传递函数模型、状态空间模型等。这里主要介绍系统传递函数(TF)
1)传递函数(TF)模型
传递函数是描述线性定常系统输入-输出关系的一种最常用的数学模型,其表达式一般为
在MATLAB中,直接使用分子分母多项式的行向量表示系统,即
调用tf函数可以建立传递函数TF对象模型,调用格式如下:
tfdata函数可以从TF对象模型中提取分子分母多项式,调用格式如下:
2)零极点增益(ZPK)模型
传递函数因式分解后可以写成
式中, 称为传递函数的零点, 称为传递函数的极点, 称为传递系数(系统增益)。即:
调用zpk函数可以创建ZPK对象模型,调用格式如下:
同样,MATLAB提供了zpkdata命令用来提取系统的零极点及其增益,调用格式如下:
函数pzmap可用于求取系统的零极点或绘制系统的零极点图,调用格式如下:
3)状态空间(SS)模型
由状态变量描述的系统模型称为状态空间模型,由状态方程和输出方程组成:
其中:x为n维状态向量;u为r维输入向量;y为m维输出向量;A为n×n方阵,称为系统矩阵;B为n×r矩阵,称为输入矩阵或控制矩阵;C为m×n矩阵;D为m×r矩阵,称为直接传输矩阵。
在MATLAB中,直接用矩阵组表示系统,调用ss函数可以创建SS对象模型,调用格式如下:
同样,MATLAB提供了ssdata命令用来提取系统的A, B, C, D矩阵, 调用格式如下:
4)三种模型之间的转换
上述三种模型之间可以相互转换,MATLAB实现方法如下:
TF模型→ZPK模型:zpk(SYS)或tf2zp(num, den)
TF模型→SS模型:ss(SYS)或tf2ss(num, den)
ZPK模型→TF模型:tf(SYS)或zp2tf(z, p, k)
ZPK模型→SS模型:ss(SYS)或zp2ss(z, p, k)
SS模型→TF模型:tf(SYS)或ss2tf(A, B, C, D)
SS模型→ZPK模型:zpk(SYS)或ss2zp(A,B,C,D)
系统模型的连接
在实际应用中,整个系统是由多个单一的模型组合而成基本组合方式有串联连接、并联连接和反馈连接
在实际应用中,整个控制系统是由多个单一的模型组合而成,基本的组合方式有串联连接、并联连接和反馈连接。在MATLAB中可以直接使用“*”运算实现串联连接,使用“+”运算实现并联连接。反馈系统传递函数求解可以通过命令feedback实现,调用格式如下:
其中,G为前向传递函数,H为反馈传递函数;当sign = +1时,GH为正反馈系统传递函数;当sign = -1时,GH为负反馈系统传递函数;默认是负反馈系统。
实验内容及结果
1、已知控制系统的传递函数如下:
试用MATLAB建立系统的传递函数模型、零极点增益模型及系统的状态空间方程模型,并绘制系统的零极点图。
代码:
num = [2 18 40];
den = [1 5 8 6];
Gtf = tf(num, den)
Gzpk = zpk(Gtf)
Gss = ss(Gtf)
pzmap(Gzpk);
grid on;
系统传递函数模型:
Gtf =
2 s^2 + 18 s + 40
s^3 + 5 s^2 + 8 s + 6
零极点增益模型:
Gzpk =
2 (s+5) (s+4)
(s+3) (s^2 + 2s + 2)
系统的状态空间方程模型:
Gss =
a =
x1 x2 x3
x1 -5 -2 -1.5
x2 4 0 0
x3 0 1 0
b =
u1
x1 4
x2 0
x3 0
c =
x1 x2 x3
y1 0.5 1.125 2.5
d =
u1
y1 0
零极点图:
系统的零极点图
2、已知控制系统的状态空间方程如下
试用MATLAB建立系统的传递函数模型、零极点增益模型及系统的状态空间方程模型,并绘制系统零极点图。
代码:
a = [0 1 0 0; 0 0 1 0; 0 0 0 1; -1 -2
文档评论(0)