Main Content

Scope

显示仿真过程中生成的信号

  • Scope block

库:
Simulink / Commonly Used Blocks
Simulink / Sinks
HDL Coder / Commonly Used Blocks
HDL Coder / Sinks

描述

Simulink® Scope 模块和 DSP System Toolbox™ Time Scope 模块显示时域信号。

这两个模块具有相同的功能,但是默认设置不同。Time Scope 针对离散时间处理进行了优化。Scope 针对一般时域仿真进行了优化。如需并排比较,请参阅 Simulink Scope 与 DSP System Toolbox Time Scope 的比较

示波器具有以下功能面板:

  • 触发器 - 设置触发器,在发生指定事件时同步重复的信号并暂停显示。

  • 游标测量 - 使用垂直游标和水平游标测量信号值。

  • 信号统计 - 显示所选信号的最大值、最小值、峰间差、均值、中位数和 RMS 值。

  • 峰值查找器 - 查找最大值,显示出现最大值时的 x 轴值。

  • 双电平测量 - 测量过渡过程、过冲、下冲和循环。

您必须拥有 Simscape™ 或 DSP System Toolbox 许可证,才能使用峰值查找器、双电平测量和信号统计这些功能面板。

示波器画面支持:

  • 仿真控制 - 从“范围”窗口中使用运行步进步退工具栏按钮可以调试模型。

  • 多个信号 - 可使用多个输入端口在同一个 y 轴(视图)上绘制多个信号。

  • 多个 y 轴(显示)- 显示多个 y 轴。所有 y 轴在 x 轴上具有共同的时间范围。

  • 修改参数 - 在仿真之前和仿真期间修改波形参数值。

  • 自动缩放轴范围 - 在仿真期间或仿真结束时自动缩放轴范围。在坐标区的顶部和底部会留有边距。

  • 仿真后显示数据 - 仿真期间保存波形数据。如果在仿真开始时波形视图关闭,则当您在仿真后打开波形视图时,波形视图将显示附加的输入信号的仿真结果。

    注意

    如果采样率高或仿真时间长,可能会遇到内存或系统性能问题,因为示波器在内部保存数据。要限制为波形可视化保存的数据量,请使用 将数据点限制为最后, 将帧数限制为最后 属性。

有关以编程方式控制示波器的信息,请参阅Control Scope Blocks Programmatically

限制

  • 不要在库中使用 Scope 模块。如果您将 Scope 模块放在具有锁定链接的库或者锁定的库中,当尝试打开示波器窗口时,Simulink 会显示错误。要显示某个库模块中的内部数据,请为库模块添加一个输出端口,然后将此端口连接到您模型中的 Scope 模块。

  • 如果步进模型,波形仅在示波器模块运行时才会更新。这意味着状态栏中显示的时间可能与模型时间不匹配。

  • 示波器模块在连接到常量信号时将绘制单个点。

  • 当信号值为 NaN 时,示波器会在显示画面上显示缺口。

  • 当您在示波器内可视化多个基于帧的信号时,部分帧大小为 1 的信号采样可能不会显示。要可视化这些信号,请将帧大小为 1 的信号转移到单独的示波器。

  • 示波器显示画面在快速加速模式下有限制。请参阅 示波器和查看器在快速加速模式下的行为

  • 当示波器位于 ForEach 子系统中时,示波器仅显示最后一个索引。

端口

输入

全部展开

连接要可视化的信号。您最多可以有 96 个输入端口。输入信号可以具有以下特性:

  • 类型 - 连续(基于采样)或离散(基于采样和基于帧)。

  • 数据类型 - Simulink 支持的任何数据类型。请参阅 Simulink 支持的数据类型

    此模块接受定点输入,但将其转换为 double 进行显示。

  • 维度 - 标量、一维(向量)、二维(矩阵)或多维(数组)。根据维度在一个信号中显示多个通道。请参阅信号维度确定信号维度

输入限制

  • 当输入是常量信号时,示波器绘制单个点。

  • 当信号值为 NaN 时,示波器会在显示画面上显示缺口。

  • 当您在示波器内可视化多个基于帧的信号时,部分帧大小为 1 的信号采样可能不会显示。要可视化这些信号,请将帧大小为 1 的信号转移到单独的示波器。

总线支持

可将非虚拟总线和总线信号数组连接到示波器。要显示总线信号,请使用普通或加速仿真模式。示波器按照元素在总线中出现的顺序从上到下显示每个总线元素信号。嵌套的总线元素以平铺方式显示。

