نحوه اتصال جوی استیک به آردوینو

فهرست مطالب:

نحوه اتصال جوی استیک به آردوینو
نحوه اتصال جوی استیک به آردوینو

تصویری: نحوه اتصال جوی استیک به آردوینو

تصویری: نحوه اتصال جوی استیک به آردوینو
تصویری: نحوه اتصال و استفاده از جوی استیک آنالوگ با آردوینو - آموزش 2024, نوامبر
Anonim

روشهای بسیار متنوعی برای انتقال اطلاعات از شخص به میکروکنترلر یا کامپیوتر وجود دارد و یکی از آنها استفاده از جوی استیک است. بیایید ببینیم چگونه یک جوی استیک آنالوگ را با دو محور و یک دکمه به آردوینو متصل کنیم.

جوی استیک با دو محور و یک دکمه
جوی استیک با دو محور و یک دکمه

لازم است

  • - آردوینو ؛
  • - جوی استیک دو محوره
  • - 3 مقاومت با مقدار اسمی 220 اهم
  • - 1 LED معمولی RGB یا 3.

دستورالعمل ها

مرحله 1

جوی استیک وسیله ای راحت و آسان برای انتقال اطلاعات است. تعداد زیادی جوی استیک از نظر تعداد درجه آزادی ، اصل خواندن نشانه ها و فن آوری های استفاده شده وجود دارد. جوی استیک اغلب برای کنترل حرکت هر مکانیزم ، مدل کنترل شده ، ربات استفاده می شود. جوی استیک آنالوگ ، که امروز به آن نگاه خواهیم کرد ، دسته ای است که به یک مفصل توپی با دو محور عمود بر هم متصل است. وقتی دستگیره کج می شود ، محور تماس متحرک پتانسیومتر را می چرخاند ، به همین دلیل ولتاژ خروجی آن تغییر می کند. همچنین ، جوی استیک آنالوگ دارای یک دکمه تاک است که با فشار دادن دسته به صورت عمودی ، دکمه فعال می شود.

نمودار شماتیک جوی استیک
نمودار شماتیک جوی استیک

گام 2

مطابق نمودار زیر جوی استیک را وصل کنید. خروجی های آنالوگ X و Y جوی استیک را به ورودی های آنالوگ A1 و A2 آردوینو ، خروجی دکمه SW به ورودی دیجیتال 8 وصل کنید. جوی استیک از ولتاژ +5 ولت تغذیه می کند.

نمودار سیم کشی جوی استیک برای آردوینو
نمودار سیم کشی جوی استیک برای آردوینو

مرحله 3

برای اینکه ببینیم چطور جوی استیک کار می کند ، بیایید چنین طرحی را بنویسیم. بیایید پین ها را اعلام کنیم ، حالت های کاری را برای آنها تنظیم کنیم. توجه داشته باشید که در روش setup () ، ورودی switchPin را روی سطح بالایی تنظیم می کنیم. این مقاومت کششی داخلی را روی این پورت امکان پذیر می کند. اگر آن را روشن نکنید ، هنگامی که دکمه جوی استیک فشار داده نمی شود ، پورت 8 آردوینو در هوا آویزان می شود و وانت ها را می گیرد. این امر منجر به موارد مثبت کاذب ناخواسته و آشفته می شود.

در روش حلقه () ، ما به طور مداوم وضعیت دکمه را نظرسنجی می کنیم و آن را با استفاده از LED در خروجی 13 نمایش می دهیم. به دلیل بالا رفتن ورودی switchPin ، LED دائما روشن است و با فشار دادن دکمه ، خاموش می شود ، و نه برعکس.

در مرحله بعدی ، خواندن دو پتانسیومتر جوی استیک - خروجی محورهای X و Y را می خوانیم. Arduino دارای یک ADC 10 بیتی است ، بنابراین مقادیر خوانده شده از جوی استیک در محدوده 0 تا 1023 است. همانطور که در تصویر می بینید ، در موقعیت میانی جوی استیک ، مقادیر در منطقه 500 تقریباً در وسط دامنه است.

طرحی برای نشان دادن عملکرد جوی استیک
طرحی برای نشان دادن عملکرد جوی استیک

مرحله 4

