Simulink回调问题

时间:2011-02-09 10:58:05

标签: matlab callback simulink

嘿,我的模型中使用PreLoadFcn可能有一个非常简单的问题。

我希望我的模型在开始模拟之前加载一个m文件(这是preloadfcn的用途,我想)。

所以我添加了文件 - >模型属性 - >回调 - > PreLoadFcn行

run('./init.m')

在此文件中设置了几个变量。我的模型引用那些变量并引发异常,当我单击“开始模拟”时它无法找到它们。这表明我,回调没有做它应该做的事情......

文件'init.m'与模拟文件位于同一目录中。

即使尝试将目录添加到matlab PATH也没有任何效果。

迎接poeschlorn

3 个答案:

答案 0 :(得分:1)

在运行模型之前,在MATLAB命令提示符下运行“init”是否有效?如果是这样,你应该用简单的

代替回调
init

将运行脚本“init.m”。

答案 1 :(得分:1)

您可以使用回调跟踪来查看在加载和模拟模型的过程中调用的回调。有关详细信息,请参阅documentation on callbacks

另外,是init脚本还是函数?它应该是一个脚本,或者应该使用evalin('base')将vars放在基础工作区中。您还可以尝试在init.m中设置断点以确保它不会被命中。

答案 2 :(得分:0)

我也有同样的问题。现在它已经解决了。 解决方案很简单。 在PreLoadFcn中定义函数之后* 你只需要保存simulink文件,然后重新启动它。 肯定会有用。

问候, 哈利