使用数据类型参数指定编辑参数的数据类型
您可以使用数据类型参数为封装编辑参数指定可接受的数据类型。为编辑参数关联数据类型可为通过封装对话框提供的输入值定义规则。您还可以使用数据类型参数来关联编辑参数的最小值和最大值。您可以使用数据类型参数进行定点分析。
浏览模型
模型演示所有封装参数类型。使用模块 DataTypeStr
为编辑参数指定数据类型以及最小值和最大值。封装模块 DataTypeStr
具有编辑参数 Gain
、最小值参数 Minimum
、最大值参数 Maximum
以及数据类型参数 DataTypeStrParameter
。
open_system("slexMaskParameterOptionsExample.slx")
将数据类型与编辑参数相关联
模块 DataTypeStr
已封装,并且已创建必需的参数。如果您要创建一个类似的模型,请按照以下步骤操作。
1.打开封装模块 DataTypeStr
。
2.创建编辑参数 Gain
、最小值参数 Minimum
、最大值参数 Maximum
以及数据类型参数 DataTypeStrParameter
。
3.要为 Gain
参数指定允许的数据类型以及最小值和最大值,请在参数窗格中选择数据类型参数,然后双击属性编辑器窗格中的类型选项。类型选项编辑器将打开。类型选项编辑器具有以下选项卡,用于为选定参数指定数据类型:
继承规则 - 指定用于确定数据类型的继承规则。继承规则分为三个类别:常见 Simulink 规则、自定义规则和高级 Simulink 规则。高级规则部分允许您从 Lookup table、Constant 和 Gain 等模块中继承规则。例如,断点数据、常量值、增益、表数据、逻辑数据、累加器、乘积输出和 Simulink。它还允许您为所有端口输入相同的字长和使用相同的数据类型。自定义规则部分列出在 MATLAB™ 搜索路径中注册的任何自定义继承规则。有关某些继承规则的定义,请参阅数据类型继承规则。
内置类型 - 指定一种或多种内置 Simulink 数据类型,如
double
或single
。有关详细信息,请参阅 Simulink 支持的数据类型。
定点 - 指定定点数据类型的定标和符号模式。有关详细信息,请参阅指定定点数据类型。
用户定义 - 指定总线对象、枚举数据类型或字符串。有关详细信息,请参阅指定枚举数据类型。
关联 - 将数据类型参数与“编辑”参数关联。在设计最小值和设计最大值中选择最小值参数
Minimum
和最大值参数Maximum
,以将最小值和最大值参数关联到编辑参数Gain
。
4.在类型选项编辑器中点击确定以保存规则选择。
5.点击保存封装以保存封装。
注意:通过数据类型参数设置可接受的数据类型不会设置相关联的编辑参数的信号属性或输出数据类型。请显式在使用编辑参数的封装子系统的底层模块上设置与编辑参数关联的数据类型。
以编程方式将数据类型与编辑参数相关联
1.在当前模型上创建一个封装。
maskObj = Simulink.Mask.get(gcb);
2.创建 edit
、min
和 max
参数。
maskObj.addParameter('Name','Gain', 'Type','edit'); maskObj.addParameter('Name','minimum', 'Type','min'); maskObj.addParameter('Name','maximum', 'Type','max');
3.添加 data type
参数,并将其与编辑参数 Gain
相关联。
maskObj.addParameter('Name','DataType',... 'Type','unidt({a=DataType|Min|Max|Gain}{i=Inherit: auto|Inherit:Inherit via internal rule}{b=double|single})');
其中,Type
显示为数据类型参数指定的值,并具有以下定义:
这些关联由
a
定义。
继承规则由
i
定义,其对应的值为Inherit: Same as first input
。
内置类型由
b
定义,其对应的值为double
和single
。