2. 信号链概述:从传感器到ADC的完整信号路径、模拟域与数字域的分界、调理电路的核心任务

大家好,我是你们的老朋友。今天咱们聊聊加速度计信号链。说白了,就是传感器产生的微弱信号,怎么一步步变成ADC能认得的数字量。

我在项目中遇到过不少新手,一上来就盯着ADC选型,结果信号根本喂不饱。嗯,这里要记住:信号链的每个环节,都是瓶颈

2.1 完整信号路径:从物理量到数字量

加速度计输出的信号,其实很脆弱。你想想看,一个MEMS传感器,检测的是微米级的位移,输出信号通常只有几毫伏到几百毫伏。这个信号要经过以下路径:

  1. 传感器敏感单元:将加速度转换为电容变化或压阻变化
  2. 前端放大器:将微弱信号放大到伏特级
  3. 抗混叠滤波器:滤除高频噪声,防止采样时发生混叠
  4. ADC驱动器:提供足够的驱动能力,匹配ADC输入范围
  5. ADC采样:将模拟信号转换为数字码

我习惯把这条路径画成一张图,这样思路更清晰。下面是我用SVG画的一个信号链框架图:

加速度计信号链框架图 MEMS加速度计 ±2g ~ ±200g mV级 仪表放大器 G=10~1000 V级 低通滤波器 fc=0.5fs 干净信号 ADC驱动器 阻抗匹配 0~Vref ADC 16~24bit 模拟域 数字域 信号从微伏/毫伏级 → 伏特级 → 数字码 各环节关键参数 环节 输入范围 输出范围 传感器 ±2g → ±200g ±5mV → ±500mV 放大器 ±5mV → ±500mV ±1V → ±5V

核心要点:信号链的增益分配要合理。我见过有人把全部增益都压在放大器上,结果噪声也跟着放大了。正确的做法是:前级放大器只做初步放大,后级ADC驱动器做精细匹配

2.2 模拟域与数字域的分界

这个分界点,其实就在ADC的输入端。模拟域里,信号是连续的电压或电流;数字域里,信号是离散的二进制码。

为什么要强调这个分界?因为噪声处理策略完全不同

  • 模拟域:噪声是叠加在信号上的,只能用滤波器、屏蔽、差分走线来抑制
  • 数字域:噪声可以通过数字滤波、平均、FFT等算法来消除

我曾经在一个项目中,模拟域噪声一直压不下去,后来发现是数字地平面把噪声耦合到了模拟信号线上。嗯,这就是分界没做好。

避坑指南:我曾经在PCB布局时,把模拟地和数字地直接连在一起,结果ADC的SNR掉了10dB。后来老老实实用0Ω电阻或磁珠做单点连接,问题才解决。

2.3 调理电路的核心任务

调理电路,说白了就是让传感器信号“配得上”ADC。它有三个核心任务:

任务 具体内容 我的经验
1. 电平匹配 将传感器输出范围调整到ADC的满量程范围 我习惯留10%的裕量,防止过载
2. 阻抗变换 传感器输出阻抗高,ADC输入阻抗低,需要缓冲 用电压跟随器做缓冲,简单有效
3. 噪声抑制 滤除带外噪声,防止混叠 二阶巴特沃斯滤波器,性价比最高

你想想看,如果传感器输出是±500mV,而ADC的输入范围是0~3.3V,直接接上去会怎样?信号削顶,数据全废。所以调理电路必须做电平偏移和缩放

小技巧:我习惯在调理电路里加一个测试点,方便用示波器观察信号质量。调试时先看这个点,再决定要不要调滤波器参数。

2.4 一个实际案例

去年我做了一个工业振动监测项目,用的是±50g的加速度计,输出灵敏度20mV/g。ADC是16位的,参考电压3.3V。

计算一下:最大输出是50g × 20mV/g = 1V。ADC满量程是3.3V,所以增益需要3.3倍。我选了增益为4的仪表放大器,留了点裕量。

滤波器方面,采样率是1kHz,抗混叠滤波器截止频率设在400Hz。嗯,这里要注意,滤波器阶数不能太高,否则相位延迟会影响振动信号的相位精度。

// 增益计算示例
float sensitivity = 0.020;  // 20mV/g
float max_accel = 50.0;    // 50g
float max_output = sensitivity * max_accel;  // 1.0V
float adc_ref = 3.3;       // ADC参考电压
float gain = adc_ref / max_output;  // 3.3倍
// 实际选型:增益4倍,留20%裕量

这个项目最后SNR做到了85dB,客户很满意。关键就是信号链每个环节都算清楚了。

好了,这一章就到这里。信号链是基础,但也是最容易出问题的地方。下一章咱们聊聊加速度计的选型,到时候见。


公众号:蓝海资料掘金营,微信deep3321