☰
IR2104自举驱动N沟道MOS管H桥设计:从原理到PCB布局的实战指南
2026/9/28 1:40:55 网站建设 项目流程

1. 为什么IR2104配MOS管H桥值得动手做一遍

如果你手头有一台直流电机、几个功率MOS管,想让它正反转、调速,又不想直接买成品驱动模块,那用IR2104搭一个H桥是最经典的入门路径。IR2104是一颗半桥栅极驱动芯片,自带自举电路,能把单片机出来的3.3V或5V PWM信号,转换成驱动N沟道MOS管所需的高边悬浮栅极电压。它解决的问题很具体:高边N沟道MOS管导通时源极电位会抬升到母线电压,普通推挽驱动根本拉不开栅源电压,而IR2104靠自举电容把这个电压“顶”上去,让高边MOS管真正饱和导通。

这套电路适合谁?适合已经会焊板子、能看懂基本原理图、想从“买模块”过渡到“自己设计功率级”的电子爱好者,也适合做课程设计、毕业设计的学生,以及需要小批量自制电机驱动板的工程师。它不复杂,但坑不少:自举电容选错会烧芯片,死区没留够会直通炸管,栅极电阻乱配会让波形振铃。我前后搭过五六版IR2104的H桥,从最开始用洞洞板飞到后来打样PCB,烧过的MOS管少说也有二十来颗,下面把这些经验完整拆开讲。

整篇文章会从芯片工作边界讲起,到自举电容的计算、死区时间的设置、栅极电阻的取舍、PCB布局的细节,最后给出一份可以直接照着连的完整电路图和物料清单。你不需要有很深的电源背景,但需要有一点耐心,因为功率电路和纯数字电路不一样,一个参数没算对,上电瞬间就可能冒烟。

2. IR2104的工作边界与自举电路的真正门槛

2.1 先搞清楚IR2104到底能干什么、不能干什么

IR2104是单通道半桥驱动器,内部集成了一个高边驱动通道和一个低边驱动通道,输出电流能力典型值约210mA拉电流、约360mA灌电流(不同厂家批次略有差异,以数据手册为准)。它的输入逻辑很简单:一个IN引脚控制半桥输出状态,一个SD引脚做关断。IN为高时高边导通、低边关断;IN为低时低边导通、高边关断。SD拉低时两路输出都关断,这个引脚在故障保护时非常有用。

但它有几个硬边界必须提前知道。第一,它本身不带死区插入功能,IN翻转时高边和低边是“你关我开”的瞬时切换,如果MOS管关断慢,就会出现上下管同时导通的直通现象。第二,自举电容需要靠低边导通时充电,如果占空比长期接近100%,高边会因为没有刷新自举电荷而掉压。第三,它的工作电压范围虽然标称到600V,但在低压12V、24V场景下用完全没问题,只是自举二极管和电容的选型要按实际母线电压来。

我见过有人拿IR2104直接驱动P沟道MOS管做高边,这是错的。IR2104的高边输出是参考到VS(开关节点)的浮动电源,专门为N沟道高边管设计。P沟道管做高边虽然简单,但导通电阻大、价格贵,大电流场景基本被N沟道取代。

2.2 自举电容不是随便抓一个0.1uF就行

自举电路的核心是一个二极管加一个电容。低边MOS管导通时,VS被拉到地,此时VCC通过自举二极管给自举电容充电,电容两端电压接近VCC减去二极管压降。当高边MOS管需要导通时,IR2104把自举电容上的电压加到高边管的栅极和源极之间,源极电位抬到母线电压,栅极就被“顶”到母线电压加VCC,从而实现饱和导通。

自举电容的容量计算有个常用经验公式:

C_boot ≥ 2 × Q_g / (VCC - V_f - V_gs_min)

其中Q_g是MOS管的栅极总电荷,V_f是自举二极管正向压降,V_gs_min是MOS管可靠导通所需的最小栅源电压。举个实际例子:IRF3205的Q_g约63nC,VCC取12V,自举二极管用1N4148压降约0.7V,V_gs_min取8V,那么C_boot ≥ 2×63nC/(12-0.7-8) ≈ 38nF。实际选0.1uF到1uF都行,我一般用0.47uF或1uF的X7R陶瓷电容。

但这里有个容易忽略的点:自举电容不能太大。容量太大时,每次高边导通需要从VCC抽取更多电荷去补充,如果VCC供电能力弱,会把VCC拉低。同时电容太大也会延长充电时间,在高频PWM下可能来不及充满。我实测在20kHz PWM、50%占空比下,0.47uF配合IRF3205工作很稳;换成10uF电解电容反而出现高边驱动电压不足的情况。

