Menggunakan BTS7960 dengan Raspberry Pi

Using the BTS7960 with the Raspberry Pi

BTS7960 Motor Driver adalah modul h-bridge yang kuat yang mampu menangani arus tinggi, membuatnya ideal untuk mengendalikan motor DC dalam proyek robotika dan otomatisasi. Dalam tutorial ini, Anda akan belajar cara menghubungkan dan mengontrol BTS7960 dengan pi raspberry untuk mengendarai motor.


Apa yang Anda Butuhkan

  1. Raspberry Pi (Model apa pun dengan kemampuan GPIO, mis., Pi 3, Pi 4)
  2. BTS7960 Modul Driver Motor
  3. Motor DC (Cocok untuk proyek Anda)
  4. Catu daya eksternal (Pencocokan tegangan motor Anda dan persyaratan saat ini)
  5. Papan tempat memotong papan dan kabel jumper

Langkah 1: Memahami pengemudi motor BTS7960

Modul BTS7960 mencakup dua jembatan setengah daya tinggi yang mampu mendorong motor dengan arus hingga 43A. Fiturnya:

  • Pin input PWM untuk kontrol kecepatan
  • Pin kontrol arah
  • Perlindungan arus berlebih dan termal

Pinout

Pin Keterangan
Vcc Input Daya Logika 5V
Gnd Tanah
RPWM Input PWM untuk gerakan maju
LPWM Input PWM untuk gerakan terbalik
R_en Aktifkan pin untuk gerakan maju
L_en Aktifkan pin untuk gerakan terbalik
Motor+ (M+) Terminal positif motorik
Motor- (M-) Terminal negatif motorik
Vin Catu Daya Motor Eksternal
GND (Power) Tanah untuk Catu Daya Motor

Langkah 2: Kabel BTS7960 ke Raspberry Pi

Koneksi

Pin BTS7960 Raspberry Pi Pin
Vcc 5v
Gnd Gnd
Rpwm GPIO18 (saluran PWM 0)
LPWM GPIO19 (saluran PWM 1)
R_en GPIO23
L_en Gpio24

Koneksi motor dan catu daya

  1. Hubungkan terminal motor ke Motor+ (M+) Dan Motor- (M-) pin.
  2. Hubungkan terminal positif catu daya eksternal ke Vin.
  3. Menghubungkan ground catu daya eksternal ke GND (Power) pin.

Catatan: Pastikan catu daya eksternal cocok dengan tegangan motor dan persyaratan saat ini.


Langkah 3: Mengaktifkan PWM di Raspberry Pi

Untuk mengontrol kecepatan motor, Anda akan menggunakan PWM (modulasi lebar pulsa). Raspberry Pi Gpio Pin 18 dan 19 Dukungan Perangkat Keras PWM.

Aktifkan PWM melalui konfigurasi Raspberry PI

  1. Buka terminal dan jalankan:
    sudo raspi-config
    
  2. Navigasikan ke Opsi Antarmuka> P5: I2C, dan aktifkan I2C.
  3. Simpan dan reboot raspberry pi:
    sudo reboot
    

Langkah 4: Menulis kode Python untuk mengontrol motor

Instal RPi.GPIO Perpustakaan untuk mengontrol pin GPIO jika belum diinstal:

pip install RPi.GPIO

Contoh Kode Python

Contoh ini menunjukkan cara mengontrol kecepatan dan arah motor menggunakan 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()

Langkah 5: Menguji Pengaturan Anda

  1. Hubungkan motor dan catu daya.
  2. Jalankan skrip Python:
    python3 bts7960_control.py
    
  3. Amati kecepatan dan arah perubahan motor seperti yang diprogram.

Pemecahan masalah

  1. Motor Tidak Berjalan:

    • Periksa koneksi kabel.
    • Verifikasi catu daya eksternal.
  2. PWM Tidak Bekerja:

    • Pastikan GPIO18 dan GPIO19 dikonfigurasi untuk PWM.
    • Periksa nilai siklus tugas dalam skrip.
  3. Modul overheating:

    • Pastikan undian motor saat ini tidak melebihi peringkat BTS7960.

Aplikasi BTS7960 dengan Raspberry Pi

  1. Mengontrol motor DC arus tinggi dalam robotika
  2. Membangun kendaraan atau robot otomatis
  3. Membuat sistem bermotor untuk aplikasi industri
  4. Mengembangkan sistem yang dikendalikan dari jarak jauh

Kesimpulan

Pengemudi motor BTS7960 adalah solusi yang kuat dan efisien untuk mengendarai motor arus tinggi. Dikombinasikan dengan kemampuan GPIO Raspberry Pi, ini membuka banyak kemungkinan untuk proyek robotika dan otomatisasi. Dengan mengikuti panduan ini, Anda dapat mengatur dan mengontrol BTS7960 untuk membuat sistem bermotor yang kuat. Eksperimen dengan frekuensi PWM yang berbeda dan siklus tugas untuk mengoptimalkan kinerja untuk aplikasi spesifik Anda!

Tinggalkan komentar

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.