Simulink双脉冲实验5分钟看透MOSFET续流二极管反向恢复

发布时间:2026/10/5 9:58:11
Simulink双脉冲实验5分钟看透MOSFET续流二极管反向恢复 做电源设计这几年我越来越觉得“反向恢复”这玩意儿属于那种你越是想靠看书弄明白越容易把自己绕晕的知识点。PN结少子存储、复合时间、反向恢复电荷……教材里每个字都认识但合上书你还是说不清楚它到底怎么影响你手里的板子。后来真正让我开窍的不是再刷一遍书而是在Simulink里搭了一个双脉冲实验电路亲眼看着二极管的电流波形在我面前“表演”了一次反向恢复。这篇文章就是用Simulink双脉冲实验带你5分钟看透MOSFET的续流二极管反向恢复。不需要实验室、不需要示波器、更不用担心炸管子只要一台装了MATLAB/Simulink的电脑把电路搭起来跑一把仿真就能直观看到反向恢复的电流尖峰、恢复时间和电荷量。适合电源工程师、电机控制器开发者、电力电子方向的学生以及所有想从“背理论”切换到“看波形”的同行。1. 反向恢复到底是什么为什么值得做双脉冲实验1.1 从续流二极管说起反向恢复现象的一天在Buck变换器、半桥逆变电路、电机驱动里几乎都有一类角色容易被忽略——续流二极管。当开关管关断、对侧管还没开通时电感里的电流不可能瞬间消失它必须通过一个二极管继续流动这就是续流。问题出在二极管并不是理想开关它正向导通时内部存储了大量电荷一旦两端电压反向它并不会啪一下关断而是会先流出一股反向电流把这些存储电荷“清理”干净之后才能真正关断。这个短暂的过程就是反向恢复。可以打个比方你往水渠里装了一个水闸水闸打开时让水畅快流过现在你突然要关闸可是闸门后面已经蓄住的水不可能瞬间消失还得继续泄一会儿才彻底断流。这股泄流就是反向恢复电流泄流的时间就是反向恢复时间。它发生在每一个开关周期里频率越高被这个现象吃掉的能量就越多产生的电压电流尖峰也越闹心。理解这个过程之后你就会发现反向恢复不只是二极管自己的事情。这股反冲电流会穿过正在开通的MOSFET在漏极电流上形成一个很高的尖峰还会在寄生电感上感应出电压振荡抬高开关管的电压应力增加损耗甚至成为电磁干扰的来源。所以理论上想得再熟练不如亲手把这个电流尖峰“勾”出来看一看。1.2 关键参数trr、Irr、Qrr要量化反向恢复业界最常用的是三个参数反向恢复时间trr、反向恢复峰值电流Irr、反向恢复电荷Qrr。trr是指二极管从正向导通转入反向阻断这段时间通常从电流过零点算起到反向电流衰减到规定比例比如峰值电流的10%或20%结束Irr是反向恢复过程中出现的最大反向电流Qrr是整个反向恢复过程中流过的总电荷等于反向电流对时间的积分。三个参数之间有个近似关系Qrr约等于0.5乘以Irr乘以trr。这个公式假设反向恢复电流波形接近三角形虽然实际波形往往带一条长尾巴但对于估算损耗和挑选二极管已经够用。真正重要的一点是Qrr直接反映这个二极管存储电荷的总量数据手册里通常会给而trr和Irr又决定了电流尖峰的大小和时间和EMI、驱动回路都有直接关系。我经常跟同事讲选型时如果只知道trr小是远远不够的。两颗二极管trr可能一样但Irr和Qrr完全不同实际开关损耗也会差很多。想要直观看出这些差异双脉冲实验是最合适的场景。1.3 双脉冲实验为什么能测出反向恢复双脉冲测试Double Pulse Test是电力电子里非常经典的实验它的核心逻辑就是用一组特别的驱动脉冲让被测开关管和二极管在一个极短时间内完成“开通-关断-再开通”从而观测最关心的开关瞬态。对于二极管反向恢复来说关键在于第二个脉冲到来之前二极管必须处于正向导通状态。整个双脉冲工作过程是这样的第一个脉冲到来时MOSFET导通直流电源通过电感给负载储能电感电流线性上升第一个脉冲结束时MOSFET关断电感电流无法突变转而通过续流二极管继续流动此刻二极管正向导通在短暂的间隔之后第二个脉冲到来MOSFET再次开通二极管两端突然加上反向电压必须从导通状态切换为阻断状态反向恢复就发生在这个瞬间。为什么要用两个脉冲而不是一直开开关关因为如果只有单脉冲二极管要么一直处于反向阻断要么一直正向导通始终缺少“正向导通突然变反向阻断”这个关键瞬态。双脉冲把这一段单独拎出来又让负载电流可控由第一个脉冲宽度决定所以能非常干净地观察反向恢复。这也是厂商数据手册里二极管和MOSFET开关特性的标准测试方法。2. 5分钟搭建Simulink双脉冲实验电路2.1 元件准备找到Simulink电力电子模块库先说明一下环境我用的是MATLAB/Simulink里自带的Simscape Electrical模块库老版本里可能叫SimPowerSystems或Specialized Power Systems。打开Simulink Library Browser之后在Simscape Electrical Specialized Power Systems Fundamental Blocks下面能找到绝大部分需要的元件包括MOSFET、Diode、电压源、电流源、测量模块等。你需要准备的模块包括DC Voltage Source直流电压源、MosfetMOSFET开关、Diode二极管、Series RLC Branch这里当电感用、Pulse Generator脉冲发生器准备两个、Add加法器、Voltage Measurement和Current Measurement电压电流测量、Scope。另外别忘了放一个Powergui模块没有它电路是无法仿真的。第一次搭的人容易犯的错是直接双击Diode发现参数特别少以为这就是个理想二极管。实际上Simulink的二极管模型需要选择合适参数化方式尤其是想要看到反向恢复效果必须确认模型支持反向恢复电荷参数。以较新版本为例双击二极管后在Main标签页里找模型类型或者参数化选项把二极管模型设置为包含Tt、Qrr这类参数的详细模型然后再填具体数值。不同的MATLAB版本界面略有差异但思路都一样不要让二极管停留在“理想开关”状态。2.2 电路连接与参数设计双脉冲实验的电路连接并不复杂我按从高压端到低压端的顺序说一遍。直流电压源正极接一个功率电感电感另一端接MOSFET漏极MOSFET源极直接回直流电源负极。续流二极管接在电感和MOSFET连接点与电源正极之间阴极接正极阳极接开关节点。这样当MOSFET关断时电感电流就可以通过二极管继续环流形成续流回路。给你一组可以直接用的参数直流电压Vin100V电感L100uHMOSFET和二极管先用默认模型二极管的导通压降设为1V左右反向恢复时间Tt或者Qrr按需设定。这里我建议把二极管的反向恢复时间Tt设到100ns左右如果你用的是带Qrr刻画的模型就设一个合理的电荷量否则波形里可能看不到明显的反向恢复。电容不是必须的但建议在直流母线两端加一个母线电容让母线电压在开关瞬态中更平稳。测量位置也要注意用Current Measurement串在MOSFET的源极或漏极测Ids再串一个电流表在二极管支路测二极管电流用Voltage Measurement并在MOSFET两端测Vds。这些信号全部进Scope观察的时候一起比对。2.3 双脉冲驱动信号生成与脉冲宽度计算接下来是重点怎么产生双脉冲。我习惯用两个Pulse Generator加一个Add模块一个是参数直观另一个是不用额外学Signal Builder这类工具。设置一个实际案例。目标电流10A直流母线电压100V电感100uH那么第一个脉冲宽度t1约等于I乘以L再除以V也就是10A乘以100uH除以100V算出来是10us。所以第一个Pulse Generator设为幅值1周期取200us脉冲宽度10us相位延迟0。这表示从0时刻开始MOSFET导通10us然后关闭。第二个脉冲要等第一个脉冲关断后让二极管先续流一段时间再接一个短脉冲。间隔时长t2需要注意太长时间电感电流会因为二极管压降和回路电阻而衰减影响测试准确性一般取几微秒到十几微秒。这里取5us第二个脉冲从15us开始宽度5us。所以第二个Pulse Generator设置为幅值1周期200us脉冲宽度5us相位延迟15us。两个Pulse Generator输出经过Add之后接到MOSFET的gate端就得到标准的双脉冲信号。这里有一个小细节Pulse Generator默认输出在第一个周期之前是0所以你不需要额外处理初始状态。但要注意仿真总时间不要设置成200us那么长那样会跑很多无用波形。把仿真停止时间设为25us左右刚好覆盖两个脉冲和反向恢复过程跑起来又快又干净。2.4 仿真求解器与步长设置细节决定成败模型搭完仿真参数比模型本身更关键。打开Configuration Parameters将求解器类型设为Fixed-step步长设到很小比如1e-8秒甚至更小同时在Powergui模块中选择Discrete离散模式采样时间同样设为1e-8或1e-7秒。这样做是因为开关瞬态分析需要时间分辨率足够高尤其是反向恢复电流可能只有几纳秒到几百纳秒步长太大等于直接把尖峰抹掉了。有朋友可能会问用默认的连续变步长不是更准确吗理论上连续求解器精度高但电力电子电路含有强非线性开关元件很容易出现收敛困难、仿真速度极慢的问题。我的经验是在双脉冲实验里用离散固定步长反而更稳只要步长取得足够小波形精度完全够观察反向恢复趋势。如果你用的是较新版本MATLAB记得把Powergui里的仿真类型切换成Discrete填好采样时间即可。注意不要用1e-6秒这种量级的步长跑双脉冲实验。反向恢复时间往往在百纳秒级别1微秒的采样间隔根本看不出来尖峰甚至会给你一个“反向恢复不存在”的错觉。3. 波形解读从示波器上认识反向恢复3.1 双脉冲波形全貌先从整体看分段仿真跑完打开Scope会看到三组或更多曲线。先看整体趋势驱动电压Vgs上有两个脉冲漏极电流Ids在第一个脉冲期间线性上升第一个脉冲结束后立刻降到0附近第二个脉冲期间Ids会突然冲高越过之前的电流值形成一个尖峰然后回落到负载电流附近。这个尖峰就是二极管反向恢复电流叠加到MOSFET电流上的结果。许多人第一次看到会觉得奇怪开关管第二个脉冲的电流怎么会比负载电流还高原因恰恰就是二极管在反向恢复期间把存储电荷“吐”给了开关管。把Vgs、Ids、Vds对照着看你会发现尖峰出现的位置正好是第二个Vgs上升沿之后一点点这就是反向恢复发生的时间窗口。把这个窗口单独放大是整个实验最有价值的部分。如果说第一个脉冲是在给系统建立初始状态那第二个脉冲的上升沿才是真正的“考题”二极管能不能在开关管开通瞬间顺利关断看这一眼就知道了。3.2 反向恢复参数提取从Ids波形中找到trr、Irr、Qrr要提取Irr看Ids波形上的峰值即可。由于Ids同时包含负载电流和反向恢复电流可以用峰值减去当时的负载电流水平即第二个脉冲开通前电感电流得到的差值就是近似的反向恢复峰值电流。如果你单独测量二极管支路电流那更直观直接读负向电流的最大绝对值就是Irr因为二极管反向恢复期间电流是反向的。trr的读取麻烦一点从二极管电流过零开始到反向电流衰减到一定比例峰值电流为止这段时长就是反向恢复时间。有些标准会按反向电流下降沿最大斜率点做切线和零轴交点作为恢复结束结果会比阈值法略短。仿真里我一般直接用阈值法简单重复性好。Qrr需要积分在Simulink里可以用Integrator模块对二极管反向电流部分做积分或者把Scope数据导出来到MATLAB工作区用trapz函数算。后面一种方法更灵活尤其你想批量分析多组参数时非常方便。这里补充一个实用技巧双击Scope的波形用光标读取两点坐标能快速估算trr和Irr。对精度要求不高的初步分析完全够用要精确提取就把数据导出到工作区用脚本算后面我会再提到。3.3 Vds波形与二极管电流对照反向恢复的完整故事只看Ids还不够把Vds和二极管电流放一起才能讲完整故事。第二个脉冲到来时Vds从母线电压开始跌落与此同时二极管开始反向恢复电流从正向续流掉头变成反向电流并很快达到峰值。随着恢复过程结束二极管恢复阻断能力反向电流消失Vds也进一步下降到接近饱和导通压降。很多实际设计里关心的电压过冲也发生在反向恢复结束的瞬间。因为反向恢复电流快速截止di/dt很大会在母线和回路寄生电感上感应出尖峰电压叠加在Vds上。这个现象在仿真里如果用了理想导线是看不见的要看到它可以在直流母线或二极管支路串联一个很小的高频寄生电感比如几纳亨到几十纳亨。我建议大家加上这个寄生电感因为真实电路里它确实存在而且往往就是它把开关管电压应力推高的。另外驱动波形Vgs上还能看到密勒平台。第二个脉冲上升沿时MOSFET正在导通过程中Vgs有一段近似水平的平台这是米勒电容充放电造成的。虽然本节重点是反向恢复但双脉冲实验同时测到栅极驱动行为所以你可以在同一个Scope里观察密勒平台这算是这套实验附赠的福利。4. 影响反向恢复的因素参数扫描与损耗分析4.1 驱动电阻如何改变di/dt与反向恢复反向恢复和开关管的开通速度是绑在一起的。MOSFET开通速度由栅极驱动电阻Rg决定Rg越大栅极充电越慢开通di/dt越小二极管反向恢复电流变化越平缓Rg越小开通越猛反向恢复电流尖峰越尖锐。在Simulink里做这个对比很简单。给MOSFET的Gate支路串联一个电阻Rg跑一次仿真记录Ids和Vds然后把Rg从2欧改成10欧或22欧再跑一次把两组波形放一起比较。你会发现大Rg时Irr明显变小但Vds和Id电流拖出来的开关时间变长意味着开通损耗可能反而增加。这就是一个典型的工程权衡想压尖峰就要付出损耗想降损耗就要承受尖峰设计时只能找平衡点。这也能解释为什么现代驱动电路里经常采用分段驱动或可调Rg方案让器件在该快的时候快该慢的时候慢。理解了反向恢复与Rg的关系之后你再去看那些高端驱动芯片的文档思路就清晰多了。4.2 二极管选型差异快恢复二极管与SiC二极管二极管本身的特性对反向恢复影响更大。硅基快恢复二极管通过掺金、铂等杂质和少子寿命控制技术把反向恢复电荷压得比普通PN二极管低但低到什么程度还取决于工艺。碳化硅SiC二极管是多数载流子器件没有少子存储效应反向恢复几乎可以忽略实际波形只剩下结电容充放电引起的很小电流振荡。在Simulink里复现这个对比最简单的方式是改二极管模型参数快恢复二极管保留一定Tt或QrrSiC二极管则把反向恢复相关参数设得很小或者关闭封装电荷。跑完对比你会发现SiC二极管支路的反向恢复尖峰又矮又窄开关管Ids波形明显更干净这是做高频高效率变换器时SiC器件的一大优势。顺便说一句如果你用的是带内部二极管的MOSFET模型要注意内部二极管也有反向恢复。很多MOSFET数据手册里专门给出体二极管反向恢复参数就是因为半桥电路死区时间内电流会流过体二极管它同样产生反向恢复损耗。实验时用外接二极管还是体二极管要看你想模拟的真实工况。4.3 温度对反向恢复的影响热起来会更严重温度是反向恢复的隐藏变量。硅二极管的少子寿命随温度升高而变长存储电荷更多反向恢复电流和恢复时间都会增大反向恢复电荷Qrr在一百多摄氏度的结温下可能比常温高出一倍以上。这就是为什么有些电源在常温下测试正常一旦满载温度上来开关管电流尖峰和EMI突然变严重的原因。仿真中要体现温度效应不太容易因为Simulink自带二极管模型默认是常温模型温度系数是一个半固定参数。但如果你的模型来自器件厂商或者用了热模型端口就可以设置结温。就算只是用自带模型你也应该把“温度会让反向恢复恶化”这个概念焊死在脑子里实际测试时记得在高温工况下复核波形不要只在25摄氏度下看数据。4.4 从波形估算开关损耗反向恢复与MOSFET损耗详解双脉冲实验另一个高频用途是测开关损耗。MOSFET一个开关周期的损耗粗略分成开通损耗、关断损耗和导通损耗其中开通损耗在大多数硬开关拓扑里都和反向恢复纠缠在一起。要想定量估可以在仿真里用Product模块把Vds和Id相乘得到瞬时功率再用Integrator对时间积分得到一次开通过程累计的能量。具体做法是把Scope记录的两个信号送到Product瞬时功率波形一般在第二个脉冲上升沿附近会有一个很高的尖峰这就是反向恢复贡献的额外损耗。将这个尖峰对应的能量积分出来和你用Qrr估算的理论值对照能对损耗构成有更清晰的认识。很多损耗计算工具里“二极管反向恢复损耗占总开关损耗比例”这个数值就是这么从波形里抠出来的。对于MOSFET自身双脉冲实验同样能测开通损耗和关断损耗做法是取相同窗口内的Vds乘以Id再积分。正因为一个实验能同时提取二极管反向恢复参数和开关管损耗它才成为电力电子工程师最常做的实测项目之一。5. 常见问题与排查技巧实录5.1 反向恢复尖峰太大示波器数据溢出第一个常见问题是设置合理但Ids尖峰大得离谱波形直接超出Scope显示范围或者数值大到不符合物理常识。这多半是模型里缺少寄生电阻和阻尼。真实电路里有引脚电感、回路电阻、电容ESR等寄生元素它们都会限制电流尖峰纯理想电路模型则容易让电流在纳秒级冲上天。解决方法是给母线、开关管和二极管回路加一些微小但真实的寄生参数比如母线串联一个0.1uH的杂散电感二极管串联一个0.2欧的寄生电阻开关管导通电阻设一个合理值。加完之后波形会从“理想又尖锐”变成“实际有圆角”这才贴近真实。同时要确保仿真步长足够小否则峰值可能因为采样点不够而被锯齿状畸变。5.2 波形振荡严重像得了帕金森很多人跑完仿真发现Vds和Ids振荡得乱七八糟持续几十微秒还不平息。这通常不是反向恢复本身导致的而是仿真模型里的LC谐振回路缺少阻尼或者说你把寄生电感、电容搞得太大而回路电阻又太小。处理办法有三个一是检查Pulse Generator周期和仿真总时间如果总时间达到几百微秒波形里可能包含了一些低频振荡成分把显示窗口缩小到20us以内再看二是在二极管和MOSFET两端并联一个很小的RC吸收电路比如100pF串联10欧能明显抑制高频振荡三是重新考虑母线电容位置仿真里如果母线电容离开关节点太远也会因为连接线电感制造出额外振荡。记住观察到一点点振荡是正常的重点是第二脉冲上升沿之后的第一个恢复周期的形态后面那些细碎振荡可以忽略。5.3 怎么都看不到反向恢复问题出在哪有朋友照着教程搭完发现Ids波形平平整整一点反向恢复尖峰都没有。十有八九是二极管模型被设成了理想模型。Simulink自带的Diode模块如果当前参数化方式里没有启用反向恢复特性它就是一个近似理想开关根本不会存储电荷自然就没有反向恢复。检查路径是双击Diode查看参数化区域找到反向恢复相关参数比如Tt、Qrr、RC等确保它们不是零。我遇到过一种情况所有参数都对但仿真的离散步长太大——100ns的恢复过程被1us的采样点彻底漏掉了。把Powergui采样时间和求解器步长同时降到1e-8秒反向恢复尖峰立刻就冒出来了。所以看到不到波形不要怀疑物理现象不存在先检查模型类型和时间分辨率。如果二极管没有设反向恢复参数波形里永远不会出现尖峰。先确认Diode模型类型再确认仿真步长九成“看不到恢复”的问题都是这两个原因。5.4 测量方向容易搞混二极管电流显示反了Simulink里的电流测量模块是有方向的箭头方向代表正方向。测二极管电流时如果电流表方向和元件方向一致那你看到的波形在正向续流阶段是正的反向恢复阶段是负的如果方向接反反向恢复会显示成正向尖峰很容易把Irr误读成普通负载电流。所以搭建模型时要刻意确认电流表箭头方向二极管电流的正方向建议定义为阳极到阴极也就是正向导通方向。这样做有一个好处你在Scope里一眼就能分辨哪一段是续流、哪一段是反向恢复不用每次都想半天。电压测量虽然没有方向但要注意参考点Vds的测量建议直接并在MOSFET的D-S两端不要用相减的方式去间接算那样反而容易引入噪声。5.5 进阶玩法参数扫描与批量提取最后分享一个我很喜欢的扩展玩法。我习惯把模型里二极管的反向恢复电荷Tt和驱动电阻Rg抽出来用MATLAB脚本循环赋值每次跑完后自动把Ids数据导进工作区再对反向恢复时间窗口做处理提取Irr、trr、Qrr并整理成表格。这样一来二极管选型对比就有了量化依据而不只是靠直觉。Simulink双脉冲实验最让我受益的不是它能替代实验室而是它让我能把最微小的物理过程放大了反复观察从“背理论”变成“看懂了”。下次你再遇到反向恢复相关的损耗、尖峰或者EMI问题别急着翻书先搭个双脉冲仿真看看波形很多之前想不通的参数关系自己就顺了。这也是为什么我一直建议周围的人接触新器件时先花几分钟跑个双脉冲比硬啃理论高效得多。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询