作业帮 > 数学 > 作业

请教如何扩大功率谱分析范围的问题

来源:学生作业帮 编辑:大师作文网作业帮 分类:数学作业 时间:2024/11/13 21:15:16
请教如何扩大功率谱分析范围的问题
程序如下:

clear all;
close all;
clc
Rsym = 23400;         % 符号速率
frameLength = 1000;    %每帧符号数
M = 16;               % 调制阶数

% 创建 16-QAM 调制器.
hMod = modem.qammod('M',M);

% 生成随机符号
b = randi([0 hMod.M-1],frameLength,1);
% 调制数据
txSym = modulate(hMod,b)';

%过采样频率
nSamps = 8;
Fs = Rsym * nSamps;

nSym = 8;       % 滤波器长度
beta = 0.2;     % 滚降因子
filterSpec = fdesign.pulseshaping(nSamps,'Square root raised cosine',...
  'Nsym,Beta',nSym,beta);

hXmtFlt = design(filterSpec);
x = filter(hXmtFlt,upsample(txSym,nSamps));

%计算功率谱
figure;
pwelch(x,hamming(512),[],[],Fs,'centered')


可以看出,能够分析-80kHz到80kHz的频谱,假如我想分析-200kHz到200kHz的频谱,

我试了一下你说方法,通过增加数据点,这样好像是不行的,又假如符号速率不变,那么该怎么办?
请教如何扩大功率谱分析范围的问题
保持采样频率不变,则最大分析频率不变,增加采样点数一倍则频率分辨率细化为原来的1/2.
想增大一倍频率分析范围,需要保持频率分辨率不变,增大一倍采样点数,也就是要求采样点数增大一倍的同时,采样频率也增大一倍就可以了.原回答中关于补零一段的答复有错误:

“补零的做法通常是补在实际采样段的开始之前或结束之后,但这是假的提高频率分析上限的细化方法,增加实际采样点数才是真细化.试想你实际采一个点补零15个点甚至更多的情况,你就清楚这并不能得到反映实际过程的结果了.你的补零方法是一种假的提高分辨率的方法.”

更正如下:“补零的做法通常是补在实际采样段的开始之前或结束之后,但这是假的提高频率分辨率的细化方法,增加实际采样点数才是真细化.试想你实际采一个点补零15个点甚至更多的情况,你就清楚这并不能得到反映实际过程的结果了.你的补零方法相当于靠补零代替采样提高采样率,是一种假的提高频率分析上限的方法.”

谢谢提醒使我有发现和更正错误的机会.