要使用示波器记录非虚拟总线信号,请将保存格式参数设置为数据集。您可以使用任何保存格式记录虚拟总线信号。

数据类型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
复数支持:

属性

全部展开

配置属性

“配置属性”对话框控制有关示波器画面的各种属性。从示波器菜单中,选择视图 > 配置属性

常设

选中此复选框可以在仿真开始时打开示波器窗口。

编程用法

请参阅 OpenAtSimulationStart

选中此复选框将显示模块名称以及模块路径。

指定 Scope 模块上输入端口的数量(指定为整数)。输入端口的最大数量为 96。

编程用法

请参阅 NumInputPorts

指定显示画面的数量和排列方式。最大布局为 16 行 × 16 列。

要扩大布局网格使其超过 4×4,请在对话框内点击并拖动。最大为 16 行 × 16 列。

Animated GIF of changing the layout from one display to three displays

如果画面数等于端口数,每个端口的信号将单独显示。如果画面数小于端口数,多出的端口信号将显示在最后一个画面上。对于具有多列和多行的布局,端口先从上到下,再从左到右进行映射。

编程用法

请参阅 LayoutDimensions

指定示波器显示画面更新之间的时间间隔。此属性不适用于浮动示波器和波形查看器。有关示波器中采样时间的更详细说明,请参阅Sample Time with Scope Blocks

编程用法

请参阅 SampleTime

  • 元素作为通道(基于采样) - 将每个元素作为唯一采样进行处理。

  • 列作为通道(基于帧) - 将信道中的信号值作为一组不同时间间隔的值进行处理。基于帧的处理方式仅对离散输入信号可用。

编程用法

请参阅 FrameBasedProcessing

  • 自动 - 如果未指定 标题Y 标签 属性,则最大化所有图。

  • on - 最大化所有图。标题Y 标签值被隐藏。

  • off - 不最大化图。

编程用法

请参阅 MaximizeAxes

时间
  • 自动 - 仿真开始时间与停止时间之间的时间差。

    此模块使用 时间显示偏移量时间跨度 属性来计算时间范围的开始时间和结束时间。例如,如果将时间显示偏移量设置为 10,将时间跨度设置为 20,波形会将时间范围设置为从 1030

  • 用户定义 - 输入小于总仿真时间的任何值。

  • 一帧周期 - 将输入信号的帧周期用于 Time Scope 模块。仅当输入处理参数设置为列作为通道(基于帧) 时,此选项才可用。

编程用法

请参阅 TimeSpan

指定如何显示超出 x 轴可见范围的数据。

只有在由于模型较大或者步长较小而导致绘图速度缓慢时,才能看到此操作的效果。

  • 绕回 - 从左到右全屏绘制数据,之后擦除屏幕,然后再从左到右重新开始绘制数据。

  • 滚动 - 在右侧绘制新数据时,旧数据向左移动。此模式由于有密集的图形操作,可能会影响运行时性能。

编程用法

请参阅 TimeSpanOverrunAction

  • 度量 - 基于 时间跨度 的长度显示时间单位。

  • - 以秒为单位显示时间。

  • - 不显示时间单位。

编程用法

请参阅 TimeUnits

将 x 轴偏移指定的时间值,指定为实数或由实数组成的向量。

对于具有多个信道的输入信号,可以输入标量或向量:

  • 标量 - 按相同的时间值偏移输入信号的所有信道。

  • 向量 - 分别偏移每个通道。

编程用法

请参阅 TimeDisplayOffset

指定如何显示 x 轴(时间)标签:

  • 全部 - 在所有 y 轴上显示 x 轴标签。

  • - 不显示标签。选择也将清除显示时间轴标签复选框。

  • 仅底部显示 - 在底部 y 轴上显示 x 轴标签。

依存关系

要启用此属性,请进行如下设置:

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 TimeAxisLabels

选中此复选框可显示活动显示屏的 x 轴标签

依存关系

要启用此属性,请将 时间轴标签 设置为全部仅底部显示

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 ShowTimeAxisLabel

显示

所选的画面。使用此属性来控制当更改样式属性和特定于坐标区的属性时会更改哪个画面。

使用与列放置索引相对应的正整数来指定所需的画面。对于具有多列和多行的布局,显示屏编号先从上到下,再从左到右进行映射。

编程用法

请参阅 ActiveDisplay

画面的标题。默认值 %<SignalLabel> 使用输入信号名称作为标题。

依存关系

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 Title

