资讯动态

差分放大电路原理与传感器前端设计:从温漂抑制到失调调零

发布时间:2026/10/6 12:42:27 来源:尧图企业网站定制
做传感器信号调理时我最怕的就是“早上调试正常下午开机又不对”这类问题。之前做一款称重变送器前级用单管共射放大室温下标定好零位两小时后输出愣是飘了十几毫伏。示波器探头搭上去波形倒是稳的就是直流电平在慢慢跑。换到差分放大电路之后这个现象基本消失了。差分放大电路的精髓可以浓缩成一句话用完全对称的两个半电路把环境变化变成“共模”再把共模信号一脚踢开只保留两个输入端之间的差值——也就是真正有用的差分信号。本文从一个实际的分立元件差分放大电路入手从射极耦合差分对的静态工作点计算到长尾电阻换成恒流源、集电极负载换成有源负载的演进逻辑再到失调电压Vos、偏置电流和温度漂移的完整计算最后给出一整套传感器前端的设计与调零方法。适合正在调模拟前端、做仪表放大器或者被直流偏置折腾得头疼的工程师参考。1. 先看本质差分电路凭什么能压住温漂1.1 单管放大器的“六十分及格”困局单管共射放大电路看着简单但放到精密测量场景里很容易翻车。原因是三极管的集电极电流对VBE是指数关系而VBE本身又对温度极其敏感。典型小信号三极管的VBE温度系数约为-2mV/°C。换句话说温度从25°C升到60°CVBE要偏掉约70mV。在没有任何负反馈的电路里偏置点会剧烈移动即使加了发射极负反馈电阻增益和静态点的稳定性改善不少但残余漂移依然存在。我实测过一个很常见的2N3904单管放大电路增益50倍输入接地从冷机到稳定工作半小时输出从4.8V慢慢漂到5.1V。折算到输入端就是6mV的等效漂移。这个数字放在电池电压监测、温度采集这类对直流精度有要求的场景几乎没法接受。更要命的是这种漂移是缓变信号和高通滤波器、低通滤波器都说不清因为它和你想测的直流信号混在一起根本没法定量分离。当然你可以做硬件调零、软件校准甚至恒温。但这些手段都只是“事后补偿”没有解决电路本身缺乏抗温漂能力这个根源问题。真正从结构上解决问题的就是差分放大电路。1.2 对称电路如何把温漂变成共模噪声差分电路的基本思路很有“镜像”味道既然单个管子会漂那我就复制一套一模一样的电路让温度变化同时作用到两套电路上。如果两套电路特性完全一致那么它们的输出都在漂但两者之差保持不变。换一个角度理解温度变化是作用在两个输入端的“共同扰动”它属于共模信号而差分放大电路天生就要压制共模信号只放大两个输入端之间的差值。这就解释了为什么差分对管通常要做在同一颗芯片上或者至少从同一批次中挑选并紧贴安装。分立元件搭差分电路不是不行而是匹配度远不如集成差分对。早期做仪表的工程师都是拿着万用表一只一只挑管子挑VBE和β尽量一致的两只配对使用。我做过几次配对实验同一袋三极管里随手拿两只VBE能差2~5mVβ差20%~30%而集成差分对或运放内部的激光调整工艺可以把这些参数做得很干净。所以你在参考电路里看到分立差分电路时心里要有数它的优势是结构直观、成本低、适合理解原理它的短板就是失调和漂移都需要额外的调零和校准手段来补偿。1.3 差模信号与共模信号一对称量精度的标尺要算清楚差分电路的优劣必须先给信号分类。两个输入端分别记为Vi1和Vi2差模输入电压定义为Vid Vi1 - Vi2共模输入电压定义为Vic (Vi1 Vi2) / 2任何一对输入信号都可以拆成这两个量的组合。理想情况下放大器输出只应该是差模信号的函数Vout Ad × Vid Ac × Vic其中Ad是差模增益Ac是共模增益。我们当然希望Ad足够大Ac足够小。工程上用共模抑制比CMRR来衡量这个能力CMRR Ad / Ac或者用分贝表示20 × log(CMRR)。实际设计差分放大电路时每一条负反馈、每一个对称性措施本质都在做同一件事提高CMRR让有用的差模信号获得增益让有害的共模成分被压到最低。2. 射极耦合差分对手算一把静态与动态参数2.1 基本电路结构与静态工作点手算射极耦合差分对是最基础的差分放大器结构。Q1、Q2两个三极管的发射极接在一起通过一个电阻RT接到负电源-VEE两个集电极各接一个负载电阻Rc到正电源VCC输入信号从两个基极送入输出可以取单端一个集电极对地或双端两个集电极之间。静态分析的第一步是确定尾电流。假设基极静态电位为0V发射极电位为-VBE约-0.7V那么RT上的电压就是VR -0.7V - (-VEE) VEE - 0.7V尾电流I0 VR / RT (VEE - 0.7V) / RT如果Q1、Q2完全对称尾电流平分给两个管子每管发射极电流IE≈I0/2。集电极电压接着就能算VC VCC - IC × Rc举一个具体数字VCC12VVEE-12VRT22kΩRc10kΩ。那么I0(12-0.7)/22k≈0.514mA每管电流约0.257mA。IC约等于IE取0.25mA集电极电压VC12-0.25m×10k9.5V。这个电压离电源轨很远说明电路有足够的动态范围。关键检查点是每管的VCE是否足够大确保管子工作在放大区而不是饱和区。差分电路的静态工作点设计说白了就是围绕“尾电流多少、集电极电阻多大、集电极电压还剩多少”这三个问题展开的。2.2 差模增益为什么单端输出要打个对折分析差模增益时有一个非常重要的简化结论对差模信号而言两个发射极的公共节点是“交流地”。原因是当Vi1上升、Vi2下降时Q1电流增加Q2电流减小。理想情况下两管电流变化量相等、方向相反流过RT的总电流完全不变所以公共发射极节点的电位不变化。既然公共点电位不变RT上就不会产生交流压降RT被“短路”掉了两个管子看起来就像两个独立的共射放大器在各自工作。单个共射放大器的增益是-gm×Rc其中gm是小信号跨导gm IC / VTVT在室温下约26mV。如果IC0.257mAgm≈9.9mS单管增益约-10k×9.9m≈-99倍。但注意这是理想单管在输入完整驱动时的增益。在差分结构中如果只从一个集电极对地取输出那么另一只管子电流变化并没有被利用。综合计算下来单端输出时差模增益只有完整增益的一半Ad_single -gm × Rc / 2所以前面这个例子中单端增益大约-49.5倍。如果两个集电极之间的电压差作为输出那就是双端输出Ad_double -gm × Rc大约-99倍。许多初学者在搭电路时习惯只测一个集电极对地的电压然后发现增益比书上写的少了一半就是这个原因。不是说电路错了而是输出方式不同。2.3 长尾电阻与共模增益反馈在这里翻云覆雨共模输入时情况完全反过来。两个输入端同时升高一个ΔVQ1、Q2的VBE同时增加两管电流同方向增加流过RT的总电流增大。尾电流变大发射极公共点电位上升这个上升又会反过来减小两管的VBE形成很强的电流串联负反馈。所以共模输入引起的集电极电流变化被压得极小。共模增益可以近似写为Ac_single ≈ -Rc / (2 × RT)注意这里出现了系数2。原因是发射极公共节点对每个管子等效的负反馈电阻不是RT而是2×RT。因为公共节点的电压变化由两管电流之和决定等效到单管时要把尾电阻“放大”一倍。继续用前文的参数Rc10kΩRT22kΩAc≈-10k/(2×22k)≈-0.227倍。CMRRAd_single/Ac≈49.5/0.227≈218倍折算约46.8dB。这个水平在简单的分立电路里还算能看但显然不够。长尾电阻RT越大共模反馈越强CMRR越高这是设计上最直接的杠杆。但RT不可能无限增大它受到电源电压和尾电流的硬约束RT上的直流压降等于I0×RT如果RT取100kΩ、I01mA压降就是100V在±12V供电下根本无法实现。这就是长尾电阻的物理极限也是我们下一步要用恒流源替代它的根本原因。3. 恒流源尾巴与有源负载性能跃升的两级台阶3.1 长尾电阻的物理极限不是不想大是电源电压不答应长尾电阻的取值困境可以总结成一组互相矛盾的需求。从交流角度看RT要尽量大这样共模负反馈强CMRR高从直流角度看RT又不能太大否则发射极静态电位太低三极管没有足够的VCE空间放大器提前饱和。很多教材只说“增大长尾电阻可以提升CMRR”但它没说增大到一定程度后电路已经没法正常工作了。实际我在调试中体会很深你要是非要插一个100kΩ的长尾电阻把尾电流设定到1mA那发射极电位直接奔着-100V去了在±12V电源下电路根本不存在正常静态点。就算用100k和极小的尾电流比如0.05mA虽然压降只有5V但管子工作电流太小gm很低放大能力和带负载能力又不行了。所以长尾电阻方案的上限就摆在那里大约几十kΩ级别CMRR顶多做到50dB上下。3.2 用三极管恒流源替代长尾电阻直流压降小、交流阻抗大恒流源的出现本质上是把“长尾电阻”的直流特性和交流特性彻底解耦。三极管恒流源在直流状态下只是提供一个固定电流压降可以做到只有两三伏但在交流等效模型中它等效为一个动态输出阻抗ro这个ro可以达到几十kΩ甚至几百kΩ。一个最简单的三极管恒流源是这样搭的一只NPN管Q3基极通过分压电阻或稳压管固定在某个电位发射极接一个电阻RE到负电源。忽略基极电流时发射极电流约为IE ≈ (VB - VBE) / RE如果VB0VVBE0.7VVEE-12VRE11.3kΩ那么IE≈1mA。这个电流就是差分对的“尾巴电流”。Q3工作在放大区时集电极电流几乎不随VCE变化其动态输出阻抗ro ≈ (VA VCE) / ICVA是Early电压小功率三极管一般在50V~100V之间。取VA100VIC1mA即便VCE只有5Vro也有约105kΩ。这个数值比我们之前用的22kΩ长尾电阻高了一个量级。用恒流源替代长尾电阻后共模增益被进一步压低CMRR轻轻松松可以比电阻方案高出20dB以上。代价是要多一只三极管和几个偏置电阻但相比性能提升这点成本完全可以接受。3.3 有源负载把单端输出变成“准双端输出”解决了尾部恒流源的问题接下来就轮到集电极负载。普通电阻负载Rc有一个问题单端输出时差模增益只有-gm×Rc/2白白损失了一半。双端输出虽然增益翻倍但输出信号是悬浮的后级处理电路需要差分接口工程上并不方便。有源负载就是来解决这个矛盾的。基本的思路是用PNP镜像电流源替代两个集电极电阻。镜像电流源由Q3、Q4两只PNP管组成Q3的集电极和基极短接流过一个参考电流Q4的基极和Q3的基极相连因为两管VBE相同Q4的集电极电流近似等于参考电流好像把Q3的电流“镜像”到了Q4。当差分对收到差模输入时Q1电流增大、Q2电流减小。Q1增大的电流流过Q3被镜像到Q4Q4从输出节点抽走更多电流。这个电流变化方向和Q2电流减小的效果正好叠加输出节点的总电流变化等于两侧变化量之和。于是单端输出的增益从“半个电路干活”变成了“两个半电路一起干活”等效于实现了双端输出效果。增益公式变为Ad ≈ gm × (ro2 ∥ ro4)ro2是Q2的输出电阻ro4是Q4的输出电阻二者并联。如果gm20mSro2ro4100kΩ并联后为50kΩ增益约1000倍。这比电阻负载方案高出十几倍甚至几十倍。但天下没有免费的午餐。有源负载的输出节点没有电阻钳位直流电位很不稳定很容易轨到轨饱和。所以有源负载差分对一般必须配合负反馈网络来稳定直流工作点极少直接开环使用。记住了有源负载解决的是增益问题代价是直流稳定性的额外设计负担。4. 偏移计算Vos、IB和温漂到底怎么换算成误差4.1 输出失调电压的三大来源“偏移”这个词说到底是“不对称”的数学表现。两个三极管理论上完全一致但实际元器件总有差异这些差异最终会折算成一个等效输入失调电压Vos。简单理解如果让两个输入端都接地理想差分放大器输出应该为0但实际输出不等于0把这个输出值除以增益折算回输入端就是Vos。Vos的主要来源有三个。第一个是集电极负载电阻不匹配。如果两边Rc相差ΔRc那么静态时两管集电极电压就不一样折算到输入的失调约Vos_r ≈ 2 × VT × (ΔRc / Rc)VT是26mV如果ΔRc/Rc0.1%Vos≈52µV但如果你用的是1%精度电阻就会产生大约520µV的失调。第二个是两只三极管VBE不匹配这个直接就是输入失调的一部分分立元件随意配对的话ΔVBE在1~5mV级别比电阻失配造成的误差更明显。第三个是β不匹配导致两只管子的基极电流不同进而由信号源内阻转成额外失调。综合来看一个随便搭的分立差分电路Vos大概在1~3mV。如果后级增益是100倍输出端就会出现100~300mV的直流偏置这在精密直流放大中是完全不能接受的。4.2 偏置电流与源电阻经常被忽略的隐形误差处理BJT差分电路时偏置电流是比Vos更隐蔽的坑。BJT的基极必须有电流流入这个电流在信号源内阻上会产生压降。拿前面的设计数据来说每管集电极电流IC0.5mA如果三极管β200基极电流IB2.5µA。假设信号源内阻是10kΩ那么一个基极上的偏流压降就是25mV。这个数值比Vos还大一个量级。好在偏差流压降是共模性质的。只要两个输入端的源阻抗相等两个基极电流在源阻抗上产生的压降就近似相等作为共模输入被差分放大器抑制掉了。但源阻抗总有差异真正造成误差的是两只管子基极电流之差也就是失调电流IosIos IB1 - IB2Ios通常为IB的10%~20%左右。若Ios0.3µA两个输入源阻抗之差为1kΩ产生的输入误差电压为0.3mV。这个误差和Vos是同类量级。所以处理BJT差分电路时一个基本准则是两个输入端的直流源阻抗必须尽量对称甚至要人为地在一端串联补偿电阻把阻抗差压到最小。4.3 一个10mV满量程通道的误差预算说一堆原理不如算一笔账。假设我们要放大一个±10mV的传感器信号后级输出要求±1V因此总增益100倍。使用普通分立差分对参数估算误差源典型数值等效输入误差占满量程比例输入失调电压Vos2mV2mV20%失调电流Ios × 源阻抗差0.3µA×1kΩ0.3mV0.3mV3%温漂5µV/°C × ΔT50°C0.25mV0.25mV2.5%增益误差电阻精度0.5%0.5%0.05mV0.5%从表格能清楚看到占绝对主导的是Vos它直接吃掉满量程的20%。如果不加调零和校准这个系统根本无法工作。所以分立差分电路的实际工程定位很清楚要么你后级加数字校准要么你在电路上加模拟调零。如果对精度和稳定性要求极高那最好还是上集成仪表放大器或自稳零运放它们内部经过激光修调Vos可以做到25µV以内温漂可以做到0.05µV/°C级别比分立电路好两三个数量级。5. 实战传感器前端的分立差分电路设计与调零5.1 确定指标并选择电路架构现在完整过一遍我的设计流程。项目背景是一个350Ω应变式称重传感器5V激励灵敏度2mV/V满量程输出±10mV。目标是把信号放大到±2V便于后级ADC采集总增益200倍。架构选择很关键。有人可能想一级差分放大直接干到200倍但我建议不要这样。一级增益太高直流偏置、噪声、温漂全被同时放大调试时很难分清哪部分是信号哪部分是故障。我选的是两级方案第一级用分立差分对做增益约49倍的前置放大主要完成差模放大和共模抑制第二级用集成运放做约4倍放大顺带把输出电平调整到目标范围。这样划分的原因很实际分立差分对负责“对付共模”集成运放负责“保证精度”。两级之间可以用电容耦合也可以直耦直流放大时用直耦但必须把前级的Vos先调掉否则会被后级继续放大。5.2 偏置与增益参数的完整手算电源取±12V。第一级电路参数如下尾电流I01mA由Q5恒流源提供每管静态电流0.5mA。Q5基极分压用10kΩ/10kΩ分压到0V则VB0V发射极电阻RE(12-0.7)/1mA≈11.3kΩ取标准值11kΩ或11.3kΩ。集电极负载电阻Rc5.1kΩ静态集电极电压VC12-0.5m×5.1k9.45V。跨导gm0.5mA/26mV≈19.2mS。单端输出差模增益Ad0.5×gm×Rc0.5×19.2m×5.1k≈49倍。恒流源ro按100kΩ估算共模增益Ac≈Rc/(2×ro)5.1k/(200k)≈0.0255CMRR约65.7dB。第二级用同相放大器。取R11kΩR23.3kΩ增益为G2 1 R2/R1 1 3.3 4.3总增益49×4.3≈210倍。如果要求更精确的200倍可以把R2精确设定到3.04kΩ或在反馈电阻上并联一个微调电阻。传感器信号经过这个链路满量程±10mV变成约±2V。5.3 LTspice仿真验证的几个关键点仿真不是走个过场它能提前暴露很多问题。我习惯按以下顺序验证第一步搭好原理图后先看直流工作点重点检查尾电流是否接近1mA、两管集电极电压是否对称、所有管子是否都在放大区。如果某只管子进入饱和说明偏置电阻取值有问题。第二步做差模测试输入端加一个10mV、1kHz正弦信号测输出幅值除以10mV得到实际增益看是否和目标49倍吻合。如果偏低检查是不是管子模型参数和手算偏差太大。第三步做共模测试把两个输入端短接接同一个1V交流源测输出幅值。根据输出幅值除以1V再乘以增益可以反推共模抑制比。这个实验在实物上同样要做。第四步做温度扫描。LTspice可以设置-20°C到60°C扫描观察输出直流电平的偏移量。如果温漂太大说明两管不配对的问题被放大了这在实物配对选管时尤其需要注意。5.4 实物调试的坑工作点、调零与共模测试实物调试我踩过不少坑这里挑重点说。第一上电前先量一遍电阻。分压电阻、负载电阻、发射极电阻全部实测一遍不要相信引脚色环和标称值。差分级对电阻精度很敏感1%误差的电阻就可能带来几百微伏的等效输入失调对10mV满量程系统来说已经不可忽视。第二上电后别急着看输出波形先测各级静态工作点。测Q5发射极电压或Rc上的压降反推尾电流测两个集电极电压二者差值应在几十毫伏以内如果偏离很大大概率是两管不配对或Rc不匹配。第三调零电路放到集电极之间不要在基极调。常见的调零接法是在Q1、Q2两个集电极之间跨接一个10kΩ多圈电位器滑动端通过一只4.7kΩ电阻接到地。转动电位器时两个负载电阻的有效值被不平衡地改变从而给输出端注入一个可调偏移用来抵消Vos带来的输出偏置。我试过在基极串电位器调零虽然也能调但会改变输入阻抗且容易引入噪声不建议用。第四输入端不能悬空。差分对的基极必须有直流偏置通路。如果传感器是电桥输出桥本身提供了直流回路但如果输入端接的是交流耦合信号源必须在基极加高阻值电阻到地否则管子工作点歪掉输出直接饱和。第五共模测试时我会把两个输入端短接接入一个1V直流共模电压观察输出变化。用输出变化量除以总增益得到等效输入误差再和信号量程对比。如果共模抑制效果不达标优先怀疑两管配对度和集电极电阻对称性而不是怀疑恒流源。第六电源纹波问题是所有模拟前端的隐形杀手。恒流源基极的分压电阻如果不加去耦电容电源上的纹波会直接调制尾电流变成共模干扰进入差分对。我的做法是在分压点到地之间加10µF和0.1µF并联电容。地线布局也建议单点接地避免功率地电流产生的压降耦合进模拟小信号回路。第七示波器探头会引入接地环路。测输出端时探头接地夹的短线直接夹在电路地上不要拉一根很长的接地线绕一圈否则50Hz工频干扰会被放大给你看。有条件的话用差分探头测两个集电极之间的电压最理想。最后分享一个我在多次调试后的体会分立差分电路最耗时间的环节不是参数计算而是匹配和调零。设计计算半小时能完成但调零、换管、再调零的循环可能耗掉一整个下午。所以现在做小批量精密产品我一律选集成仪表放大器但做原理验证、做教学演示、或者追求极致成本控制时分立差分对仍是值得掌握的看家本领。搞清楚本文这套从静态工作点到偏差计算的完整链路再去看任何差分结构的运放内部电路和规格书都会顺很多。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