l298n电机驱动模块原理图及使用方法
一款做工比较好的,不带光耦隔离的L298N电机驱动模块。它的接线端子分为两类:一是逻辑控制信号接线端子(In1、In2、In3、In4、ENA、ENB);另一是电机供电和电机输出接线端子(VCC、GND、5V、OUT1、OUT2、OUT3、OUT4)。
先说功能:In1、In2、ENA、与OUT1、OUT2是用于一个电机的控制与输出;In3、In4、ENB、与OUT3、OUT4是用于另一个电机的控制与输出;VCC、GND是电机的供电电压输入端;5V是这个小板提供的一个额外的5V稳压输出(注意这个端子是输出,不是输入,千万不要将外面的5V接入进来!!!),它与GND一起可以提供一个稳定的+5V给外围其他电路供电(这个功能由板子中间一个孤立的跳线帽控制,当跳线帽插上短接时,提供+5V输出;跳线帽拿掉时,+5V没有输出)。
电机供电注意事项:虽然卖家说明中均给出“驱动部分端子(电机端)供电范围:+5V至+30V”。但是要注意一点,如果你要用板子的5V输出,这个供电电压(VCC与GND之间)必须大于7V,最好不超过12V。因为这个板子上的5V稳压芯片是线性稳压的,输入要有一定的压差,但压差也不能太大,否则会发热的。
有些网友将Arduino的5V输出直接接到这个模块的VCC上,这一点是很不合理的,因为两个电机工作时,电流有可能较大,Arduino的5V输出有可能提供不了那么大的电流(对于微型小马达到可以直接连接,但那种情况可能也不需要这个驱动模块了)。这时VCC与GND的供电必须由外部电源(譬如锂电池或经升压/降压模块后)直接供电。
还有一点必须注意,L298N的GND必须与你控制模块的GND连在一起,也就是必须要共地(不共地的是光耦隔离型的,后面再介绍),否则控制是无效的。
如果单独测试模块,ENA/ENB接+5V时,IN1~IN4的组合可以控制电机的正转、反转和停止。如果ENA/ENB接GND,则电机是不会转的。
在测试过程中,如果发现电机没有按照你所设想的方式运行,你可以用万用表的直流电压档(DC20V,电机供电电压小于20V,若大于20V,则用DC200V档测量)测量In1~In4(高—接5V;低—接GND)与GND之间的电压是否正确(参照下表),输出则是测量OUT1与OUT2(电机1)之间的电压是否正常(改变正转、反转时,这两点之间的电压正负会改变的),电机2是测量OUT3与OUT4之间的电压。如果ENA/ENB接GND,电机是不会转的,OUT之间也是没有电压的。