主要内容

timescope

显示时域信号

描述

timescope对象在时域内显示信号。

使用数据游标显示的范围窗口。

特点:范围

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

  • 信号的统计数据-显示所选信号的最大值、最小值、峰峰差值、平均值、中值和均方根值。

  • 峰仪-找到最大值,显示x-它们出现的轴值。

  • 上下两层的测量-测量过渡、超调、欠调和周期。

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

使用对象的功能显示、隐藏和确定作用域窗口的可见性。

创建

描述

例子

范围= timescope返回一个timescope对象,范围.该对象在时域中显示实值和复值浮点和定点信号。

范围= timescope (名称,值返回一个timescope将属性设置为指定值的。用引号指定属性及其值,用逗号分隔。可以以任意顺序指定名称-值对参数。

属性

全部展开

中的大多数属性都可以更改timescopeUI。

经常使用的

输入信号的采样率,以赫兹为单位,指定为有限数值标量或标量向量。

抽样率的倒数决定了x-轴(时间轴)显示信号中各点之间的间距。当的值NumInputPorts大于1且采样率为标量,则对象对所有输入使用相同的采样率。要为每个输入指定不同的采样率,请使用向量。

只能在创建对象时或调用后设置此属性释放

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置采样率

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

基于帧的输入信号的时间跨度的来源,指定为下列之一:

  • “属性”对象派生x的-轴限制TimeDisplayOffset而且时间间隔属性。

  • “汽车”- - -x的-轴限制派生自TimeDisplayOffset财产,SampleRate属性,以及每个输入信号中的行数(FrameSize在下面的方程中)。限制的计算方法为:

    • 最小时间轴限制=TimeDisplayOffset

    • 最大时间轴限制=TimeDisplayOffset+马克斯(1 /SampleRate.*FrameSize

依赖

当你设置时间间隔财产,TimeSpanSource自动设置为“属性”

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置时间跨度

数据类型:字符|字符串

时间跨度(以秒为单位),指定为正的数字标量值。时间轴限制的计算方法为:

  • 最小时间轴限制=TimeDisplayOffset

  • 最大时间轴限制=TimeDisplayOffset+时间间隔

依赖关系

若要启用此属性,请设置TimeSpanSource“属性”

作用域窗口使用

范围选项卡上,单击设置.下数据和轴、编辑时间跨度

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定作用域如何显示超出可见时间跨度的新数据:

  • “滚动”-在此模式下,瞄准镜将旧数据滚动到左侧,以便为瞄准镜显示右侧的新数据腾出空间。该模式有利于时变信号的调试和监控。

  • “包装”—该模式下,范围在覆盖区域右侧后,再向左侧添加数据。

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置占领行动

数据类型:字符|字符串

地块类型,指定为:

  • “行”-折线图,类似于情节函数。

  • “楼梯”-阶梯图,类似于楼梯函数。阶梯图用于绘制数字采样数据的时间历史图。

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置情节类型

数据类型:字符|字符串

当此属性设置为:

  • “onceatstop”极限在模拟结束时更新一次释放叫)。

  • “汽车”作用域试图始终保持数据在显示中,同时尽量减少轴限制的更新次数。

  • “手动”作用域不执行任何操作,除非用户指定。

  • “更新”在100次可视化更新后,瞄准镜会缩放坐标轴一次且仅一次。

只能在创建对象时设置此属性。

数据类型:字符|字符串

先进的

将布局网格尺寸指定为两元素向量:[numberOfRows, numberOfColumns].网格最多可以有4行4列。

如果创建多个轴的网格,要修改各个轴的设置,请使用ActiveDisplay

例子:范围。LayoutDimensions = [2,4]

作用域窗口使用

范围选项卡上,单击显示网格),并从网格中选择指定的行数和列数。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定用于描述x轴(时间轴)的单位。您可以选择以下选项之一:

  • “秒”- scope总是在x轴上以秒的形式显示单位。范围显示单词时间(年代)在x轴上。

  • “没有”-瞄准镜在x轴上不显示任何单位。作用域只显示单词时间在x轴上。

  • “指标”-瞄准镜在x轴上显示的单位为时间(年代)在绘制更多数据点时,将单位更改为日、周、月或年。

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置时间单位

数据类型:字符|字符串

对象上的数据移动的距离(以秒为单位)x设在。信号值不改变,只显示在限制上x设在变化。

如果将此属性指定为标量,则该值为所有通道的时间显示偏移量。如果将此属性指定为向量,则每个输入通道可以是不同的时间显示偏移量

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置时间偏移量

