我要提问
ARTICLE DETAIL

资讯详情

前沿编程新知与开发实战干货的深度解读。

Class D功放设计实战:从半桥全桥选型到LC滤波与保护电路

Class D功放设计实战:从半桥全桥选型到LC滤波与保护电路 1. 从半桥到全桥Class D输出级的拓扑选择逻辑很多人在做到第六篇这个阶段时已经能跑通一个基本的半桥Class D功放了但一旦要往更大功率走就会面临一个绕不开的岔路口到底是继续用半桥结构加高母线电压还是换成全桥BTL结构这个问题我在实际项目中反复权衡过这里把决策逻辑摊开讲。1.1 半桥与全桥的本质差异不在功率而在电压摆幅与滤波成本半桥结构在单电源供电下输出端需要一个大隔直电容通常几百微法到上千微法这个电容不仅体积大、成本高而且它本身会引入低频截止失真。更关键的是半桥的负载两端电压摆幅最大只有母线电压的一半——因为输出中点静态时被偏置在Vbus/2动态范围是±Vbus/2。全桥结构用两个半桥驱动负载两端负载看到的电压摆幅是±Vbus理论上是半桥的四倍功率同样负载阻抗下。但代价是多了两个功率管和一路驱动PCB面积和成本都会上去。我一般这样判断如果母线电压已经推到±60V以上继续用半桥意味着功率管耐压要往200V走这个区间的MOSFET导通电阻和栅极电荷都会明显恶化开关损耗和导通损耗同时上升。这时候换全桥用两组低压管比如80V耐压反而整体效率更高。1.2 死区时间与体二极管续流的实际取舍无论半桥还是全桥死区时间都是绕不开的。死区太短上下管直通瞬间大电流烧管死区太长体二极管续流时间增加反向恢复损耗上升而且输出波形在过零点附近会出现明显失真。实测经验对于IRF6645这类中压MOSFET死区设在25ns到40ns之间比较稳妥。我通常先用示波器看半桥中点的电压波形如果死区期间出现明显的负向尖峰体二极管导通压降说明死区偏长如果看到上下管电流有交叠说明死区不够。注意死区时间不是固定值它随温度和负载电流变化。高温下MOSFET关断变慢死区需要适当加大。我一般会在固件里留一个死区调节寄存器出厂前用热风枪加热到85度再复测一遍。1.3 自举电容的选型与常见失效模式高侧驱动用自举电容是最常见的方案但这里有个坑自举电容的容值不是越大越好。容值太大充电时间长在高占空比或低频工作时可能来不及充满容值太小高侧驱动供电会跌落导致高侧管导通不完全发热严重。我的经验公式是自举电容容值至少是高侧管栅极电荷的10倍。比如IRF6645的Qg约20nC自举电容取220nF到470nF之间。耐压要高于母线电压一般选50V的X7R陶瓷电容。还有一个容易被忽略的点自举二极管的反向恢复时间。如果用普通1N4148反向恢复约4ns在几百kHz开关频率下会产生明显的反向电流尖峰干扰高侧驱动。我一般用BAV21或类似的高速开关二极管反向恢复控制在2ns以内。2. 栅极驱动电路的细节从驱动电流到米勒平台Class D功放的失真和效率很大程度上取决于功率管是否被“干净利落”地驱动。栅极驱动电路看起来简单但里面的门道不少。2.1 驱动电流的计算与驱动器选型驱动电流决定了MOSFET的开关速度。开关越快交越区时间越短开关损耗越小但EMI会变差。这是一个需要折中的参数。计算驱动峰值电流的公式是Ipeak Qg / t_sw其中t_sw是你期望的开关时间。假设Qg20nC希望开关时间20ns那么Ipeak1A。这意味着驱动器需要能提供至少1A的峰值电流。常见的栅极驱动器如IR2110峰值电流2A对于大多数中小功率Class D够用。但如果并联多个MOSFET总Qg翻倍就需要更大的驱动电流。我一般会留50%余量避免驱动器进入线性区导致发热。2.2 栅极电阻的取值与开关波形的关系栅极电阻Rg是调节开关速度最直接的手段。Rg越大开关越慢开关损耗越大但EMI越小Rg越小开关越快但可能引起振铃和过冲。实测中我一般从10Ω开始试用示波器看栅极电压波形。如果看到明显的振铃频率在几十MHz说明Rg偏小或者走线电感偏大如果开关时间超过50ns说明Rg偏大开关损耗会明显上升。提示栅极电阻的功耗也要算。假设栅极驱动电压12VQg20nC开关频率300kHz那么栅极驱动功耗PQg×Vgs×f20nC×12V×300kHz72mW。这个功耗主要消耗在Rg和驱动器内部电阻上Rg选0603封装一般够用但如果驱动电压更高或频率更高需要选0805甚至1206。2.3 米勒平台期间的直通风险与应对米勒平台是MOSFET开关过程中栅极电压暂时停滞的阶段此时漏极电压正在快速变化通过米勒电容Cgd耦合到栅极可能引起误导通。在Class D的半桥结构中如果上管正在关断下管栅极被米勒电容耦合出尖峰就可能造成上下管同时导通瞬间大电流烧管。应对措施有三个一是适当增大关断时的栅极电阻可以用二极管并联Rg实现非对称驱动二是选择Cgd/Cgs比值小的MOSFET三是在栅极和源极之间并联一个10kΩ左右的电阻提供泄放路径。我个人的习惯是在栅极和源极之间并一个10kΩ电阻同时在驱动器输出和栅极之间串一个10Ω电阻再反并一个肖特基二极管如1N5819加速关断。这样开通速度由10Ω决定关断速度由二极管和驱动器共同决定效果比较均衡。3. LC滤波器的设计从截止频率到电感饱和Class D功放的输出LC滤波器决定了最终的频响、失真和EMI性能。很多人随便选一个电感电容就完事结果要么高频衰减不够要么低频失真大要么电感饱和导致效率骤降。3.1 截止频率的确定与负载阻抗的关系LC滤波器的截止频率f_c 1/(2π√(LC))。对于音频应用截止频率一般设在30kHz到50kHz之间。设得太低20kHz附近的相位失真和幅度波动会变大设得太高开关频率的残余纹波会增加。但截止频率不是随便定的它和负载阻抗有关。二阶LC滤波器的Q值决定了截止频率附近的峰化程度。Q R√(C/L)其中R是负载阻抗。如果Q太高截止频率附近会出现增益峰听感上就是某个频段特别突出。我一般把Q值控制在0.7左右巴特沃斯响应这样频响最平坦。对于8Ω负载如果L22μH那么C L/(R²×Q²) 22μH/(64×0.49) ≈ 0.7μF。截止频率f_c 1/(2π√(22μH×0.7μF)) ≈ 40kHz比较合适。3.2 电感磁芯材料的选择与饱和电流核算电感是LC滤波器里最容易出问题的元件。磁芯材料选错要么饱和导致电感量骤降要么损耗大导致发热严重。常见的磁芯材料有铁粉芯、铁氧体和合金粉芯。铁粉芯饱和磁通密度高约1T但损耗大适合大功率但效率要求不极致的场合铁氧体损耗小但饱和磁通密度低约0.3T需要更大的截面积合金粉芯如Sendust综合性能好但价格高。我一般用铁粉芯做输出电感因为Class D的输出电流有直流分量半桥结构尤其明显铁粉芯的软饱和特性更安全。核算饱和电流时要算峰值电流I_peak I_dc ΔI/2其中ΔI是纹波电流一般取额定电流的20%到30%。注意电感的饱和电流必须大于峰值电流而且要考虑高温下的降额。铁粉芯在100度时饱和磁通密度会下降约10%所以选型时至少留30%余量。3.3 电容的ESR与纹波电流承受能力滤波电容看起来简单但ESR和纹波电流承受能力直接影响输出噪声和可靠性。电解电容的ESR大高频滤波效果差陶瓷电容ESR小但容值有限而且有直流偏压效应。我一般用陶瓷电容和电解电容并联陶瓷电容负责高频开关纹波电解电容负责低频能量缓冲。陶瓷电容选X7R材质容值在0.47μF到1μF之间注意直流偏压下的容值衰减——比如标称1μF的0805 X7R电容在50V直流偏压下实际容值可能只有300nF。电解电容的纹波电流要算I_ripple V_ripple/(ESR 1/(2πfC))。如果纹波电流超过电容的额定值电容会发热甚至爆浆。我一般选纹波电流额定值大于实际值2倍的电解电容。4. 保护电路的设计过流、过温与直流保护Class D功放一旦出故障功率管烧毁是分分钟的事。保护电路不是可选项而是必须项。但保护电路也不能太敏感否则正常听音乐时频繁触发用户体验极差。4.1 过流保护的阈值设定与响应时间过流保护的核心是电流采样和比较。采样方式有两种一是用采样电阻串联在母线或输出回路二是用MOSFET的导通电阻Rds(on)作为采样电阻。采样电阻的优点是精度高缺点是引入额外损耗。比如10mΩ采样电阻在10A电流下功耗1W需要选大功率封装。Rds(on)采样没有额外损耗但Rds(on)随温度变化大约0.5%/度精度差。我一般用采样电阻放在母线负极和地之间。阈值设定为额定峰值电流的1.5倍。响应时间要快一般在1μs以内关断。但响应太快会误触发——音乐信号本身有瞬态峰值所以我会加一个RC延时让保护电路在电流超过阈值持续5μs后才动作。4.2 过温保护的布局与热敏电阻选型过温保护用NTC热敏电阻贴在功率管附近的PCB上。关键是位置不能离功率管太远否则测不到真实温度也不能直接贴在功率管表面否则会受环境温度影响。我一般把NTC放在功率管散热焊盘旁边2mm到3mm的位置用导热硅胶固定。阈值设在85度左右超过后降低输出功率或直接关断。恢复温度设70度加10度到15度的迟滞避免在阈值附近反复开关。4.3 直流保护的必要性与实现方式直流保护是Class D功放特有的保护。如果功放输出端出现直流电压比如半桥的一个管子击穿扬声器音圈会通过大电流很快烧毁。直流保护电路检测输出端的直流分量超过阈值一般0.5V到1V就断开负载。实现方式可以用低通滤波加比较器输出信号经过一个截止频率1Hz的RC低通滤波器滤掉音频信号剩下的直流分量和阈值比较。如果超过阈值触发继电器断开负载。提示直流保护的响应时间可以慢一点100ms到500ms都行因为扬声器音圈的热时间常数是秒级的。但阈值要准不能误触发。5. PCB布局的实战经验从地平面到散热Class D功放的PCB布局直接决定了EMI、失真和可靠性。同样的原理图不同人画出来的板子性能可能差一个数量级。这里分享几个我踩过坑之后总结的布局要点。5.1 功率地和信号地的分割与单点连接Class D功放的电流是脉冲式的功率地上的电流变化率极高di/dt大会在走线电感上产生尖峰电压。如果信号地和功率地混在一起这些尖峰会串入信号路径导致失真和噪声。我的做法是功率地和信号地在PCB上分开铺铜只在一点连接通常在母线电容的负极附近。信号地包括输入运放、PWM调制器和反馈网络的地。功率地包括半桥、栅极驱动器和输出滤波器的地。连接点选在母线电容的负极因为这里是功率电流的汇聚点电压最稳定。连接用0Ω电阻或直接铜箔连接不要用磁珠——磁珠在低频时阻抗低高频时阻抗高反而可能引起地电位反弹。5.2 母线电容的放置与高频去耦母线电容的作用是提供脉冲电流减少母线电压波动。如果母线电容离半桥太远走线电感会导致母线电压在开关瞬间出现尖峰可能超过MOSFET的耐压。我一般把母线电解电容放在半桥旁边1cm以内再并联一个1μF的陶瓷电容和100nF的陶瓷电容分别去耦中频和高频。陶瓷电容要尽量靠近MOSFET的漏极和源极走线越短越好。注意母线电容的等效串联电感ESL也很关键。电解电容的ESL一般在10nH到20nH陶瓷电容的ESL在1nH以下。所以高频去耦必须用陶瓷电容电解电容只能管低频。5.3 散热焊盘与过孔阵列的设计MOSFET的散热主要靠PCB铜箔和过孔传到背面。如果散热焊盘太小或过孔太少热阻会很大MOSFET结温会迅速上升。我的经验是散热焊盘至少和MOSFET的漏极焊盘一样大过孔阵列用0.3mm孔径间距1mm打满整个焊盘。过孔要盖油或不盖油都行但必须保证过孔内部镀铜良好。如果条件允许用2盎司铜厚的PCB热阻会明显降低。实测数据一个SO-8封装的MOSFET散热焊盘打9个0.3mm过孔热阻大约从60度/瓦降到40度/瓦。如果打16个过孔热阻可以降到35度/瓦左右。但过孔太多会影响焊盘强度一般12到16个比较均衡。6. 实测调试中的几个典型问题与排查思路理论算得再好实际调试时总会遇到各种意外。这里记录几个我在Class D功放调试中遇到的典型问题以及排查过程。6.1 输出有高频振荡从栅极波形找原因有一次调试一个全桥Class D输出端在无信号时就有几百mV的高频振荡频率约20MHz。用示波器看栅极波形发现关断时有一个明显的振铃。排查过程先怀疑栅极电阻太小换成22Ω后振铃幅度减小但没消失。再怀疑PCB走线电感太大检查发现栅极走线确实太长约3cm。重新布线把驱动器到栅极的距离缩短到1cm以内振铃基本消失。这个问题的根因是栅极走线电感和MOSFET输入电容形成LC谐振谐振频率f 1/(2π√(L×Ciss))。走线电感约1nH/mm3cm走线约30nHCiss约2nF谐振频率约20MHz和实测吻合。6.2 效率偏低从导通损耗和开关损耗分别排查另一个项目Class D功放效率只有75%远低于预期的90%。排查步骤先测导通损耗用万用表测MOSFET的Rds(on)发现比规格书高20%说明温度偏高。再测开关损耗用示波器同时看漏极电压和漏极电流发现交越区时间约50ns明显偏长。原因找到了栅极驱动电流不足。驱动器标称2A但实际走线电阻和栅极电阻加起来约15Ω驱动电流只有12V/15Ω0.8A导致开关变慢。把栅极电阻从10Ω降到4.7Ω交越区时间缩短到25ns效率提升到88%。6.3 低频失真大从反馈网络和隔直电容找问题半桥Class D在低频段100Hz以下失真明显听感上低音发浑。排查先看反馈网络发现反馈电容只有10μF截止频率约1.6Hz配合10kΩ反馈电阻理论上够用。再查隔直电容发现用的是220μF电解电容ESR约0.5Ω在100Hz时容抗约7Ω和8Ω负载分压导致低频衰减。换成470μF低ESR电解电容再并联一个10μF陶瓷电容低频失真明显改善。这个问题的本质是隔直电容的容抗在低频时不可忽略必须选足够大的容值而且ESR要低。6.4 保护电路误触发从电流采样波形找根因过流保护在音乐峰值时频繁触发但实际电流并没有超过阈值。用示波器看采样电阻上的电压波形发现音乐峰值时有一个尖峰幅度超过阈值但持续时间只有2μs。保护电路的RC延时是5μs理论上不应该触发。进一步排查发现比较器的输入端没有加滤波电容高频噪声耦合进来导致误触发。在比较器输入端并联一个100pF电容问题解决。这个经验告诉我保护电路的抗干扰和响应速度同样重要不能只追求快。7. 从分立元件到集成方案什么时候该换思路做了几版分立Class D之后我开始思考一个问题什么时候该继续用分立方案什么时候该换集成方案这个问题没有标准答案但有一些判断依据。7.1 分立方案的优势区间与适用场景分立方案的优势在于灵活性和可定制性。你可以自由选择MOSFET、驱动器、滤波器参数针对特定应用优化。比如需要极低失真时可以选线性度好的MOSFET加大死区调节精度需要极高效率时可以选低Rds(on)的MOSFET优化栅极驱动。分立方案的劣势是设计工作量大调试周期长可靠性依赖设计者的经验。我一般建议如果功率在50W到500W之间对失真和效率有明确要求而且有足够的调试时间分立方案是合适的。7.2 集成方案的选择标准与性能边界集成方案把驱动器、MOSFET、保护电路甚至PWM调制器都集成在一个芯片里外围元件少设计简单可靠性高。但集成方案的性能边界是固定的你不能改变死区时间、开关频率或保护阈值。常见的集成Class D芯片如TDA7498、TPA3116等功率从几瓦到几百瓦都有。如果功率在50W以下对失真要求不极致集成方案是更好的选择——设计周期短一致性高而且芯片厂商已经优化了大部分参数。7.3 混合方案集成驱动器加分立MOSFET还有一种折中方案用集成栅极驱动器如IR2110加分立MOSFET。这样既有集成驱动器的便利性和可靠性又能自由选择MOSFET优化效率和散热。我最近的一个项目就用了这个方案IR2110驱动两组IRF6645母线电压±45V输出功率200W。调试时间比分立驱动器方案缩短了约30%效率达到92%失真在1kHz时约0.05%。这个方案适合那些想兼顾开发效率和性能的场合。提示混合方案的关键是驱动器和MOSFET的匹配。驱动器的峰值电流要足够驱动MOSFET的栅极电荷驱动器的耐压要高于母线电压驱动器的传输延时要和死区时间匹配。选型时一定要看数据手册的时序图不能只看标题参数。8. 热设计与长期可靠性从结温计算到寿命评估Class D功放的可靠性很大程度上取决于热设计。功率管结温每升高10度寿命大约减半。所以热设计不是“差不多就行”而是需要精确计算和验证。8.1 结温计算的完整链路与热阻模型结温Tj Ta P × (Rth_jc Rth_cs Rth_sa)其中Ta是环境温度P是功耗Rth_jc是结到壳的热阻Rth_cs是壳到散热器的热阻Rth_sa是散热器到环境的热阻。以IRF6645为例Rth_jc约2度/瓦Rth_cs用导热垫约1度/瓦Rth_sa用铝散热器约5度/瓦。总热阻8度/瓦。如果功耗5W环境温度40度那么Tj 40 5×8 80度低于150度的最大结温安全。但这是稳态计算。实际音乐信号的功率是动态的峰值功耗可能远高于平均功耗。所以热设计要按峰值功耗算或者用热仿真软件看瞬态热阻抗。8.2 电解电容的寿命估算与降额使用电解电容的寿命和温度强相关一般每升高10度寿命减半。规格书给的寿命通常是105度下2000小时。如果实际工作温度是65度寿命可以延长到2000×2^((105-65)/10) 2000×16 32000小时约3.6年连续工作。但这是理想情况。实际寿命还受纹波电流、电压应力和充放电频率影响。我一般会降额使用电压降额到额定值的80%纹波电流降额到额定值的70%这样寿命可以延长一倍以上。8.3 长期老化测试的项目与判据产品定型前我一般会做至少100小时的老化测试满功率输出环境温度40度连续运行。测试期间每小时记录一次效率、失真和关键点温度。判据是效率下降不超过2%失真增加不超过20%温度上升不超过10度。如果老化测试通过再做一些极端测试短路输出、过载、高温高湿。这些测试能暴露设计中的薄弱环节比如保护电路响应不够快、散热不足、电容耐压不够等。9. 从这一版设计中学到的几个教训做Class D功放设计理论计算只是起点真正的经验都来自调试和失效分析。这一版设计让我印象最深的有三点。第一死区时间不能照搬数据手册。数据手册给的死区时间是在特定条件下的典型值实际电路中驱动器的传输延时、MOSFET的开关时间、PCB走线电感都会影响最佳死区。必须用示波器实测根据波形调整。第二保护电路的抗干扰和响应速度同样重要。我一开始只关注响应速度结果保护电路频繁误触发。后来加了RC滤波和迟滞比较问题才解决。保护电路的设计原则是宁可慢一点也不能误触发但一旦确认过流必须快速关断。第三热设计要留足余量。我第一版设计时按平均功耗算热阻结果音乐峰值时MOSFET结温冲到120度虽然没烧但可靠性堪忧。后来按峰值功耗重新设计散热器结温降到85度以下心里才踏实。这些教训看起来简单但每一个都是烧过管子、炸过电容之后才真正记住的。Class D功放设计没有捷径只有不断调试、测量、分析才能做出稳定可靠的产品。
返回列表