基于模型的仿真数据导出的数据格式指定了Simulink如何万博1manbetx®保存导出的数据。
万博1manbetx根据导出的数据类型,Simulink使用不同的数据格式。详情请参见:
对于您登录的数据数据集
格式(如万博1manbetxSimulink.SimulationData.Dataset
对象),您可以指定是否希望使用MATLAB来获取数据集中单个信号的数据®timeseries
或时间表
元素。来控制数据集
元素保存后,设置数据集信号格式配置参数。默认值为timeseries
.详细信息请参见数据集信号格式.
的数据集信号格式参数应用于信号日志数据,以及设置时的输出和状态日志数据格式配置参数为数据集
.
当您记录数据存储数据时,Simulink使用万博1manbetx万博1manbetxSimulink.SimulationData.Dataset
对象。
详细信息请参见访问数据存储日志数据.
对于导出的时间、状态和输出数据,请使用以下格式之一:
如果您选择配置参数>数据导入/导出>输出复选框,Simulin万博1manbetxk将定点数据记录为double。要记录定点数据,请考虑使用以下方法之一:
信号记录—详细信息请参见使用信号日志导出信号数据.
在Simuli万博1manbetxnk编辑器中选择一个或多个信号。
单击模拟数据检查器按钮箭头并点击将选定的信号记录到工作区.
到文件块
到工作空间block—在到工作空间“块参数”对话框中,启用将定点数据记录为fi对象参数。
有关记录的最终状态数据格式的信息,请参见状态信息.
数据集
格式:
使用MATLABtimeseries
对象来存储记录的数据。MATLABtimeseries
对象允许您在没有Simulink许可证的情况下在MATLAB中处理日志数据。万博1manbetx
万博1manbetx支持记录给定时间步的多个数据值,这对于Iterator子系统和Stateflow非常重要®日志记录的信号。
万博1manbetx支持在输出数据的日志数据中包含单位信息
不支持记录代码生成万博1manbetx或快速加速模式下的非虚拟总线数据。
如果你选择这个数组
选项,Simul万博1manbetxink将模型的状态和输出分别保存在状态数组和输出数组中。
中指定了状态矩阵的名称配置参数>数据导入/导出窗格(例如,xout
)。状态矩阵的每一行对应一个模型状态的时间样本。每一列对应一个状态的一个元素。例如,假设您的模型有两个连续状态,每个状态都是一个双元素向量。然后,状态矩阵每行的前两个元素包含第一个状态向量的时间样本。每行的最后两个元素包含第二个状态向量的时间样本。
模型输出矩阵的名称在配置参数>数据导入/导出窗格(例如,你
)。每一列对应一个模型输出端口,每一行对应一个特定时间的输出。
只有当记录的数据满足时,才使用数组格式保存模型输出和状态所有这些条件:
数据是所有标量或所有向量(或所有状态矩阵)
数据要么是真实的,要么是复杂的
数据都具有相同的数据类型
数据包括总线信号
如果您的模型输出和状态不满足这些条件,请使用结构
或结构随时间变化
输出格式(见随时间变化的结构)。
如果选择这种格式,则Simulink将模型状态和输出保万博1manbetx存在结构中,这些结构的名称在配置参数>数据导入/导出窗格。缺省情况下,结构为xout
对于州和你
为输出。
用于保存输出的结构有两个顶级字段:
时间
包含模拟时间的矢量。
信号
包含一个子结构数组,每个子结构对应一个模型输出端口。
每个子结构有四个字段:
值
包含对应输出端口的输出。
如果输出是标量或向量-值
字段是一个矩阵,其每一行表示由相应的时间向量元素指定的时间的输出。
如果输出是矩阵(二维)值-值
字段是一个维数为m × n × t的三维数组。m × n为输出信号的维数,T为输出样本的个数。
如果T = 1 - MATLAB去掉最后一个维。因此,值
域是一个m × n矩阵。
维
指定输出信号的尺寸。
标签
指定连接到输出端口的信号的标签,功能块,或状态类型(连续或离散)。标签是DSTATE
或CSTATE
, S-Function块状态标签除外。为功能块状态标签对于离散状态,标签是状态的名称(而不是DSTATE
)。
blockName
指定具有状态的相应输出端口或块的名称。
inReferencedModel
如果信号
字段记录驻留在参考模型中的块的最终状态,包含值1
.否则,该值为false (0
)。
下面的示例显示了非引用模型的带时间结构格式。
xout.signals (1)
ans = values: [296206x1 double] dimensions: 1 label: 'CSTATE' blockName: 'vdp/x1' inReferencedModel: 0
用于保存状态的结构具有类似的组织。状态结构有两个顶级字段:
时间
的时间
字段包含模拟时间的矢量。
信号
该字段包含一组子结构,每个子结构对应于模型的一个状态。
每一个信号
结构有四个字段:值
,维
,标签
,blockName
.的值
属性指定的块的状态的时间样本blockName
字段。的标签
字段表示状态的类型:要么CSTATE
(连续状态)或DSTATE
(离散状态)。对于S-Function块,标签包含由功能块。
状态的时间样本存储在值
字段作为值的矩阵。每一行对应一个时间样本。一行的每个元素对应于状态的一个元素。如果状态是矩阵,则矩阵存储在值
以列为主顺序排列的数组。例如,假设模型包含一个2 × 2矩阵状态,并且在模拟运行期间记录了51个状态样本。
的值
此状态的字段将包含一个51 × 4矩阵。每行对应于状态的一个时间样本,每行的前两个元素对应于样本的第一列。最后两个元素对应于样本的第二列。
万博1manbetxSimulink可以回读保存到MATLAB工作空间中的仿真数据结构随时间变化
输出格式。看到指定信号和时间数据的示例了解更多信息。
此格式与结构随时间变化
输出格式,除了Simulink不将仿真次数存储在万博1manbetx时间
字段。
万博1manbetxSimulink.SimulationData.Dataset
|万博1manbetxSimulink.SimulationData.forEachTimeseries