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

عند تدوير المقاومة المتغيرة يتغير مقدار زاوية محرك السيرفو من 0 إلى 180 درجة. سنستخدم المدخل التناظري في الأردوينو لقراءة قيمة المقاومة المتغيرة ثم نربط هذه القيمة بنطاق السيرفو باستخدام معادلة بسيطة. هذا المشروع وسيلة ممتازة لفهم كيفية عمل المدخلات التناظرية وكيفية التحكم في المحركات باستخدامها (في الفيديو عند 01:45).
شرح الأجهزة
لهذا المشروع نحتاج إلى لوحة أردوينو ومحرك سيرفو ومقاوم متغير (بوتنشيوميتر). يعمل المقاوم المتغير كمقاومة متغيرة، ويقدّم خرجًا جهديًا يتوافق مع موضعه. يُقرأ هذا الخرج عبر المدخل التناظري في لوحة الأردوينو، مما يتيح لنا تحديد مدى دوران محرك السيرفو.
محرك السيرفو هو نوع من المحركات يمكن توجيهه إلى زاوية محددة. يتلقى إشارة تحكم تُحدد الموضع المرغوب. يدور المحرك إلى تلك الزاوية اعتمادًا على المدخلات التي يتلقاها من الأردوينو، مما يجعله مفيدًا لتطبيقات متنوعة مثل الروبوتات وأجهزة التحكم عن بُعد.
تفاصيل ورقة البيانات
| الشركة المصنعة | متنوعة |
|---|---|
| رقم القطعة | سيرفو قياسي |
| جهد المنطق/الإدخال/الإخراج | 5 فولت |
| جهد التغذية | 4.8 - 6 فولت |
| تيار الإخراج (لكل قناة) | حتى 1 أمبير |
| تيار الذروة (لكل قناة) | حتى 2 A |
| إرشادات تردد PWM | 50 هرتز |
| عتبات منطقية للإدخال | 0.8 V (منخفض) / 2.0 V (مرتفع) |
| هبوط الجهد / RDS(عند التشغيل) / التشبع | 0.5 فولت |
| الحدود الحرارية | 85 درجة مئوية |
| حزمة | المقاس القياسي |
| ملاحظات / متغيرات | متوفر بأحجام وتصنيفات عزم دوران مختلفة |
- تأكد من أن مصدر الطاقة ضمن الحدود (4.8 - 6 فولت).
- استخدم قيمة مقاومة مناسبة للمقاوم المتغير (10 kΩ موصى بها).
- تحقق من قطبية التوصيلات لتجنب التشغيل العكسي.
- كن حذراً من الحرارة؛ تأكد من أن السرفو ليس محمّلاً أكثر من اللازم.
- اجعل الأسلاك قصيرة لتقليل التداخل.
- استخدم مكثفات فك الارتباط عبر مداخل الطاقة عند الحاجة.
- تحقق من أن المقاوم المتغير متصل بشكل صحيح بالدبوس التماثلي A0.
تعليمات التوصيل الكهربائي

لتوصيل المكونات، ابدأ بتوصيل المقاوم المتغير. يجب توصيل الدبوس الأوسط للمقاوم المتغير بالدبوس التناظريA0على الأردوينو. يجب توصيل الدبوس الأيسر بدبوس 5V على الأردوينو، ويجب توصيل الدبوس الأيمن بالأرضي (GND).
بعد ذلك، قم بتوصيل محرك السيرفو. يجب توصيل سلك الأرضي (عادةً أسود أو بني) للمحرك بدبوس GND على الأردوينو. ينبغي توصيل سلك الطاقة (عادةً أحمر) بدبوس 5V على الأردوينو. أخيراً، يجب توصيل سلك التحكم (غالباً أصفر أو أبيض) بدبوس رقمي9على الأردوينو. سيتيح هذا الإعداد للأردوينو التحكم في السرفو بناءً على موضع المقاومة المتغيرة.

أمثلة على الكود وشرح خطوة بخطوة
دعونا نلقي نظرة على الأجزاء الرئيسية من الكود. أولاً، نقوم بتضمين مكتبة Servo وننشئ كائن سيرفو:
#include
Servo myservo; // create servo object to control a servo
يقوم هذا الكود بتهيئة محرك السيرفو ويجهزه للتحكم. الخطوة التالية تتضمن قراءة قيمة المقاومة المتغيرة:
int val = analogRead(potpin); // reads the value of the potentiometer
هنا، تُخزّن القيمة المقروءة من المقاوم المتغير في المتغيرval. ستكون القيمة بين 0 و1023، بما يتوافق مع موضع المقاوم المتغير. ثم نقوم بتحويل هذه القيمة إلى نطاق السيرفو:
val = map(val, 0, 1023, 0, 180); // scale it to use it with the servo
يقوم هذا السطر بتحويل قيمة المقاوم المتغير إلى مدى مناسب لمحرك السيرفو. أخيرًا، نقوم بضبط السيرفو على الموضع المحسوب:
myservo.write(val); // sets the servo position according to the scaled value
يأمر هذا الأمر محرك السيرفو بالتحرك إلى الزاوية المحددة استنادًا إلى موضع المقاوم المتغير. يمكنك العثور على الكود الكامل المحمّل أسفل المقالة.
عرض توضيحي / ما الذي تتوقعه
عند تشغيل البرنامج، سيؤدي تدوير المقاومة المتغيرة إلى ضبط زاوية محرك السرفو بسلاسة. يجب أن ترى قيم الزاوية تُطبع في المراقب التسلسلي أثناء تدوير المقبض. إذا تصرف السرفو بشكل غير متوقع، فتحقق من التوصيلات، خاصة الوصلات إلى المقاوم المتغير والسرفو (في الفيديو عند 04:30).
يجب أن يستجيب محرك السيرفو فورًا لتغير موضع المقاومة المتغيرة. إذا لاحظت أي تأخر أو تقفّز في الحركة، فكر في تقليل زمن التأخير في الشيفرة لتحسين سرعة الاستجابة.
الأشياء التي قد تحتاجها
-
أمازونServo motor on Amazonamzn.to
-
علي إكسبريسPurchase SG90 Servo motor 180 or 360 from AliExpresss.click.aliexpress.com
الموارد والمراجع
-
خارجيمحركات SG90amzn.to
ملفات📁
لا توجد ملفات متاحة.