Main Content

决定如何可视化仿真数据

在整个建模过程中可视化仿真数据有助于您理解和调整模型行为。Simulink® 提供了几个相互补充的可视化工具,您可以在整个建模过程中使用。一些可视化工具还提供保存仿真数据的能力。了解每种方法,以便选择合适的工具来可视化模型数据。

  • 仿真数据检查器 - 在整个建模过程中查看、分析和比较记录的数据。

  • Scope 模块、Floating Scope 模块和波形查看器 - 使用功能类似于台式示波器的基于模块的工具调试和分析数据。

  • Record 模块 - 可视化记录到工作区和/或文件中的数据。

  • Dashboard 模块 - 构建交互式界面来调整和监视模型。

  • 端口值标签 - 在模块图中查看瞬时信号值。

  • 自定义 MATLAB® 可视化 - 编写 MATLAB 代码来可视化数据。

仿真数据检查器

大多数可视化任务都可以使用仿真数据检查器。仿真数据检查器与您的模型中的数据记录相集成,可以很好地可视化整个模型中的许多信号。在仿真数据检查器中使用比较来原型化、调试、调整、标定和测试您的模型。仿真数据检查器支持下列各项:

  • 在仿真过程中查看信号

  • 记录、导入和导出数据

  • 可配置的子图布局和可视化设置

  • 使用多个可视化选项查看数据,包括映射和 XY 绘图

  • 通过比较容差值来进行后处理和数据分析

  • 保存绘图和数据以共享或存档结果

The Inspect pane of the Simulation Data Inspector shows three subplots. The subplots show time plots of data gathered from three runs of the model sldemo_autotrans. The first subplot shows the EngineRPM signals from all three runs. The second subplot shows the ShiftLogic signals from all three runs. The third subplot shows the VehicleSpeed signal from all three runs.

要使用仿真数据检查器可视化仿真数据,请在模型中记录数据。当记录信号和输出时,记录的数据在仿真期间和仿真后会自动在仿真数据检查器中可用。在模型的“配置参数”中,选择数据导入/导出 > 在仿真数据检查器中记录所记录的工作区数据以使记录的状态和 Simscape™ 数据在仿真后在仿真数据检查器中可用。如果您要在不记录数据的情况下查看信号,请考虑使用 Scope 模块、Floating Scope 模块或 Scope Viewer

仿真 > 数据检查器或通过点击信号记录标记打开仿真数据检查器。当您通过点击信号上的记录标记打开仿真数据检查器时,系统会自动绘制信号。

有关详细信息,请参阅仿真数据检查器

Scope 模块和波形查看器

Scope 模块、Floating Scope 模块和 Scope Viewer 以类似台式示波器的方式显示连接的信号。Scope 模块和波形查看器使用相同的界面来可视化和分析连接的信号。该界面类似于其他领域特定的工具,如 Spectrum Analyzer (DSP System Toolbox)Array Plot (DSP System Toolbox) 模块。您可以轻松地在模型中添加和连接 Scope 模块,您无需记录数据即可查看信号数据。

Scope 模块、Floating Scope 模块和波形查看器支持:

  • 在仿真期间查看信号,包括快速加速仿真

  • 轻量级调试的简单连接和可访问性

  • 无数据记录的信号可视化

  • 可选信号记录

  • 使用回放控制项从可视化界面开始仿真

  • 示波器测量,包括游标和触发器。如果您有 Simscape 或 DSP System Toolbox™ 许可证,可进行其他测量

  • 可配置的绘图和显示

  • 用于捕获事件的可配置触发器

使用 Scope 模块、Floating Scope 模块和波形查看器进行原型构建和轻量级调试。例如,在模型开发的早期阶段,您可以将 Scope 模块连接到信号,以快速验证组件行为。通过添加触发器,您可以调整信号中的特定峰值或其他伪影。Scope 模块在您的模型中可能是永久性的,也可能不是永久性的。

当您需要查看整个模型层次结构中的信号数据时,请考虑使用仿真数据检查器,尤其是当您已记录要查看的信号时。

有关详细信息,请参阅Scope 模块和波形查看器概述

Record 模块

您可以使用 Record 模块查看记录到工作区和/或文件的连接信号数据。

Record 模块支持:

  • 查看仿真期间使用 Record 模块记录的信号

  • 将数据记录到工作区、文件和仿真数据检查器中

  • 在仿真期间将数据流式传输到仿真数据检查器

  • 使用多个可视化选项查看数据,包括映射和 XY 绘图

  • 使用仿真控件(如运行按钮)查看 Record 模块中的数据时启动仿真

The Record block shows a sparklines visualization of three signals: Sine Wave, Chirp Signal, and Square Wave.

将信号连接到 Record 模块,以将数据记录到工作区或文件中。要查看使用 Record 模块记录的仿真数据,请双击该模块。您可以使用多种可视化方式修改绘图布局和查看数据,包括迷你图、时间图和 XY 绘图。在仿真期间,记录到 Record 模块的数据会自动流式传输到仿真数据检查器。如果您要在不记录数据的情况下查看信号,请考虑使用 Scope 模块、Floating Scope 模块或 Scope Viewer

有关详细信息,请参阅Log Data to the Workspace and a File Using the Record Block

Dashboard 模块

Dashboard 库包括可用于调整模型中变量和参数的控制模块,以及可用于查看信号数据的可视化模块。使用 Dashboard 模块查看瞬时信号数据,并为您的模型构建交互式界面。

您可以在仿真期间使用 Dashboard 模块控件来修改模型中的变量值和可调参数。可视化 Dashboard 模块在整个仿真期间会持续更新。当您需要调试使用 Dashboard 模块的模型时,请考虑使用仿真调速或仿真步进来减慢仿真速度,以便您可以查看瞬时信号值。您还可以将 Dashboard 模块提升到一个或多个面板,以便在您设计和调试模型时,始终可以在整个模型层次结构中使用交互式控制板。有关详细信息,请参阅:

Dashboard Scope 模块提供信号随时间变化的简单视图。您可以通过上下文菜单在 Dashboard Scope 模块中缩放、平移和添加游标。要使用更多调试和分析功能,请使用 Scope 模块或将数据记录到仿真数据检查器。

有关使用 Dashboard 模块的详细信息,请参阅使用 Dashboard 模块对模型进行调优和可视化

端口值标签

要在仿真期间查看模块图中的信号值,请使用端口值标签。端口值标签可以作为现有可视化的补充,尤其是在构建原型和调试模型时。例如,您可以在使用 Scope 模块可视化时序行为的同时,随着仿真步进查看端口值标签上的信号值。您还可以单独使用端口值标签来支持调试,而无需向模型添加任何模块或记录数据。

要显示信号值,请右键点击信号并选择在所选信号上显示端口值标签

在使用端口值标签查看信号数据时,请考虑使用仿真调速或步进仿真。有关详细信息,请参阅仿真调速选项步进仿真

有关详细信息,请参阅使用端口值标签查看信号值

自定义 MATLAB 可视化

当您将仿真数据记录到工作区或文件中时,您可以编写 MATLAB 代码和脚本来创建自定义可视化。您可以记录模型中的信号、输出和状态,还可以为连接到波形查看器、Floating Scope 模块和 Scope 模块的信号启用数据记录。有关在模型中记录数据的详细信息,请参阅保存仿真数据

注意

当您使用 MATLAB 代码和脚本对数据进行后处理时,您不需要编写自定义 MATLAB 代码来可视化数据。您可以将处理过的数据导入仿真数据检查器中,以便与所记录的数据一起可视化。

您编写的可视化代码取决于所记录数据的格式。默认情况下,数据记录使用 Dataset 格式并生成单个仿真输出。记录的数据以 Simulink.SimulationOutput 对象形式返回到工作区,该对象包含的每个 Simulink.SimulationData.Dataset 对象对应于仿真中使用的一种记录类型。每个 Dataset 对象包含若干 Simulink.SimulationData.Signal 对象,这些对象将单个信号的数据存储为一个 timeseries 对象。有关详细信息,请参阅记录的仿真数据的数据格式

记录信号时,您可以使用自定义 MATLAB 代码在仿真期间可视化信号。有关详细信息,请参阅Access Data in MATLAB Function During Simulation

另请参阅

工具

模块

相关主题