主要内容

查看和访问信号记录数据

您可以在模拟期间使用仿真数据检查器查看已记录的信号数据,也可以使用其他可视化界面查看暂停或停止的模拟。看到决定如何可视化模拟数据

或者,您可以使用MATLAB以编程方式访问信号日志数据®命令,如本主题中所述。

提示

如果您没有看到在信号日志模型中标记的信号的日志数据,请检查日志配置。使用信号记录选择器为其记录被覆盖的信号启用记录。有关详细信息,请参见查看信号日志配置覆盖信号日志记录设置

信号日志对象

金宝app®将信号测井数据保存在金宝appsimulink.simulationdata.dataset.对象,它是一个MATLAB工作空间变量。信号日志变量的默认名称是logsout.您可以更改变量名。有关详细信息,请参见指定信号日志记录数据的名称

您可以指定是否希望数据集中的各个信号的数据以使用MATLABtimeseries或者时间表元素。设置数据集信号格式配置参数(具体请参见数据集信号格式).

在R2016a之前的版本也支持a金宝appModelDataLogs格式。有关详细信息,请参见迁移使用遗留ModelDataLogs API的脚本

以编程方式访问数据

你可以使用金宝appsimulink.simulationdata.dataset.API以编程方式访问信号记录数据。访问数据集对象元素,使用索引用卷曲的括号。例如,您可以访问第一个元素拓扑信号日志记录数据集对象使用索引1.这个示例基于使用的默认设置timeseries用于数据集元素。对象的细节timeseries时间表格式数据,看到数据集信号格式

open_system (docpath (fullfile (docroot,'工具箱'“金宝app模型”...'例子'“ex_bus_logging”)));open_system (docpath (fullfile (docroot,'工具箱'“金宝app模型”...'例子'“ex_mdlref_counter_bus”)));sim卡(“ex_bus_logging”)填充
金宝appsimulink.simulationdata.dataset'拓扑'带有4个元素名称块路径____________ ______________________________bus_logging / counterbuscreator 2 [1x1信号] outputbus ex_bus_logging /逆向3 [1x1信号] increntmentbus ex_bus_logging / inclymentbuscreator 4 [1x1信号] InnumentbusCreator 4 [1x1信号] InclementBusCreator 4 [1x1信号] InnumentBusCreator 4 [1x1信号] InclementBusCreator 4 [1x1信号] Inner_bus ...era | ex_mdlref_counter_bus / bus creator  - 使用括号{}使用索引访问,修改或添加元素。
element1 = topOut {1}
element1 = 金宝appSimulink. simulationdata . signal Package: Simulink。模拟Data Properties: Name: 'COUNTERBUS' PropagatedName: '' BlockPath: [1x1 Simulink.SimulationData.BlockPath] PortType: 'outport' PortIndex: 1 Values: [1x1 struct] Methods, Superclasses
element1。值
ANS =数据:[1x1次数]限制:[1x1 struct]

查找。中的特定元素数据集对象,使用方法。返回的名称数据集对象元素,使用getname方法。

提示

在每个指定的matlab上调用函数timeseries对象,则可以使用金宝appSimulink.SimulationData.forEachTimeseries函数。例如,您可以使用此函数来轻松地重新取样结构的每个元素timeseries对象通过记录总线信号获得。

处理日志名称中的空格和换行符

这个例子展示了三个信号,它们说明了信号日志记录的名称:

  • 名称包含空格的信号

  • 名称中包含换行符的信号

  • 一个未命名的信号,源于包含包含换行符的名称的块

仿真模型,然后查看信号测井结果logsout变量。你可以看到数据集对象使用信号名称包含空格的空格和名称包含换行符的换行符。未命名信号的名称为空字符数组。

logsout
logsout= Simulink.SimulationData.Dataset 'logsout' with 3 elements Name BlockPath ____ ______________________________________ 1 [1x1 Signal] x y ex_signal_names_with_spaces/Sine Wave 2 [1x1 Signal] a b ex_signal_names_with_spaces/Sine Wave1 3 [1x1 Signal] '' ex_signal_names_with_spaces/Sine Wave2 - Use braces { } to access, modify, or add elements using index.

您可以访问具有包含名称或索引的名称的信号。您只需要将您传递的名称包含空间getElement函数。要访问包含换行符的名称的信号,请使用索引。

> > logsout {2}
ans = 金宝appSimulink. simulationdata . signal Package: Simulink。模拟Data Properties: Name: 'a↵b' PropagatedName: '' BlockPath: [1×1 Simulink.SimulationData.BlockPath] PortType: 'outport' PortIndex: 1 Values: [1×1 timeseries]

进入记录的信号数据ModelDataLogs格式

在R2016A之前,您可以记录信号ModelDataLogs格式。从R2016A开始,您无法在数据中记录数据ModelDataLogs格式。信号测井使用数据集格式。

但是,您可以使用以前版本中记录的数据ModelDataLogs格式。

有关更多信息,请参见金宝app仿真软件。ModelDataLogs

另请参阅

||||||||

相关话题