如何在'From Workspace'Simulink块中使用循环重复选项在Simulink中包含Matlab数据?

时间:2019-07-08 10:42:37

标签: matlab simulink

假设我在Matlab工作区中有一个任意的nx1数组。如何将该数组作为源导入Simulink并使用循环重复将数据扩展到其最终值之外?

我知道Simulink中的'From Workspace'块,并且看到它有一个名为'Cyclic repetition'的选项。但是,如果我要使用nx1数组,则会收到错误消息“指定为工作空间输入的无效变量”。

1 个答案:

答案 0 :(得分:3)

要使用From workspace块,您的Matlab数据必须采用特定格式。例如。对于正弦波信号,您需要使用以下格式的struct

y.signals.values=sin(0:0.01:10*pi)';
y.signals.dimensions=1;
y.time = [ ];

然后在From Workspace块中,确保为数据设置了正确的变量,取消选中内插数据,并设置了循环重复

Required settings in the From Workspace block

现在,您可以通过简单地将其馈送到范围来验证是否从工作空间中导入了正确的数据:

Verify imported data using simple model

结果输出如下所示,并确认From Workspace块按预期工作,因为它重复了原始数据直到10000s:

Output until 10000 seconds