Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试运行 Simulink 模型,同时在 Matlab 脚本中接收和处理数据,并将结果发送到 Simulink 以更改模型的行为。
由于 Matlab 脚本应该继续接收和处理数据,我能弄清楚的唯一方法是使用 while(1) 循环。但是,模拟似乎被 while 循环阻塞了。当我运行脚本时,模拟时间停止。只要我 Ctrl+C 结束脚本,模拟就继续。
有什么方法可以同时运行 simulink 仿真和 Matlab 脚本(或函数),同时保持它们之间的交互?就像在不同的线程中执行它们一样。
MATLAB(+ 工具箱 + Simulink)本质上是一个单线程应用程序,所以没有简单的方法可以做你想做的事。(近年来,一些底层数学库已经变成了多线程的,但这并没有改变高层次的图景)。
您可以执行以下任一操作:
其中后者(可以说)是最简单的。