Matlab 我想并行和同步运行两个或多个simulink模型。

Matlab 我想并行和同步运行两个或多个simulink模型。,matlab,simulink,Matlab,Simulink,嗨,我想并行和同步运行两个或多个simulink模型。有什么办法吗?我认为一种方法是创建一个子系统并将所有模型放在其中。它应该并行运行。我不喜欢这个。我想打开两个matlab实例,同步运行两个不同的模型。这可能吗?我想用编程的方式来做。任何帮助都是值得的。您应该使用matlab脚本并在其中实现同步逻辑 ==更新== 只需从Matlab脚本调用simulink模型,即可执行该模型。 您必须定义一个包含以下步骤的任务:首先,您可以在Matlab中计算输入。然后使用第一个输入执行第一个模型。然后将结果

嗨,我想并行和同步运行两个或多个simulink模型。有什么办法吗?我认为一种方法是创建一个子系统并将所有模型放在其中。它应该并行运行。我不喜欢这个。我想打开两个matlab实例,同步运行两个不同的模型。这可能吗?我想用编程的方式来做。任何帮助都是值得的。

您应该使用matlab脚本并在其中实现同步逻辑

==更新==

只需从Matlab脚本调用simulink模型,即可执行该模型。 您必须定义一个包含以下步骤的任务:首先,您可以在Matlab中计算输入。然后使用第一个输入执行第一个模型。然后将结果保存到某个变量。最后在第二个模型上使用该变量并启动第二个模型模拟


对所有必要步骤重复此任务。

如果您有仪器控制工具箱,您可以通过或块在两个模型之间发送/接收数据。不需要有两个MATLAB会话,这可以从一个MATLAB会话中完成,请参见此


然而,我怀疑是否需要有两个独立的模型。如果要保持每个子模型的原子性质,为什么不将两个模型作为子系统,甚至作为模型块放在同一个模型中?

运行并行simulink仿真的最佳方法可能是
parsim
命令。他们在Mathworks网站上发表了一篇完整的文章,解释了如何做到这一点:


同步逻辑应该是什么?我想不出合适的matlab同步命令,你能描述一下你的系统的性质吗?第一个模型生成的数据可能会用于第二个模型。我说的对吗?是的,一个模型的输出应该反馈给另一个模型,但它应该同步发生。表示simulink计算out1(模型1的输出)的时刻,该out1应馈送至in2(模型2的输入);所以在下一个循环中,应该填充out2。这在我的matlab许可证中不可用,无论如何,谢谢你的回答。好的。我仍然怀疑是否需要有两种不同的模式。为什么不将两个模型作为子系统或参考模型块放在同一个模型中?然后整个同步问题就消失了。是的,我同意你的看法。但是我需要用不同的环境模拟两个进程,比如不同的配置参数。而且模型将并行或串行运行?如果有两个模型块,每个模型可以有自己的配置参数集,请参阅。如果您只有一个模型,那么并行或串行运行的问题就无关紧要了。