Matlab Simulink块回调:如何访问StartFcn中的块参数?

Matlab Simulink块回调:如何访问StartFcn中的块参数?,matlab,simulink,Matlab,Simulink,我有一个带有一系列参数的虚拟子系统。我想使用这些参数来计算块的其他属性。这需要在模拟开始之前,但在块初始化之后完成 我创建了一个脚本来进行计算,并尝试从StartFcn块回调运行它。但是脚本无法访问回调中的参数(由用户通过掩码输入)。我猜这是因为这些参数在Matlab工作区中不可用,只在块中可用 有没有办法通过StartFcn访问这些参数?若不能做到这一点,是否有另一种方法,而不是StartFcn,通过它我可以在模拟开始之前执行一些计算 为了澄清,我不能在块的掩码中使用Initializatio

我有一个带有一系列参数的虚拟子系统。我想使用这些参数来计算块的其他属性。这需要在模拟开始之前,但在块初始化之后完成

我创建了一个脚本来进行计算,并尝试从StartFcn块回调运行它。但是脚本无法访问回调中的参数(由用户通过掩码输入)。我猜这是因为这些参数在Matlab工作区中不可用,只在块中可用

有没有办法通过StartFcn访问这些参数?若不能做到这一点,是否有另一种方法,而不是StartFcn,通过它我可以在模拟开始之前执行一些计算


为了澄清,我不能在块的掩码中使用Initialization选项卡,因为脚本也需要来自其他块的数据(在模拟开始时在工作区中可用)。

您的猜测是正确的,块回调是在基本工作区中计算的,但掩码参数是掩码专用工作区的一部分。要访问它们,请在回调函数中使用和

value = get_param(gcb, 'my_param_name');

事实证明,这是一种方式。谢谢你的及时回复。我很感激。