FOR Simulink 中的迭代器块和模型的输入
FOR iterator block in Simulink and model's input
你好,我正在从 simulink 模型构建一个 exe,为了做到这一点,我通过 .mat 文件将输入传递给它。
我的问题是,由于在我的模型中存在一个 "for each" 块,我如何将数据存储在 .mat 文件中?通常(没有 for each 块)我会将输入作为常量向量存储在工作区中(请参阅 simulink 模型的上半部分),它会自动处理如何在仿真时间内传递数据。但就我而言,因为我想导出为 .exe 并以编程方式传递输入,所以我需要输入为 .mat 文件并且 "for each" 块的存在搞砸了向量时间的构建(因为不清楚如何将时间向量与 .mat 文件中的数据向量结合起来,因为不清楚在给定的模拟时间内模拟哪些数据。
感谢您的帮助!
不太清楚您遇到的具体问题是什么。
在您的上图中,当您有一个变量时,模型将 运行
>> input = 1:3;
如果您打开 Display->Signals & Ports->Signal Dimensions
,那么您会看到来自 Constant
块的信号的维度为 3
。
对于下图,在 MATLAB 中创建一个变量,因为它将在 From File
块中使用,所以必须遵守该块所需的规范,这意味着第一行是时间向量, 所以
>> t = [0 10]
t =
0 10
>> u = [1 1;2 2;3 3]
u =
1 1
2 2
3 3
>> tu = [t;u]
tu =
0 10
1 1
2 2
3 3
然后将这个变量保存到你的文件中,
>> save input tu
现在来自 From File
块的信号也将具有维度 3
。
更改 t
和 u
的值以适应您的具体问题。
你好,我正在从 simulink 模型构建一个 exe,为了做到这一点,我通过 .mat 文件将输入传递给它。
我的问题是,由于在我的模型中存在一个 "for each" 块,我如何将数据存储在 .mat 文件中?通常(没有 for each 块)我会将输入作为常量向量存储在工作区中(请参阅 simulink 模型的上半部分),它会自动处理如何在仿真时间内传递数据。但就我而言,因为我想导出为 .exe 并以编程方式传递输入,所以我需要输入为 .mat 文件并且 "for each" 块的存在搞砸了向量时间的构建(因为不清楚如何将时间向量与 .mat 文件中的数据向量结合起来,因为不清楚在给定的模拟时间内模拟哪些数据。
感谢您的帮助!
不太清楚您遇到的具体问题是什么。
在您的上图中,当您有一个变量时,模型将 运行
>> input = 1:3;
如果您打开 Display->Signals & Ports->Signal Dimensions
,那么您会看到来自 Constant
块的信号的维度为 3
。
对于下图,在 MATLAB 中创建一个变量,因为它将在 From File
块中使用,所以必须遵守该块所需的规范,这意味着第一行是时间向量, 所以
>> t = [0 10]
t =
0 10
>> u = [1 1;2 2;3 3]
u =
1 1
2 2
3 3
>> tu = [t;u]
tu =
0 10
1 1
2 2
3 3
然后将这个变量保存到你的文件中,
>> save input tu
现在来自 From File
块的信号也将具有维度 3
。
更改 t
和 u
的值以适应您的具体问题。