كود Arduino وفيديو: متحكم محرك تيار مستمر L293D (بدون تحكم بالسرعة)

كود Arduino وفيديو: متحكم محرك تيار مستمر L293D (بدون تحكم بالسرعة)

يغطي هذا الدليل كيفية استخدام متحكم المحرك L293D مع لوحة أردوينو للتحكم في محرك تيار مستمر. يتيح L293D تدوير المحرك في كلا الاتجاهين: مع عقارب الساعة وعكس عقارب الساعة. من خلال اتباع هذا الدليل، ستتعلم كيفية توصيل المكونات وبرمجة الأردوينو لتحقيق التحكم المطلوب في المحرك.

في هذا المشروع سنستخدم مشغِّل المحرك L293D للتحكم في محرك تيار مستمر واحد. سيتمكن المحرك من تغيير الاتجاه بناءً على الأوامر المعطاة في كود الأردوينو. لفهم أوضح للإعداد والكود، من المفيد مشاهدة الفيديو المرتبط (في الفيديو عند 00:00).

شرح الأجهزة

L293D هو دائرة متكاملة مصممة لتشغيل المحركات. يمكنها التحكم بمحركي تيار مستمر في الوقت نفسه أو بمحرك خطوة واحد. تستخدم الشريحة تكوين جسر H للسماح بالتحكم في الاتجاه عن طريق تبديل قطبية الجهد المطبق على المحرك. تجعل هذه المرونة منه خيارًا ممتازًا لمشاريع الروبوتات والأتمتة.

بالإضافة إلى L293D، سنستخدم لوحة أردوينو لإرسال إشارات تحكم إلى مشغّل المحرك. ستقوم لوحة الأردوينو بتوليد مستويات المنطق اللازمة لتمكين المحرك وتحديد اتجاه دورانه. كما سيتطلب الإعداد محرك تيار مستمر ومزود طاقة متوافقًا مع متطلبات جهد المحرك.

تفاصيل ورقة البيانات

المصنّع تكساس إنسترومنتس
رقم القطعة L293D
جهد المنطق/الإدخال والإخراج 5 فولت
جهد التغذية 4.5 - 36 فولت
تيار الإخراج (لكل قناة) 600 مللي أمبير
التيار الذروي (لكل قناة) 1.2 A
إرشادات تردد PWM 20 كيلوهرتز
عتبات منطقية للإدخال 2.5 فولت (نموذجي)
هبوط الجهد / Rالمصب-المصدر عند التشغيل/ التشبع 1.5 فولت (حد أقصى)
الحدود الحرارية 150 °C (حد أقصى)
حزمة حزمة DIP بـ16 دبوس
ملاحظات / متغيرات يمكنه التحكم في محركين

  • تأكد من أن جهد التغذية لا يتجاوز 36 فولت.
  • استخدم مشتت حرارة مناسبًا عند التشغيل قرب الحد الأقصى للتيار.
  • قم دائمًا بتوصيل الأرضي (GND) للأردوينو بسائق المحرك.
  • تحقق من الأسلاك لتجنب توصيلات قطبية معكوسة
  • استخدم إشارات PWM للتحكم في السرعة إذا لزم الأمر في المشاريع المستقبلية.

تعليمات الأسلاك

Arduino wiring for L293D motor driver with battery
Arduino wiring for L293D motor driver with battery
Arduino wiring for L293D motor driver
Arduino wiring for L293D motor driver

لتوصيل متحكم المحرك L293D بالأردوينو، ابدأ بتوصيل مصدر الطاقة والأرضي. قم بتوصيل الدبوسين 4 و5 في L293D بالأرضي. ثم قم بتوصيل الدبوس 1 (Vcc1) بمخرج 5 فولت في الأردوينو. أما Vcc2 (الدبوس 8)، فوصّله بمصدر طاقة خارجي مع التأكد من أنه يطابق مواصفات جهد المحرك.

بعد ذلك، وصل دبوس التمكين (الدبوس 1) إلى الدبوس 8 في لوحة Arduino للتحكم في طاقة المحرك. لأطراف التحكم بالمحرك، وصل الدبوس 2 (1A) من L293D إلى الدبوس 2 في لوحة Arduino والدبوس 7 (2A) إلى الدبوس 7 في لوحة Arduino. أخيراً، وصل أطراف المحرك إلى الدبوس 3 (1Y) والدبوس 6 (2Y) في L293D.

الدبوس رقم 1 في لوحة التجارب L293D
الدبوس 1 لـ L293D على لوحة التجارب
L293D_توصيلات_لوحة_التجارب_bb

أمثلة على الكود ودليل خطوة بخطوة

يقوم الكود التالي بتهيئة الدبابيس ويضبط تحكم المحرك. المعرفات المستخدمة تشملP1Aللدبوس الأول للتحكم بالمحرك وEN12لدبوس التمكين. تقوم دالة الإعداد بتكوين الدبابيس كمخارج.

void setup() {
  Serial.begin(9600); // setup Serial Monitor to display information
  pinMode(P1A, OUTPUT); // define pin as OUTPUT for P1A
  pinMode(P2A, OUTPUT); // define pin as OUTPUT for P2A
  pinMode(EN12, OUTPUT); // define pin as OUTPUT for 1,2EN enable
}

في الدالة loop، يتم إصدار أمر للمحرك بالدوران في كلا الاتجاهين مع فترات تأخير فيما بينها. يتم طباعة حالة المحرك إلى المراقب التسلسلي باستخدامSerial.println.

void loop() {
  Serial.println("Rotating CW");
  digitalWrite(EN12, HIGH); // Enable 1A and 2A 
  digitalWrite(P1A, HIGH); // send HIGH signal to P1A
  digitalWrite(P2A, LOW); // send LOW signal to P2A
  delay(3000); // motor runs for 3 seconds
  digitalWrite(EN12, LOW); // Disable 1A and 2A
}

يعرض هذا المقتطف كيفية التحكم في اتجاه دوران المحرك عن طريق تغيير مستويات المنطق المرسلة إلىP1AوP2Aيعمل المحرك لمدة 3 ثوانٍ قبل أن يتوقف ويعكس اتجاهه.

إليك كيفية استخدام مشغلات نصف الجسر L293D:

L293D كنصف جسر باتجاه عقارب الساعة
L293D كنصف جسر باتجاه عقارب الساعة
L293D كنصف جسر، اتجاه الدوران: عكس اتجاه عقارب الساعة
L293D كنصف جسر للدوران عكس اتجاه عقارب الساعة

عرض توضيحي / ما الذي يمكن توقعه

عندما يكتمل الإعداد ويُحمَّل الكود، يجب أن تلاحظ دوران المحرّك في اتجاه واحد لمدة 3 ثوانٍ، ثم توقُّفه لمدة 2 ثانية، ثم الدوران في الاتجاه المعاكس لمدة 3 ثوانٍ أخرى. سيتم طباعة حالة المحرّك على شاشة المراقبة التسلسلية لتأكيد هذه الإجراءات (في الفيديو عند 12:00).

من الأخطاء الشائعة عدم التأكد من تزويد المحرك بالجهد الصحيح وعدم التحقق من صحة توصيلات المحرك. إذا لم يستجب المحرك، فقم بمراجعة الأسلاك وتوصيلات مصدر الطاقة مرة أخرى.

الطوابع الزمنية للفيديو

  • 00:00- مقدمة
  • 02:30- شرح الأسلاك
  • 05:00- استعراض الكود
  • 10:00- عرض توضيحي للتحكم في المحرك

الصور

L293D breadboard pin 1
L293D breadboard pin 1
L293D_breadboard_wiring_bb
L293D_breadboard_wiring_bb
L293D as halft bridge CCW
L293D as halft bridge CCW
L293D as halft bridge CW
L293D as halft bridge CW
Arduino wiring for L293D motor driver with battery
Arduino wiring for L293D motor driver with battery
Arduino wiring for L293D motor driver
Arduino wiring for L293D motor driver
79-Arduino code L293 DC motor driver (Advanced).
اللغة: C++
80-Arduino code: L293 DC motor driver (Advanced)
اللغة: C++
تم النسخ!

الأشياء التي قد تحتاجها

الموارد والمراجع

لا توجد موارد حتى الآن.

ملفات📁

لا توجد ملفات متاحة.