To Workspace
将数据从 Simulink 模型记录到工作区
库:
Simulink /
Sinks
DSP System Toolbox /
Sinks
HDL Coder /
Sinks
描述
To Workspace 模块将连接到其输入端口的数据记录到来自 Simulink® 模型的工作区。通常,记录的数据在基础工作区中返回。当您以编程方式在函数中仿真模型时,记录的数据将返回到函数的工作区中。在仿真期间,记录的数据会流式传输到仿真数据检查器。当仿真暂停或停止时,记录的数据会写入工作区。
您可以使用 To Workspace 模块记录信号、总线或总线数组的数据。To Workspace 模块支持记录标量和多维数据,包括可变大小信号的数据。
您可以配置存储 To Workspace 模块所记录数据的变量的名称,还可以指定所记录数据的格式。您还可以通过指定模块或模型参数来控制 To Workspace 模块记录的值。有关详细信息,请参阅Specify Signal Values to Log。
访问记录的数据
仿真结果如何返回到工作区取决于您如何仿真和配置模型。在以下任何情况下,仿真结果都以单个 Simulink.SimulationOutput
对象形式返回:
当仿真结果在单个输出中返回时,对于模型中的每个 To Workspace 模块,SimulationOutput
对象都包含一个对应的变量。要访问 To Workspace 模块记录的数据,请执行以下操作:
使用一个圆点,后跟使用模块的变量名称参数指定的变量名称。默认情况下,模型配置为使用变量名称
out
返回单个仿真输出,To Workspace 模块会将数据保存到名为simout
的变量中。toWksData = out.simout;
使用
get
函数和包含所记录数据的变量的名称。toWksData = get(out,simout);
在模型中,To Workspace 模块指示如何访问工作区中的数据。默认情况下,该模块显示 out.simout
。当您执行以下操作时,模块外观会更新:
为模块中的变量名称参数指定不同的值。
为单个仿真输出指定不同的变量名称。
清除单一仿真输出配置参数。
端口
输入
参数
模块特性
数据类型 |
|
直接馈通 |
|
多维信号 |
|
可变大小信号 |
|
过零检测 |
|
提示
您可以将使用 To Workspace 模块记录的数据转换为“
数据集
”格式。如果您使用其他记录方法,例如使用“数据集
”格式的信号记录,转换数据可以使后处理更容易。有关详细信息,请参阅Convert timeseries object to Dataset object。当您调用用于仿真模型的函数时,仿真中记录的数据将返回到函数工作区。要将从通过函数进行的仿真记录的数据返回到基础工作区,请使用
assignin
函数。例如,以下名为myfunc
的函数对模型myModel
进行仿真,该模型包括一个 To Workspace 模块,该模块将数据记录到变量simout
中,并将 To Workspace 模块记录的数据发送到基础工作区。function myfunc out = sim("myModel"); toWksData = get(out,"simout"); assignin("base","toWksData",toWksData); end