实验一 MATLAB 中控制系统模型的建立与仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一 MATLAB 中控制系统模型的建立与仿真
一、 实验目的
(1)熟悉MATLAB 控制系统工具箱中线性控制系统传递函数模型的相关函数。
(2)熟悉SIMULINK 模块库,能够使用SIMULINK 进行控制系统模型的建立及仿真。
二、 实验仪器
PC 计算机一台,MATLAB 软件1套
三、实验内容
1. 熟悉线性控制系统传递函数模型的相关函数。
(1)tf ( )函数可用来输入系统的传递函数
该函数的调用格式为 G = tf ( num , den );
其中num , den 分别为系统传递函数的分子和分母多项式系数向量。返回的G 为系统的传递函数形式。
但如果分子或分母多项式给出的不是完全的展开的形式,而是若干个因式的乘积,则事先需要将其变换为完全展开的形式,两个多项式的乘积在MATLAB 下借用卷积求取函数conv( )得出,其调用格式为 p=conv(p1,p2)
MATLAB 还支持一种特殊的传递函数的输入格式,在这样的输入方式下,应该先用s=tf(’s ’)定义传递函数算子,然后用数学表达式直接输入系统的传递函数。 请自己通过下面两个例子来演示和掌握tf ()和s=tf(’s ’)算子这两种输入方式。
例1 设系统传递函数 1
34223523423+++++++=s s s s s s s G 输入方式一:num = [1, 5, 3, 2]; den = [1, 2, 4, 3, 1]; %分子多项式和分母多项式系数向量
G = tf ( num , den ) %这样就获得系统的数学模型G
输入方式二:s=tf(’s ’); G=( s^3 + 5* s^2 + 3* s + 2)/( s^4 + 2*s^3 + 4* s^2 + 3* s + 1) 任务一:将下列传递函数分别采用上面两种输入方式进行输入,并记录命令。 ① 432534
++++=s s s s G
② )1)(43()1()4.2(5222
+++++=s s s s s G
提示:借助conv( )函数获得分子和分母多项式系数
conv 表示相乘,如(s+1)(s+2),conv([1,1],[1,2])
(2)tfdata()函数可提取控制系统传递函数的分子多项式num 和分母多项式den
如输入命令:
s=tf('s');G=5*(s+2.4)/((s+1)^2*(s^2+3*s+4)*(s^2+1))
[num,den]=tfdata(G,'v') %其中'v'表示想获得num 和den 的数值
任务二:在MATLAB 命令窗口中验证以上命令。
(3)zpk ()函数可得到控制系统的零极点形式的传递函数
该函数的调用格式为 G = zpk ( Z, P,K )
其中K 为系统传函零极点形式的增益,Z, P 分别为系统传递函数的零点和极点列向量。返回的G 为传递函数形式。
例3 设系统传递函数 )
1)(2)(3)(4()8538.27305.2)(8538.27305.2)(539.1(++++-++++=s s s s j s j s s G 任务三:在MATLAB 命令窗口中验证下面的命令:
Z=[-1.539; -2.7305+2.8538i;-2.7305-2.8538i]; %注意使用列向量,另外注意符号
P=[-1;-2;-3;-4]; G=zpk(Z,P,1)
(4)已知传递数函的分子、分母多项式系数,可用tf2zp( )函数求出传函的零点向量、极点向量和增益。该函数的调用格式为 [ Z, P,K] = tf2zp ( num , den ) 这里K=1
已知传递数函的零点、极点和增益,可用zp2tf ( )函数求出传函的分子、分母多项式系数。该函数的调用格式为[ num , den ]= zp2tf ( Z, P,K) 这里K=1 任务四:以1
34223523423+++++++=s s s s s s s G 为例,练习这两个函数的使用。
2. 利用SIMULINK 进行控制系统模型的建立及仿真
(1) SIMULINK 模块库
SIMULINK 提供了9 类基本模块库:连续系统模块库(Continous )、离散系统模块库(Discrete )、函数与表模块库(Function&Tables )、数学运算模块库(Math )、非线性系统模块库(Nonlinear )、信号模块库(Signal Routing )、输出模块库(Sinks )、输入源模块库(Sourses )、子系统模块库(Subsystems )等基本模块库。课本附录二对本实验书中用到的5个模块:连续系统模块库(Continous )、数学运算模块库(Math )、信号模块库(Signal Routing )、输出模块库(Sinks )、和输入源模块库(Sourses )的功能进行了介绍。
(2) 用SIMULINK 建立系统模型及仿真
例1 以求惯性环节2
8.05+=s G 的阶跃响应为例,说明SIMULINK 中系统模型的建立过程。 ①开启 SIMULINK 窗口及模块库
启动方式一:在 MATLAB 命令窗口,键入“SIMULINK ”
启动方式二:点击窗口上面的 SIMULINK 图标。如下所示,就打开了 SIMULINK 窗口,进入SIMULINK 库模块浏览界面。
图1 启动SIMULINK
②建立新文件:在 SIMULINK 窗口下,用鼠标点击 new model 图标或选取菜单 File 打开
Simulink Library Browser 浏览器