我遇到了simulink块属性的问题。我需要检查块是否具有名称为“paramName”的参数。如果没有此参数,我需要添加它。 为此,我想获得掩码参数:
p = Simulink.Mask.get(blockName);
这个例子我得到了帮助。但Simulink显示以下错误:
未定义变量“Simulink”或类“Simulink.Mask.get”
我该怎么做才能解决我的问题?
答案 0 :(得分:2)
您可能需要将get_param
与DialogParameters
属性结合使用,例如:
block_params = get_param(%block_path%,`DialogParameters`);
输出block_params
是一个包含该特定块的所有参数的结构。将%block_path%
替换为相关块的路径,或使用gcb
作为当前块。 get_param
的文档页面上有一个示例:
获取块参数值和属性
列出块参数
Inertia
子系统中Requisite Friction
块的名称sldemo_clutch
模型。
block_params = get_param('sldemo_clutch/Friction Mode Logic/Requisite Friction/Inertia Ratio',... 'DialogParameters')
ans =
Gain: [1x1 struct]
Multiplication: [1x1 struct]
ParamMin: [1x1 struct]
ParamMax: [1x1 struct]
ParamDataTypeStr: [1x1 struct]
OutMin: [1x1 struct]
OutMax: [1x1 struct]
OutDataTypeStr: [1x1 struct]
LockScale: [1x1 struct]
RndMeth: [1x1 struct]
SaturateOnIntegerOverflow: [1x1 struct]
SampleTime: [1x1 struct]