zoukankan      html  css  js  c++  java
  • Simulink仿真入门到精通(十三) Simulink创建自定义库

     当用户自定义了一系列模块之后,可以自定义模块库将同类自定义模块显示到Simulink Browser中,作为库模块方便地拖曳到新建模型中。

    建立这样的自定义库需要3个条件:

    1. 建立library的mdl或slx文件,将自定义模块添加到文件中保存;
    2. 建立名字为slblocks的M函数,定义模块库显示到Simulink Browser中的规格;
    3. slblock.m与library模型库文件需要存放到同一路径下,并将路径添加到MATLAB的Set Path中。

    添加路径到Set Path。

    addpath('C:UserslenovoDesktop')

    将希望保存的模块拖到库文件中保存。

    Library与普通mdl或slx的区别为:

    1. Library中的模块不能随意拖动,打开时默认为被锁定的状态;
    2. Library的工具栏上没有仿真时间和仿真模式的设定;
    3. Library的菜单栏比一般模型文件的菜单栏缺少几个选项:Simulation、Code和Tools。

     将该库文件存为Lib_entertainment.slx,并将存储路径添加到MATLAB的搜索路径中。

    编写slblock.m文件。

    function blkStruct = slblocks
    % Information for "Blocksets and Toolboxes" subsystem
    blkStruct.Name = sprintf('Just for fun!');
    blkStruct.OpenFcn = 'disp(''Open Lib_entertainment Toolbox.'')';
    blkStruct.MaskDisplay = 'plot([0:2*pi],sin([0:2*pi]));';
    
    % Information for Simulink Library Browser
    Browser(1).Library = 'Lib_entertainment';  % no extension name
    Browser(1).Name    = 'Lib_entertainment Toolbox';
    Browser(1).IsFlat  = 1;  % no subsystems
    
    blkStruct.Browser = Browser;

    刷新Simulink Browser,即可看到该库及其中的模块。

    此时模块在库文件中将不能移动,试图移动会看到以下信息。

    通过菜单栏Diagram→Unlock Library解锁,即可进行模块的拖动,增加新模块,更改既有模块封装等。

  • 相关阅读:
    iOS开发UI篇—控制器的View的创建
    iOS开发UI篇—控制器的创建
    OS开发UI篇—UIWindow简单介绍
    iOS开发UI篇—使用storyboard创建导航控制器以及控制器的生命周期
    A1089. Insert or Merge
    A1044. Shopping in Mars
    A1010. Radix
    A1085. Perfect Sequence
    散列、贪心总结
    A1038. Recover the Smallest Number
  • 原文地址:https://www.cnblogs.com/dingdangsunny/p/12257933.html
Copyright © 2011-2022 走看看