- المكونات مطلوبة
- وصف دبوس من السائر موتور
- مخطط الدائرة للتحكم في السائر باستخدام وحدة ULN2003
- مخطط الدائرة للتحكم في السائر باستخدام وحدة L293D:
- التحكم في محرك متدرج باستخدام AVR ATmega16
Stepper Motors هي محركات DC بدون فرشات يمكن أن تدور من 0 إلى 360 0 في خطوات. يستخدم المحرك المتدرج إشارات إلكترونية لتدوير المحرك في خطوات وتقوم كل إشارة بتدوير العمود في زيادة ثابتة (خطوة واحدة). يتم التحكم في ملاك الدوران من خلال تطبيق تسلسل معين من الإشارات. على عكس محرك سيرفو ، يمكن تشغيل المحركات السائر باستخدام دبابيس GPIO من متحكم دقيق بدلاً من دبابيس PWM ويمكن أن تدور في (+360 0) و (-360 0)). يحدد ترتيب الإشارات اتجاه عقارب الساعة وعكس اتجاه عقارب الساعة لمحرك السائر. للتحكم في سرعة المحرك ، نحتاج فقط إلى تغيير معدل إشارات التحكم المطبقة. تدور محركات السائر بخطوات. هناك عدة طرق للخطوات لتشغيل Stepper Motor مثل خطوة كاملة ونصف خطوة وخطوة صغيرة. لمعرفة المزيد عن الأساسيات والنظرية ومبدأ العمل للمحرك السائر ، اتبع الرابط.
لقد قمنا سابقًا بتوصيل Stepper Motor بالعديد من وحدات التحكم الدقيقة:
- ربط محرك متدرج مع ARM7-LPC2148
- ربط محرك متدرج مع Arduino Uno
- ربط محرك متدرج مع MSP430G2
- ربط محرك متدرج مع STM32F103C8
- ربط محرك متدرج مع متحكم PIC
- واجهة محرك متدرج مع متحكم 8051
- ربط محرك متدرج مع Raspberry Pi
في هذا البرنامج التعليمي ، سنقوم بواجهة 28BYJ-48 Stepper Motor مع Atmega16 AVR Microcontroller باستخدام Atmel Studio 7.0. تم تصنيف محرك السائر للعمل بجهد 5 فولت. سنقوم بتوصيل محرك السائر بكل من محركات المحركات مثل ULN2003 و L293. كلاهما سيكون مدفوعًا بإمداد 5 فولت. من أجل تبسيط التفاعل ، نستخدم وحدة الإنشاء المسبق لكل من محركات المحركات. يمكنك أيضًا استخدام الدوائر المتكاملة المستقلة ULN2003 و L293D. يمكن أن يكون عدد الأسلاك والعبارات أكبر ، لذا كن حذرًا أثناء توصيل جميع التوصيلات.
المكونات مطلوبة
- محرك متدرج (28BYJ-48)
- ULN2003 Module / L293D Motor Driver
- متحكم Atmega16 IC
- 16 ميجا هرتز الكريستال المذبذب
- اثنين من المكثفات 100nF
- مكثفتان 22pF
- اضغط الزر
- أسلاك توصيل
- اللوح
- USBASP v2.0
- Led (أي لون)
وصف دبوس من السائر موتور
مخطط الدائرة للتحكم في السائر باستخدام وحدة ULN2003
قم بتوصيل جميع المكونات كما هو موضح في الرسم البياني أدناه عند استخدام ULN2003. وبالمثل ، سنقوم بتوصيله باستخدام L293D في الخطوة التالية. نحن نستخدم PORTA من Atmega16 لواجهة محرك متدرج لكل من سائقي المحركات. ليست هناك حاجة لتوصيل دبوس 5V للمحرك السائر. مطلوب فقط دبابيس الملف لتحريك محرك السائر. يعتبر ترتيب الدبوس مهمًا جدًا لقيادة محرك السائر حيث يجب أن يكون تنشيط الملفات من أجل تحقيق الخطوات. أربعة مدخلات من ULN2003 وأربعة مخرجات ULN2003 مستخدمة في هذا المشروع. سيتم توصيل المدخلات بدبابيس PORTA وسيتم توصيل المخرجات بدبابيس Stepper Motor Signal. أيضًا ، قم بتوصيل زر ضغط واحد في إعادة تعيين دبوس لإعادة تعيين Atmega16 كلما لزم الأمر. قم بتوصيل Atmega16 بدائرة مذبذب بلورية مناسبة. سيتم تشغيل النظام بالكامل بواسطة مصدر طاقة 5 فولت.
فيما يلي الصورة الفعلية لوحدة تشغيل المحرك ULN2003:
أدناه قدمنا وصلات Atmega16 pin مع ULN2003 و L293D لتدوير محرك السائر. تم شرح محرك السائر البيني مع وحدة L293D في قسم لاحق ، تذكر أن وحدة واحدة فقط إما ULN2003 أو L293D مطلوبة للتحكم في محرك السائر.
وصلات الدبوس الخاصة بـ INPUT هي كما يلي:
اتميغا 16 |
ULN 2003 |
L293D |
أ 0 |
IN1 (PIN1) |
IN1 (PIN2) |
أ 1 |
IN2 (PIN2) |
IN2 (PIN7) |
أ 2 |
IN3 (PIN3) |
IN3 (PIN10) |
A3 |
IN4 (PIN4) |
IN4 (PIN15) |
اتصالات السنون الخاصة بـ OUTPUT هي كما يلي:
السائر المحركات |
ULN 2003 |
L293D |
البرتقالي |
OUT1 (PIN16) |
OUT1 (PIN3) |
الأصفر |
OUT2 (PIN15) |
OUT2 (PIN6) |
زهري |
OUT3 (PIN14) |
OUT3 (PIN11) |
أزرق |
OUT4 (PIN13) |
OUT4 (PIN14) |
مخطط الدائرة للتحكم في السائر باستخدام وحدة L293D:
التحكم في محرك متدرج باستخدام AVR ATmega16
كما قيل بالفعل على عكس محرك سيرفو ، تحتاج محركات السائر إلى برامج تشغيل خارجية ، مثل محرك ULN2003 أو L293D. لذا فقط قم بتوصيل الدائرة على النحو الوارد أعلاه وقم بتحميل برنامج main.c المقدم في النهاية.
يوضح الرسم أن محرك السائر يدور في كلا الجانبين ، أي في اتجاه عقارب الساعة وعكس اتجاه عقارب الساعة. إذا كنت ترغب في تدوير السائر في اتجاه واحد ، فما عليك سوى التعليق على خطوط كود اتجاه آخر في المخطط.
يرد أدناه رمز AVR الكامل للتحكم في Stepper Motor. الكود بسيط ويمكن فهمه بسهولة. يوجد رمزان أدناه ، أحدهما لتدوير محرك متدرج مع ULN2003 والثاني بوحدة L293D.
قم بتوصيل USBASP v2.0 واتبع التعليمات الواردة في هذا الرابط لبرمجة Atmega16 AVR Microcontroller باستخدام USBASP و Atmel Studio 7.0. ما عليك سوى إنشاء الرسم وتحميله باستخدام سلسلة أدوات خارجية.
الكود الكامل مع الفيديو التوضيحي مذكور أدناه.