آرڈوینو شوق کے منصوبوں اور کھیلوں کی تعمیر کے لئے بہت مشہور ہے ، اور اس سے قبل ہم سانپ گیم ، پنگ پونگ گیم ، اسپیس ریس ریس کھیل وغیرہ کی تعمیر کے ل A اردوینو کا استعمال کرچکے ہیں۔.
اس پروجیکٹ کے ل we ، ہم ایک ارڈینو یونو ، بزر اور ایلومینیم کی دو تاروں کا استعمال کریں گے۔ کھیل کی حیثیت کو ظاہر کرنے کے لئے ایک 16x2 LCD بھی انٹرفیس کیا گیا ہے۔ بھولبلییا کے تار کے دونوں سرے آرڈوینو کے ڈیجیٹل پن 2 اور 3 سے منسلک ہوں گے ، اور ہینڈل تار ارڈینو کے گراؤنڈ پن سے جڑا ہوا ہے۔ ڈیجیٹل پنوں کی تعریف INPUT_PULLUP پنوں کے طور پر کی گئی ہے۔ لہذا جب ہینڈل تار بھولبلییا کے تار کو چھوتا ہے تو ، اس سے ڈیجیٹل پنوں کی حالت کم ہوجاتی ہے ، اور بززر آواز لگاتا ہے۔
ایک ڈایڈ بھولبلییا کے تار کے آخر میں منسلک ہوتا ہے ، لہذا جب آپ اس ڈایڈڈ کے پاس جائیں گے اور گول ہینڈل تار کے ساتھ بھولبلییا کے تار کو چھویں گے تو ، صرف ایک پن (پن 3) کم ہوگا۔ اس حالت میں ، LCD پر مبارکبادی کا متن (اچھی طرح سے) ظاہر کیا جائے گا۔
ضروری اجزاء
- ارڈینو اونو
- ایلومینیم وائر
- 16x2 LCD
- I 2 C ماڈیول
- بریڈ بورڈ
- بزر
- ڈایڈڈ
سرکٹ ڈایاگرام
اردوینو بز وائر گیم کے لئے سرکٹ ڈایاگرام اوپر دیا گیا ہے۔ جبکہ V I2C ماڈیول کے SCL اور SDA پنوں Arduino کے کے A5 اور A4 پنوں سے منسلک ہیں CC I2C ماڈیول کی اور GND پن Arduino کے کے 5V اور GND پن سے منسلک ہیں. بزر کی مثبت ریل اردوینو کے ڈیجیٹل پن 4 سے منسلک ہے اور منفی ریل جی این ڈی سے منسلک ہے۔ ایلومینیم کا تار کاٹ کر زگ زگ شکل میں موڑ لیں۔ تار کے ایک سرے پر ڈایڈڈ ڈالیں۔ پھر ہینڈل بنانے کے لئے دوسرا تار کاٹ کر ایک سرا کو لوپ میں موڑ دیں۔
16x2 LCD کو بھی I2C ماڈیول کا استعمال کیے بغیر اردوینو کے ساتھ انٹرفیس کیا جاسکتا ہے۔
آرڈینو کے ڈی 2 اور ڈی 3 پنوں کو زیگ زگ تار کے دونوں سروں سے مربوط کریں اور ہینڈل تار کو ارڈینو کے جی این ڈی پن سے جوڑیں۔
کوڈ کی وضاحت
اس آرڈینو بز وائر گیم کے لئے مکمل کوڈ دستاویز کے آخر میں دیا گیا ہے۔
LCD ماڈیول کے لئے لائبریری فائل شامل کرکے اپنے کوڈ کا آغاز کریں۔ LiquidCrystal_I2C.h لائبریری I2C مواصلات کے لئے Ardino اور LCD ماڈیولز کے درمیان استعمال کی جاتی ہے۔
# شامل کریں
اس کے بعد ، بوزر ، تار کا نقطہ آغاز ، اور تار کا اختتامی نقطہ کیلئے آردوینو پنوں کی وضاحت کریں۔
const int startPin = 2؛ const int endPin = 3؛ کانسٹ بززر = 4؛
پھر دو متغیر آغاز اور اختتام کی وضاحت کریں ۔ یہ تغیرات تار کی ریڈنگ کو بچانے کے ل. استعمال ہوں گے۔
INT اسٹارٹ ، آخر_؛
اب بززر پن کو آؤٹ پٹ اور تار پنوں کو بطور INPUT_PULLUP متعین کریں ۔ اردوینو کے پاس اندرونی پل اپ مزاحم ہیں جو 20k اوہم کے قریب ہیں۔ یہ مزاحمتی INPUT_PULLUP استعمال کرکے اندرونی طور پر منسلک ہوسکتے ہیں ۔ کسی INPUT_PULLUP کی تعریف کرنا عملی طور پر ایک ہی ہے جیسے پن اور + 5V کے مابین k 20k اوہم رزسٹر کو جوڑنا ہے۔
پن موڈ (بوزر ، آؤٹپٹ)؛ پن موڈ (اسٹارٹ پن ، INPUT_PULLUP)؛ پن موڈ (اسٹارٹ پن ، INPUT_PULLUP)؛
باطل لوپ کے اندر ، تار کی پنوں کی حیثیت پڑھیں۔
start = digitalRead (startPin)؛ آخر_ = ڈیجیٹل ریڈ (اینڈ پن)؛
اب تار پنوں کی ریڈنگ کا موازنہ کریں۔ اگر دونوں پن کم ہیں تو اس کا مطلب ہے ، آپ نے تار کو چھو لیا ہے لہذا بزر آواز لگائے گا ، اور اگر تار کا آغاز پن زیادہ ہے اور اینڈ پن کم ہے جس کا مطلب ہے کہ آپ اختتامی نقطہ پر پہنچ گئے ہیں۔
اگر (start == LOW && _ _= LOW) {ڈیجیٹل رائٹ (بزر ، HIGH)؛ تاخیر (1000)؛ ڈیجیٹل رائٹ (بزر ، کم)؛ lcd.setCursor (0،0)؛ lcd.print ("دوبارہ کوشش کریں")؛ سیریل ڈاٹ پرنٹ ("دوبارہ کوشش کریں")؛ } بشرطیکہ اگر (start == HIGH && _ _= LOW) c lcd.setCursor (0،0)؛ lcd.print ("اچھا ہو گیا")؛ سیریل ڈاٹ پرنٹ ("ٹھیک ہو گیا")؛ }
بز وائر گیم کی جانچ ہو رہی ہے
ہارڈ ویئر سے منسلک ہونے اور دیئے گئے کوڈ کو اپ لوڈ کرنے کے بعد ، آپ گیم کھیلنا شروع کرسکتے ہیں۔ لہذا اپنے ہاتھ میں دائرے کے ساتھ تار کو تھامیں اور زگ زگ تار کے ساتھ سولڈڈ ڈایڈڈ کے پچھلے راستے پر دائرے کے ساتھ تار حاصل کرنے کی کوشش کریں ، بغیر کہیں بھی گول تار کو چھوئے۔ اگر آپ تاروں کو چھوتے ہیں تو ، پھر بزر آواز لگائے گا اور LCD " دوبارہ کوشش کریں " دکھائے گا ۔ اور اگر آپ کھیل کو تار کو چھوئے بغیر ہی مکمل کرتے ہیں تو پھر یہ “ ٹھیک ہے ” دکھائے گا ۔
اس طرح آپ ایک ارڈینو کے ساتھ بز وائر گیم بنا سکتے ہیں ۔ ایک ورکنگ ویڈیو اور مکمل کوڈ ذیل میں دیا گیا ہے۔