自举二极管必须选快恢复或超快恢复类型,反向恢复时间要短。1N4148在低频下能用,但20kHz以上我推荐用US1M或ES1D这类超快恢复二极管。普通整流二极管如1N4007反向恢复慢,会在开关瞬间产生额外损耗和干扰。

2.3 高边通道的“刷新窗口”决定了最大占空比

因为自举电容只能靠低边导通时充电,所以高边不能一直开着。假设PWM频率20kHz,周期50us,如果占空比99%,低边只有0.5us导通时间,这点时间可能不够给自举电容补足电荷。实际使用中,我建议单个PWM周期内低边至少保证1到2us的导通时间,对应20kHz下最大占空比约96%到98%。

如果你确实需要接近100%的占空比,有两个办法。一是用带电荷泵的驱动芯片替代IR2104,二是用“高边常通加低边PWM”的拓扑,但这需要额外逻辑。对于绝大多数电机调速场景,95%占空比已经够用,电机端电压接近母线电压,没必要追求100%。

3. 四个MOS管怎么选、怎么摆,H桥才不会直通

3.1 上下管的选型逻辑不一样

H桥有四个位置:高边左、低边左、高边右、低边右。高边管和低边管虽然都是N沟道,但关注点不同。低边管源极接地,驱动简单,主要看导通电阻Rds(on)和电流能力。高边管源极接开关节点,驱动靠自举,除了Rds(on),还要关注Q_g和输入电容Ciss,因为这两个参数直接影响自举电容和驱动电流需求。

以12V、5A的直流电机为例,母线电压12V,峰值电流可能到10A。选MOS管时耐压至少留2倍余量,所以30V以上的管子比较稳妥。IRF3205是55V、110A、Rds(on)约8mΩ的经典管,Q_g约63nC,价格便宜,适合做学习和中小功率应用。如果想效率更高,可以选IRF1404或IRL2203N这类低导通电阻的管子,但要注意IRL系列是逻辑电平驱动,栅极阈值电压低,和IR2104配合时反而要留意误导通问题。

我个人的经验是:学习阶段用IRF3205就够了,便宜耐造,烧了不心疼。等电路稳定了再换低Rds(on)的管子提升效率。不要一上来就用昂贵的低内阻管,因为调试阶段炸管是常态。

四个管子的摆放顺序也有讲究。通常把两个高边管放在靠近母线电容的位置,两个低边管放在靠近电机输出端的位置,这样功率回路的寄生电感更小。具体布局在PCB部分会详细讲。

3.2 死区时间:不设就是等着炸管

IR2104没有内置死区,IN引脚翻转时,高边关断和低边开通之间没有延迟。MOS管关断需要时间,栅极电荷通过栅极电阻放电,如果放电慢,关断延迟就长。假设高边管关断延迟100ns,低边管开通延迟20ns,那么在IN翻转后的80ns内,上下管同时导通,母线通过两个管子直接短路,电流瞬间冲到几十甚至上百安培,管子必炸。

解决办法是在单片机PWM输出端插入死区。具体做法:用定时器生成两路互补PWM,但两路都不完全占满周期,而是在切换点留出一段两边都关断的时间。以STM32为例,高级定时器TIM1的互补输出自带死区插入功能,配置BDTR寄存器的DTG位即可。死区时间一般取100ns到500ns,具体看MOS管关断速度。IRF3205配10Ω栅极电阻时,关断时间大约200ns,死区设300ns比较安全。

如果你用普通IO口软件翻转,那必须在代码里手动加延时。比如先拉低高边驱动信号,延时1us,再拉高低边驱动信号。这个延时不能省,我早期省过,结果上电第一次换向就炸了两颗IRF3205。

注意:死区时间不是越大越好。死区太大,电机低速时会出现转矩脉动,因为电流续流路径被切断的时间变长。一般控制在PWM周期的1%到3%之间比较合适。

3.3 栅极电阻:太小振铃,太大发热

IR2104输出到MOS管栅极之间要串一个电阻,通常叫栅极电阻Rg。它的作用是限制栅极充电电流,控制开关速度。Rg太小,开关快,但栅极回路容易和寄生电感产生振铃,严重时栅源电压超过20V击穿氧化层。Rg太大,开关慢,开关损耗增加,管子发热。

