- مواد کی ضرورت ہے
- سرکٹ ڈایاگرام
- جوائسک ماڈیول
- کوڈ اور وضاحت
- ارڈینو کے ساتھ جوائسک کا استعمال کرتے ہوئے ایل ای ڈی کو کنٹرول کرنا
جوئسٹک کا لفظ سننے کے بارے میں جو بات ہمارے ذہن میں آجاتی ہے وہ کھیل کا کنٹرولر ہے۔ ہاں ، یہ بالکل ایک جیسا ہے اور گیمنگ کے مقصد کے لئے استعمال کیا جاسکتا ہے۔ گیمنگ کے علاوہ ، اس میں ڈی آئی وائی الیکٹرانکس میں بہت سی دوسری ایپلی کیشنز ہیں۔ یہ جوائس اسٹک بالترتیب X اور Y ہوائی جہاز کے لئے دو امکانی پیمائش کے مرکب کے سوا کچھ نہیں ہے۔ یہ پوٹینومیٹر کے ذریعہ وولٹیج پڑھتا ہے اور ارڈینو کو یکسالاق کی قیمت دیتا ہے ، اور جوائس اسٹک شافٹ (جو بس پوٹینومیٹر پوائنٹر ہے) منتقل کرتے وقت ینالاگ قدر میں تبدیلی آتی ہے۔
اس سرکٹ میں ، ہم جوائس اسٹک کی حرکت کے مطابق چار ایل ای ڈی کو محض آرڈینو کے ساتھ مداخلت کر رہے ہیں ۔ ہم نے 4 ایل ای ڈی کو اس طرح رکھے ہیں کہ یہ جوائس اسٹک شافٹ تحریک کی سمت کی نمائندگی کرتا ہے۔ اس جوائس اسٹک میں پش بٹن بھی ہے جو مختلف دیگر مقاصد کے لئے استعمال ہوسکتا ہے یا بیکار چھوڑ سکتا ہے۔ جوائس اسٹک کے بٹن پر دبا. دیا گیا کہ واحد یلئڈی آن ہوجائے گی۔
مواد کی ضرورت ہے
- اردوینو یو این او
- جوائسک ماڈیول
- ایل ای ڈی 5
- مزاحمتی: 100 ہہم ۔3
- مربوط تاروں
- بریڈ بورڈ
سرکٹ ڈایاگرام
جوائسک ماڈیول
جوائس اسٹکس مختلف اشکال اور سائز میں دستیاب ہیں۔ ذیل میں دیئے گئے اعداد و شمار میں ایک جوائس کا ایک عام ماڈیول دکھایا گیا ہے۔ یہ جوائسک ماڈیول عام طور پر ینالاگ آؤٹ پٹ فراہم کرتا ہے اور اس ماڈیول کے ذریعہ فراہم کردہ آؤٹ پٹ وولٹیجس اس سمت کے مطابق بدلتے رہتے ہیں جس میں ہم اسے منتقل کرتے ہیں۔ اور ہم کچھ مائکروکنٹرولر کا استعمال کرکے ان وولٹیج کی تبدیلیوں کی ترجمانی کرکے تحریک کی سمت حاصل کرسکتے ہیں۔ پہلے ہم نے جوائسک کو اے وی آر اور راسبیری پائی کے ساتھ انٹرفیس کیا۔
اس جوائس اسٹک ماڈیول میں دو محور ہیں جیسا کہ آپ دیکھ سکتے ہیں۔ وہ ایکس محور اور Y محور ہیں۔ JOYSTICK کا ہر ایک محور ایک پوٹینومیٹر یا برتن پر لگا ہوا ہے۔ ان برتنوں کے مڈ پوائنٹ کو Rx اور Ry کی طرح نکالا جاتا ہے۔ تو Rx اور Ry ان برتنوں کے لئے متغیر نقطہ ہیں. جب جوائسک اسٹینڈ بائی میں ہوتا ہے تو ، Rx اور Ry ولٹیج ڈیوائڈر کا کام کرتے ہیں۔
جب جوائس اسٹک افقی محور کے ساتھ منتقل ہوجائے تو ، Rx پن میں وولٹیج تبدیل ہوجاتی ہے۔ اسی طرح ، جب یہ عمودی محور کے ساتھ منتقل ہوتا ہے تو ، Ry پن میں وولٹیج تبدیل ہوجاتی ہے۔ لہذا ہمارے پاس دو ADC آؤٹ پٹس پر جوائسک کے چار رخ ہیں ۔ جب چھڑی کو منتقل کیا جاتا ہے ، تو ہر پن کی وولٹیج سمت کے لحاظ سے اونچی یا کم جاتی ہے۔
یہاں ، ہم اس جوائسک ماڈیول کو ارڈینوو یو این او کے ساتھ مربوط کررہے ہیں جو ایک انبلٹ اے ڈی سی (ڈیجیٹل کنورٹر کے مطابق) میکانزم کے ساتھ آتا ہے جیسا کہ ویڈیو میں آخر میں دکھایا گیا ہے ۔ ارڈینوو کے اے ڈی سی کو استعمال کرنے کے بارے میں مزید معلومات حاصل کریں۔
کوڈ اور وضاحت
مکمل اردوینو کوڈ کا آخر میں ذکر کیا گیا ہے۔
نیچے کوڈ میں ، ہم نے ینالاگ پن A0 اور A1 کے لئے بالترتیب جوائسک ماڈیول کے X اور Y محور کی وضاحت کی ہے۔
# تعریف جوائس ایکس A0 # تعریف خوشی Y1
اب ، نیچے دیے گئے کوڈ میں ، ہم جوئسٹک ماڈیول کے سوئچ (پش بٹن) کے لئے آرڈینو کے 2 نمبر کو شروع کر رہے ہیں اور شروع میں بٹن اسٹٹ اور بٹن اسٹٹ 1 کی قدر 0 ہوگی۔
انٹ بٹن = 2؛ انٹ بٹن اسٹیٹ = 0؛ انٹ بٹن اسٹیٹ 1 = 0؛
نیچے دیے گئے کوڈ میں ، ہم باؤڈ کی شرح کو 9600 سے متعین کر رہے ہیں اور پن 7 کو آؤٹ پٹ پن اور بٹن پن کو ان پٹ پن کے طور پر متعین کر رہے ہیں۔ ابتدائی طور پر ، بٹن پن اونچی رہے گی جب تک کہ سوئچ نہیں دبے گی۔
باطل سیٹ اپ () {پن موڈ (7 ، آؤٹپٹ)؛ پن موڈ (بٹن ، ان پٹ)؛ ڈیجیٹل رائٹ (بٹن ، ہائی)؛ سیریل.بیگین (9600)؛ }
یہاں ، اس کوڈ میں ہم ینالاگ پن A0 اور A1 سے قدریں پڑھ رہے ہیں اور سلسلہ وار پرنٹنگ کر رہے ہیں ۔
int xValue = analogRead (joyX)؛ int yValue = analogRead (joyY)؛ سیریل.پرنٹ (x ویلیو)؛ سیریل.پرنٹ ("\ t")؛ سیریل.پرنٹلن (yValue)؛
جوائسک شافٹ کی نقل و حرکت کے مطابق ایل ای ڈی کو آن اور آف کرنے کے لئے ، مندرجہ ذیل کوڈ میں تعریف کی گئی ہے۔ یہاں ہم صرف ارڈوینو کے پن A0 اور A1 میں وولٹیج کے ینالاگ قدر لے رہے ہیں۔ یہ ینالاگ قدریں تبدیل ہوجائیں گی جب ہم جوائس اسٹک کو منتقل کریں گے اور جوائس اسٹک کی نقل و حرکت کے مطابق ایل ای ڈی چمک جائے گی۔
یہ حالت جوائسک شافٹ کو YY محور کی سمت میں چلانا ہے
اگر (xValue> = 0 &&YValue <= 10) {ڈیجیٹل رائٹ (10 ، HIGH)؛ } دوسری {ڈیجیٹل رائٹ (10 ، LOW)؛}
یہ حالت جوائس اسٹاف میں ایکس محور کی سمت میں حرکت کے ل is ہے
اگر (xValue <= 10 &&YValue> = 500) {ڈیجیٹل رائٹ (11 ، HIGH)؛ } دوسری {ڈیجیٹل رائٹ (11 ، LOW)؛}
یہ حالت جوائس اسٹاف کو + X محور کی سمت میں حرکت دینے کے لئے ہے
اگر (xValue> = 1020 &&YValue> = 500) {ڈیجیٹل رائٹ (9 ، HIGH)؛ } دوسری {ڈیجیٹل رائٹ (9 ، LOW)؛}
یہ حالت جوائسک شافٹ کو + Y محور کی سمت میں حرکت دینے کے لئے ہے
اگر (xValue> = 500 &&YValue> = 1020) {ڈیجیٹل رائٹ (8 ، HIGH)؛ } دوسری {ڈیجیٹل رائٹ (8 ، LOW)؛}
جب ہم جوائس اسٹک شافٹ کو اختلافی طور پر منتقل کرتے ہیں تو پھر ایک پوزیشن آجائے گی جب X اور Y کی ینالاگ قدر بالترتیب 1023 اور 1023 ہوگی ، پن 9 اور پن 8 ایل ای ڈی چمک اٹھیں گے۔ کیونکہ یہ ایل ای ڈی کی حالت کو پورا کرتا ہے۔ لہذا ، اس مابعد کو دور کرنے کے لئے ہم نے ایک شرط رکھی ہے کہ اگر (X ، Y) کی قدر (1023 ، 1023) ہے تو دونوں ایل ای ڈی بند حالت میں رہیں۔
اگر (xValue> = 1020 &&YValue> = 1020) {ڈیجیٹل رائٹ (9 ، LOW)؛ ڈیجیٹل رائٹ (8 ، کم)؛ }
مندرجہ ذیل حالت پش بٹن سوئچ سے منسلک ایل ای ڈی کو چلانے کے لئے استعمال کی جاتی ہے ۔ جیسے ہی ہم جوائسک سوئچ کو دبائیں ایل ای ڈی آن ہو جائے گا اور بٹن کی ریلیز تک لچک جائے گا۔ جوائسک ماڈیول پر پش بٹن سوئچ کا استعمال کرنا اس کا اختیاری ہے۔
اگر (بٹن اسٹیٹ == LOW) ial Serial.println ("سوئچ = اعلی")؛ ڈیجیٹل رائٹ (7 ، ہائی)؛ } دوسری {ڈیجیٹل رائٹ (7 ، LOW)؛
ارڈینو کے ساتھ جوائسک کا استعمال کرتے ہوئے ایل ای ڈی کو کنٹرول کرنا
کوڈ کو اردوینو میں اپ لوڈ کرنے اور سرکٹ آریگرام کے مطابق اجزاء کو مربوط کرنے کے بعد ، اب ہم جوئسٹک کے ذریعہ ایل ای ڈی کو کنٹرول کرسکتے ہیں۔ ہم جوئسٹک شافٹ موومنٹ کے مطابق ہر سمت میں چار ایل ای ڈی کو آن کر سکتے ہیں۔ جوائسک اس کے اندر دو پوٹینومیٹر رکھتا ہے ، ایک ایکس محور کی نقل و حرکت کے لئے اور دوسرا Y- محور کی نقل و حرکت کے لئے۔ ہر پوٹینومیٹر ارڈینو سے 5v مل رہا ہے۔ لہذا ، جیسا کہ ہم جوائس اسٹک کو منتقل کرتے ہیں ، وولٹیج کی قیمت بدلے گی اور ینالاگ پنوں A0 اور A1 میں ینالاگ کی قیمت بھی بدلے گی۔
لہذا ، آردوینو سے ، ہم X اور Y محور کے لئے ینالاگ قدر پڑھ رہے ہیں اور جوائس اسٹک کی محور حرکت کے مطابق ایل ای ڈی کو موڑ رہے ہیں۔ جوائسک ماڈیول پر پش بٹن سوئچ سرکٹ میں سنگل ایل ای ڈی کو کنٹرول کرنے کے لئے استعمال کیا جاتا ہے جیسا کہ نیچے دی گئی ویڈیو میں دکھایا گیا ہے۔