MATLAB8Simulink子系统的创建及应用

上传人:痛*** 文档编号:205359715 上传时间:2023-04-28 格式:PPT 页数:37 大小:349.50KB
收藏 版权申诉 举报 下载
MATLAB8Simulink子系统的创建及应用_第1页
第1页 / 共37页
MATLAB8Simulink子系统的创建及应用_第2页
第2页 / 共37页
MATLAB8Simulink子系统的创建及应用_第3页
第3页 / 共37页
资源描述:

《MATLAB8Simulink子系统的创建及应用》由会员分享,可在线阅读,更多相关《MATLAB8Simulink子系统的创建及应用(37页珍藏版)》请在装配图网上搜索。

1、MATLAB8SimulinkMATLAB8Simulink子子系统的创建及应用系统的创建及应用第第7章章Simulink子系统的创建及应用子系统的创建及应用u对于复杂系统的对于复杂系统的Simulink仿真模型,可仿真模型,可以把模型中完成特定功能的一部分模块以把模型中完成特定功能的一部分模块组合起来,创建一个新的模块,这新的组合起来,创建一个新的模块,这新的模块称为子系统(模块称为子系统(Subsystem)。)。u子系统减少了系统子系统减少了系统Simulink框图中模块框图中模块数量,使模型的层次、结构及功能更加数量,使模型的层次、结构及功能更加清晰,一目了然。清晰,一目了然。u子系统

2、形成的新的模块,也可以被其他子系统形成的新的模块,也可以被其他Simulink模型调用,具有可移植性。模型调用,具有可移植性。u子系统有两种:未封装的子系统和封装子系统有两种:未封装的子系统和封装的子系统,前者没有对话框,用户可以的子系统,前者没有对话框,用户可以打开子系统相关模块直接设置参数。后打开子系统相关模块直接设置参数。后者带有对话框,交互式地设置子系统的者带有对话框,交互式地设置子系统的参数。这两种子系统在参数。这两种子系统在Simulink框图模框图模型中都有应用。型中都有应用。7.1 创建子系统创建子系统 仿真建立子系统有两种方法:通过仿真建立子系统有两种方法:通过已有的模块建立

3、子系统和通过已有的模块建立子系统和通过Subsystem模块建立子系统。模块建立子系统。这两种创建的子系统最后实现一模一样的这两种创建的子系统最后实现一模一样的功能,只不过操作顺序不同,功能,只不过操作顺序不同,两者的区两者的区别是:别是:前者先将结构搭建起来,然后把前者先将结构搭建起来,然后把相关模块封装起来建立子系统;后者先相关模块封装起来建立子系统;后者先做一个封装容器,然后再封装容器中添做一个封装容器,然后再封装容器中添加模块。加模块。操作步骤为:操作步骤为:1先选中要建立子系统的模块,不包括输先选中要建立子系统的模块,不包括输入端口和输出端口。入端口和输出端口。2选择模型编辑窗口选择

4、模型编辑窗口Edit菜单中的菜单中的Create Subsystem 命令,这样,子系统就创建好命令,这样,子系统就创建好了。在这种情况下,系统会自动把输入了。在这种情况下,系统会自动把输入模块和输出模块添加到子系统中,并把模块和输出模块添加到子系统中,并把原来的模块变为子系统的图标。原来的模块变为子系统的图标。7.1.1通过已有的模块建立子系统通过已有的模块建立子系统【例【例7-1】对下面的仿真模型中被选中的模块生成子系统对下面的仿真模型中被选中的模块生成子系统图7-1 系统模型图要生成子系统首先右击选中的模块,在弹出的菜单中选择要生成子系统首先右击选中的模块,在弹出的菜单中选择Create

5、 Subsystem 命令,生成如图命令,生成如图7-2所示。所示。图7-2 封装子系统后的模型图操作步骤系为:操作步骤系为:1先打开先打开Simulink模块库浏览器,新建一个仿真模型。模块库浏览器,新建一个仿真模型。2打开打开Simulink模块库中的模块库中的Ports&Subsystems模块库,模块库,将将Subsystem模块添加到模型编辑窗口中。模块添加到模型编辑窗口中。3双击双击Subsystem模块,打开一个空白的模块,打开一个空白的Subsystem窗窗口,将要组合的模块添加到该窗口中,另外还要根据口,将要组合的模块添加到该窗口中,另外还要根据需要添加输入模块和输出模块,表

