3、死区时间优化理论
死区时间,说白了就是上下管切换时那段「谁都不导通」的安全间隔。我刚开始做GaN驱动时,觉得死区设大点更安全,结果效率掉得让我心疼。后来才明白——死区时间不是越大越好,也不是越小越好,而是刚刚好。
3.1 最小死区时间约束条件
死区时间能缩到多小?这不是拍脑袋定的。有三个硬约束你必须考虑:
- 驱动芯片的传输延迟:从PWM信号发出到实际驱动GaN管动作,中间有几十纳秒的延迟。不同芯片延迟还不一样,我踩过坑——同一批板子,换了驱动芯片批次,死区就不够了。
- GaN器件的关断延迟:GaN管从栅极电压降到阈值以下到完全关断,需要时间。这个时间随温度变化很大,高温下会变慢。
- 死区时间的不对称性:开通和关断的延迟通常不一样。我习惯取两者最大值,再加20%的余量。
最小死区时间公式(经验版):
t_dead_min = t_delay_driver + t_off_GaN + t_margin
其中 t_margin 我一般取 10-20ns。GaN器件开关快,余量太大反而浪费性能。
举个例子。我去年做的一个48V电机驱动项目,驱动芯片延迟标称25ns,GaN管关断延迟约15ns。按公式算:25+15+15=55ns。实际测试时,我把死区设到50ns,结果出现了短暂的直通——波形上能看到一个尖刺。后来调到60ns才稳定。嗯,这里要注意:数据手册上的值都是典型值,你得按最差情况来算。
3.2 基于负载电流的自适应死区时间原理
为什么要自适应?因为死区时间的最佳值不是固定的。电机低速时电流小,死区影响不大;高速大电流时,死区造成的电压畸变就很明显了。
自适应死区时间的核心思路很简单:根据负载电流大小动态调整死区时间。电流大时缩死区,电流小时放宽点。
具体怎么实现?我常用的方法是查表法:
- 采样当前相电流,取绝对值
- 根据电流值查预存的死区时间表
- 将查到的值写入定时器寄存器
我的经验:查表法虽然简单,但要注意更新时机。我建议在PWM周期开始时更新死区时间,避免在开关过程中改变导致异常。
为什么会这样?你想想看,电流过零附近,死区时间对电压的影响最大。这时候如果死区设得太大,输出电压波形会严重畸变,电机噪音大、效率低。我曾在某个项目中遇到过——电机在轻载时嗡嗡响,查了半天,就是死区时间没做自适应。
自适应死区时间的另一个好处是:可以降低对死区时间精度的要求。因为电流小时死区放宽点也没关系,电流大时自动收紧,整体性能反而更稳定。
3.3 死区时间与开关损耗的权衡
这是个老生常谈的问题,但在GaN驱动中尤其关键。Ga管开关速度快,死区时间哪怕多10ns,损耗差异都很明显。
死区时间对损耗的影响主要有两方面:
- 死区时间越大,体二极管导通时间越长。GaN管的体二极管压降比Si MOSFET大,正向压降约2-3V。这意味着死区期间的能量损耗不容小觑。
- 死区时间越小,开关损耗越低。但太小了会直通,直通损耗是灾难性的——我见过一次,MOSFET直接冒烟。
| 死区时间 | 体二极管损耗 | 直通风险 | 综合效率 |
|---|---|---|---|
| 过小(<30ns) | 低 | 高 | 可能极低(直通时) |
| 适中(50-80ns) | 中等 | 低 | 最优 |
| 过大(>150ns) | 高 | 极低 | 下降明显 |
我个人习惯的做法是:先保证安全,再优化效率。具体来说:
- 先按最小死区时间公式算出理论值
- 实测验证,确保没有直通
- 逐步减小死区时间,每次减5ns,测效率变化
- 找到效率拐点,再往回加10ns作为安全余量
避坑指南:我曾经为了追求极致效率,把死区时间压到刚好不直通的临界值。结果温度一上来,GaN管关断变慢,直接炸管。从那以后,我至少留20ns的余量。记住:效率可以优化,板子炸了就得重来。
最后说一句:死区时间优化不是一劳永逸的事。不同负载、不同温度下,最佳值都在变。自适应死区时间加上合理的余量设计,才是工程上最稳妥的方案。嗯,这部分内容比较多,但核心就三个字——刚刚好。