为何模拟前端存在高频幅度衰减?如何解决?
创作时间:
作者:
@小白创作中心
为何模拟前端存在高频幅度衰减?如何解决?
引用
CSDN
1.
https://blog.csdn.net/u013809089/article/details/139655961
在模拟前端设计中,高频幅度衰减是一个常见的问题。以心电采集芯片ADS1291为例,即使在满足奈奎斯特采样定律的情况下,40Hz的正弦波信号也会衰减至输入信号的88%左右。本文将探讨这一现象的原因,并提供两种解决方案:提高采样率和使用均衡器思想进行信号增强。
为何模拟前端存在高频幅度衰减?
以心电采集芯片ADS1291为例,当以250Hz采样率输入40Hz频率的正弦波时,输出的信号只有输入信号的88%左右。这似乎违反了奈奎斯特采样定律,但实际上,这种衰减是由于硬件设计中的抗混叠低通滤波器造成的。
为了防止125Hz以上的信号引入混叠噪声,ADC(模数转换器)在硬件设计上通常会包含一个抗混叠低通滤波器。这个滤波器的幅频响应与输入信号频率和采样率相关,导致了40Hz信号的输出衰减。
如何解决?
通过查阅ADS1291的数据手册,我们可以获得其幅频衰减曲线:
现在的问题在于,我们希望0~40Hz频率信号的衰减小于10%。有两种解决方案:
- 提高采样率:这样可以保证40Hz以下的信号衰减降低或基本无衰减。
- 使用均衡器思想:通过设计一个滤波器来增强指定频带的信号。
MATLAB实现
MATLAB中的firls
函数可以根据幅频关系计算出滤波器参数。这里采用抗混叠滤波器幅频系数的倒数作为firls
滤波器设计的输入:
fin = 1:80; % 输入频率
fdr = 250; % 采样率
fr = fin ./ fdr; % 频率归一化
N = 512;
h = abs(sin(N * pi * fr / 512) ./ (N * sin(pi * fr / 512))).^3;
figure;
plot(fr, 20 * log10(h));
A = 1 ./ h;
A = [A(1:40), 1, 1];
F = [0:39 fdr / 4 fdr / 2];
W = ones(1, length(A) / 2);
b = firls(40, F / (fdr / 2), A, W);
figure;
freqz(b)
这段代码设计了一个滤波器,其幅频响应与抗混叠滤波器的幅频响应互为倒数,从而实现对信号的补偿。
热门推荐
家居装修新风尚!生态板绿色环保潮流
生态板、细木工板与大芯板的奥秘解析
AI赋能医学影像诊断:提升精准性与效率,助力疾病早期发现与治疗
轻松实现烤鱿鱼自由:空气炸锅版烤鱿鱼制作指南
票据的银行业务与法律规范
年假天数最长可以休多久?——全面解析与实用建议
春晚机器人换血:优必选退场,宇树科技登顶
抵制网络谣言,当心罪从口出
化学药剂除磷的方法!
新研究证实国产二价HPV疫苗效果不输进口疫苗,9-14岁是最佳接种期
派特CT检查全身有哪些危害
桃树蚜虫用什么药最有效
桃树蚜虫用什么药最有效
免试研究生怎么申请?免联考硕士免推全流程分析!
自然语言处理与知识图谱的融合与应用
如何搭建合作平台以促进各方资源的整合与互动?
智能物流跟踪系统:提升物流运输时效性的关键
洗衣机漂洗和脱水是什么意思
电动车开着一顿一顿,是怎么回事?
如何加强高职院校专业与人文教育的融合
一年之“山”——景迈山申遗成功一周年系列报道(下)
独有神韵的澜沧古树景迈茶
2025手机号网上选号小技巧
跑步前的热身运动9个步骤
从零开始做外贸:小白必修的十个步骤与实用工具
十个实用的密码安全技巧有效提升密码的安全性
软件UI设计规范的关键要素有哪些?
姜汤的功效与作用
二战中的美国漫画:战争中的英雄
重磅!探秘仰韶文化:探寻彩陶艺术的历史遗迹