时间轴标签,指定为:

  • “所有”—所有显示器中均显示时间轴标签。

  • 的底部-每列底部显示时间轴标签。

  • “没有”—任何显示器上都没有标签。

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置时间标签

数据类型:字符|字符串

指定是否以最大化轴模式显示作用域。在此模式下,轴将展开以适应整个显示。为了节省空间,标签不会出现在每个显示中。取而代之的是,标记及其值出现在绘制的数据之上。您可以选择以下选项之一:

  • “汽车”-只有当标题而且YLabel属性对于每个显示都是空的。如果在任何显示中为这些属性中的任何一个输入任何值,坐标轴都不会最大化。

  • “上”-轴在所有显示中显示为最大化。中输入的任何值标题而且YLabel属性是隐藏的。

  • “关闭”-没有一个轴出现最大化。

作用域窗口使用

在作用域窗口上,单击为了最大化轴,隐藏所有标签和插入轴值。

数据类型:字符|字符串

指定用于每个输入信号的缓冲区长度为正整数。

只能在创建对象时设置此属性。

作用域窗口使用

范围选项卡上,单击设置.下数据和轴,设置缓冲区长度

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

可视化

将作用域的名称指定为字符向量或字符串标量。此名称作为作用域图形窗口的标题出现。要指定范围图的标题,请使用标题财产。

数据类型:字符|字符串

作用域窗口的位置(以像素为单位),由作用域窗口的大小和位置指定为窗体的四元素向量[左下宽高].通过修改此属性的值,可以将范围窗口放置在屏幕上的特定位置。

默认情况下,窗口显示在屏幕的中央,宽度为800像素和高度500像素。位置的确切值取决于屏幕分辨率。

将输入通道名称指定为字符向量的单元格数组。频道名称显示在图例中,并显示在测量选项卡下选择通道.如果不指定名称,则通道被标记为通道1通道2等。

依赖

若要启用此属性,请设置ShowLegend真正的

数据类型:字符

活动显示用于设置属性,由整数显示编号指定。显示的编号对应于显示的按行放置索引。设置此属性可以控制显示用于以下属性:YLimitsYLabelShowLegendShowGrid标题,PlotAsMagnitudePhase

作用域窗口使用

范围选项卡上,单击设置.下显示和标签,设置活跃的显示

将显示标题指定为字符向量或字符串标量。

依赖

当你设置这个属性时,ActiveDisplay控制已更新的显示。

作用域窗口使用

范围选项卡上,单击设置.下显示和标签,设置标题

数据类型:字符|字符串

属性左侧显示的范围的文本y设在。

依赖关系

此属性仅适用于PlotAsMagnitudePhase.当PlotAsMagnitudePhase真正的,二y-axis标签是只读值“级”而且“阶段”,分别为幅值图和相位图。

当你设置这个属性时,ActiveDisplay控制已更新的显示。

作用域窗口使用

范围选项卡上,单击设置.下显示和标签,设置YLabel

数据类型:字符|字符串

指定y-轴限制为两元数值向量,[ymin, ymax]

  • 如果PlotAsMagnitudePhase,默认为(-10年,10)

  • 如果PlotAsMagnitudePhase真正的,默认为[0, 10].此属性指定y-轴限制仅为幅度图。的y相图的-轴极限总是[-180180]

依赖

当你设置这个属性时,ActiveDisplay控制已更新的显示。

作用域窗口使用

范围选项卡上,单击设置.下显示和标签,设置轴的限制

若要显示带有输入名称的图例,请将此属性设置为真正的

从图例中,您可以控制哪些信号可见。在作用域图例中,单击一个信号名称以在作用域中隐藏该信号。要显示信号,请再次单击信号名称。

作用域窗口使用

范围选项卡上,单击设置.下显示和标签中,选择显示的传说

数据类型:逻辑

将此属性设置为真正的在图上显示网格线。

作用域窗口使用

范围选项卡上,单击设置.下显示和标签中,选择显示网格

将信号绘制为幅值和相位,指定为:

  • 真正的-示波器将输入信号的幅度和相位绘制在同一活动显示器内的两个独立轴上。

  • -示波器将输入信号的实部和虚部绘制在同一活动显示器内的两个独立轴上。

这个属性对于复值输入信号很有用。打开此属性将影响实值输入信号的相位。当输入信号的幅值为非负时,相位为0度。当输入信号的幅值为负时,相位为180度。

作用域窗口使用

范围选项卡上,单击设置.下显示和标签中,选择星等相位图

对象的功能

要使用对象函数,请将对象指定为第一个输入参数。

