导出(日志记录)模拟数据为分析和调试模型提供了基线。使用标准或自定义MATLAB®功能生成模拟系统输入信号和图形,分析,或以其他方式后处理系统输出。
模拟数据可以包括信号、时间、输出、状态和数据存储测井数据的任意组合。
导出仿真数据涉及在仿真过程中将信号值保存到MATLAB工作空间或到mat文件中,以供以后检索和后处理。导出数据也称为“数据记录”或“保存模拟数据”。
你可以用几种格式记录数据:
数组
结构
结构随着时间的推移
MATLAB timeseries
ModelDataLogs
请注意
的ModelDataLogs
格式支持向后兼容。金宝app从R2016a开始,您不能将数据记录到ModelDataLogs
格式。在R2016a或更高版本中,当您打开使用过的早期版本的模型时ModelDataLogs
格式,模型记录数据数据集
格式。
考虑将以其他格式登录的数据转换为数据集
格式,以简化后处理。有关更多信息,请参见记录数据的数据集转换.
您还可以使用导出的数据作为模拟模型的输入。
导出模拟数据通常涉及到导出信号数据。您可以使用各种方法导出信号数据。
出口方式 | 使用 | 文档 |
---|---|---|
连接一个范围阻断信号。 |
如果你使用范围块在模拟期间查看结果,也考虑使用范围块导出数据。 保存输出的采样率,而不是基本采样率。 作用域存储数据,可以是内存密集型的。 |
|
连接一个信号到到文件块。 |
考虑使用To File块来导出大量数据。 保存输出的采样率,而不是基本采样率。 只有在模拟完成后才能使用mat文件。 |
|
连接一个信号到到工作空间块。 |
在图表中记录用于存储信号数据的工作空间变量。 保存输出的采样率,而不是基本采样率。 |
|
将一个信号连接到根级别外港块。 |
考虑在顶级模型中使用这种方法记录数据,如果模型已经包含外港块。 |
|
设置一个信号的信号记录属性。 |
使用信号日志来避免添加块,例如范围,到文件,到工作空间块,到你的模型。 基于单个信号速率记录信号。 当模拟暂停或完成时,数据可用。 使用信号日志记录总线信号数组。 |
|
配置模型金宝app®导出时间、状态和输出数据。 |
为了从整体上获取关于模拟的完整信息,请考虑导出此数据。 使用输出参数保存根目录外港在模拟过程中对数据进行分组。 输出和状态以模型的基本采样率记录。 |
|
记录数据存储的日志。 |
记录一个数据存储以在整个模型层次结构中共享数据,捕获所有数据存储写入的顺序。 |
日志数据存储 |
使用 |
使用 选择返回为单个对象方法模拟模型时的参数 |
sim卡 |
在对模型进行仿真时,要将模型的状态和根级输出端口导出到MATLAB基础工作区中,可以使用以下接口之一:
配置设置>数据导入/导出窗格(有关详细信息,请参见型号配置参数:数据导入/导出)
sim卡
命令
在这两种方法中,指定:
需要导出的模拟数据类型:
信号记录
时间
输出
状态或最终状态
数据存储
每种模拟数据导出都有一个相关的默认变量。您可以为导出的数据指定自己的变量。
记录数据的特征,包括:
要交互式地检查导出的模拟数据,可以考虑使用仿真数据检查.
模拟数据检查器对它所显示的记录数据的种类有一些限制。看到在模拟数据检查器中查看数据.
当以非快速加速器的模拟模式导出模拟数据时,Simulink在以下情况下优化内存使用。金宝app
当时间步长按一定间隔发生时,Simulink使用压缩时间表示。金宝app金宝appSimulink存储第一个时间戳的值、间隔的长度(时间步长)和时间戳的总数。
当多个信号使用相同的时间戳序列时,这些信号共享一个存储的时间戳序列。共享一个存储的时间戳可以将日志数据的内存使用减少两倍之多。内存性能的差异可能是一个关键的性能因素,特别是在记录具有数千个总线元素的总线信号时。
当您在具有许多时间步长的模拟中记录许多信号时,可能会遇到内存问题。记录到持久存储可以解决这种内存问题。
将日志记录到持久存储中配置参数>数据导入/导出窗格中,选择日志数据集数据到文件选择。指定日志记录的类型(例如,信号日志和状态日志)。
要记录输出和状态数据,请设置格式参数数据集
.
如果您选择最终状态参数,明确保存最终工作点参数。
使用一个金宝appSimulink.SimulationData.DatasetRef
对象来访问信号日志记录和状态日志记录数据以增量方式将数据加载到模型工作区中。为其他类型的日志访问数据会同时加载所有数据。
有关详细信息,请参见将数据记录到持久存储.