第1章:传感器选型与信号特性
大家好,欢迎来到《嵌入式血压计ADC采样与滤波算法实战》的第一课。
做血压计,第一步就是选传感器。这步走错了,后面算法写得再好也白搭。我见过不少团队,ADC选得顶级,滤波器设计得花里胡哨,结果传感器输出噪声大得离谱——说白了,源头就歪了。
今天咱们就聊聊两种主流传感器:压阻式和电容式。我会结合自己的项目经验,把它们的脾气秉性讲透。
1.1 压阻式传感器:皮实耐造的老将
压阻式传感器,原理很简单:压力变化引起电阻变化。惠斯通电桥一搭,差分电压就出来了。
我个人习惯用压阻式,为什么?因为它皮实。我在做一款家用腕式血压计时,遇到过用户戴着传感器去洗菜——虽然不推荐,但压阻式扛住了。电容式的话,可能早就进水报销了。
压阻式传感器典型输出特性:
- 满量程输出:通常 10mV ~ 100mV(取决于供电电压和灵敏度)
- 供电电压:3.3V 或 5V
- 灵敏度:典型值 1.0 ~ 2.5 mV/V/kPa
- 非线性误差:±0.1% ~ ±0.5% FSO
举个例子。我常用的某款压阻式传感器,5V供电,灵敏度1.5 mV/V/kPa。测量300mmHg(约40kPa)时,输出是多少?
算一下:5V × 1.5 mV/V/kPa × 40 kPa = 300 mV。嗯,这个幅值对ADC来说很友好。
我的经验:压阻式传感器输出阻抗通常2kΩ~5kΩ。ADC输入阻抗不够高的话,记得加一级运放缓冲。我曾经偷懒没加,结果采样值偏了5%,找了好久才发现。
1.2 电容式传感器:高精度但娇气
电容式传感器,测的是压力导致的电容变化。原理上精度可以做得更高,但实际用起来坑不少。
我记得有一次做一款医用级血压计,要求精度±1mmHg。压阻式有点吃力,就试了电容式。结果呢?温漂大得吓人。手一靠近传感器,读数就跳。
电容式传感器的典型输出特性:
| 参数 | 典型值 | 备注 |
|---|---|---|
| 电容变化范围 | 0.5pF ~ 5pF | 满量程变化 |
| 灵敏度 | 0.01 ~ 0.05 pF/kPa | 取决于结构 |
| 寄生电容 | 10pF ~ 50pF | PCB布局影响大 |
| 温度系数 | ±0.5% / 10°C | 需要补偿 |
你想想看,电容变化才几个皮法,寄生电容动辄几十皮法。信噪比天然就吃亏。
避坑指南:我曾经在一个项目中,电容式传感器PCB走线长了2cm,结果寄生电容翻倍,测量范围直接缩水30%。后来不得不重新layout。所以,电容式传感器对PCB布局极其敏感,走线越短越好,周围不要铺铜。
1.3 两种传感器的对比
直接上对比表,大家一目了然:
| 对比项 | 压阻式 | 电容式 |
|---|---|---|
| 输出信号类型 | 电压(差分) | 电容(需C/V转换) |
| 信号幅值 | 10mV ~ 300mV | 0.5pF ~ 5pF |
| 抗干扰能力 | 较强 | 较弱(易受寄生电容影响) |
| 温漂 | 中等(需补偿) | 较大(需补偿) |
| 成本 | 低 | 中高 |
| 典型应用 | 家用血压计、工业压力表 | 高精度医用设备、差压测量 |
我个人建议:做消费级血压计,无脑选压阻式。成本低、设计简单、抗造。如果要做科研级或者医用级,对精度有变态要求,再考虑电容式——但要做好温补和屏蔽。
1.4 信号幅值范围与ADC的匹配
选好传感器,下一步就是看信号幅值能不能喂饱ADC。
压阻式传感器输出,满量程通常几十到几百毫伏。12位ADC,参考电压3.3V,分辨率是3.3V/4096 ≈ 0.8mV。也就是说,300mV的信号能分出约375个台阶。对于血压测量来说,够用了。
但如果你用16位ADC,分辨率更高,能捕捉到更细微的压力波动。我在做动态血压监测时,就换成了16位ADC,因为需要检测到1mmHg以下的压力变化。
信号幅值匹配要点:
- 传感器满量程输出应占ADC输入范围的50%~90%
- 如果信号太小,加一级放大(通常10~100倍)
- 注意放大器的噪声和失调电压,别把信号淹了
嗯,这里要注意:放大倍数不是越大越好。我见过有人把信号放大1000倍,结果运放自身的噪声比信号还大。那叫放大噪声,不叫放大信号。
1.5 我的选型建议
说了这么多,总结一下我的选型思路:
- 先看精度要求:±3mmHg以内,压阻式够用;±1mmHg,考虑电容式
- 再看使用环境:家用、有振动、可能潮湿,选压阻式;实验室环境,电容式可以上
- 最后看成本:压阻式传感器几块钱到十几块钱,电容式通常贵一倍以上
我最近做的一款产品,就是压阻式传感器 + 12位ADC + 简单的一阶RC滤波。成本控制在20元以内,精度做到了±2mmHg。说白了,选对传感器,后面省一半功夫。
下一章,咱们聊聊ADC采样参数怎么设——采样率、分辨率、参考电压,这些参数设不对,数据全是废的。
课后小作业:查一下你手头MCU的ADC输入阻抗是多少。如果低于10kΩ,接压阻式传感器时记得加运放缓冲。别问我为什么知道要提醒这个——我吃过亏。
好了,今天就到这儿。有问题欢迎交流。
公众号:蓝海资料掘金营,微信deep3321