本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

使用信号记录导出信号数据

信号日志记录

要从仿真中捕获信号数据,通常可以使用信号记录。标记要记录的信号,并为模型启用信号记录。有关详细信息,请参阅配置信号记录为模型启用信号记录

有关捕获信号数据的其他方法的摘要,请参阅导出仿真数据

信号记录工作流

要收集和使用信号记录数据,请执行以下任务。

  1. 标记要进行信号记录的各个信号。请参阅配置信号记录

  2. 为模型启用信号记录。请参阅为模型启用信号记录

  3. 对模型进行仿真。

  4. 访问信号记录数据。请参阅查看和访问信号记录数据

记录信号的子集

若要在开发模型时测试模型的各个部分,有一种方法是标记要记录的信号的超集,然后覆盖信号记录设置,选择要记录的信号的不同子集。您可以使用 Signal Logging Selector 或编程接口。请参阅Override Signal Logging Settings

使用此方法在使用模型引用的模型中记录信号。有关示例,请参阅Viewing Signals in Model Reference Instances

其他信号记录选项

对于基本信号记录工作流,您可以指定与信号记录收集的数据有关的其他选项以及数据的显示方式。您可以:

Rapid Accelerator 模式中的信号记录

Rapid Accelerator 模式下的信号记录不记录以下类型的信号。当您更新或仿真包含这些信号的模型时,Simulink® 会显示一个警告,指出这些信号未记录。

  • Stateflow® 图中的信号

  • 使用自定义数据类型的信号

如果您将 Configuration Parameters > Solver > Periodic sample time constraint 参数设置为 “Ensure sample time independent”,则不能在 Rapid Accelerator 模式下使用信号记录。

信号记录限制

  • Rapid Accelerator 模式支持信号记录,但存在Rapid Accelerator 模式中的信号记录中描述的要求和限制。

  • 顶层模型和 Model 模块软件在环 (SIL) 和处理器在环 (PIL) 仿真模式支持信号记录。有关限制的说明,请参阅Top-Model SIL/PIL Limitations (Embedded Coder)Model Block SIL/PIL Limitations (Embedded Coder)

  • 总线信号数组支持信号记录,但存在Import Array of Buses Data中描述的要求。

  • 您不能直接在 For Each 子系统中记录总线信号。

  • 如果存在以下任一条件,则不能在位于 For Each 子系统内部的引用模型中记录信号:

    • For Each 子系统位于在 Rapid Accelerator 模式下仿真的模型中。

    • For Each 子系统本身位于处于 Accelerator 模式的 Model 模块所引用的模型中。

  • 您不能记录为函数调用子系统或执行子系统馈送数据的信号。

  • 您不能记录 Merge 模块的输入信号。您可以记录 Merge 模块的输出信号。

  • 对于启用了 Show state port 参数的 IntegratorDiscrete-Time Integrator 模块,您不能记录状态端口信号。

  • 如果您为信号记录配置的总线信号或总线元素是某个子系统的输入,则您不能自动重构子系统接口以使用 In Bus ElementOut Bus Element 模块。有关重构的详细信息,请参阅Simplify Bus Interfaces in Subsystems

  • 您不能在 Stateflow Truth Table 模块中记录本地数据。

相关主题