运行具有实时输入的连续Simulink模型?

时间:2016-05-12 07:57:56

标签: matlab simulink

我是Matlab / Simulink的新手,但需要从一个软件中与Simulink模型进行交互。

目前我已经创建了一个简单的Simulink函数'Inc',它有一个输入到一个带有常数1和输出的加法块。我使用了To / From Workspace块,可以使用时间/值向量输入在固定时间运行模拟,例如simin = [0,0; ​​5,0; 5,1; 10,1]。

我想做的是连续运行我的模型?实时读取工作空间值而不是基于预定义时间的矢量?

我看不出怎么设置它? Matlab / Simulink可以这样做吗?

总结一下,我希望simin和simout是单个值,即simin = 1,然后在下一个固定步骤连续(无限)运行模型simout将更新为simout = 2. simin将在工作区间隔不一。

1 个答案:

答案 0 :(得分:3)

简短的回答是你不能(轻松地)做到这一点,而不是Simulink的工作方式。在模拟开始时读取/访问MATLAB工作空间并将其传递给Simulink引擎,即使模拟完成之前工作空间中的值发生更改,Simulink模型运行也不会考虑这一点。

有很多方法可以解决这个问题,但如果你是MATLAB& amp; Simulink,请注意这些是相当先进的技术,我建议先熟悉Simulink。

请查看这些类似的问题,了解如何做您想做的事情:

显然,您需要将模拟结束时间更改为Inf或更大的数字。