Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

getSimulinkBlockHandle

从模块路径中获取模块句柄

说明

示例

handle = getSimulinkBlockHandle(path) 返回由 path 指定的模块(如果存在于加载的模型或库中)的数值句柄。如果找不到该模块,则返回 -1。根据需要解析库链接。

使用 getSimulinkBlockHandle 返回的数值句柄,在对 get_paramset_param 的后续调用中操作该模块。这种方法比使用完整的模块路径多次调用这些函数更高效。不要试图只使用句柄的数值(例如 5.007),因为您通常需要指定的位数远远超过 MATLAB® 显示的位数。要将句柄赋给变量,并使用该变量名称指定模块。该句柄仅适用于当前 MATLAB 会话。

使用 getSimulinkBlockHandle 检查模块路径是否有效。这种方法比在 try 语句中调用 get_param 更高效。

示例

handle = getSimulinkBlockHandle(path,true) 尝试加载包含指定模块 path 的模型或库,然后检查该模块是否存在。如果未找到模型或库,不会返回错误。即使该函数找不到指定路径的模块,通过这种方式加载的任何模型或库仍将保留在内存中。

示例

全部折叠

获取 Pilot 模块的句柄。

load_system('f14')
handle = getSimulinkBlockHandle('f14/Pilot')
handle =

  562.0004

您可以在对 get_paramset_param 的后续调用中使用该句柄。

根据需要加载模型 f14(通过指定 true),并获取 Pilot 模块的句柄。

handle = getSimulinkBlockHandle('f14/Pilot',true)
handle =

  562.0004

您可以在对 get_paramset_param 的后续调用中使用该句柄。

检查模型 f14 是否已加载并且包含名为 Pilot 的模块。有效句柄始终大于零。如果函数找不到该模块,将返回 -1

valid_block_path = getSimulinkBlockHandle('f14/Pilot') > 0
valid_block_path =

     0

此模型包含该模块,但此模型并未加载,所以,此命令因找不到该模块而返回 0

使用 getSimulinkBlockHandle 检查模块路径是否有效比在 try 语句中调用 get_param 更高效。

输入参数

全部折叠

模块路径名称,指定为字符向量或字符向量元胞数组。

示例: 'f14/Pilot'

数据类型: char

输出参数

全部折叠

模块的数值句柄,以双精度值或双精度值数组形式返回。有效句柄始终大于零。如果函数找不到该模块,将返回 -1。如果 path 输入是字符向量元胞数组,则输出是句柄数值数组。

数据类型: double

另请参阅

|

在 R2015a 中推出