Korzystanie z BTS7960 z Raspberry Pi

Using the BTS7960 with the Raspberry Pi

Sterownik silnika BTS7960 to potężny moduł mostka, który jest w stanie obsłużyć wysokie prądy, co czyni go idealnym do kontrolowania silników DC w projektach robotyki i automatyzacji. W tym samouczku nauczysz się łączyć i kontrolować BTS7960 z Raspberry Pi, aby napędzać silnik.


Czego będziesz potrzebować

  1. Raspberry Pi (Każdy model z możliwościami GPIO, np. PI 3, PI 4)
  2. Moduł sterownika silnika BTS7960
  3. Silnik DC (odpowiednie do twojego projektu)
  4. Zewnętrzny zasilacz (Dopasowanie napięcia i wymagań dotyczących silnika)
  5. Druty chleba i skoczków

Krok 1: Zrozumienie sterownika silnika BTS7960

Moduł BTS7960 obejmuje dwa przyrodnie mosty o dużej mocy zdolne do napędzania silników z prądami do 43A. Posiada:

  • PINS wejściowy PWM do sterowania prędkością
  • Pinsy kontrolne kierunku
  • Ochrona nad nadmierną prądem i termicznie

Pinout

Szpilka Opis
VCC Wejście zasilania logicznego 5 V
GND Grunt
RPWM Wejście PWM do ruchu do przodu
LPWM Wejście PWM dla ruchu odwrotnego
R_en Włącz PIN do ruchu do przodu
L_en Włącz PIN do ruchu odwrotnego
Silnik+ (m+) Motor dodatni terminal
Motor- (m-) Mocowy terminal ujemny
Vin Zewnętrzny zasilacz silnika
GND (moc) Ziemia do zasilania silnika

Krok 2: Okablowanie BTS7960 do Raspberry Pi

Znajomości

BTS7960 PIN Pin Raspberry Pi
VCC 5v
GND GND
RPWM GPIO18 (kanał PWM 0)
LPWM GPIO19 (kanał PWM 1)
R_en GPIO23
L_en GPIO24

Połączenia silnika i zasilania

  1. Podłącz zaciski silnika do Silnik+ (m+) I Motor- (m-) szpilki.
  2. Podłącz dodatni terminal zasilacza zewnętrznego do Vin.
  3. Podłącz ziemię zewnętrzną z zasilaczem do GND (moc) szpilka.

Notatka: Upewnij się, że zasilacz zewnętrzny odpowiada napięciu i bieżącym wymaganiom silnika.


Krok 3: Włączanie PWM na Raspberry Pi

Aby kontrolować prędkość silnika, użyjesz PWM (modulacja szerokości impulsu). Raspberry Pi GPIO Pins 18 i 19 Wsparcie PWM.

Włącz PWM poprzez konfigurację Raspberry Pi

  1. Otwórz terminal i uruchom:
    sudo raspi-config
    
  2. Przejść do Opcje interfejsu> P5: I2Ci włącz I2C.
  3. Zapisz i uruchom ponownie Raspberry Pi:
    sudo reboot
    

Krok 4: Pisanie kodu Pythona do kontrolowania silnika

Zainstaluj RPi.GPIO Biblioteka do kontrolowania pinów GPIO, jeśli jeszcze nie zainstalowane:

pip install RPi.GPIO

Przykładowy kod Pythona

Ten przykład pokazuje, jak kontrolować prędkość i kierunek silnika za pomocą 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()

Krok 5: Testowanie konfiguracji

  1. Podłącz silnik i zasilacz.
  2. Uruchom skrypt Python:
    python3 bts7960_control.py
    
  3. Obserwuj prędkość i kierunek zmiany silnika zgodnie z zaprogramowaniem.

Rozwiązywanie problemów

  1. Nie działa silnik:

    • Sprawdź połączenia okablowania.
    • Sprawdź zewnętrzny zasilacz.
  2. PWM nie działa:

    • Upewnij się, że GPIO18 i GPIO19 są skonfigurowane dla PWM.
    • Sprawdź wartości cyklu pracy w skrypcie.
  3. Moduł przegrzany:

    • Upewnij się, że bieżące losowanie silnika nie przekracza oceny BTS7960.

Zastosowania BTS7960 z Raspberry Pi

  1. Kontrolowanie silników DC o wysokiej prądu w robotyce
  2. Budowanie zautomatyzowanych pojazdów lub robotów
  3. Tworzenie zmotoryzowanych systemów do zastosowań przemysłowych
  4. Opracowanie zdalnie sterowanych systemów

Wniosek

Silnik BTS7960 jest solidnym i wydajnym rozwiązaniem do prowadzenia silników o wysokiej prądu. W połączeniu z możliwościami GPIO Raspberry PI, otwiera wiele możliwości dla projektów robotyki i automatyzacji. Postępując zgodnie z tym przewodnikiem, możesz skonfigurować i kontrolować BTS7960 w celu stworzenia mocnych systemów zmotoryzowanych. Eksperymentuj z różnymi częstotliwościami PWM i cyklami służby, aby zoptymalizować wydajność dla konkretnej aplikacji!

Zostaw komentarz

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.