سبق 98-2: Arduino کے ساتھ پش بٹن کا استعمال کرتے ہوئے LED کو کیسے آن اور آف کریں
یہ پروجیکٹ آپ کو دکھاتا ہے کہ آپ Arduino استعمال کرتے ہوئے پش بٹن سے LED کو کیسے کنٹرول کر سکتے ہیں۔ LED کو خود سے جھپکنے دینے کے بجائے، آپ فیصلہ کرتے ہیں کہ یہ کب روشن ہوگی: بٹن دبا کر رکھیں تو LED آن ہو جاتی ہے، چھوڑ دیں تو بند ہو جاتی ہے۔ یہ سادہ بلنک اسکیچ کے بعد قدرتی اگلا قدم ہے، کیونکہ یہ دو ایسے تصورات متعارف کراتا ہے جو تقریباً ہر Arduino پروجیکٹ میں آپ کو نظر آئیں گے جو آپ کبھی بنائیں گے — ڈیجیٹل اِن پٹ پڑھنا، اور اُس اِن پٹ کو کوڈ میں فیصلہ کرنے کے لیے استعمال کرنا۔
یہاں اصل اہمیت یہ سیکھنے میں ہے کہ ایک مائیکرو کنٹرولر طبعی دنیا کو کیسے محسوس کرتا ہے۔ پش بٹن سب سے سادہ انسانی اِن پٹ ڈیوائس ہے، لیکن یہی پیٹرن — اِن پٹ پڑھو، شرط جانچو، آؤٹ پٹ چلاؤ — بالکل اسی طرح ہے جیسے آپ 3D پرنٹر پر لِمٹ سوئچ پڑھیں گے، سیکیورٹی سسٹم پر دروازہ کھلنا detect کریں گے، یا کنٹرول پینل سے موٹر شروع کریں گے۔ ایک بار جب آپ یہ ایک سرکٹ سمجھ لیں، تو آپ LED کی جگہ تقریباً کسی بھی چیز کو لگا سکتے ہیں۔
یہاں کچھ عملی چیزیں ہیں جو آپ اسی تکنیک سے بنا سکتے ہیں:
- ایک لمحاتی ڈور بیل یا کال بٹن جو دبائے رکھنے پر لیمپ روشن کرتا ہے۔
- ایک "ڈیڈ مینز سوئچ" جو ریلے (اور جو کچھ بھی یہ چلاتا ہے) کو صرف اُس وقت تک توانائی فراہم کرتا ہے جب تک بٹن دبا ہوا ہو۔
- مشین کے لیے ایک دستی ٹیسٹ بٹن، جہاں ایک انڈیکیٹر LED تصدیق کرتی ہے کہ اِن پٹ رجسٹر ہو رہا ہے۔
- موٹر ڈرائیور یا پمپ کے لیے ایک اسٹارٹ بٹن، جس میں LED اسٹیٹس لائٹ کا کام کرتی ہے۔
- ایک سادہ گیم بزر جہاں پہلا کھلاڑی جو دبائے وہ جیتتا ہے اور LED فاتح کا اعلان کرتی ہے۔
- سینسر پروجیکٹ پر ایک کیلیبریشن یا "لرن" بٹن جو موڈ فعال ہونے کے دوران روشن ہوتا ہے۔
ہارڈویئر اور اجزاء
پرزوں کی فہرست جان بوجھ کر مختصر ہے، اسی لیے یہ پہلا اِن پٹ پروجیکٹ بنانے کے لیے بہترین ہے:
- ایک Arduino بورڈ — Uno، Nano، Mega، یا کوئی بھی مطابق بورڈ۔
- ایک LED، یا تو 5 mm یا 3 mm، کسی بھی رنگ میں۔
- LED کے لیے ایک ریزسٹر، 200 Ω سے 1000 Ω تک کوئی بھی۔
- ایک لمحاتی پش بٹن سوئچ۔
- ایک بریڈ بورڈ اور کچھ DuPont جمپر تاروں۔
اگر آپ سوچ رہے ہیں کہ ریزسٹر کی ضرورت کیوں ہے، تو ٹرانسکرپٹ میں حساب سمجھایا گیا ہے (ویڈیو میں 03:49 پر)۔ ایک عام LED اپنے اوپر تقریباً 2 V گرتی ہے اور تقریباً 10 mA کرنٹ چاہتی ہے۔ 5 V سپلائی کے ساتھ، باقی 3 V ریزسٹر کو گرانا ہوتا ہے، تو اوہم کا قانون دیتا ہے R = 3 V / 0.01 A = 300 Ω۔ 300 Ω سے لے کر تقریباً 1000 Ω تک کچھ بھی کام کرے گا — قدر جتنی زیادہ ہوگی، LED اتنی مدھم ہوگی، لیکن یہ اتنی ہی محفوظ اور زیادہ موثر ہوگی۔ کرنٹ نازک نہیں ہے؛ آپ صرف چمک کے بدلے کم کرنٹ ڈرا کا تبادلہ کرتے ہیں۔
وائرنگ گائیڈ
سرکٹ وہی LED سرکٹ ہے جو آپ بلنک اسکیچ کے لیے استعمال کریں گے، جس میں ایک پش بٹن شامل کیا گیا ہے۔ LED کا اینوڈ (لمبی ٹانگ) ریزسٹر کے ذریعے Arduino پن 3 سے جڑتا ہے، اور کیتھوڈ (چھوٹی ٹانگ، جو پلاسٹک کے کنارے کے چپٹے حصے سے نشان زد ہوتی ہے) گراؤنڈ سے جاتی ہے۔ پش بٹن پن 2 اور گراؤنڈ کے درمیان جڑتا ہے۔
ایک تفصیل جاننے کے قابل ہے: پش بٹن کی چار ٹانگیں ہوتی ہیں، لیکن وہ اندر سے جوڑے ہوئے ہوتے ہیں۔ دو ٹانگیں مستقل طور پر ایک دوسرے سے جڑی ہوتی ہیں، اور باقی دو ٹانگیں مستقل طور پر ایک دوسرے سے جڑی ہوتی ہیں — بٹن دبانے سے دونوں جوڑے آپس میں جڑ جاتے ہیں۔ اگر آپ کے پاس ملٹی میٹر ہے، تو اس کا کنٹینیوٹی (بیپ) موڈ استعمال کریں تاکہ معلوم ہو کہ بٹن نہ دبانے پر کون سی ٹانگیں پہلے سے جڑی ہیں؛ وہ دو وہ جوڑا ہیں جو آپ کو استعمال نہیں کرنا چاہیے۔ دو آزاد جوڑوں میں سے ہر ایک سے ایک ٹانگ چنیں (ویڈیو میں 07:50 پر)۔
کوڈ کیسے کام کرتا ہے
اسکیچ مختصر ہے، اور اس کا تقریباً سارا حصہ کنفیگریشن ہے جسے آپ ایڈجسٹ کر سکتے ہیں۔ اوپر کی تین لائنیں وہ ہیں جنہیں آپ واقعی چھوئیں گے:
const int pushButtonPin = 2;//define a pin number for push button
const int LEDPin = 3;//define a pin that is connected to LED
const int delayLED = 0;//how long the LED should stay ON
pushButtonPin وہ ڈیجیٹل پن ہے جس سے بٹن جڑا ہے۔ اگر آپ بٹن کو کسی مختلف پن پر منتقل کریں تو اسے تبدیل کریں — بس یاد رکھیں کہ فزیکل تار کو بھی اسی کے مطابق منتقل کریں۔
LEDPin وہ پن ہے جو LED چلاتا ہے۔ کوئی بھی ڈیجیٹل پن کام کرے گا، لیکن ذہن میں رکھیں کہ پن 0 اور 1 سیریل کنکشن کے لیے استعمال ہوتے ہیں، اس لیے ان سے بچنا بہتر ہے۔
delayLED سب سے دلچسپ سیٹنگ ہے۔ یہ کنٹرول کرتی ہے کہ بٹن چھوڑنے کے بعد LED کتنی دیر تک آن رہے، جسے ملی سیکنڈز میں ماپا جاتا ہے۔ اسے 0 پر سیٹ کرنے کا مطلب ہے کہ جیسے ہی آپ اپنی انگلی اٹھائیں گے LED فوراً بند ہو جائے گی۔ اسے 1000 پر سیٹ کرنے سے LED چھوڑنے کے بعد پورا ایک سیکنڈ تک روشن رہتی ہے، اور 5000 اسے پانچ سیکنڈ تک آن رکھتا ہے (ویڈیو میں 16:31 پر)۔ یہ ایک عدد مکمل طور پر بدل دیتا ہے کہ پروجیکٹ کیسا محسوس ہوتا ہے، اور یہ دیکھنے کا اچھا طریقہ ہے کہ کوڈ میں ایک ویری ایبل براہ راست اس رویے میں کیسے تبدیل ہوتا ہے جسے آپ مشاہدہ کر سکتے ہیں۔
سیٹ اپ میں دو دیگر چیزیں قابل ذکر ہیں۔ پہلے، بٹن پن کو سادہ INPUT کے بجائے INPUT_PULLUP کے ساتھ کنفیگر کیا گیا ہے:
pinMode(pushButtonPin, INPUT_PULLUP);//define a pin for push button switch
یہ Arduino کے اندرونی پل-اپ ریزسٹر کو فعال کرتا ہے، جو بٹن دبائے نہ جانے پر پن کو مستحکم HIGH سطح پر رکھتا ہے۔ اس کے بغیر، ایک فلوٹنگ اِن پٹ پن بے ترتیب برقی شور اٹھا لے گا اور بے ترتیب ریڈنگ دے گا، اور اسے ٹھیک کرنے کے لیے آپ کو ایک بیرونی ریزسٹر کی ضرورت ہوگی۔ اندرونی پل-اپ فعال ہونے کے ساتھ، وائرنگ سادہ رہتی ہے: بٹن کا ایک طرف پن سے، دوسرا طرف گراؤنڈ سے۔ جب آپ بٹن دباتے ہیں، پن گراؤنڈ کی طرف کھنچ جاتا ہے اور LOW پڑھتا ہے (ویڈیو میں 14:08 پر)۔
دوم، سیریل مانیٹر 9600 baud پر شروع کیا گیا ہے تاکہ آپ حالت کی تبدیلیاں ہوتے ہوئے دیکھ سکیں:
Serial.begin(9600);//initialize the serial monitor
Serial.println("Robojax LED with push button");//print this text on Serial Monitor
مرکزی لوپ میں، منطق ایک سادہ if/else ہے۔ کوڈ بٹن پن پڑھتا ہے اور اسے LOW سے موازنہ کرتا ہے۔ اگر بٹن دبا ہوا ہے، LED پن HIGH ہو جاتا ہے، پیغام "LED ON" پرنٹ ہوتا ہے، اور اسکیچ delayLED ملی سیکنڈز تک انتظار کرتا ہے۔ اگر بٹن نہیں دبا، LED پن LOW ہو جاتا ہے اور LED بند ہو جاتی ہے۔ چونکہ loop() بار بار چلتا ہے، یہ جانچ فی سیکنڈ ہزاروں بار ہوتی ہے، اس لیے ردعمل فوری محسوس ہوتا ہے۔
لائیو مظاہرہ
delayLED کو 1000 پر سیٹ کرنے کے ساتھ، بٹن دبانے سے LED روشن ہو جاتی ہے اور آپ کے چھوڑنے کے بعد ایک سیکنڈ تک آن رہتی ہے۔ ویلیو کو 5000 تک کم کریں اور LED پانچ سیکنڈ تک رہتی ہے — اتنی دیر کہ آپ بٹن سے دور جا سکتے ہیں اور پھر بھی اسے آن دیکھ سکتے ہیں۔ اسے 0 پر سیٹ کریں اور LED آپ کی انگلی کی عین پیروی کرتی ہے: دبائیں، آن؛ چھوڑیں، آف (ویڈیو میں 17:02 پر)۔
کوڈ اپ لوڈ ہونے کے بعد، آپ Arduino کو USB سے منقطع کر کے اسے بیٹری یا 5 V اڈاپٹر سے پاور دے سکتے ہیں۔ بورڈ کو چلانے کے لیے کمپیوٹر کی ضرورت نہیں — پروگرام اس کی میموری میں محفوظ ہوتا ہے اور ہر بار پاور آن ہونے پر خود بخود شروع ہو جاتا ہے (ویڈیو میں 12:27 پر)۔
اگر آپ چاہتے ہیں کہ LED ایک بار دبانے کے بعد آن رہے اور اگلی بار دبانے پر بند ہو، تو یہ ایک مختلف رویہ ہے جسے ٹوگلنگ کہتے ہیں، اور اس کا احاطہ Lesson 98-3: How to Turn On/Off a Toggle LED Using a Push Button with Arduino میں کیا گیا ہے۔ پش بٹن کی وائرنگ بالکل یکساں ہے، اس لیے آپ یہی سرکٹ دوبارہ استعمال کر سکتے ہیں۔
اس ویڈیو سے متعلقہ پروجیکٹس
- Lesson 98-1: How to Turn On and Off an LED with Arduino
- Lesson 98-3: How to Turn On/Off a Toggle LED Using a Push Button with Arduino
- Lesson 98-4: Fading an LED Light Using Arduino: Brightness Control
- Lesson 98-5: Fade Light When a Button Is Pressed Using Arduino
- Lesson 98-6: Seesaw LED Game with Arduino
- Lesson 98-7: Walking Light Using Arduino and 5 LEDs
- Lesson 98-8: Walking Light with Push Button and LEDs with Arduino
- Lesson 98-9: LED Voltage Level Meter Using Arduino or walking light with potentiometer
- Lesson 98-10: Arduino Traffic Light
ابواب
- [00:00] اس ویڈیو کے 10 پروجیکٹس کا جائزہ
- [01:00] Arduino مرحلہ وار کورس کا تعارف
- [02:29] LED کیا ہے: علامت، اینوڈ، کیتھوڈ، اور جسمانی شکل
- [03:49] اوہم کے قانون سے LED ریزسٹر کا حساب لگانا
- [07:32] بریڈ بورڈ پر LED اور پش بٹن کی وائرنگ
- [08:50] کوڈ کی وضاحت: پنز، سیٹ اپ، اور مرکزی لوپ
- [12:43] پش بٹن سوئچ کیسے کام کرتا ہے
- [13:22] پش بٹن کو پن 2 اور گراؤنڈ سے جوڑنا
- [13:43] کوڈ واک تھرو: INPUT_PULLUP اور بٹن پڑھنا
- [16:14] مظاہرہ: delayLED کو 1 s سے 5 s سے 0 تک تبدیل کرنا
- [19:52] پش بٹن ٹوگل کے عملی اطلاقات
تصاویر
This code has not been parsed yet. Please return to the admin panel to parse it.
آپ کو جن چیزوں کی ضرورت ہو سکتی ہے
-
ایمیزونSunFounder Arduino Learning Kit on AliExpresss.click.aliexpress.com
-
ایمیزون
-
ایمیزون
-
ایمیزون
وسائل اور حوالہ جات
-
دستاویزاتDocumentation for SunFounder 3 in 1 IoT/Smart Car/Learning Kitdocs.sunfounder.com
-
باہرونی
-
باہرونی
-
باہرونی
فائلیں📁
آرڈوینو لائبریریاں (زپ)
-
SunFounder کا 3-in-1 اسمارٹ کار لرننگ کٹ سورس کوڈ
3in1-kit-main-v2.zip12.80 MB
صارف کا دستی کتاب
-
سن فاؤنڈر 3-ان-1 آردوینو اسمارٹ کار اسمبلی دستییہ دستاویز سن فاؤنڈر 3-ان-1 آردوینو اسمارٹ کار کی مرحلہ وار اسمبلی دکھاتی ہے
SunFounder_car_assembly_manual.pdf1.20 MB