




已阅读5页,还剩51页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MATLAB8.X程序设计及典型应用,西安电子科技大学出版社,张霞萍编著,第七章Simulink交互式仿真建成环境,本章主要介绍Simulink的模块库、具体建模方法、建模实例以及子系统及其封装。,本章的主要内容有:,Simulink的启动和模型库模型文件的创建和保存仿真的配置子系统及其封装在MATLAB指令窗中运行Simulink模型,7.1Simulink概述及其特点,Simulink是MATLAB中的一个重要组件,它是simulation和link的缩写,是一个进行动态系统建模、仿真和综合分析的集成软件包。它支持连续、离散以及两者混合的线性和非线性系统的仿真;支持具有单任务、多任务的离散事件系统。在Simulink软件环境下,用户可以在屏幕上调用现成的模块,并将它们适当地连接起来构成系统的模型,即所谓的可视化建模。运用Simulink创建的模型外表为方块图形,且采用分层结构,既适宜自上而下的设计流程(概念、功能、系统、子系统直至器件),又适宜自下而上的设计,具有方便、灵活的特点。在该环境中,用户可以在仿真过程中改变感兴趣的参数,实时地观察系统行为的变化。Simulink环境使用户摆脱了枯燥的数学推导和繁琐地编程,甚得科研工作者的青睐。,7.2Simulink的启动和模型库,如果用户在安装MATLAB的过程中选择了Simulink组件,则在MATLAB安装完成后,Simulink也安装完毕。用户必须注意,Simulink不能独立运行,只能在MATLAB环境中运行。,7.2.1Simulink的启动与退出,在MATLAB的命令窗口输入语句simulink并执行:simulinkSimulink启动后会显示如图7.1所示的Simulink模块库浏览器(SimulinkLibraryBrowser)窗口。窗口的左边是以树状列表形式列出的各类Simulink模块库名称。双击对应模块库的“+”号可以展开子模块库。窗口右边有三个切换窗口,一个是对应用户选中左侧模块库中的模块图标和名称;一个是通过搜索模块名称得到的搜索结果;还有一个是使用频率最高的模块列表。,启动Simulink也可以通过单击MATLAB主窗口工具栏上的图标按钮来实现,如图7.2所示。,关闭Simulink模块库以及所有模型窗口即可以退Simulink。,7.2.1Simulink的启动与退出,7.2.2Simulink常用模块,Simulink模块库有16个子模块库,通常使用比较多的是信号源子模块库(Sources)、连续系统子模块库(Continuous)、离散系统子模块库(Discrete)、数学运算子模块库(MathOperations)、提取信号子模块库(Sinks)以及用户自定义子模块库(User-DefinedFunctions)等。每个子模块库提供了不同功能的模块。下面分别介绍各个常用子模块库以及其模块,包括模块的图标,名称,以及功能。其中模块左侧的为信号流进端口,右侧的为信号流出端口。1、信号源子模块库(Sources)信号源子模块库提供的模块都没有输入端口,而至少有一个输出端口。信号源子模块库中提供了很多标准信号。各模块的图标、名称、功能见表7-1。,表7-1信号源子库中模块图标、名称、功能一览表,表7-1信号源子库中模块图标、名称、功能一览表,2、连续系统子模块库(Continuous),连续系统子库提供了诸多关于连续系统运算的模块,包括微分运算、积分运算等,其图标、名称和功能见表7-2。,3、离散系统子模块库(Discrete),离散系统子库提供了诸多关于离散系统运算的模块,包括滤波器、差分运算等,其图标、名称和功能见表7-3所示。,4、数学运算子模块库(Math),数学运算子库提供了诸多关于数学运算的模块,其中主要运算模块的图标、名称和功能见表7-4所示。,5、提取信号子模块库(Sinks),输出子库中提供的模块用来输出系统仿真的结果。它只有输入端口,用以接受模型传递过来的信号。输出子模块库中各模块的图标、名称和功能见表7-5所示。,6、用户自定义的函数子模块库(User-DefinedFunctions),用户如果自己编写函数文件来实现某一功能,可以使用用户自定义的函数子模块库中的模块。,说明:用户如果想了解更多关于该模块的信息,可以使用该模块的帮助信息。用鼠标右击需要查询的模块图标,在下拉菜单中选择帮助选项,MATLAB将会提供该模块的帮助信息。,7.3模型文件的创建和保存,Simulink模块库提供了功能齐全的模块,用户可以通过这些模块来创建模型文件,并进行仿真和系统分析。,【例7-1】创建模型并分析结果,在MATLAB指令窗内执行Simulink或者单击MATLAB主窗口工具栏上的图标按钮,打开Simulink模块库浏览器窗口,(如图7.1)。单击该窗口工具条上的新建图标打开一个未命名(untitled)的空白模型窗,如图所示。,(1)进入Simulink环境,鼠标单击图7.1界面上“Sources”进入信号源子模块库,选择正弦信号图标鼠标右击,选择“Addto”选项将该框图添加到模型窗中,如图。,(2)进入信号源子模块库,添加正弦信号发生器模块,查看默认参数或重新设置参数,或者,按住鼠标左键不动将正弦信号发生器框图直接拖到模型窗中,效果相同。双击模型窗中的正弦信号发生器模块,打开关于该模块参数设置的对话框,如图7.6所示。,(2)进入信号源子模块库,添加正弦信号发生器模块,查看默认参数或重新设置参数,(3)进入输出子模块库,选择输出方式,鼠标单击图7.1界面上的“Sinks”子模块库,选择示波器(Scope)图标将其添加到模型窗中。双击示波器图标,打开示波器窗口。示波器窗口有一个工具条,其上各按钮从左到右的功能分别为:打印、示波器参数、同时放大x、y坐标轴、放大x轴、放大y轴、自动缩放、保存坐标轴设置、恢复坐标轴设置、浮动示波器、释放坐标轴选项、信号选择器。单击图标打开示波器参数设置窗口,如图7.7所示。,示波器的参数设置对话框有两个切换选项卡:General选项卡,可设置4个参数,常用的为坐标轴数目(Numberofaxes);History选项卡可设置两个参数,常用的是保存到工作空间(Savedatatoworkspace)。,(3)进入输出子模块库,选择输出方式,(4)进入数学运算子模块库,选取叠加函数模块。,鼠标单击图7.1界面上的“MathOperations”,选择“Add”的图标并将其添加到模型窗中。鼠标双击该模块,将其设置成“+-”形式,如图7.9所示.,如果用户选择将图标(Iconshape)设置为圆形,其外观和功能等同于模块,(5)搭建模型,完成仿真。,在未命名的模型窗中,用鼠标画线,将各个模块连接成一个完整的模型,具体连线操作为:先将光标指向一个模块的输出端,待光标变为十字符后,按下鼠标左键并拖动,直到另一模块的输入端。如果需要将连接线分支,则需将光标指向信号线的分支点上,按鼠标右键,待光标变为十字符,拖动鼠标直到另一模块的输入端即可。连接线的箭头指向为信号流动方向。模型见图7.10。,搭建好模型后,鼠标单击模型窗工具条中的图标启动Simulink系统进行仿真。鼠标双击示波器,可以看到运行后的结果,如图7.11所示.其中运用示波器工具条中的按钮使得图形充满整个坐标系,如信号x。,(5)搭建模型,完成仿真。,(5)仿真结果的分析,本例选择三个单踪示波器,分别显示正弦信号、余弦信号和运算后的信号,为了更好地比对信号运算后的变化,用户可以将三个信号送给基本工作空间(WorkSpace),变量名称分别为x1,x2,x,并以数值形式保存。具体设置为:勾选“Savedatatoworkspace”,变量名改为x1,“Format”下拉菜单选择“Array”,然后点击“OK”或者“Apply”完成设置。如图7.12所示,为正弦信号x1的设置,信号x2、x的设置方法同上。,启动仿真后,示波器立刻得到仿真的结果,该结果根据设置同时送给MATLAB基本工作空间。工作空间有四个变量tout、x1、x2和x,.其中,tout为时间变量默认名,x1,x2,x均为为512数组,其中各数组的第一列数值即为变量tout,第二列为各自输出信号的振幅。,在MATLAB编辑器中编写文件名为exm7_1的M文件:plot(x1(:,1),x1(:,2),r:,LineWidth,3)holdonplot(x2(:,1),x2(:,2),k-.,LineWidth,3)plot(x(:,1),x(:,2),b,LineWidth,3)holdofflegend(输入正弦信号,输入余弦信号,输出信号,3)xlabel(时间),ylabel(振幅)在指令窗中执行文件exm7_1.m,结果如图所示,(5)搭建模型,完成仿真。,由图可知,两个信号运算后产生的信号振荡频率与原信号相同,但振幅和初相位都发生了变化。,创建完善的模型可以存盘。保存模型的方法和保存M文件的方法类似,模型文件的扩展名为.mdl。点击模型文件编辑器的保存图标将该模型文件命名为exm1.,若要打开该文件,可以通过以下3种方法:在MATLAB指令窗中输入模型文件名,注意:不要带扩展名,但该文件一定要在当前目录或MATLAB的搜索路径上,否则必须注明路径目录。2.点击模块库浏览器或某一模型窗中的菜单FileOpen,选中该模型文件打开。3.点击模块库浏览器或某一模型窗中的图标打开该模型文件,7.3模型文件的创建和保存,7.4仿真的配置,Simulink模型实际上是一个计算机程序,它定义了描写被仿真系统的一组微分方程或差分方程。当对模型窗中的模型进行仿真时,Simulink系统就开始了用一种数值解算方法求解方程。用户在对模型进行仿真时,如果不做特别设置(如例7-1),Simulink总以默认的参数进行数值解算。如果用户不采用系统默认的仿真设置,就必须对各种仿真参数进行配置(Configuration),其中包括:仿真步长的选择、仿真起始时刻和终止时刻的设定、数值积分算法的选择以及各种仿真容差的选择等。在模型窗的主菜单Simulink下拉子菜单中单击仿真参数配置选项(ConfigurationParameters),弹出仿真参数配置对话窗。,图7.14Simulink仿真参数配置窗口,在该窗口中有若干个选项,对于一般用户而言,比较常用的选项为仿真时间(Simulinktime)和解算器选项(Solveroptions)。下面就这两个选项来阐述参数值的内涵。,7.4仿真的配置,7.4.1仿真时间选项,参数配置窗口中的时间选项提供了起始时刻(Starttime)和终止时刻(Stoptime)的参数设置,默认时分别为0和10.表示仿真时长为10秒,如果解算器设置的计算步长为0.01,则计算机需要执行1000步结束。如果将计算步长设置得长一些,比如0.1,则相应的,计算机执行次数就减少,即100步即可完成。因此,这里的时间概念和计算机真实地执行时间是有差别的。相同的时间设置,如果计算步长设置得越长,实际的执行时间就越短。,7.4.2解算器选项,在解算器选项解算类型(Tyep)中,有变步长(Variable-step)和定步长(Fixed-step)两种。对于变步长选项,在算法(Solver)选项中列出了多种变步长解算方法,对于连续系统,默认的算法ode45即为最佳算法,建议其对应的最大步长(Maxstepsize)、最小步长(Minstepsize)和初始步长(Initialstepsize)使用默认(auto)值,如图(1)。,(1)变步长选项,(2)定步长选项,对于离散系统,Simulink一般默认选择定步长算法,如图(2),其中默认算法ode4即为最佳算法。如果用户希望选择其他的算法,或者使用需要的步长,则通过鼠标在算法的下拉菜单中选择,在Fixed-stepsize中填入数据,点击OK或者Apply即可完成解算参数的设置。,7.4.2解算器选项,选择状态变量:令则原方程演变为非线性状态方程组:初始条件为:,【例7-2】求解范德波(VandePol)微分方程在初始条件下在范围内的数值解,并绘制解的曲线和相轨迹。(参数)。,分析:信号为模型的输出。第一个方程可以看做是将变量作为积分器的输入信号,则积分器的输出信号为.第二个方程可以将看做是另外一个积分器的输出信号,该积分器的输入信号为.利用Simulink提供的模块搭建一个名为exm2.mdl的模型,如图所示。,为了分析需要,用户可以将仿真结果送到MATLAB基本工作空间(Workspace):在Sinks子模块库中选择ToWorkspace子模块。本例调用两个这样的模块,并分别对模块的参数进行设置,将仿真产生的结果保存变量名为y1和y2,保存格式为数值数组。在Sinks模块库中选择XYGraph模块,该模块有两个输入端口,并以第一个输入端口为X轴坐标,第二个端口输入为Y轴坐标。在仿真配置选项里,将图7.17中的Stoptime设置为15;解算器选项中选择变步长的ode23算法。,启动仿真,仿真结束后在MATLAB工作空间产生了变量tout,y1,y2在MATLAB指令窗中输入指令并执行:,plot(tout,y1,r-.,tout,y2,LineWidth,3)legend(x(t),dx(t)/dt,2)gridon结果如图所示。,XYGraph模块显示方程的相轨迹,如图所示,【说明】,在Simulink模型中,运用鼠标就可以对模块进行选定、复制、移动、删除和缩放。在模块上单击鼠标,即可选定该模块,此时模块的四角处会出现小黑块编辑框。选中模块后,右击鼠标可以引出对该模块的操作菜单,其中包括模块对应的字体以及模块的翻转等操作,如图所示。,在模块编辑窗的任意位置双击鼠标,在光标位置会出现矩形文本输入框,可以添加文本注释(label)。利用鼠标可以将注释框拖到模型窗的任何位置。对于数学函数(MathFunction)模块,必须将函数设置为平方(square)计算,如图所示。另外,两个积分模块里的初始值(Initialcondition)也要依据题目条件来设置置。将加法(Add)模块设置成正确的+或者-+的形式。将乘法(Product)模块设置为三个输入端口。,【说明】,创建Simulink模型,如图7.22所示,图7.22饱和非线性系统的Simulink模型,【例7-3】某饱和非线性系统如图7.21所示,求该系统的单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 景德镇市中石化2025秋招面试半结构化模拟题及答案油气储运与管道岗
- 马鞍山市中石化2025秋招笔试模拟题含答案数智化与信息工程岗
- 中国移动十堰市2025秋招写作案例分析万能模板直接套用
- 中国移动三明市2025秋招行业解决方案岗位专业追问清单及参考回答
- 无锡市中储粮2025秋招笔试性格测评题专练及答案
- 漯河市中储粮2025秋招安全环保岗高频笔试题库含答案
- 国家能源滨州市2025秋招面试专业追问及参考交通运输岗位
- 三门峡市中石化2025秋招笔试模拟题含答案油田勘探开发岗
- 黑河市中石油2025秋招笔试提升练习题含答案
- 中国联通东莞市2025秋招笔试行测题库及答案计算机类
- GB/T 46239.1-2025物流企业数字化第1部分:通用要求
- 2025年核电池行业研究报告及未来发展趋势预测
- 语文园地三 教学设计 2025-2026学年小学语文一年级上册 统编版
- 2025重庆机场集团有限公司社会招聘150人(第二次)考试参考题库及答案解析
- 技术方案评审与验收标准模板
- 中水资源化综合利用建设项目规划设计方案
- 政府采购管理 课件 第十三章 政府采购绩效评价
- 绿化种植安全教育培训课件
- 织袜工作业指导书
- 市场联合促销活动协议
- 2025年烟花爆竹经营培训考试试题及答案
评论
0/150
提交评论