كيفية توصيل عصا التحكم بـ Arduino

جدول المحتويات:

كيفية توصيل عصا التحكم بـ Arduino
كيفية توصيل عصا التحكم بـ Arduino

فيديو: كيفية توصيل عصا التحكم بـ Arduino

فيديو: كيفية توصيل عصا التحكم بـ Arduino
فيديو: Arduino Lesson 19 : control servo by joystick / التحكم فى الذراع الإلكترونية بواسطة عصا التحكم 2024, ديسمبر
Anonim

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

عصا التحكم ذات محورين وزر
عصا التحكم ذات محورين وزر

انه ضروري

  • - اردوينو
  • - عصا تحكم ذات محورين ؛
  • - 3 مقاومات بقيمة اسمية 220 أوم ؛
  • - 1 RGB أو 3 مصابيح LED تقليدية.

تعليمات

الخطوة 1

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

رسم تخطيطي لعصا التحكم
رسم تخطيطي لعصا التحكم

الخطوة 2

قم بتوصيل عصا التحكم وفقًا للرسم التخطيطي أدناه. قم بتوصيل المخرجات التناظرية X و Y لعصا التحكم بالمدخلات التناظرية A1 و A2 من Arduino ، خرج زر SW إلى المدخلات الرقمية 8. يتم تشغيل عصا التحكم بجهد +5 فولت.

مخطط الأسلاك جويستيك لاردوينو
مخطط الأسلاك جويستيك لاردوينو

الخطوه 3

لكي نرى بوضوح كيف تعمل عصا التحكم ، دعنا نكتب مثل هذا الرسم التخطيطي. دعنا نعلن عن المسامير ، ونضبط أوضاع التشغيل لهم. لاحظ أنه في إجراء الإعداد () ، قمنا بتعيين إدخال switchPin على مستوى عالٍ. وهذا يتيح لمقاومة السحب المدمجة في هذا المنفذ. إذا لم تقم بتشغيله ، فعند عدم الضغط على زر عصا التحكم ، سيتوقف منفذ Arduino الثامن في الهواء ويلتقط التقاطات. سيؤدي ذلك إلى نتائج إيجابية زائفة غير مرغوب فيها.

في إجراء الحلقة () ، نقوم باستمرار باستقصاء حالة الزر وعرضه باستخدام مؤشر LED عند الإخراج 13. نظرًا لسحب إدخال دبوس لأعلى ، يكون مؤشر LED قيد التشغيل باستمرار ، وعندما يتم الضغط على الزر ، ينطفئ وليس العكس.

بعد ذلك ، نقرأ قراءات مقياسي الجهد لعصا التحكم - خرج محوري X و Y. يحتوي Arduino على ADC 10 بت ، وبالتالي فإن القيم التي تقرأ من عصا التحكم تقع في النطاق من 0 إلى 1023. في الموضع الأوسط لعصا التحكم ، كما ترى في الرسم التوضيحي ، تقع القيم في المنطقة 500 في منتصف النطاق تقريبًا.

رسم تخطيطي لتوضيح عمل عصا التحكم
رسم تخطيطي لتوضيح عمل عصا التحكم

الخطوة 4

عادة ما يتم استخدام عصا التحكم للتحكم في المحركات الكهربائية. لكن لماذا لا تستخدمه للتحكم في سطوع LED ، على سبيل المثال؟ دعونا نقوم بتوصيل RGB LED (أو ثلاثة مصابيح LED عادية) بالمنافذ الرقمية 9 و 10 و 11 من Arduino وفقًا للرسم التخطيطي أعلاه ، دون أن ننسى بالطبع المقاومات.

عصا التحكم ومخطط الأسلاك RGB LED إلى Arduino
عصا التحكم ومخطط الأسلاك RGB LED إلى Arduino

الخطوة الخامسة

سنقوم بتغيير سطوع الألوان المقابلة عند تغيير موضع عصا التحكم على طول المحاور ، كما هو موضح في الشكل. نظرًا لحقيقة أن عصا التحكم قد لا يتم توسيطها بدقة من قبل الشركة المصنعة ولها منتصف المقياس ليس عند حوالي 512 ، ولكن من 490 إلى 525 ، قد يضيء مؤشر LED قليلاً حتى عندما يكون عصا التحكم في الوضع المحايد. إذا كنت تريد إيقاف تشغيله تمامًا ، فقم بإجراء التعديلات المناسبة على البرنامج.

رسم تخطيطي لتوزيع السطوع لقنوات R و G و B على طول محوري X و Y
رسم تخطيطي لتوزيع السطوع لقنوات R و G و B على طول محوري X و Y

الخطوة 6

بناءً على الرسم البياني أعلاه ، سنقوم بكتابة رسم تخطيطي لـ Arduino للتحكم في سطوع RGB LED باستخدام عصا التحكم.

أولاً ، سنعلن عن تطابق المسامير ومتغيرين - ledOn و prevSw - للعمل مع الزر. في إجراء الإعداد () ، قم بتعيين الوظائف إلى المسامير وتوصيل المقاوم للسحب بدبوس الزر باستخدام الأمر digitalWrite (swPin ، HIGH).

في الحلقة () نحدد الضغط على زر عصا التحكم. عندما تضغط على الزر ، نقوم بتبديل أوضاع التشغيل بين وضع "المصباح" ووضع "الموسيقى الملونة".

في الوضع freeMode () ، يتم التحكم في سطوع مصابيح LED عن طريق إمالة عصا التحكم في اتجاهات مختلفة: كلما زادت قوة الإمالة على طول المحور ، كان اللون المقابل أكثر إشراقًا. علاوة على ذلك ، يتم الاستيلاء على تحويل القيم بواسطة وظيفة الخريطة (القيمة ، من الأسفل ، من الأعلى ، إلى الأسفل ، إلى الأعلى). تنقل وظيفة map () القيم المقاسة (من Low ، إلى High) على طول محاور عصا التحكم إلى نطاق السطوع المطلوب (إلى منخفض ، إلى مرتفع).يمكنك أن تفعل الشيء نفسه مع العمليات الحسابية العادية ، لكن هذا الترميز أقصر بكثير.

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

رسم تخطيطي للتحكم في سطوع LED باستخدام عصا التحكم التناظرية
رسم تخطيطي للتحكم في سطوع LED باستخدام عصا التحكم التناظرية

الخطوة 7

والنتيجة هي مصباح يدوي مصنوع من ثلاثة ألوان RGB LED ، يتم ضبط سطوع كل لون باستخدام عصا التحكم. وعندما تضغط على الزر ، يتم تنشيط وضع "الموسيقى الملونة". على الرغم من أنني استخدمه ، على العكس من ذلك ، كضوء ليلي.

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

موصى به: