3. 功率器件选型:MOSFET/IGBT选型、驱动芯片选型、死区时间计算
好,咱们进入第三讲。这一讲,说白了就是决定你电机驱动板「心脏」和「大脑」怎么配的问题。
功率器件和驱动芯片选对了,板子就成功了一半。选错了,轻则发热严重,重则直接炸管。我在早期做项目时,就吃过这个亏——选了个看似参数很猛的MOSFET,结果开关损耗太大,没跑几分钟就冒烟了。嗯,从那以后,我对选型就格外较真。
3.1 MOSFET vs IGBT:到底选谁?
很多新手会纠结这个问题。我的建议很简单:看电压和频率。
| 对比项 | MOSFET | IGBT |
|---|---|---|
| 耐压范围 | 通常 ≤ 600V(高压MOS也有,但贵) | 600V ~ 1700V 常见 |
| 开关频率 | 几十kHz ~ 几百kHz | 通常 ≤ 20kHz(再高损耗大) |
| 导通压降 | Rds(on) 特性,低压时优势明显 | Vce(sat) 约1.5V~2.5V,高压下优势大 |
| 驱动方式 | 电压驱动,简单 | 电压驱动,但需要负压关断更可靠 |
| 典型应用 | 低压直流无刷、航模电调 | 工业伺服、变频器、电动汽车 |
我个人习惯这样判断:如果你的母线电压低于100V,比如做12V、24V、48V的电机驱动,无脑选MOSFET。如果母线电压超过300V,比如做220V交流输入的伺服驱动器,那IGBT是更经济的选择。
关键参数速查(以MOSFET为例):
- Vds(漏源击穿电压):留1.5~2倍余量。比如48V系统,选75V或100V的管子。
- Id(漏极电流):按峰值电流的2倍选。我一般会看脉冲电流能力。
- Rds(on)(导通电阻):越小越好,但要注意它随温度升高会变大。25℃时5mΩ,100℃时可能变成8mΩ。
- Qg(栅极总电荷):这个很关键!Qg越小,开关速度越快,驱动损耗越小。
我的选型小技巧:
别只看25℃下的参数。一定要看结温125℃或150℃下的数据。我曾经就因为忽略了温度系数,导致高温下Rds(on)翻倍,管子过热烧毁。
3.2 驱动芯片选型:IR2104 vs DRV8301
驱动芯片,就是连接MCU和功率管的桥梁。选型时主要看:驱动能力、集成度、保护功能。
我常用的两款芯片,正好代表两个极端:
3.2.1 IR2104(半桥驱动,经典款)
这是最经典的半桥驱动芯片。便宜、简单、可靠。适合做分立式的三相逆变器。
- 驱动电流:典型值 290mA 源电流 / 600mA 灌电流。驱动小功率MOSFET够用。
- 自举供电:需要外接自举二极管和电容。这个要注意,自举电容选太小,高边会欠压。
- 死区时间:内置死区时间,但很短(典型520ns)。很多时候需要外部加RC延时来调整。
- 缺点:没有电流检测、没有故障反馈。所有保护都得靠MCU自己做。
避坑指南:
我曾经在做一个48V/10A的驱动器时,用了IR2104驱动两个IRFP4468。结果发现高边MOSFET在重载时关断缓慢,导致上下管直通。排查了半天,发现是自举电容容量偏小,高边供电电压掉到了8V以下。换成22μF的钽电容后问题解决。
3.2.2 DRV8301(集成式三相驱动,高端款)
这是TI的集成式栅极驱动器,内部集成了三个半桥驱动、一个降压稳压器、还有电流检测放大器。
- 驱动电流:1.3A 源电流 / 2.6A 灌电流。驱动大功率MOSFET毫无压力。
- 集成度:一个芯片搞定三相驱动+电流采样+电源。PCB面积能省一半。
- 可编程死区时间:通过SPI寄存器配置,范围从几十ns到几μs。非常灵活。
- 保护功能:过流保护、欠压锁定、过热警告。硬件自动处理,MCU只需要读状态。
- 缺点:贵。而且QFN封装,手工焊接比较麻烦。
| 对比项 | IR2104 | DRV8301 |
|---|---|---|
| 驱动能力 | 290mA/600mA | 1.3A/2.6A |
| 集成度 | 单半桥,需3片 | 三相一体+降压+电流检测 |
| 死区时间 | 固定520ns | 可编程(SPI配置) |
| 保护功能 | 基本欠压 | 过流、欠压、过热 |
| 价格 | 约2元/片 | 约20元/片 |
| 适用场景 | 低成本、小功率 | 高性能、大功率、工业级 |
我的建议:
做产品原型验证时,我倾向于用DRV8301这类集成芯片,调试方便、保护齐全。等方案定型、要降成本时,再换成IR2104+分立元件的方案。你想想看,这样既保证了开发效率,又控制了量产成本。
3.3 死区时间计算:这个真不能省
死区时间,就是上下管同时关断的那段空白期。目的是防止一个管子还没完全关断,另一个管子就导通了——这就是所谓的「直通短路」,瞬间就能炸管。
死区时间怎么算?说白了就是:关断延迟 - 开通延迟 + 安全余量。
具体公式:
T_dead = Td_off(max) - Td_on(min) + T_margin
其中:
- Td_off(max):MOSFET关断延迟的最大值(从驱动信号到管子完全关断)
- Td_on(min):MOSFET开通延迟的最小值
- T_margin:安全余量,通常取100ns~500ns
举个例子,假设你用的MOSFET数据手册上写着:
- 开通延迟(典型值):20ns,最大值:40ns
- 关断延迟(典型值):50ns,最大值:80ns
那么:
T_dead = 80ns - 20ns + 200ns = 260ns
嗯,这里要注意:数据手册上的值通常是在特定测试条件下测的。实际PCB走线寄生电感、栅极电阻都会影响开关速度。所以我一般会在计算值基础上再加50%的余量。
死区时间设置经验值:
- 小功率MOSFET(如TO-252封装):200ns ~ 500ns
- 大功率MOSFET(如TO-247封装):500ns ~ 1μs
- IGBT模块:1μs ~ 3μs
死区时间不是越大越好。太大会导致电机电流波形畸变,产生噪音和转矩脉动。太小又容易炸管。我一般会先用示波器实测上下管的栅极波形,确认安全后再定死区。
避坑指南:
我曾经在一个项目中,死区时间设了1μs,电机运行时有明显的「嗡嗡」声。用示波器一看,电流波形在过零点出现了明显的台阶。把死区时间从1μs降到300ns后,噪音消失了,效率也提升了2%。所以,死区时间要在安全和性能之间找平衡。
3.4 实战:一个48V/10A驱动板的选型案例
最后,我拿一个实际项目来串一下。假设我们要设计一个48V、10A额定电流的直流无刷电机驱动器。
- MOSFET选型:母线48V,留2倍余量,选100V的管子。额定10A,峰值可能到30A,选Id=60A以上的。我选了NCEP01T(100V/120A,Rds(on)=5.5mΩ,Qg=68nC)。
- 驱动芯片选型:因为要做三相驱动,而且希望调试方便,我选了DRV8301。它的1.3A驱动能力驱动NCEP01T绰绰有余,而且内置的电流检测放大器省掉了外部运放。
- 死区时间设置:查NCEP01T数据手册,开通延迟典型25ns,关断延迟典型65ns。计算得:65ns - 25ns + 300ns = 340ns。通过SPI设置DRV8301的死区时间为400ns。
- 自举电容:DRV8301内部集成了自举二极管,只需要外接电容。根据公式 Cboot = Qg / ΔV,取ΔV=1V,Cboot = 68nC / 1V = 68nF。实际选了100nF的陶瓷电容,留余量。
这个方案做出来后,实测满载效率在92%以上,MOSFET温升控制在40℃以内。嗯,效果还不错。
好,这一讲就到这里。功率器件选型是个经验活,多看看数据手册,多摸摸示波器,慢慢就有感觉了。下一讲我们聊聊PCB布局和热设计,那又是另一个坑多的地方。