主要内容

get_param

获取参数名和值

描述

例子

ParamValue= get_param (对象参数返回指定模型或块对象的指定参数的名称或值。打开或加载Simulink金宝app®第一个模型。

提示

如果你打多个电话给get_param对于相同的块,使用数字句柄指定块比使用完整的块路径更有效。使用get金宝appSimulinkBlockHandle获取块句柄。

参数名称请参见:

例子

获取一个块参数值和一个模型参数值

加载vdp模型。

load_system (“vdp”);

的值表达式块参数。

BlockParameterValue = get_param(的vdp /亩“乘法”
BlockParameterValue = '元素(K.*u)'

的值SolverType模型参数。

SolverType = get_param(“vdp”“SolverType”
SolverType =可变步长

获取根参数名称和值

通过查找Simulink根参数名和模型参数名之间的差异,获得全局参数名的列表。金宝app

RootParameterNames = fieldnames(get_param(0,“ObjectParameters”));load_system (“vdp”) ModelParameterNames = fieldnames(get_param(“vdp”“ObjectParameters”));GlobalParameterNames = setdiff(RootParameterNames,ModelParameterNames)
GlobalParameterNames = 'AutoSaveOptions' 'CacheFolder' 'CallbackTracing' 'CharacterEncoding'…“CurrentSystem”

获取全局参数的值。

GlobalParameterValue = get_param(0,“CurrentSystem”
GlobalParameterValue = vdp

获取模型参数名称和值

类的模型参数列表vdp模型。

load_system (“vdp”ModelParameterNames = get_param(“vdp”“ObjectParameters”
ModelParameterNames =名称:[1x1 struct]标签:[1x1 struct]描述:[1x1 struct]类型:[1x1 struct]父项:[1x1 struct]句柄:[1x1 struct] . .版本:[1x1 struct]

的当前值ModelVersion的模型参数。vdp模型。

ModelParameterValue = get_param(“vdp”“ModelVersion”
ModelParameterValue = 1.6

获取所有块和一个参数值

类的块路径和名称的列表vdp模型。

load_system (“vdp”BlockPaths = find_system(“vdp”“类型”“块”
BlockPaths = 14×1 cell array {'vdp/Constant'} {'vdp/More Info'} {'vdp/More Info/Model Info'} {'vdp/Mu'} {'vdp/Mux'} {'vdp/Product'} {'vdp/Scope'} {'vdp/Square'} {'vdp/Sum'} {'vdp/Sum1'} {'vdp/x1'} {'vdp/x2'} {'vdp/Out1'} {'vdp/Out2'}

控件的块对话框参数列表μ块。

BlockDialogParameters = get_param(的vdp /亩“DialogParameters”
BlockDialogParameters =结构体字段:获得:[1×1 struct]乘法:[1×1 struct] ParamMin:[1×1 struct] ParamMax:[1×1 struct] ParamDataTypeStr:[1×1 struct] OutMin:[1×1 struct] OutMax:[1×1 struct] OutDataTypeStr:[1×1 struct] LockScale:[1×1 struct] RndMeth:[1×1 struct] SaturateOnIntegerOverflow:[1×1 struct] SampleTime:[1×1 struct]

的值乘法块参数。

BlockParameterValue = get_param(的vdp /亩“乘法”
BlockParameterValue = '元素(K.*u)'

使用块句柄获取块参数值

如果你打多个电话给get_param对于相同的块,使用块句柄比指定完整的块路径作为字符向量更有效,例如:的vdp /亩

的后续调用中可以使用块句柄get_paramset_param.如果检查句柄,可以看到它包含一个double。不要试图单独使用句柄的数字(例如,5.007),因为你通常需要指定比MATLAB更多的数字®显示器。相反,将句柄分配给一个变量,并使用该变量名指定一个块。

使用get金宝appSimulinkBlockHandle加载vdp如有必要建模(通过指定真正的),并掌握μ块。

mublockhandle = get金宝appSimulinkBlockHandle(的vdp /亩,真正的);

使用块句柄get_param得到的值Expr块参数。

BlockParameterValue = get_param(mublockhandle,“乘法”
BlockParameterValue = '元素(K.*u)'

显示模型中所有块的块类型

类的块路径和名称的列表vdp模型。

load_system (“vdp”BlockPaths = find_system(“vdp”“类型”“块”
BlockPaths = 14×1 cell array {'vdp/Constant'} {'vdp/More Info'} {'vdp/More Info/Model Info'} {'vdp/Mu'} {'vdp/Mux'} {'vdp/Product'} {'vdp/Scope'} {'vdp/Square'} {'vdp/Sum'} {'vdp/Sum1'} {'vdp/x1'} {'vdp/x2'} {'vdp/Out1'} {'vdp/Out2'}

的值BlockType属性中的每个块vdp模型。

BlockTypes = get_param(BlockPaths,“BlockType”
BlockTypes = 14×1单元阵列{'Constant'} {'SubSystem'} {'SubSystem'} {'Gain'} {'Mux'} {'Product'} {'Scope'} {'Math'} {'Sum'} {'Sum'} {'Integrator'} {'Integrator'} {'Outport'} {'Outport'}

获取屏蔽参数、Simulink对象、框图和注释的选项列表金宝app

您可以使用以下命令检索参数、Simulink对象、框图和注释的选项列表金宝appget_param使用关键字选项

获取屏蔽参数的选项列表

考虑一个例子,其中a获得Block是蒙面的,有一个弹出而且组合框参数。

使用此代码检索选项列表。

get_param (的vdp /亩“options@Multiplication”
ans = 1×4单元阵列{“Element-wise (K . * u)”}{矩阵(K * u)的}{矩阵(u * K)的}{的矩阵(K * u) vec…”(u}

在任何Simulink对象、框图和注金宝app释中获取选项

考虑一个带有子系统块。您可以检索块中任何对象的选项。

get_param (gcb),“options@showportlabels”
ans = 1×4单元格阵列{'none'} {'FromPortIcon'} {'FromPortBlockName'} {'SignalName'}

获取屏蔽参数的评估值

方法可以访问屏蔽块参数的评估值get_param命令的关键字为value。

考虑一个例子,其中a获得块被屏蔽,并有一个编辑参数。

get_param (gcb),“value@edit”
Ans = 4

请注意

检索评估值的选项仅限于掩码参数

输入参数

全部折叠

模型或块的句柄或名称,或根,指定为数字句柄或字符向量、多个块的字符向量单元格数组,或0为根。数字句柄必须是标量。您还可以获得行和端口的参数,但必须使用数字句柄来指定它们。

提示

如果你打多个电话给get_param对于相同的块,使用数字句柄指定块比使用完整的块路径更有效。使用get金宝appSimulinkBlockHandle获取块句柄。不要试图单独使用句柄的数字(例如,5.007),因为您通常需要指定比MATLAB显示更多的数字。将句柄分配给一个变量,并使用该变量名指定一个块。

指定0获取根参数名称,包括当前Simulink会话的全局参数和模型参数。金宝app

  • 全局参数包括编辑器首选项和金宝app仿真软件编码器™参数。

  • 模型参数包括配置参数、金宝app仿真软件编码器参数,并金宝appSimulink Code Inspector™参数。

例子:的vdp /亩

模型或块或根的参数,指定为字符向量或0为根。下表显示了特殊情况。

指定的参数 结果
“ObjectParameters”

返回一个结构数组,其中指定对象(模型、块或根)的参数名称作为结构中的单独字段。

“DialogParameters”

返回一个结构数组,其中块对话框参数名称作为结构中的单独字段。如果块有掩码,则该函数返回掩码参数。

参数名称,例如:“BlockType”.指定任何模型或块参数,或块对话框参数。

返回指定模型或块参数的值。

如果指定多个块作为单元格数组,则返回一个单元格数组,其中包含所有块所共有的指定参数值。单元格数组中的所有指定块都必须包含该参数,否则函数将返回错误。

例子:“ObjectParameters”

数据类型:字符

输出参数

全部折叠

指定模型或块或根的指定参数的名称或值。如果指定多个对象,则输出为对象单元格数组。下表显示了特殊情况。

指定的参数 ParamValue返回
“ObjectParameters”

一个结构数组,其中指定对象(模型、块或根)的参数名作为结构中的单独字段。

“DialogParameters”

一个结构数组,其中块对话框参数名作为结构中的单独字段。如果块有掩码,则该函数返回掩码参数。

参数名称,例如:“BlockType”

指定的模型或块参数的值。如果将多个块指定为单元格数组,则返回一个单元格数组,其中包含所有块所共有的指定参数值。

如果通过指定来获取根参数get_param (0, ' ObjectParameters '),则输出ParamValue是一个结构数组,其根参数名作为结构中的单独字段。每个参数字段都是一个包含以下字段的结构:

  • 类型-参数类型值为:“布尔”“字符串”“int”“真实”的“点”“矩形”“矩阵”“枚举”“端口”,或“列表”

  • 枚举-仅适用于的枚举字符向量值的单元格数组“枚举”参数类型

  • 属性-定义参数属性的字符向量的单元格数组。值:“读写”“只读”“read-only-if-compiled”只写的“dont-eval”“总是收藏”“不是拯救”“nondirty”,或“模拟”

版本历史

R2006a之前介绍