6、示子系统的输入端需要添加输入模块和输出模块,表示子系统的输入端口和输出端口,这样,一个子系统就建好了。口和输出端口,这样,一个子系统就建好了。对于简单的模型,可以采用第一种,这种操作一般不容对于简单的模型,可以采用第一种,这种操作一般不容易出错,能够顺利搭建模型。而对于复杂的系统,我易出错,能够顺利搭建模型。而对于复杂的系统,我们事先将模型分成若干个子系统,然后再采用第二种们事先将模型分成若干个子系统,然后再采用第二种方法进行建模。方法进行建模。7.1.2通过通过Subsystem模块建立子系统模块建立子系统 在使用在使用Simulink 子系统建立系统模型时,子系统建立系统模型时,常用到以下

7、几种操作:常用到以下几种操作:子系统命名:命名方法与模块命名类似,是用子系统命名:命名方法与模块命名类似,是用有代表意义的文字来对子系统进行命名,有利有代表意义的文字来对子系统进行命名,有利于增强模块的可读性。于增强模块的可读性。子系统的编辑:用鼠标双击子系统模块的图标,子系统的编辑:用鼠标双击子系统模块的图标,打开子系统并对其进行编辑。打开子系统并对其进行编辑。子系统输入:使用子系统输入:使用Sources模块库中的模块库中的Inport输输入模块,即入模块,即In1模块,作为子系统的输入端口。模块,作为子系统的输入端口。子系统输出:使用子系统输出:使用Sinks模块库中的模块库中的Outp

8、ort输输出模块,即出模块,即Out1模块,作为子系统的出处端口。模块,作为子系统的出处端口。7.2子系统的封装子系统的封装 所谓子系统的封装所谓子系统的封装(Masking),就是,就是为子系统定制对话框和图标,使子系统为子系统定制对话框和图标,使子系统本身有一个独立的操作界面,把子系统本身有一个独立的操作界面,把子系统中的各模块的参数对话框合成一个参数中的各模块的参数对话框合成一个参数设置对话框,在使用时不必打开每个模设置对话框,在使用时不必打开每个模块进行参数设置,这样使子系统的使用块进行参数设置,这样使子系统的使用更加方便,有利于进行复杂的大系统的更加方便,有利于进行复杂的大系统的仿真

9、。仿真。右击生成的子系统右击生成的子系统Subsystem模块,再选择模块,再选择Mask subsystem命令,弹出如命令,弹出如7-3所示的所示的Mask Editor参数对话框,在其中可以进行各种设置。参数对话框,在其中可以进行各种设置。Mask Editor参数对话框可以创建和编辑封装参数对话框可以创建和编辑封装子系统。子系统。Mask Editor对话框中共包括对话框中共包括4个选项个选项卡:卡:Icon、Parameters、Initialization和和Documentation。子系统的封装主要就是对这。子系统的封装主要就是对这4页参数进行设置。每个选项卡都可以定义封装页参

10、数进行设置。每个选项卡都可以定义封装mask的一个特性。的一个特性。如对例如对例7-1中的子系统可以进行封装中的子系统可以进行封装:Icon选项卡:允许定义模块图标。选项卡:允许定义模块图标。Parameters选项卡:允许定义和描述封装对选项卡:允许定义和描述封装对话框和参数对的字符变量。话框和参数对的字符变量。Initialization选项卡:允许制定初始化命令选项卡:允许制定初始化命令 Documentation选项卡:允许定义封装的类选项卡:允许定义封装的类型,并且设定模块的描述和帮助。型,并且设定模块的描述和帮助。Unmask按钮:按钮:解除封装,并关闭解除封装,并关闭Mask E

11、ditor参数对参数对话框,但是封装的信息仍然保留。为了恢复封装,右话框,但是封装的信息仍然保留。为了恢复封装,右击选择的模块,在弹出的菜单中选择击选择的模块,在弹出的菜单中选择Create Mask命令。命令。将弹出将弹出Mask Editor参数对话框,并显示以前的设置。参数对话框,并显示以前的设置。当模型被关闭后,其中的封装信息就被清除了。当模型被关闭后,其中的封装信息就被清除了。OK按钮:按钮:应用所有的设定,并关闭应用所有的设定,并关闭Mask Editor参数参数对话框。对话框。Cancel按钮按钮:关闭:关闭Mask Editor参数对话框,不应用所参数对话框,不应用所有的设定。

