自动控制1用matlab建立系统数学模型

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

黄淮学院电子科学与工程系 自动控制原理课程验证性实验报告

实验名称 用MATLAB 建立系统数学模型 实验时间 2012 年10月11日 学生姓名 实验地点 同组人员

专业班级

1、实验目的

1)熟悉MATLAB 实验环境,掌握MATLAB 命令窗口的基本操作。

2)掌握MATLAB 建立控制系统数学模型的命令及模型相互转换的方法。 3)掌握使用MATLAB 命令化简模型基本连接的方法。

4)学会使用Simulink 模型结构图化简复杂控制系统模型的方法。 2、实验主要仪器设备和材料: MATLAB 软件

3、实验内容和原理:(1)控制系统模型的建立

控制系统常用的数学模型有四种:传递函数模型(tf 对象)、零极点增益模型(zpk 对象)、结构框图模型和状态空间模型(ss 对象)。经典控制理论中数学模型一般使用前三种模型,状态空间模型属于现代控制理论范畴。 1)传递函数模型(也称为多项式模型)。连续系统的传递函数模型为

101101()

()()

m m m n n n b s b s b num s G s n m a s a s a den s --++

+=

=≥++

+, 在MATLAB 中用分子、分母多项式系数按s 的降幂次序构成两个向量:

0101[]

[]m n num b b b den a a a ==,,,,,,,。

用函数tf( )来建立控制系统的传递函数模型,用函数printsys( )来输出控制系统的函数,其命令调用格式为

()int ()sys tf num den pr sys num den =,,,

Tips :对于已知的多项式模型传递函数,其分子、分母多项式系数两个向量可分别用

.{1}sys num 与.{1}sys den 命令求出。这在MATLAB 程序设计中非常有用。

2)零极点增益模型。零极点模型是传递函数模型的另一种表现形式,其原理是分别对原传递函数的分子、分母进行因式分解,以获得系统的零点和极点的表示形式。 1212()()()

()()()()

m n K s z s z s z G s s p s p s p ---=

---,式中,K 为系统增益;12m z z z ,

,为系统零点;12m p p p ,,为系统极点。在MATLAB 中,用向量z p k ,,构成矢量组[]z p k ,,表示系统。

即1212[][][]m n z z z z p p p p k k ===,

,,,,,,, 用函数命令()zpk 来建立系统的零极点增益模型,其函数调用格式为

()sys zpk z p k =,,

Tips :对于已知的零极点增益模型传递函数,其零极点可分别用.{1}sys z 与.{1}sys p 命令求出。这在MATLAB 程序设计中非常有用。

3)建立二阶控制系统标准模型。

在MATLAB 中,用函数命令ord2( )来建立二阶控制系统标准模型22

1

2n n

s s ζωω++ ,其

函数调用格式为[num,den]=ord2(n ω,zeta).

3、实验方法、步骤: 1) 已知系统传递函数25

()(1)(44)

G s s s s s =

+++

打开 MATLAB 软件,并在其输入:

num=5;den=conv([1,0],conv([1,1],[1,4,4])); Gs=tf(num,den)

2)已知系统传递函数232242

()(4)(4)

s s G s s s s s ++=++

打开 MATLAB 软件,并在其输入: num=[1 4 2];

den=conv([1 0],conv([1 0],conv([1 0],conv([1 0 4],[1 4 0]))));Gs=tf(num,den) 3)已知系统传递函数 228(1)(1)

()(5)(6)(1)

s j s j G s s s s s +-++=

+++

打开 MATLAB 软件,并在其输入:

k=8;z=[j-1,-j-1];p=[0,0,-5,-6,j,-j];sys=zpk(z,p,k)

5、实验现象、实验数据记录: 1)、Transfer function: 5

------------------------- s^4 + 5 s^3 + 8 s^2 + 4 s

2)、Transfer function: s^2 + 4 s + 2 ---------------------------- s^7 + 4 s^6 + 4 s^5 + 16 s^4 3 )、Zero/pole/gain: 8 (s^2 + 2s + 2) -------------------------- s^2 (s+5) (s+6) (s^2 + 1)

32

1

()(1)(1)

G s s s s s =

+++ 6、实验现象、实验数据的分析:

Matlab 传递函数中,(a+bx1+cx2+dx3)* (a+bx1+cx2+dx3)* (a+bx1+cx2+dx3)运算需由conv([d c b a],conv([d c b a],[d c b a]))实现,分子分母中幂数多项式需由conv()函数实现,且一次只能实现两个多项式的卷积。同时有多个多项式时,使用嵌套模式,多次使用conv()函数。

7、实验结论:

通过该试验我们熟悉MATLAB 实验环境,掌握MATLAB 命令窗口的基本操作;掌握MATLAB 建立控制系统数学模型的命令及模型相互转换的方法;掌握了使用各种函数命令建立控制系统数学模型;完成实验的范例题和自我实践,并记录结果;编写M 文件程序,完成简单连接的模型等效传递函数,并求出相应的零极点。 指导教师评语和成绩评定:

实验报告成绩:

指导教师签字:

年 月 日

相关文档
最新文档