MATLAB/Simulink如何创建自己的库

0. 前言

        本文以Matlab R2022a为实验平台,介绍在Simulink库浏览器中添加库的方法、库浏览器的库里添加子库方法、设置库在库浏览器中的位置的方法。

1. 在库浏览器中添加库

        (1)创建一个库文件。在Simulink的起始页面,点击空白库,点击创建库

(2)在新建的库文件中搭建需要的模型;以Clark变换为例,在库文件中创建模型:

(3)框选该模型,右键,点击创建子系统,得到一个模型:

 (4)模型搭建完成后,回到Matlab工作区,在工作区输入以下代码:

set_param(gcs,'EnableLBRepository','on');

只有将EnableLBRepository库属性设置为on,我们创建的库才能够被库浏览器找到。

 (5)Ctrl + S 保存库文件,命名为Math.slx

(6) 在Math.slx所在文件夹下,创建脚本文件slblocks.m,在该脚本文件中添加以下内容,并保存:

function blkStruct = slblocks

    Browser.Library = 'Math';
    % 'Math' 为库文件名,不需要带扩展名

    Browser.Name = 'Math';
    % 'Math' 是出现在库浏览器中的名词

    blkStruct.Browser = Browser;

 (7)将模型Math.slxslblocks.m文件所在的文件夹路径添加到Matlab的搜索路径中:

(8)打开Simulink库浏览器,按F5刷新,此时可以看到在库浏览器中出现了Math库与对应的模型。

2. 库浏览器的库里添加子库方法

        如果说需要将Math库作为子库,添加到另一个库(My FOC Library)中,需要按照如下操作:

(1)创建My FOC Library库文件;在Simulink的起始页面,点击空白库,点击创建库

(2)Ctrl + S 保存库文件到Math的同一个文件夹下面,命名为MyFOCLibrary.slx。 

(3)模型搭建完成后,回到Matlab工作区,在工作区输入以下代码: 

set_param(gcs,'EnableLBRepository','on');

(4)在MyFOCLibrary.slx中放入subsystem模块,在库文件中搜索subsystem模块,添加到MyFOCLibrary.slx中,并删除subsystem的输入输出,将其命名为Math。

 (5)右键单击命名为Math的Subsystem模块,选择属性,选择回调,选择OpenFcn,输入Math

 (6)在Matlab工作区输入以下代码后保存MyFOCLibrary.slx文件。

(7)将文件夹下的slblocks.m脚本文件进行修改以下内容并保存:

function blkStruct = slblocks
    Browser.Library = 'MyFOCLibrary';
    % 'MyFOCLibrary' is the name of the library

    Browser.Name = 'My FOC Library';
    % 'My FOC Library' is the library name that appears
    % in the Library Browser

    blkStruct.Browser = Browser;

(8)打开Simulink库浏览器,按F5刷新,即可看到My FOC Library库中包含了Math库。

3. 设置库在库浏览器中的位置

 (1)在需要调整位置的库的文件夹下添加sl_customization.m脚本文件,进行修改并保存:

function sl_customization(cm)
	% Change the order of libraries in the Simulink Library Browser. 
	cm.LibraryBrowserCustomizer.applyOrder({'My FOC Library',-2});
    %'My FOC Library'是要设置的库的名称,-2是库所在位置的优先级,越小排序越靠前
end

        Simulink Library Browser中各个工具箱的排列顺序是内置的,由优先级和名称2个因素决定。优先级数字越小工具箱排位越靠前;对于同一优先级的工具箱按照字母顺序排列。默认情况下Simulink库优先级为-1,其他工具箱优先级为0。

(2)在Matlab工作区输入以下代码:

sl_refresh_customizations

(3)重新打开库浏览器,可以看见My FOC Library被提到了最上面。

  • 13
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cyber.L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值