تحكم في محرك DC باستخدام جهاز تحكم عن بعد بالأشعة تحت الحمراء باستخدام الأردوينو و L293D
يظهر هذا المشروع كيفية التحكم في اتجاه وسرعة محرك تيار مستمر باستخدام جهاز تحكم عن بُعد بالأشعة تحت الحمراء (IR) ، وأردوينو أونو ، ورقاقة تشغيل المحرك L293D. تتيح هذه الإعدادات التحكم الدقيق في المحرك ، مما يجعلها مناسبة لمجموعة متنوعة من التطبيقات.
يفتح هذا المشروع عالمًا من الاحتمالات لمشاريعك في الإلكترونيات السلكية. إليك بعض الأفكار لتبدأ بها:
- روبوت يعمل بالتحكم عن بُعد:تحكم في حركة روبوت صغير باستخدام جهاز التحكم عن بُعد بالأشعة تحت الحمراء.
- نظام الستائر الآلي:افتح وأغلق الستائر أو التعتيم عن بُعد.
- تركيبات الفن التفاعلي:أنشئ قطع فنية ديناميكية مع أجزاء متحركة يتم التحكم فيها بواسطة جهاز تحكم عن بُعد بالأشعة تحت الحمراء.
- نظام التحريك والإمالةتحكم في زاوية الكاميرا أو المستشعر باستخدام جهاز تحكم عن بعد بالأشعة تحت الحمراء.
الأجهزة/المكونات
- أردوينو أونو
- شريحة تحكم المحرك L293D
- محرك تيار مباشر
- جهاز التحكم عن بُعد وأجهزة الاستقبال
- ديودات (1N4001 x4)
- أسلاك التوصيل
- مزود الطاقة (على سبيل المثال، بطارية 9 فولت للمحرك)
دليل التوصيلات
%%WIRING%%
(في الفيديو عند 02:14)
تتطلب شريحة L293D اتصالات مع كل من الأردوينو ومصدر طاقة خارجي للمحرك. تُستخدم الصمامات الثنائية لحماية العودة العكسية. يتصل جهاز الاستقبال بالأشعة تحت الحمراء بدبابيس 5V و GND الخاصة بالأردوينو، مع توصيل دبوس الإشارة بدبوس الرقمي 11 (يمكن تكوينه في الشيفرة). يتصل المحرك بدبابيس الخرج الخاصة بشريحة L293D، والتي تتحكم بها الأردوينو.
شرح الكود
(في الفيديو عند 07:30)
يستخدم الكود المقدم لـ Arduino مكتبة IRremote لفك شفرات الإشارات من جهاز التحكم عن بُعد. تشمل المعلمات القابلة للتكوين الهامة في الكود ما يلي:
const char type ='B';// W for white, B for black. Must keep single quotes like 'B' or 'W'
const boolean PCB = 0;// if receiver is PCB set to 1, if not set to 0. See video for details
قم بضبطtypeمتغير إلى 'W' لجهاز تحكم أبيض أو 'B' لجهاز تحكم أسود (في الفيديو عند 07:41). الإعداداتPCBيجب ضبط المتغير على 1 إذا كان جهاز الاستقبال IR الخاص بك يحتوي على لوحة PCB، و0 إذا كان وحدة عارية (في الفيديو عند 07:50).
const String RIGHT=">";// move motor to the right (CW) with this key on remote
const String LEFT ="<";// move motor to the left (CCW) with this key on remote
const String STOP ="OK";// stop motor with this key on remote
تحدد هذه السطور تسميات أزرار جهاز التحكم عن بُعد للتحكم في المحرك. تأكد من أن هذه التسميات تتطابق مع التسميات الموجودة على جهاز التحكم الخاص بك (في الفيديو عند 08:12). يمكنك تخصيص هذه للاستخدام بأزرار مختلفة على جهاز التحكم الخاص بك.
#define P1A 2 // define pin 2 as for P1A
#define P2A 7 // define pin 7 as for P2A
#define EN12 8 // define pin 8 as for 1,2EN enable
int RECV_PIN = 11;
تحدد هذه الأسطر دبابيس أردوينو المستخدمة للتحكم في محرك L293D (في الفيديو عند 09:52).P1AوP2Aتحكم في الاتجاه، وEN12يُمكّن المحرك.RECV_PINهو الدبوس المتصل بإشارة مخرج جهاز استقبال الأشعة تحت الحمراء (في الفيديو عند 06:52). قم بتعديل هذه إذا كنت تستخدم دبابيس مختلفة.
مشروع حي/عرض
(في الفيديو في 14:15)
يعرض الفيديو المشروع أثناء العمل، موضحاً كيفية استجابة المحرك المستمر لأوامر التحكم عن بُعد بالأشعة تحت الحمراء. تُظهر التجربة كيفية التحكم في دوران المحرك باتجاه عقارب الساعة وعكس عقارب الساعة وكيفية إيقاف المحرك باستخدام أزرار تحكم عن بُعد مختلفة.
الفصول
- [00:00] المقدمة ونظرة عامة على المشروع
- مكونات المشروع والمتطلبات الأساسية
- [02:14] شرح الأسلاك
- [07:30] شرح الكود والتكوين
- عرض المشروع مع التحكم الأسود و PCB
- [16:04] عرض مع جهاز التحكم الفضي ولوحة الدوائر المطبوعة
- [17:42] عرض باستخدام جهاز التحكم عن بعد الفضي ووحدة bare
- [18:23] عرض مع جهاز التحكم الأسود والوحدة العارية
الموارد والمراجع
-
خارجيتحميل مكتبة لأردوينو (جيتهب)github.com
ملفات📁
لا توجد ملفات متاحة.