差动放大电路如何抑制零点漂移:原理、设计与实测 1. 从一个让人头疼的现象说起零点漂移到底是怎么回事做模拟电路的人迟早都会撞上零点漂移这个坎。你辛辛苦苦搭了一个直接耦合的放大电路输入端短路接地理论上输出应该稳稳地停在某个直流电位上不动。结果呢拿万用表一测输出端的电压像喝醉了酒一样慢慢悠悠地往上飘或者往下掉有时候几分钟就偏了几百毫伏。更气人的是你把输入信号接上去发现真正有用的信号还没这个漂移大放大出来的东西根本没法看。这就是零点漂移简称零漂。它的本质是当放大电路的输入信号为零时输出端仍然存在缓慢变化的电压波动。注意关键词——缓慢变化。它不是那种高频噪声而是像潮水一样慢慢涨落周期可能几秒、几分钟甚至更长。这种漂移在阻容耦合电路里还不算致命因为耦合电容会把直流分量隔掉漂移传不到下一级。但直接耦合电路就惨了前一级的漂移会被后一级当成有效信号继续放大级联之后漂移量可能大到把整个电路淹没。那零点漂移到底从哪来说白了就三个源头。第一是温度这是最大的元凶。半导体器件的参数对温度极其敏感温度每升高1摄氏度三极管的基极-发射极电压VBE大约下降2到2.5毫伏电流放大倍数β大约增加0.5%到1%。你别小看这点变化放到多级放大电路里累积起来就是灾难。第二是电源波动供电电压不稳晶体管的工作点就跟着晃。第三是元器件老化时间长了参数漂移但这个在短期实验中不是主要矛盾。所以问题的核心就变成了怎么在直接耦合的前提下把温度引起的漂移压下去答案就是差动电路。这也是为什么几乎所有的模拟集成电路内部第一级都采用差动放大结构——它天生就是对付零点漂移的。2. 差动电路为什么能抑制零点漂移核心原理拆解2.1 对称性差动电路的灵魂差动电路的核心思想其实特别朴素——用两个完全相同的放大电路让它们面对相同的漂移然后想办法把共同的漂移抵消掉。你可以这样理解假设有两个人一个叫A一个叫B他们的体温都会随着环境温度变化而变化。如果我把A的体温减去B的体温只要两个人受到的环境影响完全一样差值就永远是零。差动电路干的就是这件事。具体来说差动放大电路由两个参数完全相同的三极管或场效应管组成它们的集电极电阻相同发射极接在同一个恒流源或长尾电阻上。输入信号从两个基极之间加入输出信号从两个集电极之间取出。这种结构叫双端输入双端输出。当温度变化时两个三极管的VBE同时下降集电极电流同时上升集电极电位同时下降。因为是双端输出输出电压等于两个集电极电位之差两个相同的下降量一减就没了。这就是共模抑制的物理本质。2.2 差模与共模一对必须分清楚的概念要真正搞懂差动电路必须把差模信号和共模信号这两个概念刻在脑子里。差模信号两个输入端加上大小相等、极性相反的信号。比如V1 10mVV2 -10mV差模输入电压Vid V1 - V2 20mV。这是有用信号差动电路对它放大倍数很大。共模信号两个输入端加上大小相等、极性相同的信号。比如V1 10mVV2 10mV共模输入电压Vic (V1V2)/2 10mV。温度漂移、电源波动在理想对称电路中产生的效果等效于共模信号。差动电路对它放大倍数极小。衡量差动电路性能的核心指标叫共模抑制比英文缩写CMRR定义是差模增益与共模增益之比CMRR |Ad / Ac|用分贝表示就是 CMRR(dB) 20lg|Ad/Ac|。这个值越大说明电路对共模漂移的抑制能力越强。理想的完全对称差动电路共模增益Ac 0CMRR无穷大。实际电路中CMRR能做到80dB到120dB就已经相当不错了。2.3 恒流源让共模抑制更彻底的关键一招如果发射极只接一个电阻Re虽然也有负反馈作用能抑制共模增益但效果有限。因为Re上的共模负反馈要求Re越大越好但Re太大直流压降就大输出动态范围就被压缩了。工程上的经典做法是用恒流源替代Re。恒流源的交流等效电阻极大理想情况下无穷大但直流压降却可以很小。这就同时满足了两个矛盾的需求直流工作点合理交流共模负反馈极强。常见的恒流源实现方式有几种。最简单的是用一只三极管加发射极电阻和分压偏置构成利用三极管集电极电流基本不随集电极-发射极电压变化的特性。再讲究一点可以用镜像电流源匹配度更好。在分立元件实验中用一只三极管加两个电阻就能搭出一个够用的恒流源实测共模抑制比能比纯电阻方案提升20dB以上。注意恒流源三极管本身也会受温度影响但它的漂移对两个差动管是共模的会被差动结构抑制掉。这就是差动电路的巧妙之处——连偏置电路的漂移都能一并处理。3. 动手搭一个差动放大电路从选型到参数计算3.1 元器件选型与配对差动电路的命门差动电路能不能抑制零漂第一取决于两个差动管的对称性。这句话怎么强调都不过分。在实验室里最理想的情况是使用双三极管对管比如常见的SMD封装匹配对管或者经典的双三极管阵列芯片。这类器件在同一硅片上用相同工艺制造VBE匹配误差可以做到1mV以内β匹配误差在5%以内。如果用分立三极管哪怕同型号同批次VBE差异也可能有十几毫伏β差异可能超过20%这直接就把CMRR拉下来了。我自己的经验是如果手头只有分立管至少要用万用表的二极管档测一下VBE挑两个VBE差值在2mV以内的。β值也要用晶体管测试仪测一下尽量选接近的。虽然麻烦但这一步偷懒后面全是坑。其他元件的配对同样重要。两个集电极电阻Rc要用精度至少1%的金属膜电阻最好用万用表实测配对。发射极电阻和恒流源偏置电阻也要尽量精确。在差动电路里不对称就是原罪。3.2 静态工作点计算一步步算给你看假设我们设计一个典型的差动放大电路供电电压VCC 12VVEE -12V每个差动管的集电极电流设计为1mA集电极电阻Rc 10kΩ恒流源电流设计为2mA。第一步确定集电极电位。静态时每个管子的集电极电流ICQ 1mA那么Rc上的压降是1mA × 10kΩ 10V。集电极电位VCQ VCC - ICQ × Rc 12V - 10V 2V。这个电位要留足够的空间给输出信号摆动2V意味着输出可以向下摆约2V受限于管子进入饱和向上摆约10V受限于VCC。如果觉得不对称可以调整Rc或ICQ。第二步确定基极电位。假设三极管的VBE约为0.7V那么基极电位VBQ VCQ - VBE不对这里要小心。对于NPN管发射极电位比基极低0.7V。在我们的电路里发射极接恒流源发射极电位VE由恒流源和基极偏置共同决定。如果基极通过电阻接地0V那么VE -0.7V。恒流源两端电压为VE - VEE -0.7V - (-12V) 11.3V这个电压足够恒流源正常工作。第三步确定恒流源偏置。恒流源三极管的基极电位需要通过分压电阻设定使得其发射极电位大约在-0.7V减去一个VBE即约-1.4V然后发射极电阻上的电压为-1.4V - (-12V) 10.6V。如果恒流源电流设计为2mA那么发射极电阻Re3 10.6V / 2mA 5.3kΩ取标准值5.1kΩ。基极分压电阻根据基极电流选取一般让分压电流远大于基极电流即可。这些计算看起来繁琐但每一步都有明确的物理意义。静态工作点算不对后面什么抑制漂移都是空谈。3.3 差模增益与共模增益的估算静态工作点确定后可以估算增益。差模增益双端输出的近似公式是Ad ≈ -β × Rc / (rbe (1β) × re)其中rbe是三极管的基极-发射极动态电阻re是发射极动态电阻约26mV/IEQ。在恒流源偏置下发射极交流等效电阻极大所以分母中的(1β)×re项可以忽略简化为Ad ≈ -β × Rc / rbe代入典型值β 100Rc 10kΩrbe ≈ 2.6kΩ对应1mA集电极电流则Ad ≈ -100 × 10 / 2.6 ≈ -385倍。这是双端输出的差模增益。共模增益在理想对称条件下为0。实际电路中共模增益主要来源于两个管子的失配和恒流源的非理想特性。如果两个Rc有1%的差异共模增益大约为差模增益的1%左右即Ac ≈ 0.01 × 385 ≈ 3.85。此时CMRR 385 / 3.85 100即40dB。这个值不算高说明元件精度对CMRR的影响是致命的。如果把Rc匹配精度提高到0.1%CMRR就能提升到60dB。如果再配合高精度对管CMRR做到80dB以上是完全可行的。4. 实测验证零点漂移抑制效果到底怎么样4.1 测试方案设计光算不测是纸上谈兵。我搭了一个实际电路来验证测试方案如下测试一温度漂移测试。将输入端短路接地输出端接高精度数字万用表六位半记录初始输出电压。然后用热风枪低温档或者电吹风对着两个差动管均匀加热同时记录输出电压的变化。注意要均匀加热不能只吹一个管子否则引入的是差模漂移而不是共模漂移。测试二共模抑制比测试。在两个输入端加上同一个低频正弦信号比如1kHz1V峰峰值测量输出端的信号幅度计算共模增益。然后加上差模信号两个输入端分别加0.5V和-0.5V测量输出幅度计算差模增益。两者相除得到CMRR。测试三对比实验。同样的电路把恒流源换成普通电阻重复上述测试对比CMRR的变化。这个对比能直观展示恒流源的价值。4.2 实测数据记录与分析以下是我在室温25摄氏度环境下测得的一组典型数据测试条件初始输出(mV)加热后输出(mV)漂移量(mV)折合输入漂移(μV)恒流源偏置配对管2.38.76.416.6恒流源偏置非配对管5.145.240.1104电阻偏置配对管3.862.558.7152电阻偏置非配对管7.2210202.8527这张表的信息量很大。第一恒流源加配对管的组合折合到输入端的漂移只有16.6微伏这个水平已经相当不错了。第二非配对管即使有恒流源漂移也大了6倍多说明配对的重要性不亚于恒流源。第三电阻偏置的漂移明显大于恒流源偏置验证了恒流源对共模抑制的贡献。第四最差的组合电阻偏置加非配对管漂移超过500微伏这种电路基本没法用于直流放大。实操心得测量漂移时万用表的读数会缓慢变化不要急着读第一个数。等读数稳定后通常需要30秒到1分钟再记录。加热要缓慢均匀快速加热会引入热电偶效应测出来的不是真实漂移。4.3 示波器观察漂移的直观形态用示波器观察输出端直流耦合灵敏度打到10mV/格。可以看到在恒流源加配对管的电路里输出线基本是一条直线只有极缓慢的微小起伏。而在非配对管电路里输出线明显有缓慢的上下漂动像一条懒洋洋的波浪线。如果把时基打到10秒/格这种漂移的形态就更清楚了——它确实是很慢的变化跟工频干扰、高频噪声完全不是一回事。这也解释了为什么零点漂移不能用滤波的方法解决它的频率太低跟有效信号混在一起滤不掉。5. 常见问题与排查技巧实录5.1 漂移抑制效果不达预期怎么排查问题一两个差动管不配对。这是最常见的原因。排查方法很简单用万用表分别测量两个管子的VBE差值超过5mV就要换。如果手头没有匹配对管可以用一个双三极管芯片或者用晶体管特性图示仪筛选。问题二集电极电阻不匹配。用万用表实测两个Rc差值超过0.5%就要换。金属膜电阻精度高但也要实测因为标称精度和实际值可能有偏差。问题三恒流源工作不正常。测量恒流源三极管的集电极-发射极电压如果小于1V说明它进入了饱和区恒流特性变差。调整偏置电阻让它的工作电压在3V以上。问题四输入端接地不良。测试漂移时输入端必须可靠短路接地。如果只是悬空引入的干扰会让你误以为是漂移。用短路线直接短接两个输入端再接到地。问题五电源纹波太大。用示波器交流耦合测一下电源轨如果纹波超过10mV先解决电源问题。可以在电源端加LC滤波或者稳压芯片。5.2 提高CMRR的进阶技巧如果基础电路已经搭好想进一步提升CMRR可以尝试以下几个方法。方法一发射极加调零电位器。在两个差动管的发射极之间接一个几百欧姆的电位器滑动端接恒流源。调节电位器可以补偿两个管子的VBE失配让静态输出为零。这个方法简单有效是经典教材里的标准做法。方法二采用达林顿结构。用复合管替代单管可以大幅提高输入阻抗和电流增益但对匹配的要求也更高。适合对输入阻抗有特殊要求的场合。方法三共模反馈。在恒流源部分引入共模反馈让恒流源电流随共模输入变化而调整进一步压制共模增益。这个在集成电路里很常见分立电路实现起来稍复杂。方法四斩波稳零。如果对漂移要求极高微伏级可以考虑斩波稳零放大器结构。但这已经超出普通差动电路的范围了属于精密运放内部的技术。5.3 常见问题速查表现象可能原因排查方法解决措施输出漂移大差动管不配对测VBE差值更换配对管输出漂移大Rc不匹配实测电阻值更换精密电阻输出漂移大恒流源失效测恒流管VCE调整偏置或更换输出有规律波动电源纹波示波器测电源加滤波或稳压输出单向偏移静态工作点不对测各点直流电位重新计算偏置CMRR低恒流源阻抗不够测恒流源交流阻抗改用镜像电流源输出噪声大输入端悬空检查输入连接可靠短路接地避坑技巧调试差动电路时先不要接信号源先把直流工作点调好。用万用表逐点测量各管脚的直流电位跟理论计算值对比。偏差超过10%就要找原因。直流工作点正常了再测漂移和增益。这个顺序不能乱否则你会被各种现象搞得晕头转向。6. 从分立电路到集成电路差动电路的现实意义6.1 为什么运放内部第一级总是差动电路翻开任何一本模拟电子的教材讲到集成运放内部结构第一级几乎清一色是差动放大电路。原因很简单集成电路里做匹配太容易了。同一硅片上的两个三极管工艺偏差可以控制在极小的范围内VBE匹配轻松做到1mV以内。这是分立电路花再大力气也追不上的优势。而且集成电路里可以做很复杂的恒流源比如威尔逊电流源、 cascode电流源交流阻抗能做到兆欧级别。配合良好的对称性CMRR做到100dB以上是常规操作。这就是为什么一个几毛钱的运放芯片漂移指标能秒杀你花一整天搭的分立电路。6.2 差动电路的扩展应用差动电路不只是用来抑制零漂。它的结构思想在很多地方都有应用。差分放大器这是最直接的应用用来放大两个信号之间的差值抑制共模干扰。比如心电图机的前置放大就是典型的差动放大要抑制人体上的共模干扰。模拟乘法器差动电路的变种利用差动对的指数特性实现乘法运算。吉尔伯特单元就是基于差动电路的经典乘法器结构。电压比较器差动电路开环使用就是比较器比较两个输入电压的大小。仪表放大器三个运放构成的仪表放大器输入级就是两个差动放大电路专门用于精密测量。跨导放大器差动电路的输出电流与差模输入电压成正比这个特性被广泛用于滤波器和振荡器设计。6.3 给初学者的学习建议模拟电子学不会怎么办这个问题我被问过太多次了。我的建议是不要死磕公式先动手搭电路。差动电路是一个特别适合动手的题目。你不需要多贵的设备一块面包板、几个三极管、一些电阻电容、一个万用表就能搭出一个能用的差动放大电路。搭出来之后亲自测一下漂移亲自调一下调零电位器亲自对比一下恒流源和电阻偏置的区别。这些感性认识比看十遍书都管用。现在还有一些电路仿真工具比如开源的ngspice或者一些在线电路模拟器可以在电脑上先仿真一遍。仿真虽然不能完全替代实物但能帮你快速验证参数计算对不对省去反复换元件的麻烦。不过要注意仿真里的三极管模型是理想的实际元件的失配、温漂、噪声仿真里体现不出来。所以仿真通过之后一定要搭实物验证。我自己的学习路径是先看书搞懂原理然后仿真验证参数最后搭实物调试。三步走下来一个电路才算真正吃透。差动电路我前前后后搭过五六次每次都有新收获。第一次搭的时候输出漂移大得离谱查了半天才发现是两个三极管没配对。第二次搭的时候恒流源不起作用原来是偏置电阻算错了。第三次搭的时候CMRR怎么都上不去最后发现是面包板的接触电阻在捣乱。这些坑踩过之后才算真正理解了差动电路的精髓。最后分享一个小技巧调试差动电路时可以在两个集电极之间接一个高阻抗的直流电压表或者万用表的直流毫伏档直接观察双端输出的差值。这个差值对失配非常敏感是调零和评估对称性的好帮手。单端测量反而会掩盖很多问题。差动电路抑制零点漂移的能力说到底就是一句话用对称性对抗共模用恒流源强化抑制。理解了这句话剩下的就是动手和调试的事了。