3、模拟前端设计(一):仪表放大器选型、右腿驱动与CMRR优化
各位同学,咱们今天聊聊心电模拟前端最核心的部分。说白了,就是从人体皮肤上那微弱的电信号,到能被ADC采样的干净信号,这中间到底经历了什么。
我个人习惯把模拟前端比作「信号侦探」。它要从几十微伏到几毫伏的心电信号里,把有用的信息揪出来,同时把工频干扰、肌电噪声、电极极化电压这些「坏蛋」统统挡在门外。嗯,这活儿不容易。
3.1 仪表放大器选型:AD8232 vs ADS1292R
仪表放大器(INA)是整个模拟前端的灵魂。我见过不少新手直接拿通用运放搭差分放大,结果噪声大得没法看。记住,心电信号太微弱了,必须用专用的仪表放大器。
目前市面上主流的两款芯片:AD8232和ADS1292R。我两个都用过,说说我的真实感受。
| 参数 | AD8232 | ADS1292R |
|---|---|---|
| 集成度 | 中等(含INA+运放+右腿驱动) | 高(含INA+ADC+右腿驱动+呼吸阻抗) |
| 增益 | 固定100倍(可通过外部电阻调整) | 可编程(1,2,3,4,6,8,12倍) |
| CMRR(典型值) | 86dB(G=100时) | 105dB(G=6时) |
| 噪声 | 0.9μVpp(0.5-100Hz) | 4μVpp(0.5-150Hz) |
| ADC | 外部需要 | 内置24位Δ-Σ ADC |
| 功耗 | 约700μA | 约335μA |
| 典型应用 | 单导联、便携式 | 多导联、医疗级 |
AD8232 是我早期做单导联手环时用的。它最大的优点是外围电路简单,一个芯片搞定大部分功能。但有个坑——它的CMRR在50Hz附近会下降。我在项目中遇到过,工频干扰死活滤不干净,后来发现是PCB布局时反馈路径太长,寄生电容把共模信号耦合进来了。
ADS1292R 则是后来做多导联监护仪时用的。这芯片集成度更高,内置的24位ADC省去了外部ADC的麻烦。它的CMRR表现更好,而且有呼吸阻抗测量功能。不过,它的配置寄存器特别多,我第一次用的时候光看数据手册就花了两天。
我的选型建议:
- 做消费级单导联产品(比如手环、贴片),选AD8232,成本低、开发快
- 做医疗级多导联产品(比如监护仪、Holter),选ADS1292R,性能更可靠
- 如果对功耗敏感,ADS1292R的待机模式更省电
3.2 右腿驱动电路:原理与设计
右腿驱动(RLD)是心电设计里一个非常巧妙的技术。你想想看,人体本身就是一个巨大的天线,周围全是50Hz的工频电场。如果不处理,这些共模干扰会直接叠加在心电信号上。
右腿驱动的原理很简单:把共模电压反相放大后,再反馈到人体右腿。这样做的效果是,共模电压被「抵消」了,就像主动降噪耳机一样。
具体电路是这样的:
// 右腿驱动电路核心公式
V_RLD = -A * (V_IN+ + V_IN-)/2
其中:
A = R2/R1(反相放大倍数)
V_IN+ 和 V_IN- 是左右臂输入信号
实际设计时,我一般这样搭:
- 取共模电压:用两个10kΩ电阻从INA的输出端取平均电压
- 反相放大:用一个运放(比如OPA2333)做反相放大,增益设在10-50倍
- 限流保护:在输出到右腿电极的路径上串一个100kΩ-1MΩ的电阻,防止电流过大
注意! 右腿驱动不是增益越大越好。我曾经把增益设到100倍,结果电路自激振荡了,示波器上全是高频毛刺。后来查资料才知道,人体和电极之间存在RC网络,增益太高会引入相位裕度问题。一般10-30倍就够用了。
另外,右腿驱动还有一个「副作用」——它会影响系统的共模输入范围。如果共模电压太大,运放会饱和,反而失去作用。所以,我习惯在RLD输出端加一个二极管钳位电路,把电压限制在电源轨内。
3.3 共模抑制比(CMRR)优化
CMRR是衡量差分放大器抑制共模信号能力的指标。说白了,就是看你的电路能不能把「有用的差分信号」和「没用的共模噪声」分开。
公式很简单:
CMRR = 20 * log10(Ad / Ac)
Ad = 差模增益
Ac = 共模增益
理想情况下,CMRR越大越好。但实际设计中,有几个因素会严重拉低CMRR:
- 电阻不匹配:差分放大器的增益由电阻比值决定,哪怕1%的误差,CMRR也会掉到60dB以下
- 寄生电容:PCB走线之间的寄生电容会形成高频通路,让共模信号「绕」过去
- 电极阻抗不平衡:左右臂电极的接触阻抗不同,共模信号会转化为差模信号
我在项目中遇到过最头疼的问题,就是电极阻抗不平衡。有一次做临床试验,同一个电路,在实验室测CMRR有100dB,到了医院就只剩70dB了。后来发现是医院的电极片质量参差不齐,有的导电胶干了,阻抗差了10倍。
我的CMRR优化三板斧:
- 电阻选0.1%精度:别省这个钱,1%和0.1%的CMRR差距能有20dB
- PCB布局对称:差分走线等长等宽,远离时钟线和电源线
- 加屏蔽驱动:用屏蔽层把输入信号包起来,驱动到共模电压,减少寄生电容影响
还有一个容易被忽略的点——电源抑制比(PSRR)。电源纹波会通过运放的电源引脚耦合到输出端,等效于降低了CMRR。所以,模拟前端的电源一定要用LDO单独供电,别和数字电路共用。
嗯,说到这我想起一个案例。有次做EMC测试,50Hz工频干扰怎么也过不了。我排查了三天,最后发现是电源地线走了一个大环路,把共模干扰耦合进来了。把地线改成星形接地后,问题立刻解决。所以,地线设计比你想的重要得多。
3.4 实战小贴士
最后,分享几个我踩过的坑:
- 输入保护:心电电极可能接触到除颤电压(几千伏),一定要在输入端加TVS管和限流电阻
- 直流偏置:电极极化电压可能有±300mV,仪表放大器必须能处理这个直流偏置,否则会饱和
- 滤波顺序:先做高通(0.5Hz)滤除基线漂移,再做低通(40-100Hz)滤除肌电噪声,顺序不能反
好了,这一章的内容就到这。下一章我们会深入讨论滤波器的设计和PCB布局,到时候再聊。
公众号:蓝海资料掘金营,微信deep3321