IRF3205的栅极电荷63nC,如果Rg取10Ω,IR2104输出12V,峰值充电电流约1.2A,在IR2104的驱动能力范围内。开关时间大约几百纳秒,配合300ns死区刚好。我试过Rg取4.7Ω,开关更快,但示波器上看栅极波形有明显振铃,后来加到10Ω就干净了。也试过Rg取47Ω,管子明显发热,因为开关损耗上去了。

实际取值建议:中小功率场景Rg取10Ω到22Ω,先取10Ω,用示波器看栅极波形,如果有振铃就加大,如果发热严重就减小。栅极电阻的功率不重要,因为平均电流很小,用0805封装的普通电阻就行。

另外,栅源之间要并一个下拉电阻,通常10kΩ,作用是防止单片机还没初始化时栅极悬空导致误导通。这个电阻不能省,我见过因为省这个电阻,上电瞬间电机自己转起来的案例。

4. 从原理图到洞洞板:一次完整的搭建过程

4.1 完整电路图的逐块拆解

先给出一份可以直接照着连的电路框架。整个电路分四块:电源部分、IR2104驱动部分、MOS管H桥部分、单片机控制部分。

电源部分:母线电压12V直接给H桥供电,同时经过一个7805或AMS1117-5.0降到5V给IR2104的VCC和单片机供电。注意IR2104的VCC范围是10V到20V,5V不够,所以IR2104的VCC要接12V,不能接5V。这一点很多人搞错,以为IR2104和单片机一样用5V。实际上IR2104的VCC最低10V,典型12V,所以要从母线12V直接取电,或者单独用12V电源。

IR2104驱动部分:两片IR2104,一片驱动左半桥,一片驱动右半桥。每片IR2104的VCC接12V,COM接地,IN接单片机PWM,SD接高电平或单片机IO做使能。自举二极管从VCC到VB,自举电容从VB到VS。HO接高边MOS管栅极,LO接低边MOS管栅极,VS接半桥中点。

MOS管H桥部分:四个N沟道MOS管,左高边和左低边组成左半桥,右高边和右低边组成右半桥。左半桥中点是电机一端,右半桥中点是电机另一端。每个MOS管栅极串10Ω电阻,栅源并10kΩ下拉。母线两端并一个大电解电容(比如470uF/25V)和一个小陶瓷电容(0.1uF),用于吸收换向时的电流冲击。

单片机控制部分:以STM32或Arduino为例,输出两路PWM分别给两片IR2104的IN。左半桥IN给高电平时左高边导通,电机左端接母线正;右半桥IN给高电平时右高边导通,电机右端接母线正。如果左高边和右低边同时导通,电机正转;左低边和右高边同时导通,电机反转。调速就是调PWM占空比。

4.2 洞洞板搭建的顺序和检查点

我建议按以下顺序焊接,每焊完一步用万用表检查,不要全部焊完再上电。

第一步,焊电源部分。焊好7805或AMS1117,输入接12V,输出测5V。确认5V正常后再往下。

第二步,焊两片IR2104的电源和地。VCC接12V,COM接地,SD接5V(使能)。此时不接MOS管,用示波器看HO和LO输出。IN给5V方波,HO应该有跟随的方波,LO相反。如果HO没有输出,检查自举电容和二极管是否焊好。注意此时VS悬空,自举电容没有充电回路,HO可能不正常。可以把VS临时接地,让低边导通时给自举电容充电,再看HO波形。

第三步,焊四个MOS管和栅极电阻。先不接电机,母线串一个限流电阻(比如12V灯泡或10Ω/5W电阻)做保护。上电后测四个管子的栅极电压,确认没有直通。如果限流电阻发热严重,说明有直通,立即断电检查。

第四步,接电机,去掉限流电阻,给PWM信号。先给低占空比(比如10%),观察电机是否转动,电流是否正常。然后逐步加大占空比,摸MOS管温度。如果某个管子明显发热,检查对应驱动信号和死区。

我搭第一版时,在第三步就发现限流电阻发烫,查了半天发现是右半桥的高边和低边栅极信号接反了,导致IN高时高边关、低边开,IN低时高边开、低边关,逻辑完全颠倒。这种接线错误在洞洞板上很常见,一定要对照原理图逐根线核对。

4.3 上电瞬间最容易烧管的三种情况