切换信号图例。图例中列出的名称是来自模型的信号名称。对于有多个通道的信号,信号名称后面会附加一个通道索引。连续信号的名称前面带有直线条,离散信号的名称前面带有楼梯形线条。

从图例中,您可以控制哪些信号可见。此控制项等效于更改样式属性中的可见性。在示波器图例中,点击某信号名称可在示波器中隐藏该信号。要显示该信号,请再次点击信号名称。要只显示一个信号,请右键点击该信号名称,这将隐藏所有其他信号。要显示所有信号,请按 Esc

注意

图例只显示前 20 个信号。任何其他信号都无法从图例中控制。

依存关系

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 ShowLegend

选中此复选框可显示网格线。

依存关系

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 ShowGrid

  • On - 显示幅值图和相位图。如果信号是实数,则绘制信号的绝对值作为幅值。正值的相位为 0 度,负值的相位为 180 度。此功能对于复数值输入信号很有用。如果输入是实数值信号,则选中此复选框将返回信号的绝对值作为幅值。

  • Off - 显示信号图。如果信号是复信号,则基于同一 y 轴绘制实部和虚部。

依存关系

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 PlotAsMagnitudePhase

将 y 轴的最小值指定为一个实数。

可调: Yes

依存关系

如果选择了绘制信号的幅值和相位图,此属性将仅应用于幅值图。相位图的 y 轴范围始终为 [-180 180]

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 YLimits

将 y 轴的最大值指定为一个实数。

可调: Yes

依存关系

如果选择了绘制信号的幅值和相位图,此属性将仅应用于幅值图。相位图的 y 轴范围始终为 [-180 180]

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 YLimits

指定要在 y 轴上显示的文本。要显示信号单位,请在标签中添加 (%<SignalUnits>)。仿真开始时,Simulink 会将 (%SignalUnits) 替换为与信号关联的单位。

示例: 对于单位为 m/s 的速度信号,输入 Velocity (%<SignalUnits>)

依存关系

如果选择了绘制信号的幅值和相位图,则此属性不适用。两个 y 轴将分别显示 MagnitudePhase 标签。

活动画面 属性确定哪个画面受到影响。

编程用法

请参阅 YLabel

记录

选择此属性以限制示波器内部保存的数据。如果选择此属性并将输入处理参数设置为:

  • 元素作为通道(基于采样) - 示波器保存最后 n 个数据点,此属性的名称为将数据点限制为最后。n 是您在此属性文本框中指定的标量值。

  • 列作为通道(基于帧) - 示波器保存最后 n 个数据帧,此属性的名称为将帧数限制为最后

当您选择此属性并指定标量值时,作用域会将绘制和保存的数据值限制为在 变量名称 中指定的 MATLAB® 变量。

在某些情况下(例如采样时间较短时),选择此属性可能会使得绘制信号的时间长度小于整个仿真时间范围。如果波形只绘制了信号的一部分,请考虑增加要保存的数据点数量。

当您清除此属性时,示波器将保存所有数据。仿真完成后,您可以可视化作用域内的全部数据。对于将停止时间设置为 inf 的仿真,请考虑选择此属性。

注意

如果不选择此属性,并且采样率较高或仿真时间较长,则可能会遇到内存或系统性能问题。

编程用法

请参阅 DataLoggingLimitDataPointsDataLoggingMaxPoints

选择此属性以每隔 N 个数据点或帧绘制和记录(保存)示波器数据,其中 N 是您在此属性文本框中指定的抽取因子。值 1 缓冲所有数据值。

当您选择此属性并指定标量值时,作用域会将绘制和保存的数据值限制为在 变量名称 中指定的 MATLAB 变量。

如果将输入处理参数设置为:

  • 元素作为通道(基于采样) - 示波器每隔 N 个数据点绘制和记录数据。此属性的名称为抽取

  • 列作为通道(基于帧) - 示波器每隔 N 帧绘制和记录数据。此属性的名称为抽取帧

当您清除此属性时,示波器将保存所有示波器数据。

编程用法

请参阅 DataLoggingDecimateDataDataLoggingDecimation

选中此复选框可启用日志记录,并启用变量名称保存格式属性。此属性不适用于浮动示波器和波形查看器。

有关使用 Scope 模块将信号保存到 MATLAB 工作区的示例,请参阅使用 Scope 模块保存仿真数据

编程用法

请参阅 DataLogging

指定一个用于在 MATLAB 工作区中保存波形数据的变量名称。此属性不适用于浮动示波器和波形查看器。

依存关系

要启用此属性,请选择 将数据记录到工作区

编程用法

请参阅 DataLoggingVariableName

选择一个用于在 MATLAB 工作区中保存数据的变量格式。此属性不适用于浮动示波器和波形查看器。

  • 数据集 - 将数据保存为 Dataset 对象,默认为 timeseries 对象。

  • 带时间的结构体 - 将数据保存为带有关联时间信息的结构体。

  • 结构体 - 将数据保存为结构体。

  • 数组 - 将数据保存为带有相关时间信息的数组。此格式不支持可变大小数据。

依存关系

要启用此属性,请选择 将数据记录到工作区

编程用法

请参阅 DataLoggingSaveFormat

坐标区缩放属性

坐标区缩放对话框控制示波器的坐标区范围。要打开坐标区缩放属性,请在示波器菜单中,选择工具 > 坐标区缩放 > 坐标区缩放属性

  • 手动 - 使用缩放 Y 轴范围工具栏按钮手动缩放 y 轴范围。

  • 自动 - 在仿真期间和仿真后缩放 y 轴范围。选择此选项将显示不允许 Y 轴范围收缩复选框。如果您希望通过信号的最大值来增加或减小 y 轴范围,请将坐标区缩放设置为自动,并清除不允许 Y 轴范围收缩复选框。

  • N 次更新后 - 在更新次数文本框中指定的时间步数(默认值为 10)后,缩放 y 轴。每次运行期间仅发生一次缩放。

编程用法

请参阅 AxesScaling

在仿真期间允许增大 y 轴范围,但不允许缩小范围。

依存关系

要使用此属性,请将坐标区缩放设置为自动

设置此属性可延迟 y 轴的自动缩放。

依存关系

要使用此属性,请将坐标区缩放设置为 N 次更新后

编程用法

请参阅 AxesScalingNumUpdates

  • On - 在仿真停止时缩放坐标区。

  • Off - 连续缩放坐标区。

依存关系

要使用此属性,请将坐标区缩放设置为自动

指定绘制数据图时所使用的 y 轴范围的百分比。如果将此属性设置为 100,绘图数据将使用整个 y 轴范围。

指定当 Y 轴数据范围设置小于 100% 时,绘图数据沿 y 轴数据范围对齐的位置。

  • 顶端 - 将信号与 y 轴范围的最大值对齐。

  • 居中 - 使信号在最小值和最大值之间居中。

  • 底端 - 将信号与 y 轴范围的最小值对齐。

缩放 x 轴范围以容纳所有信号值。如果坐标区缩放设置为 Auto,则只缩放当前在坐标区范围内的数据,而不是数据缓冲区中的整个信号。

指定绘制数据图时所使用的 x 轴范围的百分比。例如,如果将此属性设置为 100,绘图数据将使用整个 x 轴范围。

指定当 X 轴数据范围设置小于 100% 时,绘图数据沿 x 轴数据范围对齐的位置。

  • 右侧 - 将信号与 x 轴范围的最大值对齐。

  • 居中 - 使信号在最小值和最大值之间居中。

  • 左侧 - 将信号与 x 轴范围的最小值对齐。

样式属性

要打开“样式”对话框,请从示波器菜单中,选择视图 > 样式

示波器的背景色。

当您选择自动时,绘图类型是对连续信号使用线图、对离散信号使用阶梯图、对 Simulink 消息信号使用针状图。

使用第一个调色板选择坐标区(视图)的背景色。使用第二个调色板选择网格和标签颜色。

指定复制时是否使用显示的示波器颜色。

如果您选择文件 > 复制到剪贴板,软件会将示波器的颜色更改为适合打印机的颜色(白色背景、可见线条)。如果要按显示的颜色复制并粘贴示波器,请选中此复选框。

选择设置线型属性所针对的活动线条。

在图上显示或隐藏信号。

依存关系

活动画面线条的属性 的值决定哪个线条受到影响。

选择线型、线宽和颜色。

依存关系

活动画面线条的属性 的值决定哪个线条受到影响。

选择标记样式。

依存关系

活动画面线条的属性 的值决定哪个线条受到影响。

模块特性

数据类型

Boolean | busa | double | enumerated | fixed point | half | integer | single

直接馈通

多维信号

可变大小信号

过零检测

a 不支持虚拟总线。非虚拟总线仅在 Normal 模式和 Accelerator 模式的仿真中受支持。非虚拟总线的数据记录只支持数据集格式。

扩展功能

版本历史记录

在 R2015b 中推出