الحصول على تسليم مجانا على جميع الطلبات أكثر من 20 جنيه!

باستخدام BTS7960 مع Raspberry Pi

Using the BTS7960 with the Raspberry Pi

الـ BTS7960 محرك الدرايفر هو وحدة H-bridge قوية قادرة على التعامل مع تيارات عالية، مما يجعله مثالياً للتحكم في محركات التيار المستمر في مشاريع الروبوتات والأتمتة. في هذا الدرس، ستتعلم كيفية توصيل والتحكم بـ BTS7960 مع Raspberry Pi لتشغيل محرك.


ما ستحتاجه

  1. Raspberry Pi (أي طراز يدعم GPIO، مثل Pi 3، Pi 4)
  2. وحدة محرك BTS7960
  3. محرك DC (مناسب لمشروعك)
  4. مزود طاقة خارجي (مطابق لجهد واحتياجات التيار لمحركك)
  5. لوحة تجارب وأسلاك توصيل

الخطوة 1: فهم BTS7960 Motor Driver

تتضمن وحدة BTS7960 نصفين من الجسور عالية القدرة قادرين على تشغيل المحركات بتيارات تصل إلى 43A. يتميز بـ:

  • مداخل PWM للتحكم في السرعة
  • مداخل التحكم في الاتجاه
  • حماية من التيار الزائد والحرارة

توصيف الأرجل (Pinout)

الرجل الوصف
VCC مدخل طاقة منطقية 5V
GND الأرضي
RPWM مدخل PWM للحركة الأمامية
LPWM مدخل PWM للحركة العكسية
R_EN رجل التمكين للحركة الأمامية
L_EN رجل التمكين للحركة العكسية
Motor+ (M+) الطرف الموجب للمحرك
Motor- (M-) الطرف السالب للمحرك
VIN مزود طاقة المحرك الخارجي
GND (Power) الأرضي لمزود طاقة المحرك

الخطوة 2: توصيل BTS7960 بـ Raspberry Pi

التوصيلات

BTS7960 رجل Raspberry Pi رجل
VCC 5V
GND GND
RPWM GPIO18 (قناة PWM 0)
LPWM GPIO19 (قناة PWM 1)
R_EN GPIO23
L_EN GPIO24

توصيلات المحرك ومزود الطاقة

  1. وصل أطراف المحرك إلى Motor+ (M+) وMotor- (M-) الأرجل.
  2. وصل الطرف الموجب لمزود الطاقة الخارجي إلى VIN.
  3. وصل أرضي مزود الطاقة الخارجي إلى GND (Power) الرجل.

ملاحظة: تأكد أن مزود الطاقة الخارجي يطابق جهد واحتياجات التيار لمحركك.


الخطوة 3: تمكين PWM على Raspberry Pi

للتحكم في سرعة المحرك، ستستخدم PWM (تعديل عرض النبضة). تدعم دبابيس GPIO18 و GPIO19 على Raspberry Pi PWM مادي.

تمكين PWM عبر إعدادات Raspberry Pi

  1. افتح الطرفية وشغّل:
    sudo raspi-config
    
  2. انتقل إلى Interface Options > P5: I2C، ومكّن I2C.
  3. احفظ وأعد تشغيل Raspberry Pi:
    sudo reboot
    

الخطوة 4: كتابة كود Python للتحكم بالمحرك

ثبت مكتبة RPi.GPIO للتحكم في دبابيس GPIO إن لم تكن مثبتة:

pip install RPi.GPIO

مثال على كود Python

يوضح هذا المثال كيفية التحكم في سرعة واتجاه المحرك باستخدام 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()

الخطوة 5: اختبار إعدادك

  1. وصل المحرك ومزود الطاقة.
  2. شغّل سكربت Python:
    python3 bts7960_control.py
    
  3. لاحظ تغيير المحرك في السرعة والاتجاه كما هو مبرمج.

استكشاف الأخطاء

  1. المحرك لا يعمل:

    • تحقق من توصيلات الأسلاك.
    • تحقق من مزود الطاقة الخارجي.
  2. PWM لا يعمل:

    • تأكد أن GPIO18 و GPIO19 مهيأان لـ PWM.
    • تحقق من قيم دورة العمل (duty cycle) في السكربت.
  3. ارتفاع حرارة الوحدة:

    • تأكد أن سحب التيار من المحرك لا يتجاوز تصنيف BTS7960.

تطبيقات BTS7960 مع Raspberry Pi

  1. التحكم في محركات DC ذات التيار العالي في الروبوتات
  2. بناء مركبات أو روبوتات مؤتمتة
  3. إنشاء أنظمة محركة للتطبيقات الصناعية
  4. تطوير أنظمة التحكم عن بُعد

الخاتمة

الـ BTS7960 motor driver هو حل متين وفعال لتشغيل المحركات ذات التيار العالي. عند الجمع بينه وبين قدرات GPIO في Raspberry Pi، يفتح هذا إمكانيات عديدة لمشاريع الروبوتات والأتمتة. باتباع هذا الدليل، يمكنك إعداد والتحكم في BTS7960 لإنشاء أنظمة محركة قوية. جرّب ترددات PWM ودورات عمل مختلفة لتحسين الأداء لتطبيقك المحدد!

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.

اترك تعليقًا