第一种,自举二极管方向焊反。自举二极管应该从VCC指向VB,如果焊反,自举电容充不上电,高边MOS管无法导通,电机只能单向转或者不转。更严重的是,如果二极管反向击穿,VCC直接加到VS,可能损坏IR2104。

第二种,高边和低边MOS管位置装错。有人把高边管和低边管搞混,高边管源极应该接半桥中点,如果接到地,上电就直通。识别方法:高边管的漏极接母线正,源极接半桥中点;低边管的漏极接半桥中点,源极接地。

第三种,死区没设或设得太小。这是最隐蔽的,因为空载时可能不炸,带载换向时才炸。我建议第一次上电一定要用限流电阻,并且先用低占空比、低频率(比如1kHz)测试,确认换向正常后再提高频率。

5. 实测波形与常见故障的排查链路

5.1 用示波器看什么波形、怎么判断正常

搭好电路后,示波器是最重要的调试工具。需要看三个波形:单片机PWM输出、IR2104的HO输出、MOS管栅极电压。

单片机PWM输出应该是干净的方波,上升沿和下降沿陡峭。如果边沿有振铃,可能是IO口驱动能力不足或走线太长,可以在IO口串22Ω电阻。

IR2104的HO输出是浮动信号,示波器探头地要接VS,不能接电路地,否则会短路自举电容。HO波形应该和IN同相,幅度接近VCC。如果HO幅度明显低于VCC,说明自举电容容量不够或自举二极管压降太大。

MOS管栅极电压波形应该是一个带平台的充电曲线,平台电压接近VCC。如果平台电压只有几伏,说明驱动能力不足或栅极电阻太大。如果波形有严重振铃,尖峰超过20V,说明栅极电阻太小或走线电感太大,需要加大电阻或缩短走线。

我实测IRF3205配10Ω栅极电阻、20kHz PWM时,栅极上升时间约300ns,下降时间约200ns,波形干净无振铃。HO输出幅度约11.3V,自举二极管压降约0.7V,符合预期。

5.2 电机不转、单向转、抖动分别查什么

电机完全不转,先查电源。母线12V是否正常,5V是否正常,IR2104的VCC是否12V。然后查SD引脚是否使能,IN是否有PWM。如果都正常,查自举电容是否焊好,VS是否接到半桥中点。

电机只能单向转,查另一片IR2104的输入信号。可能是单片机PWM没有输出到那片IR2104,或者那片IR2104损坏。交换两片IR2104的输入信号,如果转向改变,说明问题在单片机侧;如果转向不变,说明问题在驱动或MOS管侧。

电机抖动不转,通常是死区太大或PWM频率太低。死区太大时,低速下电流断续,电机抖动。可以减小死区时间试试。PWM频率太低(比如几百赫兹)时,电机也会抖动,因为电流纹波大。一般直流电机PWM频率取10kHz到20kHz,高于20kHz时开关损耗增加,低于10kHz时噪音明显。

还有一种情况是电机转但无力,查母线电容是否容量不足。换向时母线电流突变,如果电容太小,母线电压会瞬间跌落,导致MOS管驱动不足。我一般按每安培电流配100uF电解电容,5A电机配470uF以上。

5.3 炸管后的排查顺序

如果不幸炸管,不要急着换新管子上电。先断电,用万用表查四个MOS管是否击穿。栅极和源极之间如果短路,说明栅极氧化层击穿;漏极和源极之间如果短路,说明沟道击穿。

然后查IR2104是否损坏。测VCC和COM之间是否短路,HO和VS之间是否短路。IR2104损坏通常是高边自举部分击穿,原因多是自举电容过大或自举二极管反向恢复太慢。

最后查死区设置和栅极电阻。炸管往往不是单一原因,而是死区不够加栅极电阻太小加走线电感大共同作用。我炸得最惨的一次,是死区设了50ns,栅极电阻4.7Ω,走线用了10cm的杜邦线,结果换向瞬间栅极振铃到25V,高边管栅源击穿,然后直通把低边管也带走了。后来死区加到300ns,栅极电阻换10Ω,走线缩短到2cm,再没炸过。

6. 从能跑到好用:PCB布局与散热处理

6.1 功率回路面积决定EMI和振铃

洞洞板能跑通,但要想稳定可靠,还是得打PCB。PCB布局的第一原则是功率回路面积最小。功率回路包括母线电容、高边MOS管、低边MOS管、电机。这个回路的电流在换向时突变,回路面积越大,寄生电感越大,振铃越严重。