معمولاً از جوی استیک برای کنترل موتورهای الکتریکی استفاده می شود. اما چرا مثلاً برای کنترل روشنایی LED از آن استفاده نمی کنید؟ بیایید مطابق نمودار بالا ، یک RGB LED (یا سه LED معمولی) به پورت های دیجیتال 9 ، 10 و 11 آردوینو وصل کنیم ، البته در مورد مقاومت ها نیز فراموش نکنیم.

نمودار سیم کشی جوی استیک و RGB LED به آردوینو
نمودار سیم کشی جوی استیک و RGB LED به آردوینو

مرحله 5

همانطور که در شکل نشان داده شده است ، هنگام تغییر موقعیت جوی استیک در محورها ، روشنایی رنگ های مربوطه را تغییر خواهیم داد. با توجه به اینکه جوی استیک ممکن است توسط سازنده به طور دقیق متمرکز نشود و وسط ترازو را نه در حدود 512 قرار دهد ، اما از 490 تا 525 ، حتی اگر جوی استیک در موقعیت خنثی باشد ، ممکن است LED کمی روشن شود. اگر می خواهید کاملاً خاموش شود ، اصلاحات مناسب را در برنامه ایجاد کنید.

نمودار توزیع روشنایی کانالهای R ، G ، B در امتداد محورهای X و Y
نمودار توزیع روشنایی کانالهای R ، G ، B در امتداد محورهای X و Y

مرحله 6

بر اساس نمودار بالا ، ما طرحی از کنترل روشنایی RGB LED Arduino را با استفاده از یک جوی استیک خواهیم نوشت.

ابتدا ، ما مطابقت پین ها و دو متغیر - ledOn و prevSw - را برای کار با دکمه اعلام خواهیم کرد. در روش setup () ، توابع را به پین ها اختصاص دهید و مقاومت کششی را با دستور digitalWrite (swPin، HIGH) به پین دکمه متصل کنید.

در حلقه () فشار دادن دکمه جوی استیک را تعریف می کنیم. وقتی دکمه را فشار می دهید ، حالت های کار را بین حالت "چراغ قوه" و "موسیقی رنگی" تغییر می دهیم.

در حالت freeMode () ، روشنایی LED ها با کج کردن جوی استیک در جهات مختلف کنترل می شود: هرچه شیب در امتداد محور قویتر باشد ، رنگ مربوطه روشن تر می شود. علاوه بر این ، تبدیل مقادیر توسط تابع نقشه (مقدار ، از پایین ، از پایین ، به پایین ، پایین به بالا) انجام می شود. عملکرد نقشه () مقادیر اندازه گیری شده (از پایین ، به زیاد) را در امتداد محورهای جوی استیک به محدوده روشنایی مورد نظر (به پایین ، به زیاد) منتقل می کند.شما می توانید همین کار را با عملیات معمولی حساب انجام دهید ، اما این علامت گذاری بسیار کوتاه تر است.

در حالت () discoMode ، سه رنگ به طور متناوب روشنایی پیدا می کنند و خاموش می شوند. برای اینکه بتوانیم هنگام فشار دادن دکمه از حلقه خارج شویم ، هر تکرار را بررسی می کنیم تا ببینیم دکمه فشرده شده است یا خیر.

طرحی برای کنترل روشنایی LED با استفاده از جوی استیک آنالوگ
طرحی برای کنترل روشنایی LED با استفاده از جوی استیک آنالوگ

مرحله 7

نتیجه یک چراغ قوه ساخته شده از یک LED سه رنگ RGB است که روشنایی هر رنگ با استفاده از یک جوی استیک تنظیم می شود. و هنگامی که دکمه را فشار می دهید ، حالت "موسیقی رنگی" فعال می شود. اگرچه من از آن استفاده می کنم ، اما برعکس ، به عنوان یک چراغ شبانه.

بنابراین ، ما یاد گرفتیم که چگونه یک جوی استیک آنالوگ دو محوره را با یک دکمه به آردوینو متصل کنیم و خواندن های آن را بخوانیم. شما می توانید استفاده جالب تری از جوی استیک را به عنوان مثال ما در نظر گرفته و اجرا کنید.

توصیه شده: