ARTICLE DETAIL

资讯详情

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

用N-MOS管搭建DC有刷电机驱动:低边驱动、H桥与续流二极管实战指南

用N-MOS管搭建DC有刷电机驱动:低边驱动、H桥与续流二极管实战指南 最近帮朋友改一台小玩具车的驱动部分发现很多人还在拿三极管搭电机驱动一上电就闻糊味。不是三极管不好而是大电流场景下它的饱和压降和功耗实在扛不住。换成N-MOS管之后同样的电池电压同样的电机发热和续航表现直接上了一个台阶。这篇文章就把我用N-MOS管搭建DC有刷电机驱动电路的完整思路、选型逻辑、原理图连接方式和踩坑记录整理出来尤其适合正在撸小车、水泵、风扇、桌面DIY小工具或者刚接触功率电子想搞清楚“低边驱动”“H桥”“续流二极管”到底是什么的人。全文没有废话附可直接照抄的电路连接方案和排查方法照着焊基本不会翻车。1. 驱动电路的整体设计与方案选型1.1 为什么N-MOS管比三极管更划算有刷电机是典型的感性负载启动瞬间电流是额定电流的好几倍。比如一个额定1A的电机堵转或启动瞬间跑到3A、4A都很正常。用三极管比如常见的TIP41、S8050做开关时管子本身有0.5V到1.5V的饱和压降电流一大功耗就按平方往上窜管子烫到能煎鸡蛋效率还低。N-MOS管走的是可变电阻区导通之后D极和S极之间等效为一个很小的电阻也就是Rds(on)。一个普通的AO3400Rds(on)只有几十毫欧1A电流下压降只有几十毫伏功耗连0.1W都不到。同样电流N-MOS管比三极管发热小一个数量级所以现在主流的小功率电机驱动方案基本都是MOS管打底。用N-MOS而不是P-MOS核心原因有两个一是N-MOS的导通电阻普遍比同价位P-MOS更小单位面积能承受的电流密度更大二是N-MOS工作在低边low-side时栅极驱动电压直接参考GND用单片机的PWM引脚就能轻松控制不用像P-MOS那样去做电平转换。对DIY来说N-MOS低边驱动是性价比和上手难度最平衡的方案。1.2 低边驱动与H桥先想清楚需求搭建有刷电机驱动第一件事不是挑管子而是搞清楚电机需要怎么转。如果只需要单向转动比如水泵、风扇、推杆一个N-MOS管做低边开关就够。电机正极接电源负极接MOS管的D极MOS管S极接地控制信号给到栅极开就转关就停。这个拓扑简单到不能再简单零件成本两三块钱。如果电机需要正反转比如小车、云台、升降机构就需要两个半桥凑成一个全桥也就是俗称的H桥。四颗MOS管组成两条桥臂通过控制对角导通方向来改变电机电流方向。这里要注意H桥的高边high-side如果还用N-MOS栅极电压需要比电源电压更高否则管子无法完全导通这就得额外搞自举电路或电荷泵复杂度一下子上去了。所以如果你的项目对成本敏感、又必须用N-MOS搭H桥我建议高边用P-MOS低边用N-MOS这种组合在低压小功率场景下最省事。本文后面主要围绕“N-MOS低边驱动”展开H桥的部分我会单独说明怎么把低边单元扩展成完整方案。提示如果只是控制单向转动的风扇或水泵别一上来就画H桥。电路越简单故障点越少这是DIY硬件的第一原则。1.3 整体电路由哪几块组成我习惯把一个完整的MOS管驱动电路拆成四个功能块电源输入与滤波、电机主回路、栅极驱动信号调理、保护与去抖。这样设计时思路清楚排查问题时也能快速定位。电源输入与滤波电池或适配器进来之后靠近电机和MOS管的位置各放一个100uF~470uF电解电容再并联一个0.1uF陶瓷电容用来吸收电机换向产生的尖峰。电机主回路MOS管D极接电机负极S极接GNDD极和电源正极之间反接一颗续流二极管。栅极驱动信号调理单片机的PWM引脚先串一个栅极电阻通常10Ω~47Ω再连到MOS管G极G极到GND再放一个10kΩ~100kΩ下拉电阻。保护与去抖续流二极管管住关断尖峰必要时在电机两脚并一个0.1uF电容滤电磁干扰如果用的是开关电源供电最好再串个保险丝或自恢复保险丝。这四个功能块合在一起就是一套可以批量复制的小功率电机驱动电路。下面逐项拆开讲。2. 核心元器件的选型逻辑与原理说明2.1 N-MOS管选型不是随手抓一个就能用MOS管选型有几个关键参数缺一个都可能翻车。第一个是栅极阈值电压Vgs(th)。单片机3.3V或5V输出直接驱动时必须选“逻辑电平MOS管”也就是Vgs(th)在1V~2V之间的型号。普通功率MOS管Vgs(th)动辄3V、4V5V栅压勉强导通但没完全进入低阻区Rds(on)偏大照样发热。我自己常用的几个型号AO3400SOT-23封装30V/5.7AVgs(th)约1.4V、SI230020V/3.6A、IRLZ44NTO-220封装55V/47A适合驱动大电流电机但需要10V栅压5V单片机推不动要注意。小功率场景首选AO3400便宜又皮实。第二个是漏源击穿电压Vds。电机是感性负载关断瞬间会产生反向尖峰即使有续流二极管也会存在一个短暂的过冲。选型时Vds至少留出电源电压两倍以上的裕量。5V系统就选20V~30V的管子12V系统至少选30V以上24V系统建议选55V以上。第三个是最大连续电流Id和脉冲电流Idm。前面说过电机启动和堵转电流是额定的好几倍MOS管不能只看额定电流刚好够用就完事至少按峰值电流的1.5~2倍来选。并且要注意封装散热能力SOT-23的小管子通过大电流时热阻很高连续超过2A就不太稳了。第四个是导通电阻Rds(on)。同一封装下Rds(on)越小正常工作时功耗越低。但Rds(on)和耐压、成本是矛盾的耐压越高Rds(on)通常越大所以要根据实际电源电压来选择别盲目追求高耐压。注意选管不要只盯着最大电流还要看封装功耗和热阻。同样是3A额定SOT-23和TO-252完全不是一个量级长时间工作用贴片大封装或直插带散热片更保险。2.2 续流二极管没有它MOS管就是消耗品很多第一次搭电机驱动的朋友会忽略这个二极管结果就是MOS管莫名其妙烧掉。原理是这样的电机就是一个电感线圈当MOS管导通时电流在线圈里建立了磁场能量MOS管一关断电流不能突变但回路已经被切断电感就会产生一个反向电动势电压方向是“试图维持原电流继续流”。如果没有续流路径这个反向电压会瞬间把MOS管的D-S电压顶到几十伏甚至上百伏超过击穿电压就直接烧管。续流二极管的接法电机两端反并联也就是二极管的阴极接电源正极阳极接MOS管D极电机负极那一端。这样MOS管关断时电机电流通过二极管继续循环能量被慢慢耗散掉D极电压被钳位在电源电压二极管正向压降附近。选型上低压小电流用1N58191A/40V肖特基二极管就够了。电流超过2A换成SS343A/40V或者SR51005A/100V。肖特基比普通整流管好在前向压降低、反向恢复快高压尖峰泄放更利索。对大功率应用还可以在二极管旁边并联一个RC吸收电路进一步抑制振铃。2.3 栅极电阻与下拉电阻把控制信号“调教”好栅极驱动看起来就是一根线接到MOS管G极实际上有很多门道。栅极电阻Rg的作用是限制栅极充放电电流。MOS管G极是一个电容等效大小用Qg表示单片机引脚在电平跳变瞬间要提供很大的瞬态电流去充放这个电容。如果不加电阻PWM边沿会非常陡容易引起振铃和电磁干扰如果电阻太大开关时间被拉长MOS管在过渡区停留太久发热严重。我的经验是3.3V/5V单片机直驱小管子时串10Ω~22Ω比较合适大管子或PWM频率很高的时候可以减到4.7Ω~10Ω。下拉电阻Rgs的作用是防止栅极悬空。单片机复位期间或引脚未初始化时IO口是高阻态MOS管栅极电压不确定可能会自动导通或者半导通导致电机偷偷转动甚至MOS管线性区发热。在G极和S极也就是GND之间并联一个10kΩ~100kΩ的电阻能保证任何情况下栅极有个确定的低电平。另外如果PWM信号来自长线或者干扰比较严重的环境可以考虑在栅极电阻与MOS管G极之间加一个4.7V~12V的稳压二极管负极接G极正极接S极防止栅极过压击穿。不过对于3.3V/5V直驱的场景一般不加也没问题。2.4 完整的电路连接关系文字版原理图这里我把最常用的“单片机PWM控制N-MOS低边驱动单向电机”完整连接列出来按节点编号写清楚方便你直接照做。编号节点A节点B元器件说明1VCC电源正极电机M导线电机正极接电源2电机M-MOS管D极导线电机负极接漏极3MOS管S极GND导线源极接地4VCC电机M-二极管D1阴极→D1阳极→电机M-续流二极管反并联D1阴极接VCCD1阳极接M-5单片机PWM引脚Rg一端导线控制信号输出6Rg另一端MOS管G极导线栅极电阻串联到栅极7MOS管G极GNDRgs10kΩ~100kΩ栅极下拉电阻8VCCGNDC1100uF~470uF C20.1uF电源滤波电容尽量靠近电机和MOS管如果要做H桥正反转就是两组同样的低边驱动各驱动一条桥臂高边用P-MOS。比如左上高边P-MOS的S极接VCCD极接电机M右下低边N-MOS的D极接电机M-S极接GND形成一条电流路径换另一组对角导通电流反向电机就反转了。两个控制信号之间必须加死区时间防止上下桥臂直通短路这个我在第4节再细说。3. 实操过程从原理图到一把烙铁焊出电路3.1 洞洞板布局与焊接顺序如果你只是画了原理图还没打板我建议先拿洞洞板手工焊一版验证。布局上有个核心原则大电流回路要短、要粗控制回路要远离大电流回路。我给一个实用的布局顺序先固定电机接线端子和电源接线端子。在端子附近焊上滤波电容电解电容注意极性长脚正极。焊续流二极管位置要尽量靠近MOS管的D极和电源正极回路越短钳位效果越好。焊MOS管。直插的注意脚位G、D、S贴片的建议先把焊盘上锡再用镊子放管子热风枪或烙铁都能操作。焊栅极电阻和下拉电阻这两个小件靠近MOS管G极。最后拉飞线连接单片机PWM信号线和GND。整个电路在洞洞板上跑通了再画PCB能省掉很多打板返工的时间。我自己吃过亏第一次直接画板打样结果续流二极管离MOS管太远关断尖峰抑制效果差板子回来还得飞线补焊。实操心得大电流路径尽量用一整块覆铜或者粗线不要用细细的飞线串联。飞线电阻大电机大电流时会产生额外压降和发热严重的还会因为导线电感加剧尖峰。3.2 上电前的检查清单焊完第一件事不是上电而是先目视检查和万用表测量。以下清单我每次必过用万用表二极管档测MOS管D-S之间正常是反向截止万用表显示无穷大或1V左右压降实际是内部体二极管。测一下VCC和GND之间有没有短路很多新手错在电容或二极管焊反一上电就炸。确认续流二极管方向阴极必须接电源正极方向搞反了等于直接把电源短路。栅极下拉电阻焊好后用万用表量G极对地电阻应该在10kΩ~100kΩ附近。确认控制信号没有持续高电平输出单片机程序在复位期间引脚应该是高阻或下拉状态。确认完再上电。第一次上电建议用可调电源限流把电流限制在电机额定电流的1.2倍左右万一接错也不至于烧一片。没有可调电源就串一个功率稍大的灯泡或者自恢复保险丝也是一样的保护思路。3.3 用万用表和示波器验证电路上电后按下面的顺序测试让单片机输出一个固定的高电平或者直接用杜邦线把栅极电阻接到3.3V/5V看电机是否匀速转动电流是否在合理范围。断开控制信号电机应该立刻停下来并且电源电流掉到零附近。如果断开后电机还“哼哼”地慢慢转说明MOS管没完全关断大概率是栅极悬空或者Vgs(th)太低漏电了。如果有示波器把探头夹在MOS管的D极和GND之间观察关断瞬间的尖峰电压。正常情况下尖峰应该被钳位在电源电压加0.4V左右如果看到几十伏的尖峰说明续流二极管没接好或者离得太远。再用示波器看G极波形PWM方波的上升和下降沿应该比较干净没有严重过冲和振铃。如果振铃明显调大栅极电阻。没有示波器也有土办法用手摸MOS管温度。PWM跑起来之后管子微温或者室温水平是正常的如果几十秒内烫到手不能摸优先检查Vgs是否完全导通、PWM频率和栅极电阻是否合适、电机电流是否超了管子能扛的范围。3.4 参数计算与实际数据参考这里给一组我常用的计算过程方便你自己代公式。假设电机额定12V、额定电流1A、启动峰值电流4A。选AO3400Vds额定30VId额定5.7ARds(on)典型值40mΩVgs4.5V。导通损耗P I² × Rds(on) 1² × 0.04 0.04W几乎可以忽略堵转时4A16 × 0.04 0.64WSOT-23封装在铜箔面积足够的情况下勉强能扛但长时间堵转还是建议换TO-252封装或者并联两颗管子降热阻。开关损耗假设PWM频率20kHz总电荷Qg约20nC栅极电阻22Ω开关时间大约在亚微秒级别开关损耗在低电流场景下可以忽略。但如果电机电流到5A以上、PWM频率又高开关损耗就要认真算了。续流二极管选型参考最大续流电流至少等于电机堵转电流。12V/1A电机用1N5819够用超过3A用SS34或SR5100。二极管的耐压要大于电源电压的两倍以上并且反向恢复时间要短不然关断瞬间二极管会反向导通一小段时间产生额外功耗。PWM频率选择有刷电机的PWM频率一般选10kHz到30kHz。低于10kHz电机会发出刺耳的啸叫听久了烦高于30kHzMOS管的开关损耗上升单片机引脚驱动能力也可能吃紧。如果电机内部有减速齿轮箱PWM频率太接近机械谐振频率会引起齿轮箱嗡嗡响这种情况调高到25kHz以上通常能避开。4. 常见问题与避坑指南4.1 问题一MOS管发烫可能不只是管子选小了MOS管发热有四个常见原因没完全导通、开关频率太高、电机电流超限、散热不够。没完全导通是最容易犯的错。比如5V单片机直接驱动Vgs(th)为3V的普通MOS管栅极电压虽然超过了阈值但没有达到数据手册里Rds(on)对应的测试条件通常是4.5V或10V管子工作在“半导通”状态内阻可能是标称值的好多倍。排查方法是实测Vgs电压确认它是不是满足你所用型号的导通条件。如果想留余量选用逻辑电平管AO3400、Si2300型号里带逻辑L的一般都是更稳。开关损耗这块很多人只看导通损耗忽略PWM频率。栅极充放电需要时间频率高到一定程度MOS管每次开关都在线性区停留一段时间功耗上去了但电机转速的提升早就到天花板了。试试降低PWM频率如果发热明显改善那就说明是开关损耗主导不是电流问题。避坑SOT-23封装的管子本身散热能力有限即使理论电流够用实际长时间工作时建议把承载电流控制在2A以下。要超过2A换SOP-8、TO-252封装或者多并联两颗管子分摊电流。4.2 问题二PWM一开电源电压就被拉垮这个现象在电池供电的场景特别典型。电机启动瞬间电流大电池内阻和导线电阻导致压降MCU的供电电压被拉到复位阈值以下整个系统重启然后电机突然停转反复循环。解决方法按优先级排电源输入和电机主回路之间做一个“电源隔离”思路上的分区。MCU供电从电池经过一个LDO或DCDC获得并且在MCU供电端加10uF100nF的去耦电容。在电机电源端加一个大容量电解电容容量至少是电机堵转电流 × 1ms对应的电量。举个例子堵转4A1ms是4mC对应100uF电容的电压变化是40mV所以100uF起步我用下来效果比较好的参数是470uF。如果电池电压本身就偏低直接换更高C数的电池组或者用两节18650串联别指望驱动电路帮你把电压变出来。有时候“电压被拉垮”其实不是电源问题而是单片机PWM引脚驱动能力不足导致波形变形。示波器看G极波形如果是缓慢梯形而不是方波要降低栅极电阻或者加一级推挽驱动两个三极管组成图腾柱来增强驱动电流。4.3 问题三栅极波形振铃MOS管高频啸叫栅极波形振铃的典型表现是PWM频率在20kHz左右时耳朵能听到轻微“滋滋”声示波器看波形有严重过冲和振荡。这个干扰还会耦合到单片机引脚导致ADC采样抖动或者莫名其妙复位。处理手段从易到难增大栅极电阻从22Ω调到47Ω甚至100Ω这是最有效的一招但代价是开关时间变长、开关损耗增加。在MOS管G极和S极之间并联一个1nF~10nF的电容把栅极驱动回路的带宽压下来。保持PWM信号线和动力线之间的距离不要平行走线尤其是洞洞板飞线时PWM线千万别跟电机线扎一起。把栅极下拉电阻从10kΩ换成100kΩ减少下拉电阻和栅极电容组成的RC延迟对边沿的拖慢效应。振铃还有一个隐藏来源是地弹。MOS管S极到GND之间的导线电感在大电流切换时会产生压降导致G极参考电位不稳定进而引发振铃。所以S极的接地线一定要短、粗最好直接焊到覆铜地和电源负极汇流点。4.4 问题四如果搭H桥还要特别注意直通短路H桥正反转必须保证“先关断再导通”的死区逻辑。如果左高边和右下低边同时导通没问题但换向瞬间如果右高边和右下低边短暂同时导通电源就通过两个MOS管直接短路电流会瞬间大到烧毁管子。用软件控制时要做到先让当前导通的对角全部关断延时几十微秒再打开另一组对角。这个延时就是死区时间具体数值取决于MOS管关断时间和驱动电路速度小功率管5us~20us比较合适。更稳妥的办法是用带死区控制的专用栅极驱动芯片比如IR2104不过那就不是纯分立件方案了。另外H桥的四个MOS管尽量选参数一致的型号栅极电阻也保持一致否则各桥臂开关速度不一致死区时间难以压制。实际操作中我还会在每个高边P-MOS的GS之间并联一个稳压管防止电机换向的瞬态电压击穿栅极。4.5 常见问题速查表现象可能原因排查与解决MOS管发烫栅压不足半导通实测Vgs选用逻辑电平MOS管MOS管发烫PWM频率过高降频至10k~20kHz观察温度变化MOS管发烫电流超规格换大封装或并联MOS管电机启动MCU重启电源压降严重加470uF电容MCU独立LDO供电电机断电后仍缓慢转动栅极悬空加10k~100k下拉电阻关断瞬间MOS管烧毁续流二极管缺失/接反/太远接反并联肖特基管靠近MOS管高频啸叫PWM频率过低/齿轮箱谐振提高PWM频率避开谐振点栅极波形过冲、振铃栅极电阻太小/走线干扰加大栅极电阻或G-S并联电容H桥换向瞬间炸管上下桥臂直通软件死区5~20us或使用IR2104电源端出现尖峰干扰缺少滤波电容VCC-GND加0.1uF100uF靠近主回路5. 写在最后这套电路还能怎么扩展搭完这个N-MOS低边驱动后续其实还能玩出很多花样。想实现堵转保护可以在S极到GND之间串一个毫欧采样电阻运放放大后送给单片机ADC检测到电流超过阈值就关断PWM并报警。想提高PWM驱动能力就用两个小三极管组成图腾柱驱动电路把单片机引脚从沉重的栅极电容中解放出来。想做电流环调速也可以把采样电压直接送入MCU做PID闭环这就是一套简易的电机调速器原型了。我个人的体会是MOS管驱动电路看起来简单但真正吃透它的每一个元器件为什么存在、每一个参数为什么取这个值能让你在后续做电源、做无刷驱动、做DC-DC转换器的时候走很多弯路。第一次焊完这片电路如果它能稳定跑上几天不烧管子你就已经掌握了功率电子里最核心的“开关”逻辑。剩下的都是在往这个骨架上填更高级的控制算法和保护功能。
返回列表