單片機或樹莓派一般使用 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 口 ??梢杂肞WM 來調速。
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