1、建立系统框图。这步需要确定输入输出的个数,输入端为sources中的in,输出端为sinks中的out。将Simulink库下的Ports&Subsystems中的Subsystem拉至simulink框图中。
2、功能的搭建。点击建好的子模块,在其中进行功能模块的搭建。
3、子模块的封装。所谓封装(masking),即将其对应的子系统内部结构隐含以来,访问该模块的时候仅仅出现一个参数设置对话框。需要如下几步完成:
3.1、右击模块,选择Mask Subsystem选项,蹦出Mask Editor对话框。
3.2、Icon属性。如果要显示端口的名称,Transparency属性设置成Transparent。Drawing commands编辑框允许给该模块图标上绘制图像,可以选择的有plot()、disp()等等,比如disp('PID Controller')。在Drawing commands中输入语句,如何写函数的提示在封装编辑对话框的下方。
3.3、Parameters属性。这个东西是给模块中的变量赋值的,选择左方有朝左的小箭头的按钮是添加变量的,这时右方会有一横栏,Prompt是该变量的提示信息,Variable是相关联的变量名称,一定要与模块中的变量名称一样,Type是变量的类型,edit(可编辑)、popup(下拉框),选择后者的时候需要在左下方的popups中分行写上可以选择的数值。左方的叉按钮是删除变量的。
3.4、Initialization属性。对模块进行初始化 *** 作。
3.5、Documentation属性。对模块进行说明。封装后双击模块就可以看见Mask Description中的内容。
关于模块封装的一些 *** 作还有:
(1)如果要观察模块的内部结构,右键模块,然后选择Look Under Mask即可。编辑模块封装选择Edit Maks。
(2)把要封装的东西全部用鼠标框起来,选择Edit中的Creat Subsystem就可以将选中的东西封装起来了。左键单击模块,用Edit中的Mask Subsystem即可进行模块的封装。同样用Edit下的Look Under Mask即可观察模块的内部结构。
步骤:
1、创建自定义库。在 Simulink Library Browser 窗口中,选择菜单 File | New ->Library,加入所需的常用模块,并保存(例如:mySimLib.mdl);
2、新建一个slblocks.m,其内容如下:
function blkStruct = slblocks
Browser.Library = 'mySimLib'
Browser.Name= '00_My_Library'
blkStruct.Browser = Browser
说明:* mySimLib 为自定义库文件的文件名;
* 00_My_Library 为将在 Simlink Library Browser 窗口中显示的名称;
* 注意:不要加任何注释,否则有可能不成功,我就遭遇过失败(系统:Windows XP 英文版,Matlab 版本:R2010a);
3、将 mySimLib.mdl 和 slblocks.m 放在同一个目录下;然后,在 Matlab 主窗口中,选择菜单 File | Set Path...,将该目录 添加到 Matlab 搜索路径中,保存,退出;
4、在 Simulink Library Browser 窗口中,按 F5按键 或选择菜单 View | Refresh Tree View,即可看到自定义库的名称(本例为 00_My_Library)出现在库浏览器中。
以目前的实际经验来看,建立模块库的方法并不实用。往往会根据实际情况希望对模块结构进行调整,而修改只能在库中进行,极为麻烦。
或者 模型发给其他人进行协作时,还必须将模块库发过去。
因此,现在的建议是:可以专门指定一个普通mdl 作为库模型,将自己封装好的模块放置其中 ,需要用的时候,打开这个库模型,将模块拖出使用即可。
在使用simulink过程,可能会搭建满足自己需求的模块。为了之后可以直接调用而不用翻出当时的模型再copy出来,可以将建立自己的模块库。
首先,在simulink库中选择,新建 库(Library),在库中添加自己的模块。假设保存为Mymodel.slx(或Mymodel.mdl)。
新建一个m文件,命名为 slblocks.m
输入如下代码:
function blkStruct = slblocks
Browser.Library = 'Mymodel'%此处可根据模型名字修改
Browser.Name= '_Mymodel_'% 该名字为库中所看到的名字
Browser.IsFlat = 1% 判断模块是否有下一级
blkStruct.Browser = Browser%此处命名随意
将模型和该m文件保存在G:matlab2018atoolboxmymodel 路径中(其实路径随意)。
然后在将路径添加到matlab的搜索路径中。
重启simulink后,就可以看到自己的库了~~~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)