过采样提升信噪比

结论

增加采样率可以使得信号的信噪比提升
公式:SNR=6.02N+1.76+10*log(fs/2B)

问题的前提

假设一个纯净的信号(不含噪声)经过一个ADC采样(ADC采用四舍五入法进行均匀量化),信号的带宽为B,采样率为Fs,我们来分析一下经过ADC的量化带来的误差

问题分析

我们所分析的噪声其实是ADC引入的量化噪声,量化噪声是指ADC在对信号进行量化的时候,信号由幅度连续变成幅度离散所无法避免的误差。如四舍五入法则相当于引入了一个概率密度分布为[-分度值/2,分度值/2]的均匀分布,数字频域上均匀分布在[-pi,pi]的均匀白高斯噪声。
由这段分析我们就得知了,这段噪声的功率只与ADC的量化字长有关,无论是否过采样信号与噪声的功率是不变的,那么信噪比应该是不变的才对。
实际上,我们所说的信噪比是指落在信号带内的信号与噪声的功率比。
过采样时,信号的数字带宽B’=B/Fs*2Pi会随着采样率的增加而变低,那么落入带外的噪声我们当然可以通过数字滤波器消除了,信噪比随之提升。
通过分析公式,将公式有对数坐标转换为线性坐标

SNR=1/10*(10^(6.02N+1.76))*Fs/2B=K*Fs

即信噪比的提升与采样率的提升成正比,这个由上面分析很容易得出。这是因为落入带内的噪声与Fs反比,信噪比又与噪声功率成反比,则信噪比与采样率成正比。

MATLAB仿真

提升采样率前
这个是没有提升采样率的
提升采样率后
提升一倍采样率
可见量化噪声水平是相同的但是,由于过采样信号的数字带宽变小所以落入带内的噪声功率变小,信噪比提高了。

matlab代码

t=0:0.01:2*pi-0.01;
ad=8;
fs=200;
over_sample=1;              %采样倍数
signal=zeros(1,length(t));
for i=1:10                  %生成测试信号
    signal = signal+0.1*sin((fs-i*4)/over_sample*t);
end
Qs=round(signal./5*2^(ad-1));%8位ad 5v量程正负双极性 四舍五入法
Es=Qs*5/2^(ad-1);
plot(t,signal);
hold on
plot(t,Es);
figure
Esw=abs(fft(Es));
plot(abs(fft(Es)));

  • 8
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值