12、有的设定。Help按钮:按钮:显示封装帮助文档。显示封装帮助文档。Apply按钮按钮:应用所作的参数设定,但是并不关闭:应用所作的参数设定,但是并不关闭Mask Editor参数对话框。参数对话框。Mask Editor参数对话框下面的参数对话框下面的5个按钮的功能:个按钮的功能:如果想查看没有封装的子系统,可以如果想查看没有封装的子系统,可以右键单击子系统,然后再弹出的菜右键单击子系统,然后再弹出的菜单中选择命令,将会打开子系统,单中选择命令,将会打开子系统,而且模块封装不会受影响。而且模块封装不会受影响。可以自定义封装子系统的图标。可以自定义封装子系统的图标。双击封装后的子系统,弹出参数对

13、话框,其中双击封装后的子系统,弹出参数对话框,其中对话框是自定义的。对话框是自定义的。封装子系统的帮助文档都是自定义编写的。封装子系统的帮助文档都是自定义编写的。封装子系统有自己的工作区域。封装子系统有自己的工作区域。以上功能为模型设计带来很大方便。由此,我们以上功能为模型设计带来很大方便。由此,我们可以将子系统作为一个黑匣子,用户可以不用可以将子系统作为一个黑匣子,用户可以不用了解其中的具体细节而可以直接使用。了解其中的具体细节而可以直接使用。封装子系统具有如下功能:封装子系统具有如下功能:封装后的子系统可以作为用户的自封装后的子系统可以作为用户的自定义模块,和普通模块一样添加到定义模块,和

14、普通模块一样添加到Simulink模型中应用,也可添加到模块模型中应用,也可添加到模块库中以供应用。封装后的子系统可以定库中以供应用。封装后的子系统可以定义自己的图标、参数和帮助文档,完全义自己的图标、参数和帮助文档,完全与与Simulink的其它普通模块一样。双击的其它普通模块一样。双击封装后的子系统模块,弹出对话框,进封装后的子系统模块,弹出对话框,进行参数设置,若出现问题,可单击行参数设置,若出现问题,可单击help按按钮,但须注意的是这些帮助文件是创建钮,但须注意的是这些帮助文件是创建者自己封装时编写的。者自己封装时编写的。7.3 子系统创建及封装应用实例子系统创建及封装应用实例 下面

15、通过一个实际例子来说明如何创建及封装子系统【例【例7-2】已知二阶系统的开环传递函数为】已知二阶系统的开环传递函数为 求:求:1.建立建立Simulink仿真模型并显示开环单位阶跃响应。仿真模型并显示开环单位阶跃响应。2利用利用PID构成单位负反馈闭环系统,系数分别为构成单位负反馈闭环系统,系数分别为 ,建立,建立PID闭环控制仿真模型。闭环控制仿真模型。3对对PID控制部分进行封装,建立子系统。控制部分进行封装,建立子系统。解:解:1)从以下模块库中建立从以下模块库中建立Simulink仿真仿真模型:模型:Sources模块库:一个模块库:一个Step模块,产生阶跃模块,产生阶跃输入信号,参

16、数设置如图输入信号,参数设置如图7-4。Continuous模块库:一个模块库:一个Transfer Fcn模块,模块,开环传递函数,参数设置如图开环传递函数,参数设置如图7-5。Sinks模块库:一个模块库:一个Scope模块,显示响应模块,显示响应曲线。曲线。Step模块参数设置模块参数设置Transfer Fcn模块参数设置模块参数设置 在仿真参数设置窗口的在仿真参数设置窗口的Solver标签页将仿真时间设置标签页将仿真时间设置为为50秒,将以上模块进行连线和参数设置完毕后所建立仿秒,将以上模块进行连线和参数设置完毕后所建立仿真模型如图真模型如图7-6所示。所示。图7-6仿真模型 单击菜