隐藏 隐藏范围窗口
显示 显示范围窗口
isVisible 确定范围的可见性
generateScript 生成MATLAB脚本使用当前设置创建作用域
一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 重置的内部状态系统对象

如果希望从头重新启动模拟,请调用重置清除范围窗口显示。不要打电话重置后调用释放

例子

全部折叠

创建一个时域正弦信号。通过调用时间范围对象显示信号。

创建一个带有两个音调的正弦信号,一个在0.3 kHz,另一个在3 kHz。

T = (0:1000)'/8e3;Xin = sin(2*pi*0.3e3*t)+sin(2*pi*3e3*t);

创建一个timescope对象,并通过调用时间范围对象查看正弦信号范围

Scope = timescope(“SampleRate”, 8 e3,...“TimeSpanSource”“属性”...“时间间隔”, 0.1);范围(新)

运行释放允许更改属性值和输入特征。瞄准镜自动缩放坐标轴。

释放(范围);

隐藏范围窗口。

如果(isVisible(范围)藏(范围)结束

显示范围窗口。

如果(~ isVisible(范围))显示(范围)结束

创建和显示时钟输入信号

加载时钟数据,x而且t.求样本时间,ts

负载clockexTs = t(2)-t(1);

创建一个timescope对象并调用该对象来显示信号。若要自动缩放坐标轴并允许更改属性值和输入特征,请调用释放

Scope = timescope(“SampleRate”1 / ts,“TimeSpanSource”“汽车”);范围(x);释放(范围);

使用上下两层的测量面板找到固定时间

1.从测量选项卡上,选择畸变

初始时,时间范围不显示沉淀时间测量。属性的默认值解决寻求参数大于整个模拟持续时间。

2.在双层设置>设置寻道框中,输入2 e-6并按输入

时间范围现在显示上升边沉淀时间的价值118.392ns。

这个沉降时间值实际上是所有五条上升边的沉降时间的统计平均值。若要显示仅一条上升边的稳定时间,可以放大该过渡。

3.将鼠标悬停在范围轴的右上角,然后单击缩放按钮。

4.单击并拖动以放大其中一个过渡。

时间范围更新上升边缘沉淀时间值来反映新的时间窗口。

这个例子展示了如何可视化具有不同采样率的多个输入,并在多个轴上绘制信号。

生成三种不同的正弦波,并在timescope

频率= 1/500;T = (0:100)'/freq;T2 = (0:0.5:100)'/freq;Xin1 = sin(1/2*t);Xin2 = sin(1/4*t2);Xin = sin(1/2*t2)+sin(1/4*t2);Scope = timescope(“SampleRate”,[频率/2频率],...“TimeSpanSource”“属性”...“时间间隔”, 0.1,...“LayoutDimensions”, (2, 1));释放(Scope, xin1, xin2)

这个例子展示了如何添加标题,设置y-轴限制,并修改属性时,您有多个轴在您的timescope对象。

使用timescope用两种不同的采样率来想象三个正弦波。

Freq = 1;T = (0:100)'/freq;T2 = (0:0.5:100)'/freq;Xin1 = sin(1/2*t);Xin2 = sin(1/4*t2);Xin = sin(1/2*t2)+sin(1/4*t2);Scope = timescope(“SampleRate”,[频率/2频率],...“TimeSpanSource”“属性”...“时间间隔”, 100);范围(xin, xin1, xin2)

更改布局以添加第二个轴。第二个和第三个输入自动移动到新的第二个轴。

范围。LayoutDimensions = [2,1];

属性修改第一个轴的设置ActiveDisplay财产1,然后更改该轴的一些属性。

范围。ActiveDisplay = 1;范围。ShowGrid = false;范围。标题=“正弦波1”;范围。YLimits = [-2,2];

重复此过程以修改第二个轴。

范围。ActiveDisplay = 2;范围。标题=《正弦波2和3》;范围。YLimits = [-1,1];(范围)

创建一个dsp。SineWave采样频率为1000hz。创建一个dsp。FIRDecimator对象将正弦波抽取2。创建一个timescope对象,具有两个输入端口。

Fs = 1000;采样频率sin = dsp。SineWave (“频率”, 50岁,...“SampleRate”Fs,...“SamplesPerFrame”, 100);decimate = dsp.FIRDecimator;对正弦取2个小数Scope = timescope(“SampleRate”(Fs Fs / 2),...“TimeDisplayOffset”38 / Fs] [0,...“TimeSpanSource”“属性”...“时间间隔”, 0.25,...“YLimits”[1],...“ShowLegend”,真正的);

调用dsp。SineWave对象来创建正弦波信号。使用dsp。FIRDecimator对象创建第二个信号,该信号等于原始信号,但被抽取了2倍。调用来显示信号timescope对象。

Ii = 1:2 xsin = sin ();Xdec = decimate(xsin);范围(xsine xdec)结束(范围)

关闭“时间范围”窗口并清除变量。

清晰的范围Fs正弦毁掉2xsinexdec

创建一个表示复值正弦信号的向量,并创建一个timescope对象。调用作用域来显示信号。

Fs = 1000;T = (0:1/fs:10)';cxsin = cos(2* *0.2*t) + 1i*sin(2* *0.2*t);CxSineSum = cumsum(cxsin);Scope = timescope(“SampleRate”fs,“TimeSpanSource”“汽车”“ShowLegend”1);范围(CxSineSum);(范围)

默认情况下,当输入是复值信号时,Time Scope将实部和虚部绘制在相同的轴上。这些实部和虚部在同一活动显示器的同一轴上显示为不同颜色的线。

改变PlotAsMagnitudePhase财产真正的并调用释放

范围。PlotAsMagnitudePhase = true;范围(CxSineSum);(范围)

时间范围现在在同一活动显示器内的两个独立轴上绘制输入信号的幅度和相位。上面的轴显示星等,下面的轴显示相位,以度数表示。

这个例子展示了如何timescope对象可视化中途改变维度的输入。

创建一个表示双通道常数信号的向量。创建另一个表示三通道常数信号的向量。创建一个timescope对象。调用具有两个输入的作用域来显示信号。

Fs = 10;Sigdim2 = [ones(5*fs,1) 1+ones(5*fs,1)];% 2-dim 0-5秒sigdim3 = [2 + 1 (5 * fs, 1) 3 + 1 (5 * fs, 1) 4 + 1 (5 * fs, 1)];% 3-dim 5-10秒Scope = timescope(“SampleRate”fs,“TimeSpanSource”“属性”);范围。PlotType =“楼梯”;范围。时间SpanOverrunAction =“滚动”;范围。时间DisplayOffset = [0 5]; scope([sigdim2; sigdim3(:,1:2)], sigdim3(:,3));

在本例中,输入信号到时间范围的大小随着模拟的进行而变化。当模拟时间小于5秒时,time Scope只绘制双通道信号,sigdim2.5秒后,时间范围也绘制出三通道信号,sigdim3

运行释放方法来启用对属性值和输入特征的更改。瞄准镜自动缩放坐标轴。

(范围)

使用Time Scope的Peak Finder面板来测量心率。

创建和显示心电信号

创建心电图(ECG)信号。自定义心电图功能帮助产生心跳信号。

函数x =心电图(L) a0 =[40 0 1 1 0, -34, 118, -99, 0, 2, 21岁,2,0,0,0);D0 = [0, 27, 59, 91, 131, 141, 163, 185, 195, 275, 307, 339, 357, 390, 440];A = a0 / max(a0);d = round(d0 * L / d0(15));d(15) = L;I = 1:14 m = d(I): d(I +1) - 1;斜率= (a(i+1) - a(i)) / (d(i+1) - d(i));X (m+1) = a(i) + slope * (m - d(i));结束
X1 = 3.5*ecg(2700).';Y1 = sgolayfilt(kron(ones(1,13),x1),0,21);N = (1:30000)';Del = round(2700*rand(1));MHB = y1(n + del);Ts = 0.00025;

创建一个timescope对象并调用该对象来显示信号。若要自动缩放坐标轴并允许更改属性值和输入特征,请调用释放

Scope = timescope(“SampleRate”1 / ts);范围(mhb);(范围)

发现心率

使用峰值查找器测量心脏跳动之间的时间。

  1. 测量选项卡上,选择峰仪

  2. Num山峰属性,输入10

山峰在窗口底部的窗格中,时间范围显示了十个峰值振幅值的列表以及它们发生的时间。

峰值列表显示每个心跳之间的恒定时间差异为0.675秒。根据下式,该心电信号的心率约为每分钟89次。

$ $ \压裂{60 \ textrm {s / min}} {0.675 \ textrm {s /击败}}= 88.89 \ textrm {bpm} $ $

关闭Time Scope窗口,并从工作区中删除您创建的变量。

清晰的范围x1日元nmhbts

提示

  • 要关闭作用域窗口并清除其相关数据,请使用MATLAB®清晰的函数。

  • 控件可隐藏或显示作用域窗口隐藏而且显示功能。

  • 使用MATLAB世纪挑战集团函数编译包含作用域的代码。如果应用程序中有多个已编译组件,则无法打开作用域配置对话框。

另请参阅

R2020a中引入