ARTICLE DETAIL

资讯详情

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

FOC驱动中MOS管栅极电阻的调试:振铃、损耗与EMC的平衡

FOC驱动中MOS管栅极电阻的调试:振铃、损耗与EMC的平衡 最近在调试一套基于STM32F103的FOC无刷电机驱动板遇到了一个非常典型的问题MOS管的栅极波形振铃严重整块板子的辐射干扰大到能影响隔壁桌的传感器读数。群里问了一圈得到的答案基本是加大栅极电阻试试但试来试去电阻从10欧加到100欧振铃是压下去了一点MOS管的发热却上来了开关损耗肉眼可见地增加效率直接掉了几个点。这就是大多数人在调FOC驱动时都会踩的坑把栅极电阻当成一个玄学旋钮出了问题就拧一拧从来不问它到底在电路里干什么也不拿示波器去看波形背后对应的是哪个能量路径。这篇文章就围绕这个场景展开从栅极电阻的实际作用、示波器测量的正确方法、振铃和EMC的产生机理到一套可复现的调试流程完整讲清楚这件事。适合正在做无刷电机FOC驱动、伺服驱动或者任何基于MOS管半桥电路的硬件工程师参考。1. 栅极电阻不是拍脑袋定的先理解它在电路里干什么1.1 一个电阻牵动整个开关过程MOS管是电压驱动型器件栅极和源极之间存在结电容Cgs栅极和漏极之间存在米勒电容Cgd两者合起来就是栅极的总输入电容Ciss。你给栅极施加驱动电压时本质上是在通过驱动电阻对这个电容进行充放电。驱动电阻的阻值直接决定了栅极电压的上升斜率进而决定整个开关过程的快慢。很多人以为电阻小开关快好事从逻辑上好像没错但忽略了快带来的连锁反应。开关速度越快电流变化率di/dt和电压变化率dv/dt就越高。更高的di/dt会在PCB走线寄生电感上产生更大的电压尖峰也就是VL×di/dt这个公式的直接体现更高的dv/dt则会对Miller电容充电产生更强的耦合电流还可能引发半桥上下管的直通风险。所以栅极电阻本质上是在开关损耗和电压应力/EMC之间找一个平衡点而不是越小越好。FOC驱动里MOS管不是工作在饱和区做线性放大而是工作在开关状态。这意味着每个PWM周期内MOS管都要经历一次开通和一次关断开关频率通常是16kHz到20kHz。这个频率下开关损耗的占比非常可观栅极电阻选得不对整机效率和温升都会出问题。1.2 为什么FOC驱动比普通电机驱动更容易出问题BLDC方波驱动也有开关过程为什么没人天天喊着调栅极电阻因为方波驱动的换相频率低一个扇区持续30度电角度开关损耗占比小即使栅极波形有点振铃也未必触发严重问题。FOC就完全不同了。FOC是高频PWM连续调制的每个PWM周期都在做正弦波的近似输出。上下桥臂以固定频率不停地开关而且通过SVPWM算法每个扇区内都有一次和两次的开关切换。这意味着MOS管承受的开关应力是持续性的、高密度的。用示波器看FOC驱动的栅极波形基本是一直在跳不像方波驱动那样有较长的稳态区间。还有一个更关键的差异FOC通常依赖于母线电流采样来做电流环闭环。采样窗口一般在PWM开关周期的特定时刻如果栅极波形因为振铃而导致电流波形被干扰电流环读到的值就不是真实值控制效果会明显变差。这个环节你要是没踩过坑很难意识到栅极电阻不只影响功率级的可靠性还直接影响FOC算法的性能。1.3 被很多人忽略的细节开通和关断应该分开对待出去查资料、翻参考设计最常见的做法就是一个栅极电阻搞定开和关。这种做法的背后逻辑是驱动芯片的输出阻抗加上这个电阻开通和关断回路基本对称。但MOS管实际的开通和关断特性并不对称原因是Miller电容在两个阶段的作用方式不一样。开通时Cgd需要被驱动电压充电充电电流来自驱动芯片关断时Cgd需要放电放电回路要经过驱动芯片的内部下拉或者外部电阻。如果用同一个电阻你会发现关断速度往往比开通快一点或者反过来。更关键的是如果关断速度太慢半桥电路里就可能出现上下管同时导通也就是直通电流直接从母线灌下来MOS管瞬间烧毁的概率非常大。所以正规的驱动电路都会用分开的电阻或者用二极管来旁路掉开通电阻、让关断走独立的快速回路。典型做法是在栅极电阻上并联一个二极管二极管方向要么指向驱动芯片加快关断要么指向栅极加快开通取决于你当前的瓶颈在哪边。如果你设计的驱动电路没有做这个区分建议认真想想你的MOS管老烧是不是跟关断速度太慢有关。2. 示波器上机之前探头、接地和测量点决定你看到的是不是真相2.1 探头带宽和衰减比怎么选示波器测量的第一原则你看到的不一定是真实的探头会严重影响高频信号的真实性。VDS振铃的频率通常是几十MHz到一百多MHz你拿一个50MHz带宽的示波器去看振铃幅度会被大幅削平看起来波形挺干净那是假象EMC该超还是超。选择探头时至少保证探头带宽是你要测信号的5倍以上比如测100MHz的振铃探头带宽起码600MHz以上。衰减比方面如果栅极驱动电压是15V1:1的探头直接测没问题。但你要是测VDS母线电压在48V甚至更高建议用10:1探头。10:1探头还有一个隐藏的好处它对电路的寄生电容负载更小对被测电路的干扰更小。1:1探头的输入电容可能达到几十皮法直接并到栅极上会改变振铃频率让你测到一个被探头改过的电路而不是真实电路。2.2 接地线长度这一个细节毁掉多少人的波形这是我在实际调试中感触最深的一点。示波器探头标配的地线夹子大概有10厘米长这个长度对应的寄生电感大约在100nH量级和被测回路的寄生电感相当甚至更大。测高频振铃时地线电感会和探头输入电容形成谐振在几十MHz的频率上制造出振铃假象好多人折腾了半天其实是探头地线造成的不是电路本身的问题。正确做法是拔出探头前端的地线弹簧针或者用探头专用的接地弹簧把地线长度压到最短直接接到被测MOS管的源极这样测出来的才是真实的栅极波形。如果需要比较高的测量精度还可以在测试点旁边预留一个测试焊盘就近接地不要靠夹子去夹一个远处的GND点。做电源设计的人经常会说地线太长天线这句话放到示波器测量上同样成立。2.3 测低端MOS管和测高端MOS管的区别三相FOC驱动里的MOS管位置不同测量方式也不同。低端MOS管的源极直接接功率地探头地线可以接到旁边最近的功率地测量相对简单。高端MOS管的源极是浮动的在工作时电压在母线电压和地之间来回跳变你用示波器探头直接去测高端MOS管的栅极会出问题。这是因为示波器的地线通过探头接了被测点虽然探头内部有隔离但探头地线的参考电位是示波器机身的地普通探头测浮动电压会导致地线回路流过很大的电流轻则波形失真重则烧毁探头或者示波器。测高端MOS管栅极最安全的办法是用隔离差分探头两路输入分别接栅极和源极。没有差分探头的话至少要用A-B的数学通道方式用两个同型号的探头分别测栅极和源极让示波器做减法这样能规避一部分共模问题但效果还是不如真正的差分探头。2.4 探头补偿和通道校准别偷懒这一点很简单但特别影响精度。示波器探头输入端有一个可调电容用来匹配示波器通道的输入电容。换通道、换探头之后都要做一次方波校准也就是用示波器自带的1kHz方波信号调节探头的补偿电容直到方波的边沿没有过冲、没有圆角。做过这一步之后你测出来的幅度和边沿时序才准确。另外在测高端MOS管驱动芯片的输入信号时可以取PWM控制信号的上升沿作为触发源这样便于稳定观察栅极波形和米勒平台的细节。很多示波器还有余辉显示模式打开之后波形叠加的效果能帮你快速判断振铃是否稳定、是否偶发。3. 把波形读透上升时间、振铃、米勒平台和开关损耗3.1 一个健康的栅极波形长什么样把示波器接好之后你会看到一个典型的栅极开关波形从0V上升到Vgs一般是10V到15V中间会有一段平台期之后继续升到驱动电压关断时对称地掉下来。一个判定为健康的波形应该满足以下几个条件上升沿没有明显过冲理想的过冲不超过驱动电压的10%振铃幅度小振铃期不大于开关周期的1/3关断沿同样没有负过冲最低不低于0V以下0.5V如果有负压驱动则不低于驱动负压的90%没有出现台阶或反复抖动这说明米勒平台区出现了异常耦合如果一个波形在上升过程中出现了明显振荡且频率很高几十MHz以上你第一反应不应该是继续加电阻而是先确认自己的测量方式有没有问题、确认探头地线是不是太长、测量点是否选得合适。振荡衰减需要时间如果振铃持续超过几十纳秒还在那儿跳这个能量会通过辐射释放出去成为EMC的主要来源。FOC驱动板上最常见的RE超标频点往往就对应着这个振铃频率。3.2 上升时间不是越快越好di/dt和反向恢复的代价前面说过栅极电阻越大开关越慢振铃越弱但同时开关损耗越大。反过来栅极电阻越小开关越快开关损耗低但振铃高。这两个目标天然就是矛盾的需要做工程上的折中。具体的取舍点主要看你的应用场景场景优先考虑的指标初始栅极电阻参考范围电池供电的低功耗设备效率优先开关损耗占比高4.7~15欧一般工业电机驱动兼顾效率与可靠性10~33欧对EMC特别敏感的场景辐射干扰优先压制22~100欧配合磁珠大电流功率模块以关断保护和di/dt限制为主开通10~22欧关断4.7~10欧如果你把开关速度调得非常快还会激发出一个新问题续流二极管的反向恢复。当二极管从导通切换到截止时需要一定时间来清除存储的电荷此期间会产生很大的反向恢复电流。MOS管开通过快时这个反向恢复电流会被接住形成极大的电流尖峰不仅增加损耗还会引起更强烈的振铃。这类问题即使你把栅极电阻加得足够大也往往压不下来因为根源在二极管特性而不在栅极驱动速度。3.3 米勒平台不只是看热闹它告诉你驱动电流够不够判断一个栅极驱动电路设计得好不好关键就看米勒平台那段。简单解释一下米勒平台的形成原因MOS管开始导通后Id增大此时Vgs被钳位在Vth到Vgp之间的平台电压因为栅极驱动电流需要同时给Cgd充电并推开漏源电压的变化。平台持续的时间取决于驱动电流能多快给Cgd充放电。如果驱动芯片的驱动能力不足或者栅极电阻偏大平台期就会变得很长开关时间拉长损耗增加。用示波器读米勒平台还有一个实际的作用估算驱动功率和校验驱动电阻是否选得过大。如果平台期太宽比如已经占到了整个开关周期的20%以上你的栅极电阻很可能偏大了驱动能力都被电阻吃掉了。反过来如果你发现平台期几乎不存在说明Cgd的耦合路径出现了异常或者是极端的快恢复器件配合了极小栅极电阻此时可以适当增加电阻来保护MOS管。还有一种常见现象是米勒平台期出现了锯齿状的抖动这是因为栅极回路的寄生电感和栅极电容发生了谐振驱动电流在平台期出现了来回振荡。加驱动电阻能有效抑制这种锯齿但加了之后开关变慢就需要在锯齿消失和损耗可接受之间取一个平衡点。4. 震荡和EMC的源头寄生参数、振铃回路和天线效应4.1 振铃不是玄学是LC谐振很多人调栅极电阻调到最后都有一种怎么调都压不住的无力感。这时候你得换个思路振铃的本质是LC谐振不是单纯靠增大阻尼就能彻底解决的东西。每次开关动作电流路径上都有寄生电感包括PCB走线电感、MOS管封装内的键合线电感、电容的ESL。这些寄生电感和MOS管的结电容Cds、Cgs、Cgd构成一个谐振回路。当PWM边沿到来时等效于一个阶跃激励源作用于这个LC回路于是产生了阻尼振荡。谐振频率可以用f 1 / (2π × √(LC))来估算。假设寄生电感是20nHMOS管结电容是1nF谐振频率就在35MHz左右。这个频率范围正好是FOC驱动板EMC测试中RE辐射发射最容易超标的频段。所以很多EMC问题看着像天线问题追根溯源是振铃回路在持续发射能量。阻尼的大小取决于回路里的等效串联电阻。栅极电阻只存在于栅极驱动回路里它能够有效阻尼的是栅极回路的谐振而对VDS回路的谐振只能靠增加回路本身的损耗来抑制比如用更大Rds_on的管子、加RC吸收电路snubber或者在母线电容旁边加吸收电容。理解了这一层你就能明白为什么有时候栅极电阻已经加到100欧了VDS振铃还是压不住——因为两边根本不是同一个谐振回路。4.2 EMC的传导发射和辐射发射到底是怎么传导出去的EMC测试通常分两类传导发射CE150kHz到30MHz和辐射发射RE30MHz到1GHz以上。这两类问题在FOC驱动板上的主要源头都是开关动作产生的高频分量。传导发射主要是通过电源线往外走。MOS管开关产生的电压/电流尖峰会沿着母线传导经过输入端的电解电容、差模电感等路径最终在电源线接口处被测试设备接收到。栅极电阻对这个频段的直接影响不明显但通过改变边沿斜率、改变振铃强度可以间接影响传导发射的水平。对于传导发射超标更有效的方案是EMI滤波器共模电感负责共模噪声X电容负责差模噪声Y电容负责将共模噪声旁路到地。辐射发射则是通过空间辐射传播。走线、电机线、MOS管散热片、线缆连接器都可能成为天线。高频振铃电流流经这些寄生天线时就会把能量辐射出去。振铃信号的频率一旦超过30MHz就可能直接造成RE超标。此时需要调整的是什么降低振铃幅度、加快振铃衰减以及在源头降低di/dt和dv/dt也就是通过控制栅极电阻来控制开关沿的陡峭程度。4.3 为什么加了栅极电阻振铃反而更小这个问题在原理上并不复杂但值得展开讲清楚。栅极电阻增大相当于在栅极驱动回路中引入了更高的等效串联电阻。RLC谐振回路的总阻尼等于回路电阻阻尼越大振铃的衰减越快、过冲越小。这就是电阻调振铃的基本原理。但电阻也不能无限加大因为增大电阻会降低驱动电流导致Cgs充放电变慢开关沿变缓开关损耗增加。同时开关沿变缓还意味着在线性区停留的时间变长瞬时功率增大MOS管温度迅速上升。我见过一个案例某工程师为了压VDS振铃把栅极电阻从10欧一路加到150欧振铃确实压下去了但MOS管直接从65度升到105度最后还是把电阻降回来改用RC吸收电路来解决振铃。这说明一个很重要的工程思维方式栅极电阻是调开关速度和阻尼的最直接手段但不是唯一手段。遇到振铃问题先分析振铃源在哪个回路再选择对应的调试手段比盲目加大电阻要高效得多。5. 一套可复制的调试流程从0到1调出稳定波形5.1 第一阶段根据主电路参数确定初始阻值不要直接凭感觉选栅极电阻先根据你用的MOS管器件和驱动芯片来确定一个合理的起始值。查MOS管的规格书找到Ciss、Cgd、Qg这几个参数。举例来说一颗常见的低压MOS管比如IRLR3410Ciss大约是1200pFQg大约是40nC。驱动芯片如果最大峰值电流是2A那么最短开关时间理论上可以做到t Qg / Ipeak 40nC / 2A 20ns。你当然不会真把它开到极限但可以用这个公式估算一个下限。实际调试时我一般按这个理论最短开关时间的3到5倍作为初始目标也就是60到100ns左右再反算栅极电阻。反算方法也不复杂Rg (Vdrive - Vplt) / I其中I取驱动芯片能够稳定输出的电流Vplt是米勒平台电压。当然这只是估算真正确定阻值还是得依赖实测。多数情况下低压48V母线、峰值电流20A的FOC驱动开通电阻从10到22欧起调关断电阻取开通电阻的一半左右然后用示波器看波形逐步修正。5.2 第二阶段用示波器逐项检查关键指标接下来是最核心的实测阶段。你需要重点观察这四个指标Vgs的上升沿过冲是否在10%以内Vgs的关断沿是否存在负过冲VDS的振铃幅度和衰减时间米勒平台持续时间占整个开关周期的比例用余辉显示模式可以看到多次开关波形叠加的真实范围。先用低端MOS管测栅极波形因为测量方便然后切换到高端MOS管测VDS。如果高端测不了就用差分探头或者将探头的地弹簧接到一个参考点。我通常会在样机上加一组测试点排针把三个低端MOS管的栅极、三个高端MOS管的栅极、母线电压和三相输出都引出来方便反复测量。调试阶段多花10分钟布几个测试点后面排查问题能省下几个小时。实测中如果Vgs上升沿过冲超过15%同时振铃频率在几十MHz首先检查探头接地线长度确认无误后再考虑增大栅极电阻或加铁氧体磁珠。如果VDS振铃明显但Vgs干净这说明振铃主回路不在栅极应优先考虑RC吸收或调整PCB布局。5.3 第三阶段微调阻值验证裕量调到一个看起来不错的波形之后不要急着收工要刻意做几次恶劣条件测试。把母线电压拉到最高允许值把负载电流加到额定值把温度做上去看波形会不会恶化。FOC驱动在低温时MOS管的阈值电压会变化在高温时载流子迁移率和结电容也会变化这些都会影响振铃幅度和开关速度。验证裕量的具体做法是把栅极电阻往小调2到3档看波形是否在可控范围内再往大调2到3档看温升和效率是否可接受。取一个左右都有余量的中间值而不是刚好压住当前工况的参数。不少人就是栽在这一步室温下波形完美上了台架跑一会儿管子炸了原因就是没考虑到温度和电流对寄生参数的影响。还有一个容易被忽略的测试步骤是在正常运行FOC算法的情况下观察栅极波形而不是用开环占空比信号测。FOC运行时SVPWM产生的PWM模式按马鞍形分布开关时刻随相电流变化振铃的激励条件比匀速方波更丰富。有条件的话用示波器的深存储模式抓取上百个开关周期检查有没有偶发的、幅度更大的异常振铃这种偶发现象才是最危险的。5.4 检查与优化到这里调栅极电阻这件事基本上可以告一段落。但你要把这项工作放在整个系统层面来看栅极电阻只是综合优化的一部分。以下几点属于如果波形已经调好还应该顺手检查的项目栅极驱动芯片的供电电压是否稳定。驱动电源掉电或者纹波过大栅极波形会随之劣化你调再久的栅极电阻也白搭。死区时间是否充足。如果死区时间小于MOS管的关断延迟时间就会出现直通风险。FOC里死区时间通常在几百纳秒到2微秒之间具体要看器件和PWM频率。母线去耦电容是否足够。这个很多人容易忽略栅极波形振铃的回路电流最终是从母线电容取的。母线电容离MOS管太远、ESL偏大振铃的能量就无法被有效吸收波形干净不了。驱动器输出电阻与外部栅极电阻的分压关系。驱动芯片自身的导通电阻不是零你板上用的栅极电阻只是整个回路阻抗的一部分。选型时要看驱动芯片的输出阻抗规格别以为10欧的板上电阻就是10欧的回路电阻。6. FOC驱动里常见的特殊坑与我的实测经验6.1 栅极下拉电阻到底该放多大很多参考设计在栅极到源极之间会放一个下拉电阻初衷是防止MOS管在驱动芯片未上电时因栅极悬空而误导通。但这个电阻在开关过程中会形成分压关系对接着驱动芯片的栅极而言是额外负载会稍微拖慢开关速度。这个电阻的取值一般在10k到100k之间。我在做FOC驱动时通常取47k到100k保持抗干扰和不拖慢开关的平衡。如果你发现栅极波形上有一些莫名其妙的共模干扰可以试着调整这个下拉电阻的取值但不要指望一个小电阻解决所有问题它毕竟不是EMC滤波器。另外如果你在三相桥六个MOS管上都放了下拉电阻这些电阻加在一起会形成一个额外负载。虽然总电流不大但在低功耗待机场景下这个泄漏路径也会消耗不必要的能量。6.2 反向恢复电流引发的高频振荡是栅极电阻调不好的重灾区有一种情况FOC驱动波形里出现频率特别高的振荡几MHz到十几MHz带载时特别明显栅极电阻加得再大也压不住这时候要怀疑续流二极管的反向恢复。当上管开通、下管还处于续流状态时下管体二极管外部肖特基或快恢复二极管存储的电荷需要被清除。这个反向恢复过程形成的电流尖峰会通过寄生电感产生高压振荡而这个振荡会耦合到另一个MOS管的栅极上形成串扰。尤其是在二极管恢复时间较长的情况下这种振荡更明显。处理措施包括换用反向恢复电荷更少的二极管、调整驱动时序的互补关系、在二极管上并联RC吸收电路。单独加栅极电阻可能只是把振铃从VDS上转移到了Vgs上不能治本。如果你在样机上看到两相桥臂之间的波形存在明显串扰先别急着调栅极电阻查查续流二极管的选型和吸收电路。6.3 FOC电流采样栅极波形没调好电流环先不干了FOC控制的核心是双电阻或三电阻采样采样点通常选在PWM周期的中心对齐时刻。此时三相低端MOS管导通采样电阻上的电压被ADC读取。问题在于开关边沿产生的振铃会通过地线或感应路径耦合进采样电阻回路导致采样值出现正负毛刺尤其是在PWM占空比较小或较大的极端工况下。这类问题表现为FOC电流波形上叠加了高频毛刺电机运转时噪声明显增大甚至出现电流环不稳。排查时要注意看采样电阻两端的波形而不仅是采样前后的信号调理输出。栅极振铃能直接污染采样信号所以调栅极电阻、调开关速度这项工作实际上是在为FOC电流环提供干净的测量环境。如果电流波形毛刺严重同时又抱怨栅极振铃压不下去那么问题也许是同一个只是你在两个环节分别看到了两面的症状。在调试顺序上我的建议是先让栅极波形达到基本可用状态无严重过冲、无持续振铃再处理FOC电流采样的问题。如果把电流采样的问题放前面你会耗费大量时间在处理信号调理电路的滤波上而忽略了源头。6.4 偶发振铃才是最危险的FOC驱动的负载不是固定不变的电机的反电动势、绕组电感、转速变化都会影响开关时刻的电流和电压。你在主板满载时测到波形是干净的但电机减速或堵转时可能会出现完全不同的一组振铃波形。所以在调试FOC驱动时不要只测一种工况也不要只测一个固定占空比。用示波器的统计功能和余辉模式长时间观察能帮你捕捉到偶发的异常振铃或过冲。如果发现偶发振铃可以用触发功能锁定异常波形看看它是在哪个扇区、哪个占空比、哪一相出现的。结合FOC算法输出的SVPWM状态来对照分析往往能快速定位是某个相桥臂的寄生参数偏大还是采样噪声引入的误触发。这个分析过程比较耗时但就像捉鬼一样看不到真面目之前调什么参数都没底。6.5 磁珠和RC吸收确认电阻调不动之后的下一步栅极电阻不是万能的这一点在前面已经反复强调过。如果你的波形在合理电阻范围内仍然不满足要求有几个额外的器件手段可以尝试。在栅极串联磁珠铁氧体磁珠是常见做法。磁珠在低频时呈低阻高频时呈高阻可以有效吸收高频振铃能量而不显著影响上升沿的初始斜率。FOC驱动中有经验的设计师会在驱动电阻前后串一个几十到几百欧姆阻抗的磁珠专门抑制米勒平台期的高频串扰。VDS回路的振铃则需要RC吸收电路也就是在MOS管的漏源之间并联一个串联的电阻和电容。这个RC支路的作用是给高频振荡提供一条低阻抗路径吸收开关节点上的振铃能量。R的典型值几欧到几十欧C的典型值几百皮法到几纳法。加了RC吸收电路之后开关损耗会略微增加但波形质量和EMC裕量通常能得到明显改善。用半导体器件分析仪或简单的阻抗测试可以粗略估算寄生参数和吸收电路的匹配关系。不过大多数情况下按照经验值先试几组C和R的组合再通过示波器观察振铃衰减效果就能很快找到合适的值。根据我个人做了多块FOC驱动板的经验栅极电阻的最终取值往往落在10到33欧之间同时配合一个几十欧的磁珠、在VDS上并联RC吸收振铃和EMC问题基本能控制住。真正需要加大到100欧以上的情况非常少见如果到了那一步建议回过头检查PCB布局和回路面积而不是继续在电阻上做文章。最后提醒一件事任何一次波形调试都要记录原始数据。把电阻阻值、示波器档位、振铃频率、过冲百分比、温升这几个关键参数记下来换板子换MOS管之后才能快速定位问题不然每次调试都是从零开始踩过的坑还会再踩一遍。
返回列表