17、单单击菜单Simulation,再单击,再单击Start开始仿真,从开始仿真,从Scope模块显示中可观察到单位阶跃响应曲线如图模块显示中可观察到单位阶跃响应曲线如图7-7所示。所示。图7-7 Scope模块显示的单位阶跃响应曲线2)从从Scope 显示的单位阶跃响应曲线可以看出系统显示的单位阶跃响应曲线可以看出系统达到稳态所需要的时间很长。因此,采用达到稳态所需要的时间很长。因此,采用PID控制控制规律,建立闭环控制系统。规律,建立闭环控制系统。在原有开环仿真模型的基础上,要增加以下模块:在原有开环仿真模型的基础上,要增加以下模块:根据以下模块以及控制规律建立闭环仿真系统模根据以下模块以及控

18、制规律建立闭环仿真系统模型如图型如图7-8所示。其中:所示。其中:Continuous模块库:一个模块库:一个Integrater模块模块,实现积分实现积分运算,参数使用系统默认。运算,参数使用系统默认。Continuous模块库:一个模块库:一个Derivative模块模块,实现微分实现微分运算,参数使用系统默认。运算,参数使用系统默认。PID闭环控制仿真模型闭环控制仿真模型Math Operations模块库:模块库:2个个Sum模块,进行求和运模块,进行求和运算,算,Sum1 设置成设置成2个输入。个输入。Sum2参数由题要求设置为参数由题要求设置为3个输入,如图个输入,如图7-9所示。

19、所示。图7-9 Sum2模块参数设置Math模块库:模块库:3个个Gain模块:实现比例、微分和模块:实现比例、微分和积分的增益,参数设置如图积分的增益,参数设置如图7-10所示。所示。三个三个Gain模块参数设置相似,只是将模块参数设置相似,只是将 、分别设置为分别设置为5、10、1即可。即可。图7-10 Gain模块参数设置 为了和开环控制结果相比较,仍然选用为了和开环控制结果相比较,仍然选用50秒仿真时秒仿真时间,仿真结果如图间,仿真结果如图7-11。图7-11 PID闭环控制系统的单位阶跃响应 由输出结果可见,系统采用由输出结果可见,系统采用PID控制后,单位阶跃响应时间变短、控制后,

20、单位阶跃响应时间变短、超调量变小,过度过程平稳快速。超调量变小,过度过程平稳快速。首先将图首先将图7-8中的将要作为子系统的一组模块选中,如中的将要作为子系统的一组模块选中,如图图7-12所示。所示。图7-12 选中将作为子系统的模块3)建立建立PID子模型:子模型:然后点击菜单然后点击菜单Edit中的中的Create Subsystem(或直接按或直接按Ctrl+G键键),则生成子系统模块,生成新的系统模,则生成子系统模块,生成新的系统模型如图型如图7-13。图7-13 子系统模型 图7-14 Subsystem子系统内部的模块双击双击Subsystem子系统,则可看到子系统内部的模块如图子

21、系统,则可看到子系统内部的模块如图选中该模块,点击菜单选中该模块,点击菜单Edit中的中的Edit Mask窗口,设置窗口里的窗口,设置窗口里的标签页如图所示。标签页如图所示。对创建的对创建的Subsystem子系统封装。子系统封装。图7-16 子系统Documentation标签页的设置 完成设置后,点击完成设置后,点击OK,则封装结束。若双击该模块,则弹出该模块,则封装结束。若双击该模块,则弹出该模块的设置窗口,如图的设置窗口,如图7-17所示,然后可以根据要求设置子系统参数。所示,然后可以根据要求设置子系统参数。图7-17 子系统PID模块窗口 封装完PID子系统后的闭环系统的仿真模型如图7-18所示,最后进行仿真。图7-18 封装完PID子系统后的闭环系统的仿真模型 习题习题 77-1 了解了解Simulink创建子系统的方法及操作步骤。创建子系统的方法及操作步骤。7-2 子系统的创建和子系统的封装有什么不同?子系统的创建和子系统的封装有什么不同?7-3 了解子系统的封装过程。了解子系统的封装过程。7-4 在模型中选择输入信号发生器和输出示波器之间所有模块对象作在模型中选择输入信号发生器和输出示波器之间所有模块对象作为需要创建的子系统部分,要求创建子系统并进行子系统封装。为需要创建的子系统部分,要求创建子系统并进行子系统封装。结束结束

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!