IR2104+IRF540MOS电机驱动全桥学习与实践过程使用L293或L298等全桥芯片来控制直流电机虽然简便而且成本低廉,但由于它们的内阻较大,在控制大电流的马达时芯片常常过热,导致系统的整体效率较低。在电动车上,马达控制芯片的内阻过大会导致车子的加速度变小。本人设想在暑假制作一个大的轮式或者履带式机器人,并且希望它能跑到公交车那么快,于是开始研究如何使用MOS管来控制更大电流的电机。首先,本人参考了《大功率直流马达的驱动——ABUROBOCON2005比赛之动力方案》一文中的电路图(原文地址=192)按照这个原理图,我热转印制作了单个全桥的实验电路。个别的电阻电容值有所变动。上电并给予有效的持续高电平信号后发现电路不能驱动马达,而2104开始发烫,540没有任何反应。于是更换2104,但仍出现同样的现象。通过示波器检测发现,高端MOS没有被驱动,而低端MOS的G端信号正常,因而桥没有被导通。更换信号方向,另外半桥仍然出现相同的现象。本人开始怀疑是BOOTSTRAP电容的问题,于是实验了不同的电容值。但无论怎么变换,问题仍然没有被解决。由于手头没有4148,使用了IN5819作为续流二极管,按道理5819只会比4148更好,不应该成为问题的原因。由于手头2104只有6片,而所有的都上电并且发热过,于是重新购买了一批2104。在这里感谢周顺同学,那天刚好他毕业考考好,帮我到科技京城买了2104。更换2104后,电路工作正常。周顺看了看我原来的2104,恍然大悟:原来的芯片是97年前的旧货。马达欢快地转了起来。由于540的内阻要比298小很多,马达的加速度明显提高,变向时电刷更是发出了闪亮的火星。回到家后用示波器开始研究高端MOS的G端驱动电压波形。发现在EN端为高的初期,高端MOS的驱动电压突然升至比VCC高10V。此时强推动作用起效。但随着时间的流逝,该电压逐渐衰减为VCC,MOS的导通程度越来越不完全。直到下一个脉冲到来,G端电压又恢复为VCC+10V,但又逐渐衰减。也就是说,用持续的高电平信号来驱动MOS会导致MOS不能被完全导通,致使MOS发热,马达的实际功率低下。使用PWM信号则可以解决这个问题,它使BOOTSTRAP电容反复充电放电,使高端驱动电压始终维持在一个比较高的水平。倘若想让马达全速前进,不能使用持续的高电平,而需要用3%左右占空比的PWM,这是驱动2104与驱动298等全桥芯片的最大差别。不同的BOOTSTRAP电容值适应于不同频率的PWM信号与不同的MOS。电容值大的充电和放电时间都比较大,电压衰减得也比较慢,因而适合较低频率的PWM;电容值小的充电放电时间比较短,适合于较高频率的PWM。虽然IR给出过一个BOOTSTRAP电容的计算公式,但本人更倾向于通过实验来寻找合适的电容值。这样做既避免了繁杂的计算,又可以通过实验来了解它的工作原理,而且还可以适应板载电容。通过实验,本人确定了1UF的电容值。该电容采用了旦电容,以减少漏电。但如果没有旦电容,其他漏电较大的电容影响也并非很大。相对于高频的PWM,在如此短的时间内漏电的影响是微乎其微的。但从理论上来说,BOOTSTRAP电容漏电会导致高端MOS的导通电阻变大。总结了以上经验,本人又制作了一块双电机的MOS驱动电路。电路没有太大的改变,只是把续流二极管改为原图所说的4148,把阻容换成了贴片封装,并且采用了1UF旦电容作为BOOTSTRAP电容。点击此处下载热转印用PCB文档(DXP)该电路制作好后成功地驱动了我的机器人小车。小车在全速启动以及突然反向运动时的性能明显比使用298要好。主要原因为突然变向的电流很大,而298的驱动能力有限,导致变向的电流较小,加速度较小。实验并没有发现该电路有什么问题,于是电路基本定型,转向于研究设计印刷电路板。由于TO-220封装的MOS管直立很占空间,而且还需要散热器,于是本人决定采用贴片的D2PAK封装的IRF540,其他元件也都改为贴片封状。另外为了散热,本人还在芯片的上面设计了散热器和风扇。降低MOS温度可以大大提高工作效率。一周后我拿到了印刷电路板,同时我也去购买贴片元件。IRF540S(S是贴片,N是TO-220)并没有买到正品,而是买到了打磨后重新刻字的拆机件,其他元件都买到了正品。回家焊接好后,电路工作正常,绿的散热器很漂亮。点击此处下载PCB以及SCH虽然该电路工作正常,但总感觉拆机的MOS管发热很大。于是我决定将TO220的正品540改为D2PAK封装,以做对比实验。首先,用凿子将BACK凿到合适的位置剪去一个脚用老虎钳弯到合适的位置再剪到合适的长短改装好的540与D2PAK封装的7805对比我将这些改装好的正品540焊接到了电路上,而且没有安装散热器。由于急于想看到实验结果,在使用完焊锡膏后我没有洗板就上电了,结果2104突然冒火,被烧成两半。我急忙断电,但为时已晚。更换2104后,电路仍不能正常工作。通过检测发现,问题出在74HC00上。更换74HC00并洗板后,电路工作正常。我突然意识到74HC00的剩余引脚没有接地,而焊锡膏则可能导致漏电。因而我将这次事故的主要原因归结为:CMOS剩余引脚没有接地,而焊锡膏漏电导致惨剧发生。电路修理好后,通过驱动同一马达,我发现正品540没有任何感觉得到的升温,而拆机540则明显升温。我断定,拆机540并非540,而是其他电流较小的MOS打磨后冒充540。我来到科技京城,到处寻找IRF540S,但所有的商家都告诉我,只有假的,真的没有。而其他的贴片MOS,电流都比较小。因此我意识到只能采用手工加工540N的办法来获得540S。。。。。真是无奈啊。回家后我开始实验较大电流的驱动,我将驱动电压和2104工作电压设为同路的12V,由一个2A的稳压电源供电,并且将限流开到最大。驱动信号为97%高电平的PWM,每隔1秒反转马达。当马达反转时,意想不到的事情发生了:马达停了下来,电流却被限制在了2A!此时板上的元件一定开始发热了!我迅速地将电源关闭。摸了下2104,滚烫!不过还好没有烧毁。重新上电驱动小马达一切正常。但一反转大马达,同样的事情再次发生。经过反复思考,我将该问题归结于电源的限流。由于马达反转时电流巨大,拉低了电压,使2104工作电压低于了正常范围(10V-20V),最低甚至到达了3V,而此时外围电路却在继续工作,2104极有可能发生错乱而导致发热。因此本人建议:2104的VCC最好能单独供电,千万不能因为马达而拉低电压,否则后果很可能是毁灭性的!解决了该问题后,我想到电路的设计电流过小,50MIL的线顶多只能通过5A的电流,而540却能驱动30个安培,该电路对它的驱动能力造成了极大的浪费,因此决定重新设计。在重新设计的电路板上,我没有改变任何的电路,而是把心思放在了走线以及散热上。我在每个MOS的正面和反面都采用了长方形的敷铜充当散热片,并且在MOS安装的地方用数量众多的过孔将两片敷铜连接起来,使正面的热量能够迅速传递到反面进行散热。另外在大电流的网络中,我还运用了SOLDER层去除阻焊层,使之能够镀锡以提供更大的电流。昨天我拿到了PCB板,迫不及待地进行了焊接,洗板以及上电实验,一切顺利。电路自身的散热性能极佳。可以看到MOS反面的散热敷铜以及热传导用的过孔焊接好的板子(正面)焊接好的板子(反面)MOS的研究基本上告以段落,因此作该文以分享我研究过程中的经验以及快乐。有一些多余的打印好的热转印纸和5张第一板的PCB可以送给大家,请需要的人跟贴。前提是你在索取之前已经进行过一些相关的学习和实验,并乐意将自己的快乐与大家分享。