ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

高端MOS驱动自举电路:原理、选型与工程排坑指南

高端MOS驱动自举电路:原理、选型与工程排坑指南 做电机驱动、开关电源或者逆变器的时候只要碰上半桥结构几乎都绕不开高端MOS驱动。很多人上来直接用N沟道MOS管当高端开关结果发现栅极根本拉不动——源极都跑到母线电压上去了栅极电压不够MOS要么没法完全导通要么工作在放大区直接烧掉。这时候自举电路就成了最经济、最实用的解决方案。我最早接触自举电路是在修变频空调驱动板的时候。当时看格力变频板上那个升压电容和二极管一直没想明白它到底怎么把电压抬上去的。后来自己在H桥上搭电路才真正搞懂了自举升压的运行机理。这篇文章就把我从原理到工程落地踩过的坑一次性讲清楚包括自举电容怎么选、二极管怎么挑、为什么频率和占空比会坑你、Miller效应怎么影响驱动电流、以及常见故障怎么排查。这里先说清楚一个概念标题里的高端不是指高级的自举电路而是High-side驱动也就是半桥电路里上面那个N沟道MOS管的栅极驱动。下文提到的所有问题和方案都是围绕这个场景展开的。1. 自举电路为什么必不可少高端MOS驱动的真实困境1.1 N沟道MOS管做高端开关的电压尴尬MOS管的导通条件很直接栅源电压Vgs必须超过阈值电压Vgs(th)而且实际应用中通常要加到10V到15V才能让管子进入充分导通状态此时导通电阻Rds(on)才够低。N沟道MOS管因为电子迁移率高、Rds(on)小、价格便宜是开关电源和电机驱动里的绝对主力。问题出在高端位置。以Buck降压电路为例高端MOS管的源极不接地它是接在开关节点SW上的。当高端管导通时SW节点电压几乎等于输入母线电压Vbus。这时候如果要让Vgs有10V栅极电压就得到Vbus10V才行。但驱动芯片的供电一般只有12V到15V它拿什么去输出一个比母线电压还高的电平示意图里最常见的高端驱动电路通常会有三种解法一是用隔离电源单独给高端驱动供电成本高、体积大二是用P沟道MOS管但高压大电流P管又贵又少三就是用自举电路用一个电容加一个二极管成本几毛钱却能制造出一个浮动电源来驱动高端管。实际产品里第三种方案占了绝大多数。1.2 自举电路的工作原理一个会跳的电源自举电路的核心就两个器件一个自举电容C_boot一个自举二极管D_boot。驱动芯片内部通常集成了上管的驱动级电路但是驱动级本身的电源不是直接接芯片供电而是接在VB和VS两个引脚之间。VB是自举电容的正极VS是开关节点也就是高端MOS源极的位置。电容充电之后VB对VS的电压就是驱动高端管的实际栅源驱动电压源。怎么充电看工作状态就知道。半桥电路里高端管和低端管交替导通。当低端管导通时SW节点电压接近地0V此时VS引脚被拉到地。那么芯片内部从VCC经过自举二极管再经过自举电容到地的回路就导通了。电流路径是VCC → D_boot → C_boot → 低端MOS管 → 地。电容在这段时间里被充到接近VCC减去二极管压降的电压比如VCC是15V二极管压降0.7V电容上就有约14.3V。到了高端管要导通的阶段驱动芯片内部把高端驱动级的电流路径打开电容上存的能量就通过VB引脚释放给高端管的栅极充电。关键是此时即使SW节点已经升到母线电压电容下极板也就是VS端电位跟着SW一起往上跳由于电容两端电压不能突变上极板VB的电压也会被抬到Vbus14.3V左右。这就是自举升压的核心不是真的把能量变多而是让驱动级的参考地跟着开关节点浮动从而实现高压侧的信号驱动。1.3 自举充放电过程的一次完整循环把时间轴拆开看一个完整的PWM周期里自举电路经历三个阶段。低端导通阶段低端MOS管栅极被驱动到高电平SW节点通过低端管接到地或接近地。此时自举二极管正偏VCC通过二极管给自举电容充电。充电时间取决于自举电阻、二极管正向压降、电容容值以及低端管的导通时间。死区阶段高端管和低端管都关断SW节点悬空自举电容上没有持续的充电或放电路径电压基本保持。高端导通阶段高端驱动级开启自举电容通过内部驱动管给高端管栅极放电同时维持高端管栅源电压。此时SW节点电压被拉高到母线电压VS引脚跟着跳变自举电容上的电压就成了骑在母线电压上的浮动电源。因电容储存的电荷不断消耗在栅极驱动和驱动级静态电流上VB和VS之间的压差会缓慢下降。需要注意高端导通阶段自举电容是得不到补充的因为它只能靠低端导通时充电。所以自举电路天生就有一个限制高端管的占空比不能接近100%。如果高端一直开着、低端一直不开电容的电迟早放完高端管就会因欠压进入线性区迅速发热损坏。这也是为什么很多驱动芯片的数据手册里都会明确写入最小死区时间和最大占空比限制。2. 自举电路核心参数计算与器件选型2.1 自举电容容量计算一个公式解决自举电容容量选多大很多人凭感觉来有人用0.1uF有人用10uF但到实际高频应用里选小了电压跌落大高端管驱动不足选大了充电时间变长低频下可能充不满还有可能跟驱动芯片内部电路配合出问题。其实电容容值是可以算出来的。自举电容在一个开关周期里的电荷总消耗大概包括三部分高端管栅极电荷Qg。这个直接查MOS管数据手册是电容放电的主要去向。高端驱动级自身静态电流I_QBS在导通时间里的消耗查驱动芯片数据手册。自举电容本身的漏电流一般很小在计算中常忽略但高温加上电容老化时要留余量。核心计算式是C_boot Q_total / ΔV其中Q_total Qg I_QBS × t_on I_leak × t_onΔV是允许的自举电压跌落值。这里我给出的工程经验值是ΔV取0.5V到1V。太小的话容值会偏大充电恢复时间拉长太大会让驱动电压明显下降增加导通损耗。举个例子IR2104驱动一个IRFP460这个管子的Qg大约是180nC驱动芯片内部高端浮置电源静态电流I_QBS大约0.5mA开关频率20kHz周期50us如果高端占空比50%导通时间t_on就是25us。那么Q_total 180nC 0.5mA × 25us 180nC 12.5nC 192.5nC如果允许ΔV1VC_boot 192.5nF。但实际我不会取刚好这个值一般取计算值的3到10倍也就是0.68uF到2.2uF之间留出足够的余量。因为电容实际容量会随温度变化X7R、X5R贴片电容在直流偏压下容量还会明显下降容值缩水到标称值的50%甚至30%都很正常。高温、老化、漏电流这些因素叠加起来按计算值直接选容易踩坑。下面是不同栅极电荷量对应的自举电容参考值前提是驱动电压12V到15V允许跌落1V高端管总栅极电荷Qg推荐自举电容参考值典型应用场景小于30nC0.1uF~0.22uF小功率MOS管、逻辑电平管30nC~100nC0.47uF~1uF中小功率电机驱动、同步Buck100nC~500nC1uF~4.7uF大功率MOS、IGBT栅极驱动大于500nC4.7uF~10uF超大功率模块、大电流逆变还要注意电压等级。自举电容的耐压必须大于母线电压加驱动电压因为电容上极板在高端导通时会被抬到VbusVbs。比如母线电压是48V那电容至少选100V耐压建议直接上100V或更高的留1.5倍以上裕量。2.2 自举二极管与限流电阻选型自举二极管看起来不起眼但它承担的任务很重第一高端管导通时SW节点是母线电压自举二极管必须能扛住这个反向电压且不漏电第二高端管关断、低端管导通的时候它要能迅速从反向恢复转为正向导通给电容快速充电。如果这个二极管恢复太慢在高端关断瞬间可能造成反向电流尖峰轻则增加损耗重则把驱动芯片打死。选择自举二极管主要看三个参数反向耐压VRRM要大于母线电压考虑到母线电压的尖峰和振荡余量留足。48V母线选100V二极管310V母线整流后选600V二极管。反向恢复时间trr要短贴片整流二极管里UF4007、ES1J这类都可以用trr在几十纳秒级别能满足200kHz以内的应用。反向漏电流要小。高压应用里特别要留意漏电流大的二极管在高温下会让自举电容电压悄悄掉下来。限流电阻R_boot要不要加是一个经常被讨论的点。驱动芯片内部一般已经有了输出级的P管和N管直接接自举二极管也能工作。但实际工程里很多设计会串一个2欧姆到10欧姆的电阻目的主要有两个一是限制自举电容刚上电时的浪涌充电电流避免把二极管和芯片内部二极管打坏二是降低LC振荡的峰值改善EMI。R_boot一旦太小充电电流尖峰大容易干扰驱动芯片R_boot太大低端管导通时间短的时候电容充不满。我的经验是对工作频率100kHz以内的驱动电路用4.7欧姆到10欧姆比较稳妥对高频应用需要在允许的充电时间常数内反算。这里有一个估算方法充电时间常数是R_boot乘以C_boot通常需要低端导通时间大于3倍到5倍时间常数才能充到接近VCC。假如C_boot1uFR_boot10欧姆时间常数就是10us。那低端导通时间至少要30us以上否则电容电压充不到目标值。所以高频高压下如果发现高端驱动波形畸变优先检查这个时间常数。2.3 与PWM频率、占空比的匹配关系自举电路对开关频率和占空比都很敏感这可能是实际项目里遇到问题最多的环节。频率过低时开关周期很长高端管导通时间内自举电容上的电荷要撑很长时间。如果高端管驱动级静态电流或者电容漏电比较明显VB对VS的电压下跌会超过预期。低端管导通时间虽然长充电没问题但问题出在放电侧。频率太低的应用比如几十赫兹的逆变器用自举驱动就不太合适通常得改隔离驱动。频率过高时问题反过来——高端管单位时间开关次数多每次开关都要消耗栅极电荷平均放电电流大。与此同时低端管导通时间变短如果导通时间不足自举电容每周期充电量小于放电量电压就会像没气的轮胎一样越来越瘪。典型的症状是上电时还能跑跑几秒钟后高端管驱动波形幅度慢慢下降最后管子过热。占空比的影响更直观。占空比越大高端管导通时间越长低端管导通时间越短。充电时间被压缩放电时间被拉长。所以自举驱动的占空比上限通常被限制在90%甚至85%以下。比如IR2104的数据手册里就明确告知为了保证自举电容充电必须限制高端管的最小关断时间。在实际做电机驱动或者逆变器时如果PWM占空比要求很高那就要考虑用变压器隔离驱动或者带自举电容补充泵电路的方案而不是硬扛。2.4 从驱动芯片datasheet看自举设计市面上常见的自举驱动芯片有IR2104、IR2110、UCC27211、L6387E、EG2134等。它们的共同点是把自举二极管集成在芯片内部外部只需要加一个自举电容。集成的好处是省了外部二极管选型的麻烦但也要注意内部自举二极管的反向恢复特性和漏电参数是固定的高温下漏电更容易造成电容电压跌落。数据手册里关于自举电路的参数通常有这几个VB最大电压例如IR2104是25V意味着自举电容充电电压不能超过这个值否则芯片内部高压侧浮置电源会损坏。最小脉冲宽度保证自举电容有足够充电时间。最大占空比高占空比限制的表征。浮置电源漏电流用于估算自举电容电压保持能力。在设计阶段我一般会直接参考芯片手册里的应用电路手册 рекоменду电容值通常是一个范围比如0.1uF到1uF并针对不同Qg的MOS管给出了建议值。但手册给的是通用情况你实际板子上的寄生参数、温度范围、开关频率都可能导致手册推荐值不够用。所以正确做法是以手册推荐值为起点结合前面说的Qg和电荷平衡计算再留一定余量有条件的话直接测VB到VS的波形确认电压跌落情况。3. 开关动态过程米勒效应、寄生电容与驱动电流3.1 MOS管开关的四个阶段与米勒平台自举电路搭好后能不能把高端管驱动得干净利落还要看MOS管本身的开关动态过程。MOS管不是理想开关它有三个寄生电容栅源电容Cgs、栅漏电容Cgd也叫米勒电容以及漏源电容Cds。其中栅漏电容Cgd是会放大的。开关过程中当Vds快速变化时Cgd上会流过很大的位移电流这个电流必须由驱动电路来提供。MOS管从关断到导通的完整过程可以拆成四个阶段。第一阶段是栅极充电从0V充到Vgs(th)这期间只有Cgs在充电Vds不变管子处于关断状态没有电流流过。第二阶段是从Vgs(th)到米勒平台电压Vds开始下降Id开始上升Cgs和Cgd同时在充但Cgd的影响还不大。第三阶段是米勒平台Vgs基本保持在一个平台上因为Cgd正在被大电流充电驱动电流几乎全部用于给Cgd充电栅源电压被钳住不再上升而Vds快速下降或者Id快速变化。这一阶段是整个开关过程效率最低、也是最需要驱动电流的地方如果驱动电流不够米勒平台时间会拉长管子长时间处于线性区开关损耗剧增。第四阶段Vds已经降到导通状态Cgd不再需要大电流Vgs继续充电到最终驱动电压管子进入完全导通。看得出来开关过程的重点不在充到阈值电压而在第三阶段能不能快速跨过米勒平台。如果驱动电路源出电流能力不足或者栅极电阻太大MOS管就会在这个平台上磨蹭很久管子发热、效率下降、波形畸变。这也是为什么高端驱动芯片峰值电流能力这个参数很重要IR2104只有200mA级别的驱动能力而UCC27211能到4A驱动大管子时差异就很明显。3.2 驱动电流到底怎么算驱动电路需要提供两种电流平均电流和峰值电流。平均电流决定电源功耗峰值电流决定开关速度。平均驱动电流很简单I_avg Qg × f_sw比如IRFP460的Qg180nC开关频率20kHzI_avg 180nC × 20000Hz 3.6mA。看起来很小对不对但千万别被平均数迷惑峰值电流才是关键。峰值电流在栅极充电的瞬间出现主要受到栅极总电阻限制。栅极总电阻包括驱动芯片内部输出电阻R_driver、外部串联栅极电阻R_g和MOS管内部栅极电阻R_g_internal。峰值电流I_peak V_drive / (R_driver R_g R_g_internal)假设V_drive14VR_driver5欧姆R_g10欧姆R_g_internal2欧姆那I_peak大约0.82A。再考虑米勒平台阶段此时栅极电压变化很小但Cgd正在被大电流充电充电电流I_miller (V_drive - V_miller) / R_g_totalV_miller是米勒平台电压一般在4V到8V之间。如果驱动电压只比米勒平台电压高一点点驱动能力就很差。比如V_drive8V而米勒平台电压是6V那么有效驱动压差只有2V输出电流很小开关就慢。这就是为什么很多设计坚持用12V到15V的驱动电压而不是刚好超过阈值就完事。实际项目中我测驱动波形最关心两个指标一个是栅极电压从10%到90%的上升时间另一个是米勒平台的持续时间。前者反映整体驱动能力后者直接关联开关损耗。如果发现米勒平台很宽、波形呈缓慢爬升状态优先减小外部栅极电阻R_g或者换成驱动能力更强的芯片。3.3 开关损耗与热计算的粗略估算开关损耗跟开关过程的时间强相关。每次开通和关断MOS管都要经历一个Vds和Id同时不为零的区域这个区域里消耗的功率就是开关损耗。近似公式是P_sw 0.5 × Vds × Id × (t_rise t_fall) × f_sw举例来说Vds48VId10A上升时间100ns下降时间100ns频率100kHz。代入计算P_sw 0.5 × 48 × 10 × (100ns 100ns) × 100kHz 4.8W4.8W对TO-220封装来说已经是一个不小的热负担需要加散热片才能压住。如果开关时间翻倍到200ns损耗也翻倍接近10W管子直接烫手。拖慢开关过程的直接原因之一就是驱动电压不足——也就是自举电容电压跌落过多。所以自举电路的问题最终会通过开关损耗体现在管子温度上。很多时候排查MOS管过热问题先测驱动波形、再量自举电容电压往往比换更大电流的管子更有效。我自己就遇到过一台24V电机驱动器上管总是比下管热查了半天发现就是自举电容老化漏电导致实际Vgs只有7V多管子进入线性区导致严重发热。4. 高端MOS驱动自举电路的工程坑与排查实录4.1 常见故障速查表接触多了之后我把自举电路相关的故障整理成了一张速查表。每次现场排查问题基本按这个表逐项卡能省很多走弯路的时间故障现象可能原因排查方向高端管严重发热但低端管正常自举电容容量偏小或漏电用示波器测VB-VS电压是否跌落异常上电后高端管不工作自举电容没充电检查低端管是否先导通一个周期、自举二极管是否焊反高占空比时输出波形坍塌占空比超过自举极限充电时间不足软件限制最大占空比或换隔离驱动方案轻载正常重载驱动波形畸变自举电容容量不足导致栅极电荷消耗后电压跌落加大自举电容关注ESR和温度特性驱动芯片偶发损坏自举二极管反向恢复过冲或VS负压过深增加限流电阻检查SW节点负压尖峰是否需要加肖特基钳位高温下故障率升高电容高温漏电增大换用C0G或更高耐温等级的电容开关波形出现严重振铃栅极回路寄生电感过大、自举电容离芯片太远重新布局把自举电容贴近芯片VB-VS引脚其中最容易被忽略的是自举二极管焊反这种低级问题上电后高端管完全没反应但测量VB到VS电压可能是负的。所以在动手焊板子之前先看一眼丝印方向再对照数据手册里的内部电路确认极性能省很多排查时间。4.2 冷启动不自举的问题冷启动不自举是自举电路特别经典的一个坑。很多驱动芯片要求先让低端管导通一段时间把自举电容充满然后才能正常驱动高端管。如果MCU初始化时PWM输出直接把高端管打开了而自举电容还是空的高端管驱动电压不足可能会以半导通状态硬顶上去瞬间过流烧管。解决办法有三个思路。第一是在软件初始化时先输出低端管导通PWM若干微秒再启动正常调制或者设置一个固定的自举充电时序让下管先导通几十微秒确保电容充满。第二是很多驱动芯片内部没有这个功能需要外部电路保证上管不会在上电瞬间误开通比如在VS到地之间预充电阻不过这种方法用得不多效率和可靠性都一般。第三是在电源管理层面让驱动芯片供电晚于功率级供电或者增加缓起动电路。我在实际产品里用的方案是在MCU启动流程里加一个预充电状态PWM关闭、强制低端管打开持续200us到1ms然后才切换正常输出。这个方案简单可靠实测能彻底解决冷启动自举不足的问题。如果你用的是现成的电机驱动模块可以查一下模块有没有这个逻辑如果没有就自己加。4.3 高占空比与大功率下的自举欠压高占空比场景下的自举欠压问题比冷启动更隐蔽因为它不是一上电就崩而是在运行一段时间后逐渐出现。症状常表现为轻载正常、加载后高端管驱动波形幅度逐渐下降最终保护或烧管。这是因为在占空比很高时高端导通时间长、低端导通时间短自举电容充电电流远远跟不上放电消耗。大功率场景下还有一个容易忽略的细节开关节点SW在高速开关时会产生很大的dv/dt这个电压跳变会通过自举电容和二极管结电容耦合在芯片内部产生共模干扰。严重时驱动芯片的浮置电源都可能被击穿。针对这种情况我一般会在SW节点对地加一个RC吸收或者肖特基二极管钳位把负压尖峰限制在安全范围内。另外自举电容的ESR也不能忽视。大电流应用里电容在放电瞬间会产生较大压降ESR大的电容会让Vgs跌落得更厉害。如果空间允许可以用几个小电容并联既能降低ESR又能保持容值。我还喜欢在自举电容旁边再并联一个0.1uF的高频陶瓷电容专门应付开关瞬间的高频电流需求。4.4 布局布线与开尔文接法的实战建议最后说布局自举电路对布局的敏感程度远超很多人的想象。自举电容如果放得太远电容到驱动芯片VB、VS引脚之间的寄生电感就会和电容、驱动级形成LC振铃。高频开关时这个振铃会直接叠加在栅极驱动波形上轻则波形难看重则导致Vgs超过绝对最大额定值把管子栅氧化层击穿。我的布局经验如下自举电容必须紧贴驱动芯片的VB和VS引脚中间不要打过孔不要绕远走线自举二极管集成在芯片内部时可以不管外部方案则同样要紧贴芯片并与电容形成尽量小的回路。驱动芯片到MOS管栅极之间走线要短而粗栅极电阻R_g要靠近MOS管一侧这样能减少栅极回路的寄生电感减弱振铃。这里插一句开尔文接法的概念。很多大功率MOS管数据手册里都强调源极的电感对开关过程影响很大尤其是驱动回路的共源电感。共源电感的存在会在开关瞬间产生电压尖峰影响栅极驱动。开尔文接法的核心就是让驱动回路和功率回路的源极分开走线驱动回路单独从源极引脚取参考信号不让功率回路的突变电流在驱动回路的参考线上产生压降。具体到PCB布局就是要让栅极驱动回路的地直接回源极引脚而不是先绕到功率地的接地点再回来。我自己画板子的时候会把栅极驱动电阻放在MOS管栅极脚附近而栅极驱动回路的地线单独引到源极引脚和功率地分开一点再汇合。这样虽然布局麻烦一些但波形会更干净开关损耗也会降下来。对高频、大电流、硬开关的应用来说开尔文接法带来的改善非常值得。再重复一次自举电容充电时间常数的检查方法用示波器直接量VB和VS之间的电压差。正常工作时这个电压应该比较平稳即使在高频下也只会出现很小的下降纹波。如果发现这个压差在高端管导通期间明显往下掉说明电容容量偏小或充电不足尽快处理别等到管子烧了再换。最后再分享一个内部的小经验我做驱动板的时候习惯把自举电容的位置和型号写在BOM备注里而不是像很多设计那样只写0.1uF陶瓷电容。因为自举电容的材质和耐压对可靠性影响极大最高频用的应该是C0G或NP0材质其次X7R尽量别用Z5U、Y5V这些温度特性差的材质。直流偏压会让X7R电容容量在额定电压下掉到不到一半这种缩水在自举电路里特别坑。另外如果你在排查问题时发现自举电容电压波形正常、驱动波形也正常但高端管还是会偶尔误动作那多半不是自举电路的问题而是PCB布局里驱动回路和功率回路互相干扰。这时别急着改驱动参数先看看有没有办法缩短驱动回路、增加开尔文接法问题往往会迎刃而解。自举电路是个小电路但它和整个驱动链路的每个环节都牵在一起从原理到器件再到布局任何一个细节放松警惕都会在发热和烧管上报复回来。
返回列表