【发布时间】:2014-05-20 20:54:27
【问题描述】:
我正在尝试在根模型“outer.mdl”的一个时间步中模拟模型“inner.mdl”(几个时间步)。我想从 Matlab 功能块调用 simout = sim("inner.mdl") 。问题是:由于我使用的是外部 sim(绕过代码生成),simout 作为 MxArray 返回,我无法从中检索记录的信号。任何想法都将不胜感激,无论是在模拟中进行模拟还是使用我正在尝试的方法获取记录的信号。
我这样做的主要原因是,作为控制器的一部分,我试图在未来提前几步模拟系统,以便以某种方式使用该信息。我不想将我的控制器变成代码,即使我摆脱了与仿真时间相关的块,我也不知道如何在整个模型不及时向前移动的情况下运行一个块。
【问题讨论】:
-
很难从对您尝试做什么的一般描述中回答这样的问题。准确地展示你是如何做某事的,以及你是如何失败的或更具体的。
-
Jusr 写一个 m-code S-function。这样您就不会遇到任何数据类型问题。
标签: matlab simulink matlab-coder