管理模型数据
要定义多个模块或模型使用的参数值,您可以使用变量。在每个参数实例上单独更新数值参数值可能效率低下且容易出错。您可以更新工作区或定义变量的源文件中的变量值。拥有此信息的单一来源有助于模型组件的可扩展性和可重用性。
要指定信号、状态和模块参数的值范围、数据类型、可调性和其他特性,您可以使用 Simulink.Parameter
和 Simulink.Signal
对象。虽然您可以使用变量或对象来指定参数值,但此示例为了简单起见使用了变量。
您可以使用以下支持文件类型定义变量:
MAT 文件 (
.mat
)脚本或函数 (
.m
)数据字典 (
.sldd
)
要为小模型加载数据,可以使用模型回调。对于大型模型层次结构,其他加载方法更有效。
当您打开名为 BasicModelingData
的模型时,PreLoadFcn
模型回调会评估定义基础工作区中的变量的脚本。
mdl = "BasicModelingData"; open_system(mdl); cb = get_param(gcs,"PreLoadFcn")
cb = 'BasicModelingDataDefinitions'
在工厂中,Gain 模块使用名为 k
、c
和 m
的变量。每个 Gain 模块图标显示该模块使用的变量。
在控制器中,PID Controller 模块使用脚本中的其他变量,例如 kpHeight
和 kiHeight
。当您选择一个 PID Controller 模块时,属性检查器会显示该模块使用的变量。
要以交互方式更改变值,请使用 MATLAB® 命令行窗口、模型数据编辑器或类似工具。