Gamit ang BTS7960 kasama ang Raspberry Pi

Using the BTS7960 with the Raspberry Pi

Ang driver ng motor ng BTS7960 ay isang malakas na module ng H-tulay na may kakayahang hawakan ang mataas na alon, na ginagawang perpekto para sa pagkontrol sa mga motor ng DC sa mga robotics at mga proyekto sa automation. Sa tutorial na ito, malalaman mo kung paano kumonekta at makontrol ang BTS7960 na may isang Raspberry Pi upang magmaneho ng isang motor.


Ano ang kakailanganin mo

  1. Raspberry Pi (Anumang modelo na may mga kakayahan sa GPIO, hal., PI 3, PI 4)
  2. BTS7960 Module ng driver ng motor
  3. DC Motor (Angkop para sa iyong proyekto)
  4. Panlabas na Power Supply (pagtutugma ng boltahe ng iyong motor at kasalukuyang mga kinakailangan)
  5. Mga wire ng tinapay at jumper

Hakbang 1: Pag -unawa sa driver ng motor ng BTS7960

Ang module ng BTS7960 ay may kasamang dalawang high-power half-bridges na may kakayahang magmaneho ng mga motor na may mga alon hanggang sa 43A. Nagtatampok ito:

  • PWM input pin para sa control ng bilis
  • Direksyon control pin
  • Overcurrent at Thermal Protection

Pinout

Pin Paglalarawan
VCC 5V Logic Power Input
Gnd Lupa
Rpwm Input ng PWM para sa pasulong na paggalaw
Lpwm PWM input para sa reverse motion
R_en Paganahin ang pin para sa pasulong na paggalaw
L_en Paganahin ang pin para sa reverse motion
Motor+ (m+) Positibong terminal ng motor
Motor- (m-) Negatibong terminal ng motor
Vin Panlabas na suplay ng kuryente ng motor
Gnd (kapangyarihan) Ground para sa suplay ng kuryente ng motor

Hakbang 2: Ang mga kable ng BTS7960 sa Raspberry Pi

Mga koneksyon

BTS7960 PIN Raspberry Pi Pin
VCC 5v
Gnd Gnd
Rpwm GPIO18 (PWM Channel 0)
Lpwm GPIO19 (PWM Channel 1)
R_en GPIO23
L_en GPIO24

Mga koneksyon sa motor at power supply

  1. Ikonekta ang mga terminal ng motor sa Motor+ (m+) at Motor- (m-) mga pin.
  2. Ikonekta ang positibong terminal ng panlabas na supply ng kuryente sa Vin.
  3. Ikonekta ang lupa ng panlabas na supply ng kuryente sa Gnd (kapangyarihan) pin.

Tandaan: Tiyakin na ang panlabas na supply ng kuryente ay tumutugma sa boltahe ng iyong motor at kasalukuyang mga kinakailangan.


Hakbang 3: Paganahin ang PWM sa Raspberry Pi

Upang makontrol ang bilis ng motor, gagamitin mo ang PWM (modyul ng lapad ng pulso). Raspberry Pi Gpio Pins 18 at 19 Suporta sa Hardware PWM.

Paganahin ang PWM sa pamamagitan ng pagsasaayos ng Raspberry Pi

  1. Buksan ang terminal at tumakbo:
    sudo raspi-config
    
  2. Mag -navigate sa Mga Pagpipilian sa Interface> P5: I2C, at paganahin ang I2C.
  3. I -save at i -reboot ang Raspberry Pi:
    sudo reboot
    

Hakbang 4: Pagsulat ng Python Code upang makontrol ang motor

I -install ang RPi.GPIO Library upang makontrol ang mga GPIO pin kung hindi pa naka -install:

pip install RPi.GPIO

Halimbawa ng Python Code

Ang halimbawang ito ay nagpapakita kung paano makontrol ang bilis at direksyon ng motor gamit ang 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()

Hakbang 5: Pagsubok sa iyong pag -setup

  1. Ikonekta ang motor at supply ng kuryente.
  2. Patakbuhin ang script ng Python:
    python3 bts7960_control.py
    
  3. Alamin ang bilis ng pagbabago ng motor at direksyon tulad ng na -program.

Pag -aayos

  1. Hindi tumatakbo ang motor:

    • Suriin ang mga koneksyon sa mga kable.
    • Patunayan ang panlabas na supply ng kuryente.
  2. Hindi gumagana ang PWM:

    • Tiyakin na ang GPIO18 at GPIO19 ay na -configure para sa PWM.
    • Suriin ang mga halaga ng cycle ng tungkulin sa script.
  3. Sobrang pag -init ng module:

    • Tiyakin na ang kasalukuyang draw ng motor ay hindi lalampas sa rating ng BTS7960.

Mga aplikasyon ng BTS7960 na may Raspberry Pi

  1. Pagkontrol ng mataas na kasalukuyang DC motor sa mga robotics
  2. Pagbuo ng mga awtomatikong sasakyan o robot
  3. Paglikha ng mga motorized system para sa mga pang -industriya na aplikasyon
  4. Pagbuo ng mga remote na kontrolado na mga system

Konklusyon

Ang driver ng motor ng BTS7960 ay isang matatag at mahusay na solusyon para sa pagmamaneho ng mga mataas na kasalukuyang motor. Pinagsama sa mga kakayahan ng GPIO ng Raspberry Pi, bubuksan nito ang maraming mga posibilidad para sa mga robotics at mga proyekto ng automation. Sa pamamagitan ng pagsunod sa gabay na ito, maaari mong i -set up at kontrolin ang BTS7960 upang lumikha ng malakas na mga motorized system. Eksperimento sa iba't ibang mga frequency ng PWM at mga cycle ng tungkulin upang ma -optimize ang pagganap para sa iyong tukoy na aplikasyon!

Mag -iwan ng komento

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.