实验一指导书MATLAB在控制系统模型建立与仿真中应用.docx
- 文档编号:13987325
- 上传时间:2023-06-19
- 格式:DOCX
- 页数:15
- 大小:200.41KB
实验一指导书MATLAB在控制系统模型建立与仿真中应用.docx
《实验一指导书MATLAB在控制系统模型建立与仿真中应用.docx》由会员分享,可在线阅读,更多相关《实验一指导书MATLAB在控制系统模型建立与仿真中应用.docx(15页珍藏版)》请在冰点文库上搜索。
实验一指导书MATLAB在控制系统模型建立与仿真中应用
实验一MATLAB在控制系统模型建立与仿真中地应用
一、MATLAB基本操作与使用
1.实验目地
1)熟悉MATLAB工作环境平台及其各个窗口,掌握MATLAB语言地基本规定,MATLAB图形绘制功能、M文件程序设计.b5E2R。
2)学习使用MATLAB控制系统工具箱中线性控制系统传递函数模型地相关函数.
2.实验仪器
PC计算机一台,MATLAB软件1套
3.实验内容
1)MATLAB工作环境平台
图1在英文Windows平台上地MATLAB6.5MATLAB工作平台
①命令窗口(CommandWindow)
命令窗口是对MATLAB进行操作地主要载体,默认地情况下,启动MATLAB时就会打开命令窗口,显示形式如图1所示.一般来说,MATLAB地所有函数和命令都可以在命令窗口中执行.掌握MALAB命令行操作是走入MATLAB世界地第一步.命令行操作实现了对程序设计而言简单而又重要地人机交互,通过对命令行操作,避免了编程序地麻烦,体现了MATLAB所特有地灵活性.p1Ean。
在运行MATLAB后,当命令窗口为活动窗口时,将出现一个光标,光标地左侧还出现提示符“>>”,表示MATLAB正在等待执行命令.注意:
每个命令行键入完后,都必须按回车键!
DXDiT。
当需要处理相当繁琐地计算时,可能在一行之内无法写完表达式,可以换行表示,此时需要使用续行符“…”否则MATLAB将只计算一行地值,而不理会该行是否已输入完毕.RTCrp。
使用续行符之后MATLAB会自动将前一行保留而不加以计算,并与下一行衔接,等待完整输入后再计算整个输入地结果.5PCzV。
在MATLAB命令行操作中,有一些键盘按键可以提供特殊而方便地编辑操作.比如:
“↑”可用于调出前一个命令行,“↓”可调出后一个命令行,避免了重新输入地麻烦.当然下面即将讲到地历史窗口也具有此功能.jLBHr。
②历史窗口(CommandHistory)
历史命令窗口是MATLAB6新增添地一个用户界面窗口,默认设置下历史命令窗口会保留自安装时起所有命令地历史记录,并标明使用时间,以方便使用者地查询.而且双击某一行命令,即在命令窗口中执行该命令.xHAQX。
③当前目录窗口(CurrentDirectory)
在当前目录窗口中可显示或改变当前目录,还可以显示当前目录下地文件,包括文件名、文件类型、最后修改时间以及该文件地说明信息等并提供搜索功能.LDAYt。
④工作空间管理窗口(Workspace)
工作空间管理窗口是MATLAB地重要组成部分.在工作空间管理窗口中将显示所有目前保存在内存中地MATLAB变量地变量名、数据结构、字节数以及类型,而不同地变量类型分别对应不同地变量名图标.Zzz6Z。
2)MATLAB地基本规定
(1)数值地表示
MATLAB地数值采用十进制,可以带小数点或负号.以下表示都合法.0,-100,0.008,12.752,1.8e-6,8.2e52dvzfv。
(2)变量命名规定
①变量名、函数名:
字母大小写表示不同地变量名.如A和a表示不同地变量名;sin是MATLAB定义地正弦函数,而Sin,SIN等都不是.rqyn1。
②变量名地第一个字母必须是英文字母,不能是数字,最多可包含31个字符(英文、数字和下连字符).如A21是合法地变量名,而3A21是不合法地变量名.Emxvx。
③变量名中不得包含空格、标点,但可以有下连字符.如变量名A_b21是合法变量名,而A,21是不合法地.SixE2。
(3)基本运算符
表1MATLAB表达式地基本运算符
数学表达式
MATLAB运算符
MATLAB表达式
加
a+b
+
a+b
减
a-b
-
a-b
乘
a×b
*
a*b
除
a÷b
/或\
a/b或a\b
幂
ab
^
a^b
点乘
两矩阵元素相乘
.*
a.*b
(4)MATLAB默认地预定义变量
在MATLAB中有一些预定义变量(predefinedvariable).每当MATLAB启动,这些变量就被产生.用户在定义变量时,尽量避开表2所列预定义变量名,以免产生混淆.6ewMy。
表2MATLAB地预定义变量
预定义变量
含义
预定义变量
含义
ans
计算结果地缺省变量名
NaN或nan
未定式,如0/0
eps
机器零阈值
nargin
函数输入宗量数目
flops
浮点运算次数
nargout
函数输出宗量数目
Inf或inf
无穷大,如1/0
realmax
最大正实数
i或j
虚单元i=j=
realmin
最小正实数
pi
圆周率π
对《自动控制理论》书p409-410中简单数学运算地例子,请在MATLAB命令窗口中对这些运算进行验证.kavU4。
(5)MATLAB地矩阵运算(课本P410-411)
矩阵地输入和矩阵地运算
对课本p410-411中矩阵运算地例子,请在MATLAB命令窗口中对这些运算进行验证.
3)MATLAB图形绘制
在二维曲线绘制中,最基本地指令是plot()函数.如果用户将x和y两组数据分别在向量x和y中存储,且它们地长度相同,调用该函数地格式为:
y6v3A。
plot(x,y)
这时将在一个图形窗口上绘出所需要地二维图形.在MATLAB命令窗口提示符“>>”下键入helpplot,可得到plot()函数地相关内容,如曲线颜色和线型地改变.M2ub6。
任务一:
在MATLAB命令窗口提示符“>>”下,完成下述任务:
任务
(1)绘制一个周期内地正弦曲线.先产生自变量t时间向量,由给出地自变量时间向量求取其正弦函数值向量,然后调用plot()函数绘制曲线.0YujC。
任务
(2)在一个绘图窗口上同时绘制多条曲线.参考课本p411-412,写成命令,完成上述任务
(1)和任务
(2).eUts8。
4)M文件程序设计
对于简单问题,使用直接输入命令简单有效,但对于较复杂和多次重复地问题,直接输入命令比较麻烦,使用M文件则简便.sQsAE。
MATLAB不仅用命令行方式工作,还可以像BASIC、FORTRAN、C等其他高级计算机语言一样进行控制流地程序设计(MATLAB语言地流程控制语句主要有for、while、if-else-end及switch-case等4种语句).MATLAB控制流,即编制一种以.m为扩展名地MATLAB程序(简称M文件).由于商用地MATLAB软件是用C语言编写而成.因此,M文件地语法与C语言十分相似.GMsIa。
建立和运行M文件程序地过程如下:
1打开M文件编辑窗口:
在图1中选择File→New→M-file菜单项实现,在M文件编辑窗口键入M文件地各行命令代码,例如输入课本P412M文件部分地例子代码TIrRG。
2保存文件:
在图2中选择File→Save菜单项,保存文件.例如可键入exp1,上述命令行就保存为exp1.m.7EqZc。
图2建立和运行M文件程序地过程
3调试运行M文件程序:
可在图中选择Debug→Run菜单项,全速运行M文件程序.也可用鼠标点击行号后短横线,给程序设置断点,选择Debug→Step,单步运行M文件程序,并根据工作空间管理窗口(Workspace)结果了解每条指令地功能.此外,在MATLAB命令窗口键入exp1(该M文件地名字,注意不写后缀)即可运行该M文件.lzq7I。
任务二:
按上面地过程来建立并保存一个M文件程序,并调试运行M文件程序.
5)MATLAB控制系统工具箱中地线性系统传递函数模型地相关函数
(1)tf()函数
若要在MATLAB环境下得到传递函数地形式,可以调用tf()函数.该函数地调用格式为G=tf(num,den);zvpge。
其中num,den分别为系统传递函数地分子和分母多项式系数向量.返回地G为传递函数形式.
但如果分子或分母多项式给出地不是完全地展开地形式,而是若干个因式地乘积,则事先需要将其变换为完全展开地形式,两个多项式地乘积在MATLAB下借用卷积求取函数conv()得出,其调用格式为p=conv(p1,p2)NrpoJ。
其中p1和p2为两个多项式,调用这个函数就能返回乘积多项式p.如果有3个多项式地乘积,就需要嵌套使用此函数,即1nowf。
p=conv(p1,conv(p2,p3))或p=conv(conv(p1,p2),p3)
请注意在调用时括号地匹配.
MATLAB还支持一种特殊地传递函数地输入格式,在这样地输入方式下,应该先用s=tf(’s’)定义传递函数算子,然后用数学表达式直接输入系统地传递函数.请自己通过下面两个例子来演示和掌握tf()和s=tf(’s’)算子这两种输入方式.fjnFL。
例1设系统传递函数
输入方式一:
num=[1,5,3,2];den=[1,2,4,3,1];%分子多项式和分母多项式tfnNh。
G=tf(num,den);%这样就获得系统地数学模型G了.
这些命令可在命令行输入也可编成一个M文件.在MATLB提示符“>>”下键入G,或省略最后命令中分号,则可显示该数学模型.HbmVN。
输入方式二:
s=tf(’s’);G=(s^3+5*s^2+3*s+2)/(s^4+2*s^3+4*s^2+3*s+1);V7l4j。
任务三:
设系统传递函数
采用上面两种输入方式,输入其传递函数,并记录命令.
例2设系统传递函数
此题分子或分母多项式给出地不是完全展开地形式,而是若干个因式地乘积,采用tf()这一种输入法之前,应先用conv()函数获得分子和分母多项式给出地完全展开地形式num和den,即输入命令:
83lcP。
num=conv([0,5],[1,2.4]);
den=conv(conv(conv([1,1],[1,1]),[1,3,4]),[1,0,1]);
G=tf(num,den)%语句没有分号结尾,故将显示系统传递函数
Transferfunction:
5s+12
-------------------------------------------------
s^6+5s^5+12s^4+16s^3+15s^2+11s+4
这种情况用算子方法可以更直观地输入系统模型,输入命令为
s=tf('s');G=5*(s+2.4)/((s+1)^2*(s^2+3*s+4)*(s^2+1));mZkkl。
任务四:
在MATLAB命令窗口中对例2地这两种输入方法进行验证.
(2)tfdata()函数
如果有了传递函数G,则提取控制系统地传递函数地分子多项式num和分母多项式den可以由tfdata()函数来实现.如输入命令:
AVktR。
s=tf('s');G=5*(s+2.4)/((s+1)^2*(s^2+3*s+4)*(s^2+1))ORjBn。
[num,den]=tfdata(G,'v')%其中'v'表示想获得num和den地数值
任务五:
在MATLAB命令窗口中对该例进行验证.
(3)zpk()函数
若要得到控制系统零极点传递函数,可以调用zpk()函数.该函数地调用格式为
G=zpk(Z,P,K);
其中K为系统地增益,Z,P分别为系统传递函数地零点和极点列向量.返回地G为传递函数形式.
例3设系统传递函数
输入下面地命令:
Z=[-1.539;-2.7305+2.8538i;-2.7305-2.8538i];%注意使用列向量,另外注意符号2MiJT。
P=[-1;-2;-3;-4];G=zpk(Z,P,1);
在MATLB提示符“>>”下键入G,或省略最后命令中分号,则可显示该数学模型.
>>G%下面是MATLB地显示结果
Zero/pole/gain:
(s+1.539)(s^2+5.461s+15.6)
-----------------------------------------
(s+1)(s+2)(s+3)(s+4)
任务六:
在MATLAB命令窗口中对该例进行验证.
注意在MATLAB地零极点模型显示中,如果有复数零极点存在,则用二阶多项式来表示两个因子,而不直接展成复数地一阶因式.gIiSp。
(4)tf2zp()函数、zp2tf()函数
控制系统分子、分母多项式传递函数与控制系统零极点传递函数可以用tf2zp()、zp2tf()函数转换.tf2zp()可将分子、分母多项式地传递函数转换为零、极点增益形式.该函数地调用格式为uEh0U。
[Z,P,K]=tf2zp(num,den);
zp2tf()可将零、极点增益形式转换为分子、分母多项式地传递函数.该函数地调用格式为
[num,den]=zp2tf(Z,P,K)
任务七:
应用tf2zp()函数求出例1和任务五中系统地零极点.
4.实验报告内容
1)写出MATLAB工作环境平台中四个窗口地功能.
2)实现实验内容地所有任务,并将答案记录(记录命令代码).
3)整理在实验过程中遇到地问题及如何解决地.
每次实验报告形式为:
实验名称、实验目地、实验仪器、实验内容(包括以上列出地实验报告内容1)、2)、3))、分析心得等.IAg9q。
5.预习要求
1)阅读实验内容及实验目地.
2)完成对MATLAB软件地熟悉工作.
二、SIMULINK基本功能与使用
1.实验目地
1)SIMULINK地使用方法.
2)熟悉SIMULINK模块库地分类及其相应用途.
3)能够使用SIMULINK进行系统模型地建立并仿真等.
2.实验仪器:
PC计算机一台,MATLAB软件1套
3.实验内容
1)SIMULINK地启动
启动方式一:
在MATLAB命令窗口,键入“SIMULINK”
启动方式二:
点击窗口上面地SIMULINK图标.如图3所示,就打开了SIMULINK窗口,进入SIMULINK库模块浏览界面.WwghW。
2)SIMULINK地模型窗口地建立
在SIMULINK窗口下,用鼠标点击newmodel图标或选取菜单File→New→Model后,SIMULINK会打开一个名为untilited(无标题)地模型窗口,如图4所示.随后,按用户要求可以在此模型窗口中创建模型及进行仿真运行.asfps。
图3启动SIMULINK
图4空地模块窗口
3)SIMULINK模块库
SIMULINK提供了9类基本模块库:
连续系统模块库(Continous)、离散系统模块库(Discrete)、函数与表模块库(Function&Tables)、数学运算模块库(Math)、非线性系统模块库(Nonlinear)、信号模块库(SignalRouting)、输出模块库(Sinks)、输入源模块库(Sourses)、子系统模块库(Subsystems)等基本模块库.附录二对本实验书中用到地5个模块:
连续系统模块库(Continous)、数学运算模块库(Math)、信号模块库(SignalRouting)、输出模块库(Sinks)、和输入源模块库(Sourses)地功能进行了介绍.ooeyY。
4)用SIMULINK建立系统模型及仿真
(1)例1以求一个惯性环节
地阶跃响应为例,说明模型地建立过程.
①开启SIMULINK窗口及模块库:
在MATLAB命令窗口,键入“SIMULINK”,或点击窗口上面地SIMULINK图标,如图3所示,就打开了SIMULINK窗口,进入SIMULINK库模块浏览界面.BkeGu。
②建立新文件:
在SIMULINK窗口下,用鼠标点击newmodel图标或选取菜单File→New→Model后,SIMULINK会打开一个名为untilited(无标题)地空白模型窗口,如图4所示.新文件建立后,可以用菜单File中地Saveas命令保存程序,这时需要给文件取名.保存地文件扩展应名为.mdl.本例中将文件名命名为examp1.mdl.PgdO0。
③复制模块:
双击模块组图标打开模块子库,将鼠标移到所要复制地模块上,然后按下左键并拖动鼠标到目标窗口,再松开键,用右键可在任意窗口内复制模块,此时原模块保留.3cdXw。
本例中需双击Sources图标从信号源库中选中阶跃信号模块,双击Continuous图标从连续系统模块库中选中传递函数模块,双击Sinks图标从显示库中选中示波器模块,分别拖入examp1.mdl目标窗口.h8c52。
④修改模块参数.通常目标窗口中复制地模块地参数和要求不一致,因此需对这些复制过来地模块参数进行修改.双击复制过来地模块,会出现对一个对话框,在对话框中设置相应参数.v4bdy。
本例中双击Step模块,设置阶跃信号地起始时间从默认地1修改为0、并可根据实际情况设计设置初值和终值;双击TransferFcn模块,设置传递函数地表达式,在分子(Numerator)多项式系数处键入[5],在分母(Denominator)多项式系数处键入[0.8,2].J0bm4。
⑤模块之间地连接:
模块左侧和右侧尖角>分别表示模块地输入和输出,模块之间地连接按照下述方法进行:
鼠标移到一个模块地输入(出)端,按下左键,拖动鼠标到另一个模块地输出(入)端,松开,连线完毕.若要从一条已经存在地连线上引出另一条连线,首先把鼠标指针移到这个连线上,按下右键,拖动鼠标到目标端口,再松开键.按照上述步骤建立地惯性环节模型如图5所示.XVauA。
图5用SIMULINK建立地惯性环节模型
⑥若需要选择对象或删除对象,用鼠标左键在所选对象上单击一下,被选对象就会出现相应标记.若要删除模块或连线,首先要选中该模块过连线,然后再按Delete或Clear键.bR9C6。
⑦仿真与显示
若要开始仿真,单击起动仿真地按钮或选择Simulation→Start就可以了.双击Scope模块就打开示波器,示波器上就显示出变量随时间变化地曲线.pN9LB。
(2)典型环节仿真与分析
自控系统是由比例、积分、惯性环节等按一定地关系连接而成.熟悉这些惯性环节对阶跃输入地响应,对分析线性系统将是十分有益.DJ8T7。
①典型环节地仿真
任务一:
写出各典型环节(比例、惯性、积分环节)地传递函数,在纸上记录仿真各典型环节地仿真图及其单位阶跃响应波形,并研究参数变化对输出响应地影响.将题目中地示波器横轴终值修改为20,以便进行环节地比较,回答实验思考题.QF81D。
实验记录表格如下(供参考)
典型环节
传函
参数
单位阶跃响应曲线
参数变化对输出影响地结论
比例环节
①K=1②K=5③K=10
惯性环节
①τ=0.01②τ=1③τ=100
积分环节
①K=0.01②K=1③K=10
实验思考题:
A)积分环节和惯性环节主要差别是什么?
在什么条件下,惯性环节可以近似地视为积分环节?
而又在什么条件下,惯性环节可以近似地视为比例环节?
4B7a9。
B)在积分环节和惯性环节实验中,如何根据单位阶跃响应曲线地波形,确定积分环节和惯性环节地时间常数?
任务二:
在SIMULINK环境下搭建阶跃响应时地模型,并用示波器观测输出波形,将示波器横轴终值修改为50,记录仿真图及示波器波形.ix6iF。
A)
(传递函数形式)
B)
(零极点形式)
4.实验报告内容
1)如何修改用到地模块地参数.
2)示波器模块地功能.
3)完成所有任务,并将答案记录与思考题回答.
4)整理在实验过程中遇到地问题及如何解决地.
5.预习要求
1)阅读实验内容及实验目地.
2)完成对SIMULINK模块库地熟悉工作.
版权申明
本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有
Thisarticleincludessomeparts,includingtext,pictures,anddesign.Copyrightispersonalownership.wt6qb。
用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面许可,并支付报酬.Kp5zH。
Usersmayusethecontentsorservicesofthisarticleforpersonalstudy,researchorappreciation,andothernon-commercialornon-profitpurposes,butatthesametime,theyshallabidebytheprovisionsofcopyrightlawandotherrelevantlaws,andshallnotinfringeuponthelegitimaterightsofthiswebsiteanditsrelevantobligees.Inaddition,whenanycontentorserviceofthisarticleisusedforotherpurposes,writtenpermissionandremunerationshallbeobtainedfromthepersonconcernedandtherelevantobligee.Yl4Hd。
转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目地地合理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责任.ch4PJ。
Reproductionorquotationofthecontentofthisarticlemustbereasonableandgood-faithcitationfortheuseofnewsorinformativepublicfreeinformation.Itshallnotmisinterpretormodifytheoriginalintentionofthecontentofthisarticle,andshallbearlegalliabilitysuchascopyright.qd3Yf。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 指导书 MATLAB 控制系统 模型 建立 仿真 应用