BTS7960 Motor Driver är en kraftfull H-Bridge-modul som kan hantera höga strömmar, vilket gör den idealisk för att kontrollera DC-motorer i robotik- och automatiseringsprojekt. I den här tutorialen lär du dig att ansluta och styra BTS7960 med en Raspberry Pi för att köra en motor.
Vad du behöver
- Hallon (Varje modell med GPIO -kapacitet, t.ex. PI 3, PI 4)
- BTS7960 Motordrivrutinsmodul
- Likströmsmotor (Lämplig för ditt projekt)
- Extern strömförsörjning (matchar din motors spänning och aktuella krav)
- Breadboard och jumpertrådar
Steg 1: Förstå BTS7960 Motor Driver
BTS7960-modulen innehåller två högeffekt halvbryggor som kan köra motorer med strömmar upp till 43A. Den har:
- PWM -ingångsstift för hastighetskontroll
- Riktningskontrollstift
- Överström och termiskt skydd
Pinout
Stift | Beskrivning |
---|---|
Vcc | 5V logikkraftsinmatning |
Gard | Jord |
Rpwm | PWM -ingång för framåtrörelse |
Lpwm | PWM -ingång för omvänd rörelse |
R_en | Aktivera stift för framåtrörelse |
L_en | Aktivera stift för omvänd rörelse |
Motor+ (M+) | Motorisk positiv terminal |
Motor- (m-) | Motor Negative Terminal |
Vin | Extern motorströmförsörjning |
GND (Power) | Mark för motorströmförsörjning |
Steg 2: Kopplar BTS7960 till Raspberry Pi
Anslutningar
BTS7960 -stift | Hallon pi |
---|---|
Vcc | 5V |
Gard | Gard |
Rpwm | GPIO18 (PWM Channel 0) |
Lpwm | GPIO19 (PWM Channel 1) |
R_en | Gpio23 |
L_en | Gpio24 |
Motor- och strömförsörjningsanslutningar
- Anslut motorterminalerna till Motor+ (M+) och Motor- (m-) stift.
- Anslut den externa strömförsörjningens positiva terminal till Vin.
- Anslut den externa strömförsörjningens mark till GND (Power) stift.
Notera: Se till att den externa strömförsörjningen matchar din motors spänning och aktuella krav.
Steg 3: Aktivera PWM på Raspberry Pi
För att styra motorhastigheten använder du PWM (pulsbreddmodulering). Raspberry Pi GPIO -stift 18 och 19 stöder hårdvara PWM.
Aktivera PWM via Raspberry PI -konfiguration
- Öppna terminalen och kör:
sudo raspi-config
- Navigera till Gränssnittsalternativ> P5: I2Coch aktivera i2c.
- Spara och starta om Raspberry Pi:
sudo reboot
Steg 4: Skriva Python -kod för att styra motorn
Installera RPi.GPIO
Bibliotek för att styra GPIO -stift om det inte redan är installerat:
pip install RPi.GPIO
Exempel Python -kod
Detta exempel visar hur man styr motorns hastighet och riktning med BTS7960.
import RPi.GPIO as GPIO
import time
# Pin Definitions
RPWM_PIN = 18
LPWM_PIN = 19
REN_PIN = 23
LEN_PIN = 24
# GPIO Setup
GPIO.setmode(GPIO.BCM)
GPIO.setup(RPWM_PIN, GPIO.OUT)
GPIO.setup(LPWM_PIN, GPIO.OUT)
GPIO.setup(REN_PIN, GPIO.OUT)
GPIO.setup(LEN_PIN, GPIO.OUT)
# PWM Setup
frequency = 1000 # PWM frequency in Hz
rpwm = GPIO.PWM(RPWM_PIN, frequency)
lpwm = GPIO.PWM(LPWM_PIN, frequency)
# Start PWM with 0% duty cycle (off)
rpwm.start(0)
lpwm.start(0)
try:
while True:
# Enable Forward Motion
GPIO.output(REN_PIN, GPIO.HIGH)
GPIO.output(LEN_PIN, GPIO.LOW)
# Set forward speed (50% duty cycle)
rpwm.ChangeDutyCycle(50)
lpwm.ChangeDutyCycle(0)
time.sleep(2)
# Enable Reverse Motion
GPIO.output(REN_PIN, GPIO.LOW)
GPIO.output(LEN_PIN, GPIO.HIGH)
# Set reverse speed (30% duty cycle)
rpwm.ChangeDutyCycle(0)
lpwm.ChangeDutyCycle(30)
time.sleep(2)
except KeyboardInterrupt:
print("Stopping motor...")
finally:
rpwm.stop()
lpwm.stop()
GPIO.cleanup()
Steg 5: Testa din installation
- Anslut motorn och strömförsörjningen.
- Kör Python -skriptet:
python3 bts7960_control.py
- Observera motorns ändringshastighet och riktning som programmerad.
Felsökning
-
Motor körs inte:
- Kontrollera ledningsanslutningar.
- Verifiera den externa strömförsörjningen.
-
PWM fungerar inte:
- Se till att GPIO18 och GPIO19 är konfigurerade för PWM.
- Kontrollera pliktcykelvärdena i skriptet.
-
Överhettningsmodul:
- Se till att motorns nuvarande dragning inte överskrider BTS7960: s betyg.
Applikationer av BTS7960 med Raspberry Pi
- Kontroll av DC-motorer med högström i robotik
- Bygga automatiserade fordon eller robotar
- Skapa motoriserade system för industriella applikationer
- Utveckla fjärrstyrda system
Slutsats
BTS7960 Motor Driver är en robust och effektiv lösning för att driva högströmmotorer. Kombinerat med Raspberry Pis GPIO -funktioner öppnar det många möjligheter för robotik- och automatiseringsprojekt. Genom att följa den här guiden kan du ställa in och styra BTS7960 för att skapa kraftfulla motoriserade system. Experimentera med olika PWM -frekvenser och pliktcykler för att optimera prestanda för din specifika applikation!