ARTICLE DETAIL

资讯详情

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

DAB变换器ZVS原理与LTspice波形判别实战指南

DAB变换器ZVS原理与LTspice波形判别实战指南 1. DAB变换器为什么非盯“软开关”不可1.1 DAB的基本结构与功率传输逻辑DAB变换器全称双有源桥变换器Dual Active Bridge拓扑上就是原边一个全桥、副边一个全桥中间隔着一个高频变压器。两边的全桥都是由四个开关管组成的原边全桥把直流电压变成高频方波副边全桥再把高频方波整流回直流。但这里有个关键动作原边方波和副边方波之间并不是同相的而是有一个可以控制的相位差这个相位差就是我们常说的移相角。这个移相角是整套系统的灵魂。两个方波之间的相位差不为零时变压器原副边之间就存在电压差这个电压差作用在漏感和外加串联电感上就会产生一个电流。电流的大小和方向直接由移相角决定所以DAB变换器的功率传输方向就是双向的移相角为正功率从原边流向副边移相角为负功率反向。传输功率的大小可以用(DAB的经典功率传输公式)来估算P (n·Vin·Vout·φ·(π − |φ|)) / (2·π²·fs·L)。其中n是变压器变比φ是移相角弧度fs是开关频率L是等效串联电感。这个公式告诉我们几个很实际的事情第一移相角为零时功率为零移相角增大到π/2附近时功率达到最大值第二开关频率越高能传输的功率越小第三等效电感L越大能传的功率越小。所以做DAB设计的第一个核心任务就是把L和移相角的工作范围匹配好既不能太小导致电流尖峰太大也不能太大导致功率出不去。我见过不少刚接触DAB的工程师一上来就把注意力放在控制策略或者拓扑结构上结果卡在最基本的“软开关判别”上仿真波形一大堆却说不清楚自己做的到底是ZVS还是硬开关。说实话这个问题如果不搞透后面调效率、调EMI全是瞎摸。这个判断能力比会搭电路更基础也更重要。1.2 ZVS的本质电压先归零栅极后到达ZVS零电压开关字面意思就是在开关管两端电压为零的时候进行开关动作。放到实际波形上看最核心的判据就一条在开关管Vgs上升沿到来之前它的Vds必须已经降到0。注意这里说的是“之前”不是“同一时刻”更不是“之后”。这个顺序为什么重要因为开关管开通瞬间的损耗大致等于Vds和Id在开关过程中的重叠面积。如果Vds先降到0管子开通时两端没有电压电流怎么流都不会产生开通损耗如果Vgs到达时Vds还很高那管子就是带着高压硬开通电流在高压下建立起来这个过程中Vds×Id的重叠面积就是实打实的开关损耗频率越高损耗越大散热越难做。更深一层的物理过程是这样的死区时间内桥臂中点通过电感电流对即将开通的开关管输出电容Coss进行放电。当Coss上的电荷被完全抽走Vds降到0体二极管自然导通把Vds钳位在0。这时候再给栅极信号管子就在零电压状态下打开了。所以从波形上看ZVS的完整指纹是Vds先下降降到0后维持一段水平平台然后Vgs才上升。这段“Vds0且Vgs还没来”的平台时间就是ZVS裕量。平台时间越长ZVS越稳。这里我得提醒一句很多人只看Vds有没有“降下来”就断言是ZVS这是不对的。硬开关状态下Vds在Vgs到来之后也会降下来只不过那时候管子已经导通电压是被强拉下来的而不是通过谐振电流自然放电完成的。两者的波形形状完全不同但如果你只截取一小段看很容易看走眼。所以后面我会详细讲到底怎么用LTspice的波形正确区分这两者。2. LTspice仿真电路怎么搭才算“能看ZVS”2.1 功率管模型带Coss、带体二极管的模型我们来解决一个最容易踩的坑用理想开关模型搭的DAB仿真根本看不到ZVS。LTspice自带的SW模型就是一个受控开关导通和关断都是瞬时的没有结电容没有体二极管也没有开关过渡过程。用它看波形Vds就是一条直上直下的方波死区时间里桥臂中点电压完全取决于电感电流方向根本看不出Coss充放电的过程。这种模型做控制逻辑验证没问题但想做软开关分析完全不行。所以搭ZVS仿真电路功率管最低要求是有输出电容Coss至少要有结电容参数有反并联体二极管有真实的开关延时特性。LTspice里满足这个要求最简单的办法是用内置的MOSFET模型比如NMOS。你不需要用具体型号直接写一个.model语句就能定义出带Coss的功率管。下面是一个我常用的简化功率MOSFET模型示例.model DAB_MOS NMOS( Level1 VTO3.5 KP10 RD0.01 RS0.01 CJO600p VJ0.7 M0.5 PB0.7 TT50n IS1e-12 )这里最关键的是CJO参数它代表零偏压下的结电容也就是我们常说的Coss的核心部分。CJO600pF意味着Vds在0附近时输出电容有600pF左右实际工作中随着Vds升高电容会按VJ和M的曲线关系下降。这个模型虽然没有厂家手册里那些精细参数但用来做ZVS机理分析已经足够了。如果你想用真实厂家模型比如英飞凌的MOSFET那就要涉及模型导入了。做法是先去官网下载对应型号的Spice模型文件通常是.lib或者.sub后缀放到工程目录下然后在原理图里添加一个SPICE directive写上.include 文件名.lib。之后放置器件时在Component里找到对应的.subckt名字或者直接用文本网表引用。导入成功的关键检查点运行仿真后打开SPICE Error Log确认没有“Unknown symbol”或者“Failed to parse”之类的话最好在网表里能看到模型被正常展开。很多新手卡在模型导入这步往往不是步骤不对而是下载的.lib文件依赖了其它子文件或者加密文件在非官方Spice版本下无法解析。另一种思路是用理想开关加外部并联电容和外部二极管自己搭一个“准MOSFET”。具体做法是用一个SW模型再在D极和S极之间并一个固定电容模拟Coss再在外部并联一个二极管模拟体二极管。这个方案的好处是Coss值完全可控适合做理论验证坏处是电容是线性的不会随Vds变化和真实器件有偏差。2.2 变压器、漏感和驱动信号的参数设置DAB仿真里变压器的建模也是老生常谈的问题。最省事的方法是用两个电感加一个耦合系数K来模拟理想变压器。比如原边电感量L1100μH副边L2100μH变比就是1:1如果想做变比1:n就把两个电感量比值设成1:n²。耦合系数K1设置成1理想耦合然后在原边或者副边串联一个电感Lleak用来模拟漏感。整个DAB的等效串联电感L就是这个漏感和外加串联电感的和。下面是我搭DAB仿真时常用的参数表这套参数在100kHz左右工作频率下能比较清晰地看到ZVS现象参数数值说明输入电压Vin400V原边直流母线输出电压Vout400V副边直流母线忽略变压器变比时为1:1开关频率fs100kHz周期10μs半周期5μs等效串联电感L20μH漏感外加电感功率传输公式中的L变压器耦合系数K1理想耦合漏感通过外置电感模拟死区时间td150ns上升下降切换之间的间隔移相角φ30°约0.524 rad对应中等功率传输MOSFET的CJO600pF模型中的输出电容参数负载电阻Rload30Ω对应约5.3kW传输功率驱动信号是另一个容易翻车的地方。DAB四个开关管原边Q1-Q4副边Q5-Q8的驱动需要用PULSE电压源逐路生成并且要严格保证上下管之间的死区时间。比如原边A桥臂上管Q1的Vgs是一个方波下管Q2的Vgs应该是Q1的互补信号并且之间有死区。这里的死区绝不是“少导通了几个纳秒”那么简单它是ZVS实现的核心时间段Coss充放电全在这段时间里发生。驱动信号写错后面全是白搭。PULSE源的写法要注意几个参数初始电压Vinitial、导通电压Von、延迟时间Tdelay、上升时间Trise、下降时间Tfall、导通脉宽Ton、周期Tperiod。比如Q1在0时刻开始导通占空比50%这里简化处理实际移相全桥占空比会小一点点周期10μs那么Ton大约4.95μs留出死区Trise和Tfall都设成10ns左右模拟栅极驱动实际速度。副边桥的驱动就是在原边基础上加一个时间偏移对应移相角φ偏移时间 φ/(2π·fs) 0.524/(2π·100k) ≈ 834ns。用PULSE的Tdelay参数就能实现这个偏移。2.3 LTspice操作技巧多波形显示、测量与文件管理仿真搭好了接下来就是怎么把波形调出来看。这里分享几个LTspice里非常实用的操作不仅能提升效率还能避免很多误判。多波形对比是判断ZVS的基础。默认情况下LTspice把所有选中的节点电压画在同一个坐标系里如果Vds是400VVgs是15V两者画在一起Vgs几乎就是一条贴在0轴上的线根本看不清楚。解决办法是使用多个Plot Pane在波形图窗口右键选择“Add Plot Pane”然后把不同节点电压拖到不同窗格。或者更直接一点先在一个窗格画Vds然后在另一个窗格里用光标点到节点电压后按Ctrl键拖进去。我个人习惯是每个桥臂用一个窗格同时显示上管的Vds和下管的Vgs这样一眼就能看出驱动和电压的关系。波形光标测量也是必须掌握的技能。默认情况下LTspice底部会显示光标坐标值按快捷键可以直接添加光标在Windows上是Shift左键拖动某个信号。两个光标之间的时间差会显示在右上角这个差值就是我们要判断ZVS顺序的关键数据。还有一个我强烈推荐的做法用.meas命令做批量测量让LTspice自动帮你判断每个周期到底是软还是硬。比如.meas TRAN vds_zero WHEN v(mos_drain)10 FALL1 .meas TRAN vgs_rise WHEN v(mos_gate)5 RISE1 .meas TRAN zvs_margin vds_zero - vgs_rise这里假设mos_drain是该管漏极节点mos_gate是栅极节点。如果zvs_margin大于0说明Vds在Vgs之前已经降到10V以下ZVS裕量为正如果小于0说明Vgs先到管子是硬开通。跑完仿真后在View菜单里打开SPICE Error Log就能看到测量结果列表。这个方法配合.step扫描特别好用后面讲参数调优时还会用到。另外一个经常被问到的问题LTspice保存文件时工程文件夹里多出来好几个文件。这些是什么其实很常见.raw是波形数据文件.log是日志文件.net是网表还有可能有个.asc的后备文件。这些都是LTspice自动生成的.raw是仿真结果不是垃圾.log是运行日志模型加载报错信息能从这里看到.net是自动生成的电路网表用于Spice引擎计算。所以看到多出来的文件不用慌张也不用去删它们各有各的用途。3. 波形判别实战软开关和硬开关的“眼力训练”3.1 软开关的波形指纹Vds先归零Vgs后到达现在到了本文的核心环节怎么从LTspice波形上一眼看出ZVS。前面说过判据的核心是顺序关系。我先把完整的ZVS波形特征列出来然后逐个解释物理意义。以原边A桥臂上管Q1为例在一个完整的开关周期里Q1的Vds波形应该呈现这样的特征在Q1关断后Vds开始迅速上升这部分是Coss充电和桥臂中点电位翻转的过程然后进入死区时间此时Vds保持在高位但就在死区时间结束前的某一刻Vds开始下降并且一路降到0之后Vds持续为0维持一小段时间再然后Q1的Vgs上升沿才出现。这个过程中最关键的就是Vds降为0的时刻必须早于Vgs的上升时刻两者之间的时间差就是ZVS裕量。为什么Vds会降为0因为死区时间里电感电流方向是“抽走”Q1的Coss电荷的。当Q2关断、Q3、Q4还在导通时桥臂中点的电流会持续流出这个电流流过Q1的Coss把电容上的电荷放光Q1的Vds自然降到0。降到0之后电流没有别的路径可走就通过Q1的体二极管继续导通把Vds钳位在0左右。这个“体二极管导通钳位”的阶段就是Vds在0V处的那个水平平台。所以ZVS波形里Vds的0V平台长度基本上等于体二极管导通时间平台越长说明ZVS裕量越大设计越稳。判断时还有一个辅助指标Vds下降的斜率。在软开关情况下Vds下降是Coss通过恒定电流放电的过程而Coss本身是非线性的高压时电容小低压时电容大所以Vds下降初期比较快接近0V时变缓整体是一个类似指数下降的曲线但不会出现突然跳变。如果Vds下降极其陡峭像一条竖直线一样砸到0那多半不是ZVS的自然放电而是管子被强行开通拉低的硬开关特征。3.2 硬开关的波形指纹Vgs到了Vds还在高位硬开关的波形特征同样非常明显只要你知道看哪里。继续以Q1为例Q1的Vds在死区时间内基本保持在高位没有出现向0V下降的趋势到死区时间结束Vgs上升沿到来此时Vds依然接近母线电压管子被栅极驱动强制开通导通电阻突然变小Vds被强拉下来从一个高位瞬间跌到0。这个Vds下跌的过程是伴随着大电流建立同步发生的Vds和Id的重叠就造成了开通损耗。在LTspice里看硬开关波形最直观的印象是Vds的下降沿和Vgs的上升沿挨得非常近甚至Vds是在Vgs之后才开始明显下降。如果用光标测量你会得到zvs_margin为负数的结果——Vgs的上升时刻反而比Vds降到阈值电压的时刻更早。这个顺序反了就是硬开关。还有一个容易被忽略的信号Ids漏极电流。硬开关时由于开通瞬间Vds还很高对桥臂中点而言这是一个突然的电压变化会在寄生电感和电容上激发高频振荡。在电流波形上往往能看到一个明显的尖峰或者振铃。这个振铃在软开关时基本不会出现因为Vds先降到0了电压变化本身是在死区里平缓完成的开关动作时并没有剧烈的dv/dt。所以如果你在LTspice里观察到开关管电流波形上有明显的开通尖峰即使Vds波形看起来“好像提前降了”也要回头仔细检查一下顺序。这里要特别提醒一个工程上常见的误判场景有人看波形时习惯把上管Vds和下管Vds放在同一个图里。因为上下管是互补导通的上管Vds为高时下管Vds正好为0。如果眼睛一花把下管的“Vds为0平台”当成了正在判断的那只管子的ZVS平台就会得出完全相反的结论。这是最典型、也最容易犯的错误——你以为是上管ZVS其实你看的是下管已经处于导通状态的那半段波形。判断ZVS时一定要盯着将要开通的那只管的Vds和它自己的Vgs不能混着看。3.3 让LTspice帮你“数微秒”光标用法与.meas批量判断波形肉眼看久了容易累而且不同工作点之间很难做横向比较。这里我给出一个标准的测量流程配合前面说的.meas命令可以做到全自动的ZVS判别。第一步手动测量。在波形窗口把Vgs和Vds放在同一个窗格里用光标分别测量两个时刻Vds第一次降到10V以下的时刻记为t_vds0以及Vgs上升到阈值电压一般取5V或10V看驱动电平的时刻记为t_vgs。两者相减正数就是ZVS裕量。实际操作中我一般取Vgs上升沿到达“米勒平台”附近的时刻但用阈值附近也够用因为判断软硬开关的边界条件没那么敏感。第二步批量测量。在仿真中添加.meas指令让LTspice自动做上述计算。注意上文的.meas语法里WHEN后面跟条件表达式FALL1表示第一次下降沿RISE1表示第一次上升沿。如果仿真包含多个周期可以加TD参数或者用“FROM”和“TO”限定测量窗口.meas TRAN vds0_before_vgs FIND time WHEN v(mos_drain)10 FALL1 TD0.8m第三步配合.param和.step做参数扫描。比如想看不同死区时间对ZVS裕量的影响可以写.step param tdead 50n 250n 50n .meas TRAN t_vds0 WHEN v(mos_drain)10 FALL1 .meas TRAN t_vgs WHEN v(mos_gate)5 RISE1 .meas TRAN zvs_margin t_vds0 - t_vgs跑完之后打开SPICE Error Log你会看到每个死区时间对应的zvs_margin值。正值代表软负值代表硬。这个表格配合波形图一起看比一张图一张图去翻高效太多了。4. 从波形反推参数怎么把硬开关调成软开关4.1 ZVS条件背后的物理死区电流必须够“猛”搞清楚怎么判断之后接下来就是硬核问题我的仿真显示硬开关怎么调参数才能变成ZVS要回答这个问题先要理解ZVS实现的物理条件。在死区时间td内桥臂电感电流需要把即将开通的开关管的Coss电荷全部抽走。这个过程可以简化成一个电荷守恒公式电感电流在死区时间内的积分必须大于等于需抽取的总电荷。近似写成I_zvs_min × td ≥ 2 × Coss × Vin这里的2是因为在桥臂拓扑中同一个桥臂上下两个开关管的Coss是串联关系死区切换时一个管子关断另一个管子的Coss要从0充到Vin而即将开通的管子Coss要从Vin放到0两者总共涉及到约2×Coss×Vin的电荷转移。有的教材按4×Coss算是考虑了不同拓扑状态下两侧电容的详细充放电过程。工程上我习惯先用2倍做估算留足裕量正式设计时再用仿真验证。用前面那套仿真参数算一下Vin400VCoss按CJO600pF这里注意Coss会随电压下降实际等效电容可能更小先用600pF做保守估算td150ns。那么最小ZVS电流I_zvs_min 2 × 600p × 400 / 150n 3.2A也就是说在死区开始时桥臂中点流过的电流必须至少3.2A才能保证在150ns内把Coss电荷抽完。如果电感电流在这个时刻小于3.2AVds就降不到0管子就会硬开通。这里就能解释一个典型的工程现象为什么DAB在轻载时特别容易丢失ZVS。因为移相角小时传输功率小电感电流的峰值也小死区时桥臂中点电流不够大电荷抽不完Vds自然降不到0。所以轻载ZVS丢失几乎是DAB的“天生脾气”不是电路出了故障而是设计边界没有覆盖到这个工况。4.2 死区时间、移相角和电感量怎么配合调整知道了最小电流条件调整手段就清晰了无非是三条路调整死区时间、调整电感电流、调整Coss电荷量。第一死区时间不能小。如果td太小给Coss放电的时间窗口不够哪怕电流够大也白搭。但是死区也不能一味加大死区太长会导致两个问题一是占空比损失实际加到变压器上的电压伏秒数减少二是电流在死区后期可能反向如果死区里电流方向翻转了原本“抽走电荷”变成“反向充回电荷”Vds又会再次升高反而丢失ZVS。所以死区时间有一个最优区间下限是Coss充放电所需时间上限是电流方向保持正确的时间。工程上常用“Coss充放电时间的1.5到3倍”作为初始设定再从波形微调。第二增加电感电流。这有两种手段提高传输功率增大移相角或者增加无功环流。增大移相角是治标因为轻载时你不可能为了ZVS强行加大输出功率。增加无功环流则是通过加大励磁电感电流或者引入额外的环流分量让轻载时桥臂中点电流依然够大。具体到DAB常见做法是调整变压器励磁电感让它承担一部分“额外电流”或者采用扩展移相、双重移相等调制方式人为增加一点环流。在LTspice里快速验证就是调大等效串联电感L或者调高开关频率fs都会改变电流波形幅度。第三Coss电荷量。这基本由管子选型决定但仿真时可以通过修改CJO参数快速看到影响。CJO越大ZVS越难实现CJO越小越容易实现。所以高频DAB往往选Coss小的管子牺牲一点点导通电阻的指标换来更好的软开关特性。4.3 参数扫描在LTspice里的用法说到调参用LTspice做参数扫描是最高效的手段。比如我想看死区时间从50ns扫到250ns每步50nsZVS裕量怎么变就写一个.step语句。跑完之后可以在SPICE Error Log里看到每个td对应的zvs_margin。我实际扫过几次后发现死区从50ns加到150ns时ZVS裕量几乎是线性增加的但到了200ns以上裕量增长变缓甚至开始下降这就是电流方向反转在起作用了。同样的方法也可以用在参数配合上。比如我想同时扫描死区和移相角看哪个组合在轻载小移相角下还能保住ZVS可以嵌套两个.step.step param tdead list 80n 120n 160n .step param phi_deg list 10 20 30然后根据.meas输出的zvs_margin表找出在最小phi下zvs_margin仍然为正的tdead区间这个区间就是你的死区设计窗口。整个过程不需要一张图一张图地翻全部由LTspice在后台算完最后看一眼测量结果就行。这个流程再往后推一步可以做成一个“ZVS边界扫描工具”把移相角从0扫到最大记录每个工作点下的zvs_margin哪些点值为正哪些点为负一清二楚。DAB的软开关范围图ZVS区域图基本就是这么画出来的。5. 常见波形误判与排查实录5.1 三个最容易“看起来像软开关”的陷阱第一个陷阱前面已经说过看错管子。把下管的Vds为0的时间段误认为上管正在ZVS。这在上下管Vds波形叠加显示时特别容易发生。解决办法是不要贪图方便把上下管Vds放同一个窗格要用两个窗格分别显示或者干脆只显示你要判断的那只管子的Vds和Vgs没别的波形干扰最少。第二个陷阱理想开关模型产生的假象。用SW模型或理想受控开关Vds切换是瞬时的你看到Vds“在Vgs之前变成0”很可能只是半周期翻转的结果没有任何Coss充放电过程谈不上ZVS。判断一个模型适不适合做ZVS仿真最简单的办法是看死区时间内Vds有没有“缓慢”的过渡如果有充电/放电斜坡说明模型带结电容结果可信如果Vds是直角翻转那模型根本没把关键物理过程建模进来。第三个陷阱把漏感电流的过零误当成ZVS。DAB的漏感电流是三角波或类正弦很多人会盯着电感电流看“电流过零时刻”来推断ZVS。但电感电流过零点并不意味着开关管Vds已经归零。真正要看的永远是开关管自身的Vds-Vgs时序电感电流只作为辅助参考。5.2 LTspice仿真设置步长、初值、模型导入ZVS窗口通常在几十到几百纳秒如果仿真最大步长设得太大Vds下降沿根本画不细甚至会因为采样点不够而“看起来”提前降到了0。我见过有人用默认步长跑DAB波形上Vds下降沿特别陡误以为是硬开关其实把步长改小后下降沿前面还有一段平缓的放电过程那才是软开关。建议所有涉及ZVS的仿真都在.tran指令里显式限制最大步长.tran 0 2m 1.8m 20n其中0是起始时间2m是总仿真时长1.8m是开始保存波形数据的时间跳过启动瞬态20n是最大步长。20ns对于100kHz、死区150ns级别的ZVS仿真来说足够看清过渡过程。如果还想更精细可以设5n但仿真时间会明显拉长。模型导入的问题前面提过。这里再补充一个实际排查经验如果导入厂家模型后仿真变得异常慢或者不收敛先检查是不是所选型号的封装里包含了多个并联的die或者复杂的封装寄生参数这些在功率级系统仿真里往往没必要。可以在.lib文件里找到对应的.subckt把里面的Gate charge等效电路、封装电感等非必要部分注释掉只保留理想的MOSFET核心部分。这一招对提升仿真速度非常有效。另外很多人初次用LTspice会遇到的“保存文件多出来几个文件”的问题我前面说过.raw是波形数据.log是运行日志。但这里有一个坑如果你改了原理图但没重新运行仿真.raw还是旧的波形数据你看到的波形和当前原理图可能对不上。所以动过参数之后务必重新跑仿真不要盯着过期波形做判断。5.3 从仿真到实验板别把“仿真ZVS”当成板上ZVS最后聊一个从仿真走向实物时经常踩的坑。仿真里的Coss是理想模型参数但实物MOSFET的Coss是强非线性器件高压下电容值会大幅缩小仿真里的驱动信号是理想电压源直接驱动实验板上的驱动经过栅极电阻、驱动器延时实际到达管子栅极的时间会滞后几十纳秒。这些因素叠加起来会出现“仿真波形完美ZVS上机一测变硬开关”的情况。所以我的习惯是仿真中ZVS裕量至少留50%以上的余量。比如你设计目标死区150ns仿真里Vds在Vgs前100ns就已经降到0这个裕量我才会认为靠谱如果仿真里Vds刚好在Vgs前20ns降到0那板子上十有八九是硬开关。因为驱动延时、PCB走线寄生电感、电容非线性任何一个因素都能吃掉这20ns的裕量。另外实验板上判断ZVS测量方法本身也有讲究。Vds要用差分探头测不能直接用普通探头夹在源极和地之间因为功率回路的共模噪声会直接把波形污染掉。Vgs同样要用隔离探头或者差分探头而且探头的带宽至少要足够覆盖开关频率的20倍以上。很多时候不是电路没有实现ZVS而是你测出来的波形本来就是错的。5.4 从“一眼看出”到“批量判断”建立一个可复用的ZVS判据模板写到这里我再把自己的工作流完整梳理一遍给大家一个可以直接抄作业的模板。新建一个LTspice仿真文件后我会把下面这套.meas语句直接复制进去作为标准配置.model DAB_MOS NMOS(Level1 VTO3.5 KP10 RD0.01 RS0.01 CJO600p VJ0.7 M0.5 PB0.7 TT50n) Vgs1 ... PULSE(0 15 0n 10n 10n 4.95u 10u) ... .tran 0 2m 1.8m 20n .step param tdead list 80n 120n 160n .meas TRAN t_vds0_q1 WHEN v(q1_d)10 FALL1 TD1m .meas TRAN t_vgs_q1 WHEN v(q1_g)5 RISE1 TD1m .meas TRAN zvs_q1 t_vds0_q1 - t_vgs_q1 .meas TRAN t_vds0_q5 WHEN v(q5_d)10 FALL1 TD1m .meas TRAN t_vgs_q5 WHEN v(q5_g)5 RISE1 TD1m .meas TRAN zvs_q5 t_vds0_q5 - t_vgs_q5这里q1_g、q1_d是Q1的栅极和漏极节点名q5对应副边桥臂。只要zvs_q1和zvs_q5都大于0说明原副边在这个工作点上都实现了ZVS。如果其中一个为负就针对那个桥臂单独调死区或者移相角。这套流程我反复用了很多次比任何波形截图都直观也更容易在不同设计之间做横向对比。再看一眼波形补充一个实操小技巧LTspice里波形颜色默认是自动分配的多波形时容易混淆。建议右键每个信号在“Color”里手动指定颜色Vds统一用红色Vgs统一用蓝色这样看图时扫一眼颜色就能分辨是什么信号不用再逐个看图例。这个习惯养成之后看复杂波形速度快很多。我自己的切身体会做DAB这一年多最受益的一个习惯就是把每一次参数调整的.meas结果都记录下来积累久了就能形成一张自己这台机器的“ZVS边界地图”什么负载、什么频率、什么死区下能软什么条件下会硬心里清清楚楚。波形从来不会骗人但人眼的疲劳和惯性会骗人让LTspice替你测量、替你判断是最稳妥的做法。希望这篇实战笔记能让你少走几步弯路也欢迎在实际操作中遇到奇怪的波形时多回头看看Vds和Vgs的顺序关系——答案通常就藏在那几个纳秒的先后里。
返回列表