主要内容

自定义MATLAB系统块外观

这个例子展示了如何自定义MATLAB系统块的外观。

系统对象

系统对象允许您使用MATLAB实现算法。系统对象是一种特殊的MATLAB对象,专门为实现和模拟输入随时间变化的动态系统而设计。

定义System对象后,可以使用MATLAB System块将其包含在Simulink模型中。万博1manbetx

模型描述

在这个模型中有三个MATLAB系统模块。第一个块对块的外观没有任何自定义,默认情况下显示块上System对象的名称。属性中的参数名称获得此块的端口标签stepImpl方法。第二个块显示块图标上的自定义文本和自定义端口标签。第三个块显示自定义块图标图像。

系统对象类定义

您可以通过在模块对话框中单击“源代码”超链接访问MATLAB系统模块使用的MATLAB源代码。的TimesTwo第一个块中使用的系统对象没有自定义,仅实现stepImpl方法。的CustomBlockIconExample对象实现了以下方法来定制块的外观。

  • getInputNamesImpl—自定义输入端口标签

  • getOutputNamesImpl—自定义输出端口标签

  • getIconImpl-在块上显示文本或图像

System对象具有DisplayImage属性在要在块上显示的文本和图像之间进行选择。

TimesTwo系统对象

classdef TimesTwo < matlab。将输入乘以2% obj = TimesTwo返回一个系统对象,obj,该%将其输入乘以2。方法(Access = protected) function y = stepImpl(~, u) y = 2 * u;结束结束

CustomBlockIconExample系统对象

classdef CustomBlockIconExample < matlab。System % SystemObjectBlockIconExample自定义块图标属性(不可调)% DisplayImage选择将图像显示为块图标DisplayImage (1,1) logical = false end methods(Access = protected) function y = stepImpl(~, u) y = u;结束函数inputName = getInputNamesImpl(~) inputName = "MyIn";结束函数outputName = getOutputNamesImpl(~) outputName = "MyOut";end function icon = getIconImpl(obj) %返回要显示在块图标上的文本或图像%如果obj.使用字符串数组显示多行文本。显示图像图标= matlab.system.display.Icon('slexngc6543aPix.jpg');else %显示文本图标= ["Block icon", "with custom text"];结束结束结束

另请参阅

|

相关的话题