1

如果有一个array (5000x1 double)在 matlab 工作区。我将'from workspace'块放在 simulink 窗口中以输入另一个块,但是在运行程序时出现此错误:

Invalid matrix-format variable specified as workspace input in 'new_net_pattern_recog/From Workspace'. The matrix must have two dimensions and at least two columns. Complex signals of any data type and non-double real signals must be in structure format. The first column must contain time values and the remaining columns the data values. Matrix values cannot be Inf or NaN.

我能做些什么?

4

1 回答 1

3

我相信您会收到此错误,因为From Workspace块期望您的数据采用时间序列的形式。根据此块的文档

在模块的 Data 参数中,输入指定工作区数据的 MATLAB 表达式。表达式的计算结果必须为以下之一:

  • MATLAB 时间序列对象
  • MATLAB 时间序列对象的结构
  • 包含一组仿真时间和相应信号值的数组或结构

听起来您的 5000x1 元素数组不会随时间而变化,并且这些值旨在在整个模拟过程中保持不变。如果这是真的,那么你应该只使用一个Constant块。要将工作区中的变量用作此块的输出,只需将常量块的“常量值”参数设置为变量的名称。有关常量块的更多信息,请参阅此文档。

于 2012-09-10T00:08:10.957 回答