- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章Simulink高级仿真技术精要
《过程控制工程及仿真--基于MATLAB/Simulink》电子工业出版社 出版 2009.4 作者:郭阳宽 王正林 联系邮箱:wa_2003@126.com 第 3章 Simulink高级仿真技术 3.1 Simulink子系统及其封装 3.2 S函数设计与应用 3.3 使用Simulink仿真命令 3.4 Simulink仿真建模的要求 3.5 Simulink控制系统仿真实例 3.6 本章小结 习题与思考 内容提要 前面讲述了使用Simulink中现有的模块进行仿真,然而随着模型越来越复杂,用这些基本操作创建的Simulink模变得越来越庞大而难以读懂; 而且,在实际中,可能有些需要用到的模块在Simulink中没有,因此需要掌握一些高级仿真技术,对Simulink的模块进行扩展,以用于高级仿真应用。 3.1 Simulink子系统及其封装 3.1.1 创建子系统 子系统的创建有以下两种方法: 1.通过Subsystem模块建立子系统 即采用Signal Systems 模块库中的Subsystem功能模块,利用其编辑区设计组合新的功能模块。基本操作步骤为: (1)打开Simulink模块库浏览器,新建一个仿真模型。 (2)打开Simulink模块库中的Ports Subsystems模块库,将Subsystem模块添加到模型编辑窗口中。 (3)双击Subsystem模块打开一个空白的Subsystem窗口,将要组合的模块添加到该窗口中,另外还要根据需要添加输入模块和输出模块,表示子系统的输入端口和输出端口。这样,一个子系统就建好了。 2.通过已有的模块建立子系统 即将现有的多个功能模块组合起来,形成新的功能模块。基本操作步骤为: (1)选择要建立子系统的模块,不包括输入端口和输出端口。 (2)选择模型编辑窗口中的【Edit】【Create Subsystem】命令,这样,子系统就建好了。在这种情况下,系统会自动把输入模块和输出模块添加到子系统中,并把原来的模块变为子系统的图标。 3.1.2 封装子系统 所谓子系统的封装(Masking),就是为子系统定制对话框和图标,使子系统本身有一个独立的操作界面,把子系统中的各模块的参数对话框合成一个参数设置对话框,在使用时不必打开每个模块进行参数设置,这样使子系统的使用更加方便。 子系统封装的基本步骤为: (1)创建一个子系统。 (2)选中子系统,选择模型窗口菜单中的【Edit】【Mask subsystem】选项生成封装模块。 (3)使用封装编辑器(Mask Editor)进行设置。 Mask Editor对话框的选项卡 3.1.4 子系统实例 PID模块为例,讲述子系统的创建及封装。基本步骤如下 : 在本例中,需要正弦信号、余弦函数、积分模块、观测结果的模块,分别将Simulink Library Browser中的以下模块依次拖到untitled窗口中; 将对应的模块相连,并将运算结果相加连接。 创建子系统。选定模型,单击Simulink的Library窗口中的【Edit】【Creat Subsystem】,便生产了子系统,为了更加明了,单击模型中的“Subsystem”,将其改为“PID”。 进行系统封装。选定如图3.5的PID子系统部分,选择Simulink的Library窗口中的【Edit】【Mask Subsystem】命令进行子系统的封装,在弹出的对话框中可以进行一些封装的设置。 3.2 S函数设计与应用 Simulink提供了一个功能强大的对模块库进行扩展的新工具S-Function,它依然是基于Simulink原来提供的内置模块,通过对那些经常使用的模块进行组合并封装而构建出可重复使用的新模块。 S-Function是系统函数(System Function)的简称,也叫做S函数,是一个动态系统的计算机语言描述。在MATLAB中,用户可以选择用M文件编写,也可以用C或mex文件编写。 S函数提供了扩展Simulink模块库的有力工具,它采用一种特定的调用语法,实现函数和Simulink解法器之间的交互。 S函数最广泛的用途是定制用户自己的Simulink模块。它的形式十分通用,能够支持连续系统、离散系统和混合系统。 3.2.1 S函数设计模板 1.M文件格式的S函数模板及结构 MATLAB提供了一个模板文件,方便了S函数的编写,该模板文件位于MATLAB根目录toolbox/Simulink/blocks下: 2.模板的使用 概括说来,建立S函数可以分成两个分离的任务: 初始化模块特性,包括输入/输出信号的宽度、离散连续状态的初始条件和采样时间。 将算法放到合适的S函数子函数中去。 3.S函数模板文件的输入输
文档评论(0)