在simulink中建立自己的模块库以及使用mask对模型进行封装。
每当遇到重复要使用的模型时,都需要去复制粘贴,有些浪费时间,本文就是将自己经常用的模块或者模型放在一起建立自己习惯的模块库。
文件建立步骤Mylib文件夹建立
一、初次安装(安装后,如需增加或更新库,无需再次安装)安装的文件怎么建立前面链接有说明。不需要再解压了。
1.将压缩包进行解压(解压好的文件夹最好放在Matlab所在文件夹里,防止被删掉,导致不能使用)。
![在这里插入图片描述](https://img-blog.csdnimg.cn/bf4bffaddc2e423bb89547efbc9bed9a.png)
2.在matlab主页,将文件夹Mylib设置为matlab路径。
![在这里插入图片描述](https://img-blog.csdnimg.cn/bf0ecd0f7862459c939d2555548dbb51.png)
3.在matlab打开Mylib文件夹,运行文件夹里的脚本。
![在这里插入图片描述](https://img-blog.csdnimg.cn/decc005b647f48abbfcf2fbca9bf93a0.png)
4.打开Simulink Library Blocks,按F5刷新,或者如同点击右键,然后选择Refresh Library Browser刷新模块库,模块就出现在My Library里面。注意:My Library安装后一般在中间位置。
![在这里插入图片描述](https://img-blog.csdnimg.cn/aee4f8ef8bda42a9b69b51b76da2f59d.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/2c954c23102147859f8fb035296df007.png)
二、封装过程
以程序均值滤波为例(MATLAB2018b),进行封装,选择Blank Library,将模型均值滤波模型粘贴在里面。
![在这里插入图片描述](https://img-blog.csdnimg.cn/2829dd543a79437081812940c77c4c16.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/1dce527318514f3bb00e51bd02de2742.png)
1.框选模型按Ctrl+G,将模型封装成subsystem,删掉输入输出模块,如下图
![在这里插入图片描述](https://img-blog.csdnimg.cn/b964920c703347cfac44ab24786594c0.png)
2.选择模型,右键选择Mask,再选择Create Mask(或者按Ctrl+M)
![在这里插入图片描述](https://img-blog.csdnimg.cn/4028fc71c726442bb5cbaeb091d17dd3.png)
出现下图框
![在这里插入图片描述](https://img-blog.csdnimg.cn/89ceb6641f3c4ee7907a100b3032ce65.png)
3.模型有2个输入,1个输出,将模块的名字命名为Filter.
在框内加入代码:
disp('Filter')
port_label('input',1,'in')
port_label('input',2,'Filter_C')
port_label('output',1,'out')
![在这里插入图片描述](https://img-blog.csdnimg.cn/5bcade2c854c4b72ab657ee4a1abf9c2.png)
第1行为模块名字
第23行为输入名称
第4行为输出名称
4.在如图Prompt位置输入模块说明——均值滤波
![在这里插入图片描述](https://img-blog.csdnimg.cn/4b083822031845fca1dadf3f2eb657fc.png)
4.封装后的模型(这只是模型封装成模块,还没有进入模块库内)
![在这里插入图片描述](https://img-blog.csdnimg.cn/62ce677e55084d9982f696bcaeb24311.png)
三、My Library模块库的更新与添加
更新模块库
将要更新的模块复制粘贴到Blank Library模型内,将模型名称改为mylib,替换掉安装时的mylib.slx文件,注意替换的文件也要为.slx。然后打开Simulink Library Blocks,按F5刷新,就可以看到更新的模块库。
![在这里插入图片描述](https://img-blog.csdnimg.cn/81a60447fdce4c439f86665522d437a1.png)
直接向库内添加模块
1.打开Simulink Library Blocks,选择My Library,右键选择Open My Library library,进入到mylib模块库
![在这里插入图片描述](https://img-blog.csdnimg.cn/1c66f479ec9a42ba86432cfe371cabca.png)
2.拖动一下模块,出现黄色标语,选择unlock this library
![在这里插入图片描述](https://img-blog.csdnimg.cn/2edb2160383040e9803bede0d15bc390.png)
3.将封装好的模块复制在模块库内,点击保存。
![在这里插入图片描述](https://img-blog.csdnimg.cn/fc2f9cb2608647c99c33eb4e5d425e09.png)
4.打开Simulink Library Blocks,按F5刷新,就可以看到更新的模块库。
![在这里插入图片描述](https://img-blog.csdnimg.cn/73eb8edabc05403e8ae58bbf1e0d3466.png)
四、模块库的模型分类
1.在mylib模块库内加入subsystem,删除它的输入输出模块,改名为要分类的名称,将所属的模块放入subsystem内。点击保存。
![在这里插入图片描述](https://img-blog.csdnimg.cn/216d44490f374b3bb32e3eb6459de295.png
2.打开Simulink Library Blocks,按F5刷新,就可以看到分类的模块库。
![在这里插入图片描述](https://img-blog.csdnimg.cn/5b81cbe80f574a2e80c4526de4408569.png)
3.双击就能打开分类的模块库,或者在My Library下属分类直接选择。
![在这里插入图片描述](https://img-blog.csdnimg.cn/172ab55e32df41c580cdd0f5bf2067d0.png)