树莓派 3 + L298N模块 驱动直流电机

如题所述

第1个回答  2022-07-25
单片机或树莓派一般使用 L298n 模块来驱动电机 。L298N的实物图如下。

12V power:L298n 的电源正极,尽管标的 12V,但你可以使用 7V ~ 35V 的电源。

GND:  L298n 的电源地,树莓派的 GND 引脚也要接到这里,即 L298N 和 树莓派需要共地。

5V power:  L298n 输出的 5v 电源,是用来给单片机或树莓派供电的。如果你的树莓派是单独供电,那么这个引脚悬空。

Output 的两个引脚接直流电机的两脚,而板上有 Output A 和 Output B,分别驱动电机 A 和电机 B。

A Enable :  电机 A 使能,接 GPIO 口 。可以用PWM 来调速。

Logic Input :  接 4 个 GPIO 口。 上面两个脚 Input1 、Input2 (靠近 A Enable )控制电机 A ; 下面两个脚 Input3、Input4 (靠近 B Enable)控制电机 B。

B Enable : 电机 B 使能,接 GPIO 口。 可以用 PWM 来调速。

总结一下就是 A Enable 、Input1、Input2 控制电机 A 的运行,B Enable、Input3、Input4 控制电机 B 的运行。

如何控制的呢? 下面是对电机 A 进行控制的真值表,电机 B 同理。

驱动一下试试吧!

下面是控制电机 A 的电路图

把 L289N 的直流电源接好,然后把树莓派的 GND 与 L298N 的 GND 连在一起,因为共地后 L298N 才能识别树莓派发送的 IN1、IN2 到底是高电平还是低电平。   

树莓派的 2、3、4 脚分别连到 A Enable、IN1 、IN2 。(把 Enable 上的短接帽拿掉)

由控制表可知给 2 脚高电平,3 脚高电平,4 脚低电平,电机就会正转。

编写程序:

前面提到过 A Enable 和 B Enable 可以用 pwm 控制来调速,下面是相应程序。

接线不变!这个程序可以让电机 A 以不同的速度正转。

在树莓派中运行程序后,可以看到电机的转速会随着占空比的改变而变化。

程序源码在:  github
相似回答