具体布局:母线电容紧挨着四个MOS管放置,电容正极到高边管漏极的走线尽量短而粗,低边管源极到电容负极的走线也尽量短而粗。电机输出线从半桥中点引出,不要和驱动信号线平行走。

驱动信号线要远离功率线。IR2104的HO、LO、VS走线尽量短,自举电容和二极管紧挨IR2104放置。栅极电阻靠近MOS管栅极放置,不要放在IR2104旁边,否则栅极走线太长会引入电感。

我打样过一版PCB,功率走线用2mm宽,驱动走线用0.3mm宽,功率地和信号地单点连接。实测换向振铃比洞洞板小很多,MOS管温升也低了十几度。

6.2 散热片和温度实测

IRF3205的Rds(on)约8mΩ,5A电流下导通损耗约0.2W,开关损耗在20kHz下约0.1W到0.3W,总损耗不到0.5W。TO-220封装不加散热片时热阻约62°C/W,环境25°C时结温约56°C,可以接受。但如果电流到10A,导通损耗0.8W,加上开关损耗,结温可能超过100°C,必须加散热片。

我实测5A连续运行时,IRF3205表面温度约45°C,不加散热片没问题。10A时表面温度到70°C,加一个小铝片后降到50°C。如果电机堵转,电流可能冲到20A以上,这时候散热片和过流保护都要跟上。

过流保护可以简单用一个采样电阻加比较器实现,也可以靠IR2104的SD引脚做快速关断。我一般会在母线串一个0.01Ω采样电阻,用LM393比较,超过阈值就拉低SD。这个保护在堵转时能救命。

6.3 自举电容和栅极电阻的最终取值建议

经过多版调试,我总结出一套适合12V到24V、5A到10A直流电机的参数组合:

元件参数说明
自举电容0.47uF/50V X7R配合IRF3205的63nC栅极电荷
自举二极管US1M超快恢复,反向恢复时间75ns
栅极电阻10Ω0805封装,开关时间约300ns
栅源下拉10kΩ防止悬空误导通
母线电容470uF/25V电解 + 0.1uF陶瓷每5A电流配100uF
死区时间300ns配合10Ω栅极电阻
PWM频率20kHz高于听觉范围,开关损耗可接受

这套参数我用了很久,从12V小电机到24V中型电机都稳定。如果你用更低导通电阻的MOS管,比如IRF1404,Q_g更大,自举电容要相应加大到1uF。如果你用逻辑电平MOS管,栅极阈值低,栅源下拉电阻要减小到4.7kΩ,防止干扰误导通。

7. 几个只有实际搭过才会知道的细节

第一个细节,IR2104的SD引脚不要悬空。悬空时内部状态不确定,可能随机使能或关断。我一般直接接5V使能,或者接单片机IO做软件关断。如果接IO,IO初始化前要确保IR2104处于关断状态,可以在SD和地之间并一个10kΩ下拉。

第二个细节,两片IR2104的IN信号不能同时为高。如果左半桥IN和右半桥IN同时为高,左高边和右高边同时导通,电机两端都接母线正,电机不转,但两个高边管都在导通状态,如果此时电机有反电动势,可能形成环流。正确的逻辑是左高边和右低边一组,左低边和右高边一组,两组交替导通。

第三个细节,电机两端要并一个续流二极管吗?H桥内部MOS管的体二极管已经可以续流,但体二极管反向恢复慢,大电流下损耗大。如果电机电流大、换向频繁,建议在四个MOS管旁边各并一个肖特基二极管,比如SS54,降低续流损耗。小电流场景体二极管够用。

第四个细节,上电顺序有讲究。先给控制部分5V上电,让单片机初始化,IR2104的SD拉低,再给母线12V上电。如果先给母线12V,此时单片机还没初始化,IN引脚状态不确定,可能瞬间直通。我习惯在母线正极串一个开关,先开5V,再开12V。

第五个细节,调试时用隔离电源给控制部分供电。如果控制部分和功率部分共地,示波器探头地夹在功率地上,容易引入干扰,甚至烧探头。用一个小功率隔离模块给5V供电,调试会安全很多。

这些细节在数据手册上不会写,都是炸过管子、烧过芯片之后才记住的。IR2104加MOS管H桥本身不复杂,但功率电路的特点是“差一点就炸”,所以每一步都要留余量、做保护、多测量。你按上面的参数和步骤搭,第一版可能不会完美,但至少不会一上电就冒烟。等跑起来之后,再慢慢优化死区、栅极电阻和布局,这套电路能陪你走很远。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询