主要内容

MATLAB中的信号可视化与测量

在MATLAB®中使用时间范围和频谱分析仪可视化和测量时域和频域信号。

时域和频域信号可视化

创建一个频率为100hz在1000hz采样的正弦波。用添加剂产生5秒的100赫兹正弦波 N 0 0 0 0 2 5 一秒间隔的白噪声。将信号发送到时间范围和频谱分析仪进行显示和测量。

SampPerFrame = 1000;Fs = 1000;SW = dsp。SineWave (“频率”, 100,...“SampleRate”Fs,...“SamplesPerFrame”, SampPerFrame);时间表(“SampleRate”Fs,...“TimeSpanSource”“属性”...“时间间隔”, 0.1,...“YLimits”(2, 2),...“ShowGrid”,真正的);光谱分析仪(“SampleRate”Fs,...“方法”“韦尔奇”“AveragingMethod”“指数”);抽搐;toc < 10 sigData = SW() + 0.05*randn(SampPerFrame,1);SA (sigData);TS (sigData);结束发行版(TS)

发行版(SA)

时域测量

使用时间范围,您可以进行一些时域信号测量。

以下测量值可用:

  • 光标测量-在所有范围显示上放置屏幕游标。

  • 信号的统计数据-显示所选信号的最大值、最小值、峰峰差、平均值、中位数、均方根值,以及最大值和最小值发生的时间。

  • 上下两层的测量—显示选定信号的跃迁、像差和周期的信息。

  • 峰仪-显示极大值及其发生的时间。

方法启用和禁用这些度量测量选项卡。

TS_measurementbuttons.png

为了说明在时间范围内测量的使用,模拟一个心电信号。使用心电图函数生成2700个信号样本。使用Savitzky-Golay滤波器平滑信号,并定期扩展数据,以获得大约11个周期。

X = 3.5*ecg(2700).';Y = repmat(sgolayfilt(x,0,21),[1 13]);sigData = y((1:300) + round(2700*rand(1))).';

在时间范围内显示信号,并使用峰值查找器和数据游标测量。假设采样率为4 kHz。

TS_ECG = timescope(“SampleRate”, 4000,...“TimeSpanSource”“汽车”...“ShowGrid”,真正的);TS_ECG (sigData);TS_ECG。YLimits = [- 4,4];

峰值测量

启用峰值测量测量选项卡,单击相应的工具条按钮。峰值窗格出现在时间范围窗口的底部。为Num山峰属性,输入8,按“Enter”。在“峰值”窗格中,时间范围显示了8个峰值振幅值及其发生时间的列表。

TS_PeakFinder.png

每次心跳之间有0.675秒的恒定时间差。因此,心电信号的心率由下式给出:

6 0 年代 e c / n 0 6 7 5 年代 e c / b e 一个 t 8 8 8 9 b e 一个 t 年代 / n b p

光标测量

启用光标测量测量选项卡,单击相应的工具条按钮。游标出现在时间范围上,带一个框显示两个游标之间的时间和值的变化。您可以拖动游标并使用它们来测量波形中事件之间的时间。当您拖动光标时,光标上的值出现的时间。该图显示了如何使用游标来测量心电波形中峰值之间的时间间隔。的 Δ T 游标框内的测量结果显示,两个峰值之间的时间间隔为0.675秒,对应心率为1.482 Hz或88.9次/分钟。

TS_Cursors.png

信号的统计数据而且上下两层的测量

您也可以选择信号的统计数据以及各种两层测量测量选项卡。信号统计可以用来确定信号的最小值和最大值以及其他指标,如峰间值、平均值、中值和均方根值。两层测量可用于确定上升和下降跃迁、跃迁像差、超调和欠调信息、稳定时间、脉宽和占空比。要了解更多关于这些测量的信息,请参见配置时间范围MATLAB对象

频域测量

本节介绍如何使用频谱分析仪进行频域测量。

频谱分析仪提供以下测量:

  • 光标测量-在频谱显示上放置游标。

  • 峰仪-显示最大值和它们出现的频率。

  • 信道测量-显示占用带宽和ACPR通道的测量值。

  • 变形测量-显示谐波和互调失真测量。

您可以从频谱分析仪工具条启用和禁用这些测量。

SA_Measurements.png

SA_ChannelMeasurements.png

变形测量

为了说明使用频谱分析仪测量,创建一个2.5 kHz的正弦波采样在48 kHz加性高斯白噪声。在每个信号值处计算高阶多项式(第9次)来模拟非线性失真。在频谱分析仪中显示信号。

Fs = 48e3;SW = dsp。SineWave (“频率”, 2500,...“SampleRate”Fs,...“SamplesPerFrame”, SampPerFrame);频谱分析仪(“SampleRate”Fs,...“方法”“韦尔奇”...“AveragingMethod”“指数”...“PlotAsTwoSidedSpectrum”、假);Y = [1e-6 1e-9 1e-5 1e-9 1e-6 5e-8 0.5e-3 1e-6 1 3e-3];抽搐;toc < 5 x = SW() + 1e-8*randn(SampPerFrame,1);sigData = polyval(y, x);SA_Distortion (sigData);结束释放(SA_Distortion);

选项启用谐波失真测量失真按钮上的测量频谱分析仪工具条的TAB。在失真部分,更改的值Num谐波到9,检查标签谐波复选框。在频谱分析仪窗口底部的谐波失真面板中,可以看到接近2500hz和8个谐波的基波值,以及它们的SNR、SINAD、THD和SFDR值,这些值是参考基波输出功率的。

SA_DistortionMeas.png

峰仪

您可以使用峰值查找器测量来跟踪时变光谱成分。您可以显示和可选标签多达100个峰值。要调用峰值查找器,请选择峰仪按钮上的测量频谱分析仪工具条的TAB。

举例说明的用法峰仪,创建一个由频率为5、15和25 kHz和振幅分别为1、0.1和0.01的三个正弦波和组成的信号。数据以100千赫采样。添加 N 0 1 0 - 8 将高斯白噪声转换为正弦波和,并在频谱分析仪中显示单侧功率谱。

Fs = 100e3;SW1 = dsp。SineWave (1e0,5e3,0,...“SampleRate”Fs,...“SamplesPerFrame”, SampPerFrame);SW2 = dsp。SineWave (1e-1,15e3,0,...“SampleRate”Fs,...“SamplesPerFrame”, SampPerFrame);SW3 = dsp。SineWave (1e-2,25e3,0,...“SampleRate”Fs,...“SamplesPerFrame”, SampPerFrame);光谱分析仪(“SampleRate”Fs,...“方法”“韦尔奇”...“AveragingMethod”“指数”...“PlotAsTwoSidedSpectrum”、假);抽搐;toc < 10 sigData = SW1() + SW2() + SW3() + 1e-4*randn(SampPerFrame,1);SA_Peak (sigData);结束释放(SA_Peak);

启用峰仪标记三个正弦波频率。以dBm表示的频率值和功率显示在图表下方。中可以增加或减少峰值的最大数量、指定最小峰值距离以及更改其他设置山峰部份测量选项卡。

SA_PeakFind.png

要了解更多关于使用频谱分析仪测量的信息,请参见频谱分析仪测量的例子。