使用值替换simulink块中使用的变量的脚本

时间:2013-07-19 07:44:19

标签: matlab simulink

有没有办法将Simulink块中使用的变量替换为存储在Matlab基础工作区(或模型工作区)中的实际值?

e.g。 在增益块中,“增益”参数设置为“gain_A”。 'gain_A'在基础工作区中定义为'0.5'。 预期的脚本将使用'0.5'替换增益块中的'gain_A'。

我尝试过的方法是使用Simulink.findVars(modelname, 'Name', 'gain_A'),它将返回一个包含属性的对象,其中所有块都使用变量'gain_A'。但是,它并没有告诉我它用于哪个参数(例如'Gain')。

感谢您的帮助=)

1 个答案:

答案 0 :(得分:1)

不确定这是否有效,但是您可以将Simulink.findVarsget_param合并,以获取Simulink.findVars标识的每个块的所有块参数吗?根据{{​​3}}:

block_parameters = get_param(block_path,'DialogParameters')

然后您可以确定每个变量(例如gain_A)用于哪个参数。