2. 采集系统基础
做音频采集这么多年,我见过太多人一上来就盯着ADC(模数转换器)看。总觉得杂音是ADC没选好,或者采样率不够高。其实啊,ADC只是最后一站。真正的杂音,往往在它前面就已经埋下了。
今天我们就从头到尾捋一遍,从传感器到ADC,这条信号链路上到底有哪些关键节点。每个节点都可能成为杂音的“策源地”。
2.1 信号链路全景图
先给你一张全景图。我习惯把整个链路分成四个阶段:
传感器 → 前端调理 → 传输/缓冲 → ADC采样
这四个阶段,缺一不可。任何一个环节出了问题,后面的ADC再贵也救不回来。
下面这张SVG图,就是我常用的链路结构。你仔细看看,每个节点我都标了关键风险点。
2.2 节点①:传感器输出——最脆弱的环节
传感器是整个链路的起点。说白了,它把声波、振动这些物理量转成微弱的电信号。有多微弱?很多MEMS麦克风的输出只有几毫伏到几十毫伏。
这么弱的信号,随便一点干扰就能把它淹没。我在项目中遇到过最典型的问题——麦克风的偏置电压纹波。有一次客户反馈采集到的音频里有“嗡嗡”声,频率刚好是100Hz。查了半天,发现是给麦克风供电的LDO输出纹波太大。你想想看,麦克风把电源纹波当成了有效信号放大,能不嗡嗡吗?
避坑指南:传感器输出端的杂音,80%来自供电。我曾经因为省成本用了普通LDO给MEMS麦克风供电,结果底噪直接高了6dB。后来换成超低纹波的LDO,问题立刻解决。
传感器端常见的杂音类型:
- 共模噪声——传感器和地之间的电位差,表现为低频哼声
- 偏置纹波——供电不干净,直接耦合到信号里
- 机械振动——传感器本身被振动干扰,产生伪信号
- 热噪声——传感器阻抗越高,热噪声越大
2.3 节点②:前端调理——放大器是双刃剑
信号从传感器出来,第一件事就是放大。但放大器本身也是噪声源。我常说一句话:放大器把信号放大的同时,也把自己的噪声放大了。
前端调理电路通常包含两级:
| 级数 | 功能 | 常见杂音 |
|---|---|---|
| 第一级(前置放大) | 将微伏级信号放大到毫伏级 | 运放1/f噪声、输入偏置电流噪声 |
| 第二级(滤波+增益) | 带外衰减、进一步放大 | 电源噪声耦合、自激振荡 |
这里有个关键点——第一级运放的选择决定了整个链路的底噪天花板。你后面用再好的ADC,也救不回第一级引入的噪声。我个人习惯,第一级运放必须选低噪声、低偏置电流的型号,比如OPA1612、AD797这些。
经验之谈:调试前端放大器时,先把输入端短路,用示波器看输出。如果输出上有明显的纹波或毛刺,说明电源或布局有问题。别急着换运放,先查供电。
2.4 节点③:传输/缓冲——线缆是天线
信号放大之后,要传到ADC那边去。这段传输路径,往往被很多人忽略。你想想看,一根几厘米到几十厘米的线缆,就是一根天然的天线。空间里的电磁干扰,全都能耦合进来。
传输环节的杂音来源:
- 共模干扰——线缆两端地电位不一致,形成地环路
- 串扰——信号线紧挨着时钟线或数字线
- 阻抗不匹配——信号反射,造成振铃
- 线缆电容效应——长线缆的寄生电容会衰减高频
我记得有一次,客户说采集到的信号在1MHz附近有周期性毛刺。我让他们把信号线远离板上的DC-DC电感,毛刺立刻消失了。说白了,就是线缆把开关电源的辐射捡了进来。
解决传输杂音,我建议用差分信号传输。如果只能用单端,那就加一级缓冲器,降低输出阻抗,提高抗干扰能力。
2.5 节点④:ADC输入——最后一关
信号到了ADC输入端,其实已经“定型”了。ADC能做的,就是把模拟信号转成数字。但ADC本身也会引入杂音:
- 采样时钟抖动——时钟不稳定,采样点偏移,等效为相位噪声
- 量化噪声——ADC分辨率有限,量化误差不可避免
- 开关电容馈通——ADC内部的采样电容切换,会向输入端反冲电荷
关键认知:ADC的量化噪声是理论下限,你改变不了。但时钟抖动和馈通噪声,是可以通过电路设计来优化的。我见过有人用普通晶振给24位ADC提供时钟,结果有效位数只有16位。换成低抖动时钟后,直接提升到20位。
2.6 链路噪声预算——你得心里有数
做信号链路设计,不能凭感觉。你得算清楚每个节点贡献了多少噪声。我常用的方法是:
- 列出每个节点的噪声密度(nV/√Hz)
- 乘以该节点的带宽
- 再乘以该节点之后的增益
- 最后求和,得到总输出噪声
举个例子,一个典型的音频采集链路:
| 节点 | 噪声密度 | 带宽 | 增益 | 输出噪声贡献 |
|---|---|---|---|---|
| 传感器 | 30 nV/√Hz | 20 kHz | 100x | 134 μV |
| 前置放大器 | 5 nV/√Hz | 20 kHz | 10x | 7 μV |
| 缓冲器 | 10 nV/√Hz | 20 kHz | 1x | 1.4 μV |
| ADC | 15 nV/√Hz | 20 kHz | 1x | 2.1 μV |
| 总输出噪声 | ≈ 135 μV(主要来自传感器) | |||
你看,在这个例子里,传感器贡献了绝大部分噪声。所以你要优化,就得从传感器下手。换一个低噪声的传感器,效果立竿见影。
小技巧:做噪声预算时,别只看数值。要关注噪声的频谱分布。有些噪声集中在低频(如1/f噪声),有些是白噪声。针对不同频段的噪声,处理手段完全不同。
2.7 链路调试的“三板斧”
最后,分享我调试信号链路的三个习惯动作。每次遇到杂音问题,我都按这个顺序查:
- 逐级短路法——从ADC输入端开始,逐级向前短路。短路到哪一级杂音消失,问题就出在哪一级之前。
- 供电排查法——用电池给每一级单独供电。如果电池供电时杂音消失,说明是电源问题。
- 频谱分析法——用FFT看杂音的频率分布。50Hz/100Hz是工频干扰,高频毛刺可能是开关电源或数字串扰。
这三板斧,我用了十几年,从来没失手过。你下次遇到杂音问题,不妨试试看。