这个例子演示了如何在MATLAB中使用时间范围和频谱分析仪在时间和频率域中可视化和测量信号。
创建一个频率为100赫兹、采样频率为1000赫兹的正弦波。用加法产生5秒100赫兹正弦波每隔一秒钟就会有白噪音。将信号发送到时间范围和频谱分析仪进行显示和测量。
采样帧=1000;Fs=1000;SW=dsp.sineewave('频率',100,...'取样器',飞秒,'示例性能框架',SampPerFrame);TS=dsp.TimeScope('取样器',飞秒,'时间跨度',0.1分,...“叶利米特斯”,[-2,2],'显示网格',true);SA=dsp.SpectrumAnalyzer('取样器',Fs);tic;虽然toc<5 sigData=SW()+0.05*randn(SampPerFrame,1);TS(sigData);SA(sigData);结束
使用时间范围,您可以进行一些信号测量。
以下测量值可用:
光标测量-在所有作用域显示上放置屏幕光标。
信号统计-显示所选信号的最大值、最小值、峰间差、平均值、中值、均方根值以及最大值和最小值出现的时间。
双层测量-显示有关选定信号的转换、过冲或过冲以及周期的信息。
寻峰器-显示最大值及其出现的时间。
您可以从时间范围工具栏或工具>测量菜单。
为了说明在时间范围内测量的使用,模拟一个ECG信号。使用心电图
函数生成2700个信号样本。使用Savitzky Golay滤波器平滑信号,并周期性地扩展数据以获得大约11个周期。
x=3.5*ecg(2700)。';y=repmat(sgolayfilt(x,0,21),[13]);sigData=y(1:30000)+圆形(2700*rand(1));
显示时间范围内的信号,并使用峰值探测器、光标和信号统计测量。假设采样率为4khz。
心电图=dsp.TimeScope('取样器',4000,...'时间跨度源','自动','显示网格',正确);TS_ECG(sigData);TS_ECG.YLimits=[-4,4];
峰值测量
启用峰值测量单击相应的工具栏图标或单击工具>测量>峰值探测器菜单项。点击设置在Peak Finder面板中展开设置窗格。进入10个
对于最大峰值数然后按回车键。时间范围在“峰值”窗格中显示一个包含10个峰值振幅值及其出现时间的列表。
每一次心跳之间有0.675秒的恒定时间差。因此,ECG信号的心率由以下方程式给出:
光标测量
启用光标测量单击相应的工具栏图标或单击工具>测量>光标测量菜单项。将打开“光标测量”面板,并在时间范围内显示两个光标。您可以拖动光标并使用它们来测量波形中事件之间的时间。在下图中,光标用于测量心电图波形中峰值之间的时间间隔。这个光标测量面板中的测量显示,两个峰值之间的时间间隔为0.675秒,对应于1.482赫兹或88.9次/分钟的心率。
信号统计和双层测量
您也可以选择信号统计和双层测量从工具>测量菜单。信号统计可用于确定信号的最小值和最大值以及其他指标,如峰间值、平均值、中值和均方根值。双层测量可用于确定有关上升和下降跃迁、跃迁像差、过冲和过冲信息、脉冲宽度和占空比的信息。要了解有关这些测量的更多信息,请参见时间范围测量教程示例。
本节说明如何使用频谱分析仪进行频域测量。
频谱分析仪提供以下测量:
光标测量-在频谱显示器上放置光标。
寻峰器-显示最大值及其出现的频率。
信道测量-显示占用的带宽和ACPR信道测量。
畸变测量-显示谐波和互调失真测量。
CCDF测量-显示免费的累积分布函数度量。
您可以从频谱分析器工具栏或工具>测量菜单。
畸变测量
为了说明如何使用频谱分析仪进行测量,请创建一个在48 kHz下采样的2.5 kHz正弦波,并添加高斯白噪声。在每个信号值处计算一个高阶多项式(9次),以建立非线性失真模型。在频谱分析仪中显示信号。
Fs=48e3;SW=dsp.正弦波('频率',2500,...'取样器',飞秒,'示例性能框架',SampPerFrame);SA_失真=dsp.SpectrumAnalyzer('取样器',飞秒,...'绘图仪wosidedspectrum',错误);y=[1e-6 1e-9 1e-5 1e-9 1e-6 5e-8 0.5e-3 1e-6 1 3e-3];tic;虽然toc<5x=SW()+1e-8*randn(SampPerFrame,1);sigData=polyval(y,x);SA_失真(sigData);结束清楚的Sau失真;
通过单击工具栏中相应的图标或单击工具>测量>失真测量菜单项。在失真测量中,更改谐波数到9并检查标签谐波复选框。在面板中,可以看到接近2500赫兹和8次谐波的基本值,以及它们的SNR、SINAD、THD和SFDR值,这些值与基本输出功率有关。
寻峰器
可以使用“峰值查找器测量”对话框跟踪时变光谱组件。您可以显示和选择标记多达100个峰值。您可以从工具>测量>峰值探测器菜单项,或单击工具栏中相应的图标。
以说明寻峰器,创建一个由三个频率分别为5、15和25 kHz、振幅分别为1、0.1和0.01的正弦波之和组成的信号。数据采样频率为100 kHz。添加将高斯白噪声的正弦波和在频谱分析仪中显示单边功率谱。
Fs=100e3;SW1=dsp.正弦波(1e0,5e3,0,'取样器',飞秒,'示例性能框架',SampPerFrame);SW2=dsp.正弦波(1e-1,15e3,0,'取样器',飞秒,'示例性能框架',SampPerFrame);SW3=dsp.正弦波(1e-2,25e3,0,'取样器',飞秒,'示例性能框架',SampPerFrame);SA_Peak=dsp.SpectrumAnalyzer('取样器',飞秒,'绘图仪wosidedspectrum',错误);抽搐;虽然toc<5 sigData=SW1()+SW2()+SW3()+1e-4*randn(SampPerFrame,1);SA_峰值(sigData);结束清楚的沙乌峰;
启用寻峰器标记三个正弦波频率。以dBm为单位的频率值和功率显示在寻峰器面板。您可以增加或减少最大峰值数,指定最小峰值距离,并从设置“峰值探测器测量”面板中的窗格。
要了解有关使用频谱分析仪测量的更多信息,请参见频谱分析仪测量例子。