计算机建模与仿真

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

实验项目名称:控制系统模型的建立与仿真 实验学时: 4 同组学生姓名: 实验地点: 实验日期: 2018.4 实验成绩: 批改教师: 批改时间: 一、实验目的和要求

1. 熟悉MATLAB 控制系统工具箱中线性控制系统传递函数模型的相关函数;

2.熟悉SIMULINK 模块库,能够使用SIMULINK 进行控制系统模型的建立及仿真。

二、实验仪器和设备

1、PC 机1台并安装MATLAB7.0以上版本。

三、实验过程

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 设系统传递函数

13422

35234

23+++++++=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)

任务一:将下列传递函数分别采用上面两种输入方式进行输入,并截图记录。

4325

34

++++=s s s s G

)1)(43()1()

4.2(5222+++++=

s s s s s G 提示:借助conv( )函数获得分子和分母多项

式系数

(2)zpk ()函数可得到控制系统的零极点形式的传递函数

该函数的调用格式为 G = zpk ( Z, P,K ) 其中K 为系统传函零极点形式的增益,Z, P 分别为系统传递函数的零点和极点列向量。返回的G 为传递函数形式。

例2 设系统传递函数

)1)(2)(3)(4()

8538.27305.2)(8538.27305.2)(539.1(++++-++++=

s s s s j s j s s G

任务二:在MATLAB 命令窗口中验证下面的命令,并截图记录。

(3)已知传递数函的分子、分母多项式系数,可用tf2zp( )函数求出传函的零点向量、极点向量和增益。该函数的调用格式为 [ Z, P,K] = tf2zp ( num, den ) 已知传递数函的零点、极点和增益,可用zp2tf ( )函数求出传函的分子、分母多项式系数。该函数的调用格式为[ num, den]= zp2tf ( Z, P,K)

任务三:以

13422

35234

23+++++++=s s s s s s s G 为例,练习这两个函数的使用,并截图记录。

任务四:在SIMULINK 环境下搭建阶跃响应时的模型,并用示波器观测输出波形,将示波器横轴终值修改为50,记录仿真图及示波器波形并截图记录。

A)

221

)(2+++=

s s s s G (传递函数形式)

B )

)6)(5)(1(2

)(++++=

s s s s s G (零极点形式)

2. 求图示系统的传递函数,其中K1=10,K2=20。

0.2

0.1s2+1

0.8

0.2s

K

2

3. 已知系统状态空间模型为:

求其零极点模型。

4. 系统的零极点增益模型如下:

求系统的传递函数模型和状态空间模型。

[]u x y u x x +=⎥⎦⎤

⎢⎣⎡+⎥⎦⎤⎢⎣⎡-=31102110 )

5)(2)(1()

3(6)(++++=s s s s s G

四、实验结果与分析

1、写出控制系统的几种传递函数模型,它们之间是如何互相转换的?

G(s)=C(s)/R(s)

=(b1Sm+b2Sm-1+…+b m)/(a1S n+a2S n-1+…+a n)

=num(s)/den(s)

在MATLAB中,用函数命令tf( )来建立控制系统的传函模型,或者将零极点增益模型、状态空间模型转换为传函模型。

tf( )函数命令的调用格式为:(圆括号中的逗号不能用空格来代替)

sys = tf(num,den)[G=tf (num,den )]

其中,函数的返回变量sys或G 为连续系统的传函模型;函数输入参量num 和den分别为系统的分子分母多项式的系数向量。

conv()函数为标准的MATLAB函数,用来求取2个向量的卷积,多项式乘法也可用此函数来计算。conv()函数允许任意地多层嵌套,从而表示复杂的计算。

2、说说你在使用MTALB软件进行控制系统建模与仿真过程中所遇到的问题和解

决的方法。(不少于50字)

在本次实验中,我加深了对此软件的认识,了解其在自动控制中的重要作用。通过从此次实验的锻炼,提高了自己的动手能力和自我学习能力。不懂时会查书籍和问题讨论。努力锻炼我对于这个软件的运用能力跟理解能力。

相关文档
最新文档