اسمارٹ سٹیز کی بڑھتی ہوئی مقبولیت کے ساتھ ، ہر ڈومین کے لئے ہمیشہ سمارٹ حل کی مانگ ہوتی ہے۔ آئی او ٹی نے انٹرنیٹ کنٹرول کی خصوصیت ختم ہونے کے ساتھ ہی اسمارٹ سٹیز کے امکان کو بھی قابل بنادیا ہے۔ ایک شخص صرف اپنے اسمارٹ فون یا انٹرنیٹ سے منسلک کسی بھی آلات کا استعمال کرکے دنیا میں کہیں سے بھی اپنے گھر یا دفتر میں نصب ڈیوائسز کو کنٹرول کرسکتا ہے۔ اسمارٹ سٹی میں متعدد ڈومینز ہیں اور اسمارٹ سٹی میں اسمارٹ پارکنگ مقبول ڈومین میں سے ایک ہے۔
اسمارٹ پارکنگ انڈسٹری نے بہت ساری بدعات دیکھی ہیں جیسے اسمارٹ پارکنگ مینجمنٹ سسٹم ، اسمارٹ گیٹ کنٹرول ، اسمارٹ کیمرا جو گاڑیوں کی قسموں کا پتہ لگاسکتے ہیں ، اے این پی آر (خودکار نمبر پلیٹ کی شناخت) ، سمارٹ ادائیگی کا نظام ، سمارٹ انٹری سسٹم اور بہت ساری۔ آج اسی طرح کے نقطہ نظر کی پیروی کی جائے گی اور ایک سمارٹ پارکنگ حل تیار کیا جائے گا جو الٹراسونک سینسر کا استعمال کرکے گاڑیوں کی موجودگی کا پتہ لگائے گا اور گیٹ کو خود بخود کھولنے یا بند کرنے کیلئے ٹرگر کرے گا ۔ ESP8266 نوڈیم سی یو یہاں سے منسلک تمام پردییوں کو کنٹرول کرنے کے لئے مرکزی کنٹرولر کے طور پر استعمال ہوگا۔
ای او ایس پی 66666666 آئی او ٹی پر مبنی ایپلی کیشنز بنانے کے لئے سب سے زیادہ مقبول کنٹرولر ہے کیونکہ اس میں انٹرنیٹ سے رابطہ قائم کرنے کے لئے وائی فائی کی حمایت حاصل ہے۔ ہم نے پہلے بہت سے IOT پروجیکٹس کی تعمیر کا استعمال کیا ہے جیسے:
- IOT پر مبنی سیکیورٹی سسٹم
- ہوم آٹومیشن کیلئے اسمارٹ جنکشن باکس
- IOT پر مبنی ہوا آلودگی مانیٹرنگ سسٹم
- ڈیٹا تھنگ اسپیک پر ارسال کریں
تمام ESP8266 پر مبنی پروجیکٹ کی جانچ کریں۔
اس IOT اسمارٹ پارکنگ سسٹم میں ، ہم گاڑیوں کی پارکنگ کے لئے جگہ کی دستیابی تلاش کرنے کے ل data ڈیٹا ویب سرور کو بھیجیں گے۔ یہاں ہم پارکنگ کی دستیابی کے اعداد و شمار کو حاصل کرنے کے لئے فائر بیس بطور آئوٹ ڈیٹا بیس کا استعمال کررہے ہیں۔ اس کے ل we ہمیں فائر بیس میزبان کا پتہ اور اختیار کے ل the خفیہ چابی تلاش کرنے کی ضرورت ہے۔ اگر آپ نوڈیم سی یو کے ساتھ فائر بیس کا استعمال پہلے ہی جانتے ہیں تو آپ آگے بڑھ سکتے ہیں ورنہ آپ کو پہلے میزبان کا پتہ اور خفیہ کلید حاصل کرنے کے لئے ای ایس پی 8266 نوڈیم سی یو کے ساتھ گوگل فائر بیس کنسول استعمال کرنا سیکھنا چاہئے ۔
ضروری اجزاء
- ESP8266 نوڈیم سی یو
- الٹراسونک سینسر
- ڈی سی سروو موٹر
- IR سینسر
- 16x2 i2c LCD ڈسپلے
- جمپرز
سرکٹ ڈایاگرام
اس IOT پر مبنی گاڑیوں کی پارکنگ کے نظام کے لئے سرکٹ ڈایاگرام ذیل میں دیا گیا ہے۔ اس میں دو IR سینسر ، دو سرو موٹرز ، ایک الٹراسونک سینسر اور ایک 16x2 LCD شامل ہے۔
یہاں ESP8266 مکمل عمل کو کنٹرول کرے گا اور گوگل فائربیس کو پارکنگ کی دستیابی کی معلومات بھی بھیجے گا تاکہ انٹرنیٹ پر دنیا میں کہیں سے بھی اس کی نگرانی کی جاسکے۔ کار کی موجودگی کا پتہ لگانے اور گیٹ کو خود بخود کھولنے یا بند کرنے کے لئے دو IR سینسر اندراج اور خارجی گیٹ پر استعمال ہوتے ہیں۔ IR سینسر IR کرنوں کو بھیجنے اور وصول کرکے کسی بھی شے کا پتہ لگانے کے لئے استعمال ہوتا ہے ، IR سینسر کے بارے میں مزید معلومات حاصل کریں۔
دو سرووس اندراج اور خارجی گیٹ کے کام کریں گے اور وہ گیٹ کھولنے یا بند کرنے کے لئے گھومتے ہیں۔ آخر کار الٹراسونک سینسر کا پتہ لگانے کے لئے استعمال کیا جاتا ہے کہ آیا پارکنگ سلاٹ دستیاب ہے یا اس پر قبضہ ہے اور اس کے مطابق ڈیٹا ای ایس پی 8266 پر بھیجیں۔ چیک کریں ویڈیو منصوبے کا مکمل کام کو سمجھنے کے لئے اس ٹیوٹوریل کے آخر میں دیا.
اسمارٹ پارکنگ کا یہ مکمل نظام پروٹو ٹائپ اس طرح دکھائے گا:
پروگرامنگ ESP8266 نوڈیم سی یو کے لئے اسمارٹ پارکنگ حل
ایک ورکنگ ویڈیو کے ساتھ مکمل کوڈ اس ٹیوٹوریل کے آخر میں دیا گیا ہے ، یہاں ہم منصوبے کے کام کو سمجھنے کے لئے مکمل پروگرام کی وضاحت کر رہے ہیں۔
نوڈیم سی یو پروگرامنگ کے ل just ، صرف مائیکرو USB کیبل کے ساتھ نوڈیم سی یو کو کمپیوٹر میں پلگ کریں اور آرڈینو آئ ڈیین کھولیں۔ I2C ڈسپلے اور سروو موٹر کیلئے لائبریریوں کی ضرورت ہے۔ ایل سی ڈی پارکنگ خالی جگہوں کی دستیابی کو ظاہر کرے گا اور انٹری اور ایگزٹ گیٹ کو کھولنے اور بند کرنے کے لئے سروو موٹرز کا استعمال کیا جائے گا۔ Wire.h لائبریری I2C پروٹوکول میں LCD انٹرفیس کے لئے استعمال کیا جائے گا. ESP8266 نوڈیم سی یو میں I2C کے لئے پن D1 (SCL) اور D2 (SDA) ہیں۔ یہاں استعمال شدہ ڈیٹا بیس فائر بیس ہوگا لہذا ہم اس کے لئے لائبریری (فائر بیس آرڈینو ڈاٹ ایچ) بھی شامل ہیں ۔
# شامل کریں
پھر گوگل فائربیس سے موصولہ فائر بیس کی اسناد شامل کریں۔ ان میں آپ کے پروجیکٹ کا نام اور ایک خفیہ کلید پر مشتمل ہوسٹ نام شامل ہوگا۔ ان اقدار کو تلاش کرنے کے لئے فائر بیس پر گذشتہ سبق کی پیروی کریں۔
# ڈیفائن FIREBASE_HOST "اسمارٹ پارکنگ-7f5b6.firebaseio.com" # ڈیفائن FIREBASE_AUTH "suAkUQ4wXRPW7nA0zJQVsx3H2LmeBDPGmfTMBHCT"
Wi-Fi اسناد جیسے WiFi SSID اور پاس ورڈ شامل کریں۔
# ڈیفائن WIFI_SSID "سرکٹ ڈائجسٹ" # وائی فائی_پیشہ وارڈ "سرکٹ ڈائجسٹ 101"
I2C LCD کو آلہ کے پتے (یہاں 0x27 ہے) اور LCD کی قسم کے ساتھ شروع کریں۔ داخلی اور خارجی گیٹ کیلئے سروو موٹرس کو بھی شامل کریں۔
لیکویڈ کرسٹل_ آئی 2 سی ایل سی ڈی (0 ایکس 27 ، 16 ، 2)؛ امدادی میسرو۔ امدادی میسیرو 1؛
I2C LCD کے لئے I2C مواصلات کا آغاز کریں۔
وائر.بیگین (ڈی 2 ، ڈی 1)؛
نوٹری ایم سی یو کے D5 ، D6 پنوں سے انٹری اور ایگزٹ سرو موٹر کو منسلک کریں۔
myservo.attach (D6)؛ myservos.attach (D5)؛
آؤٹ پٹ کے طور پر الٹراسونک سینسر کا ٹرگر پن اور ان پٹ کے بطور ایکو پن کو منتخب کریں۔ الٹراسونک سینسر پارکنگ جگہ کی دستیابی کا پتہ لگانے کے لئے استعمال کیا جائے گا۔ اگر کار نے جگہ پر قبضہ کرلیا ہے تو یہ چمک اٹھے گی ورنہ یہ چمک نہیں سکے گی۔
پن موڈ (ٹرگ ، آؤٹپٹ)؛ پن موڈ (ایکو ، ان پٹ)؛
نوڈیمکیو کے دو پن D0 اور D4 IR سینسر پڑھنے کے ل. استعمال ہوتے ہیں۔ آئی آر سینسر انٹری اور ایگزٹ گیٹ سینسر کی حیثیت سے کام کرے گا۔ اس سے کار کی موجودگی کا پتہ چل جائے گا۔
پن موڈ (carExited، INPUT)؛ پن موڈ (کارینٹر ، ان پٹ)؛
وائی فائی سے جڑیں اور متصل ہونے تک کچھ وقت انتظار کریں۔
WiFi.begin (WIFI_SSID، WIFI_PASSWORD)؛ سیریل ڈاٹ پرنٹ ("مربوط ہو رہا ہے")؛ سیریل.پرنٹ (WIFI_SSID)؛ جبکہ (WiFi.status ()! = WL_CONNECTED) { سیریل.پرنٹ (".")؛ تاخیر (500)؛ }
اسناد کے بطور میزبان اور خفیہ کلید کے ساتھ فائربیس کے ساتھ رابطہ شروع کریں۔
فائر بیس.بیگین (FIREBASE_HOST، FIREBASE_AUTH)؛
i2c 16x2 LCD شروع کریں اور 0 ویں صف 0 ویں کالم پر کرسر کی پوزیشن مرتب کریں ۔
lcd.begin ()؛ lcd.setCursor (0 ، 0)؛
الٹراسونک سینسر سے دوری لیں۔ اس کا استعمال خاص جگہ پر گاڑی کی موجودگی کا پتہ لگانے کے لئے کیا جائے گا۔ پہلے 2 مائیکرو سیکنڈ پلس بھیجیں اور پھر موصولہ پلس پڑھیں۔ پھر اسے 'سینٹی میٹر' میں تبدیل کریں۔ الٹراسونک سینسر کا استعمال کرتے ہوئے فاصلے کی پیمائش کے بارے میں مزید معلومات حاصل کریں۔
ڈیجیٹل رائٹ (ٹرگ ، کم)؛ تاخیرمیکرو سیکنڈ (2)؛ ڈیجیٹل رائٹ (ٹرگ ، ہائی)؛ تاخیرمیکرو سیکنڈ (10)؛ ڈیجیٹل رائٹ (ٹرگ ، کم)؛ مدت = پلس ان (ECHO، HIGH)؛ فاصلہ = (مدت / 2) / 29.1؛
IR سینسر پن کو ڈیجیٹل طور پر انٹری سینسر کے بطور پڑھیں اور چیک کریں کہ آیا یہ زیادہ ہے۔ اگر یہ زیادہ ہے تو انکریمنٹ انٹری گنتی کریں اور اسے 16x2 LCD ڈسپلے پر اور سیریل مانیٹر پر پرنٹ کریں۔
int carEntry = digitalRead (carEnter)؛ اگر (carEntry == HIGH) { شمار یس ++؛ سیریل.پرنٹ ("کار میں داخل =")؛ سیریل.پرنٹلن (کاؤنٹیہس)؛ lcd.setCursor (0 ، 1)؛ lcd.print ("کار میں داخل ہوا")؛
اندرا گیٹ کھولنے کے لئے امدادی موٹر زاویہ بھی منتقل کریں ۔ اپنے استعمال کے معاملے کے مطابق زاویہ تبدیل کریں۔
(pos = 140؛ pos> = 45؛ pos - = 1) { myservos.writ (pos)؛ تاخیر (5)؛ } تاخیر (2000)؛ (pos = 45؛ pos <= 140؛ pos + = 1) 1 // 1 ڈگری myservos.write (pos) کے مراحل میں ؛ تاخیر (5)؛ }
اور فائر بیس لائبریری کے پش اسٹریننگ فنکشن کا استعمال کرکے پڑھنے کو فائر بیس پر بھیجیں ۔
فائر بیس.پش اسٹریننگ ("/ پارکنگ کی حیثیت /" ، فائرآئبلٹیبل)؛
ایکزٹ IR سینسر اور ایگزٹ سرو موٹر کے لئے اوپر جیسے اقدامات کریں ۔
int carExit = digitalRead (carExited)؛ اگر (carExit == HIGH) { countYes--؛ سیریل ڈاٹ پرنٹ ("کار سے باہر ہوا =")؛ سیریل.پرنٹلن (کاؤنٹیہس)؛ lcd.setCursor (0 ، 1)؛ lcd.print ("کار سے باہر")؛ (pos1 = 140؛ pos1> = 45؛ pos1 - = 1) { myservo.writ (pos1)؛ تاخیر (5)؛ } تاخیر (2000)؛ (pos1 = 45؛ pos1 <= 140؛ pos1 + = 1) { // 1 ڈگری myservo.writ (pos1) کے مراحل میں ؛ تاخیر (5)؛ } فائر بیس.پش اسٹریننگ ("/ پارکنگ کی حیثیت /" ، فائر دستیاب)؛ lcd.clear ()؛ }
چیک کریں کہ آیا کار پارکنگ کے مقام پر آگئی ہے اور اگر وہ آگیا ہے تو چمکنے سے یہ اشارہ مل گیا کہ جگہ بھر گئی ہے۔
اگر (فاصلہ <6) ial Serial.println ("قبضہ")؛ ڈیجیٹل رائٹ (قیادت ، اعلی)؛ }
دوسری جگہ دکھائیں کہ جگہ دستیاب ہے۔
اگر (فاصلہ> 6) ial Serial.println ("دستیاب")؛ ڈیجیٹل رائٹ (ایل ای ڈی ، کم)؛ }
پارکنگ کے اندر کل خالی جگہ کا حساب لگائیں اور فائر بیس پر ڈیٹا بھیجنے کے ل the اسٹرنگ میں محفوظ کریں۔
خالی = allSpace - countYes؛ دستیاب = سٹرنگ ("دستیاب =") + اسٹرنگ (خالی) + اسٹرنگ ("/") + اسٹرنگ (آل اسپیس)؛ آگ دستیاب = سٹرنگ ("دستیاب =") + اسٹرنگ (خالی) + اسٹرنگ ("/") + سٹرنگ (آل اسپیس)؛ اس کے علاوہ ڈیٹا کو آئی 2 سی ایل سی ڈی پر بھی پرنٹ کریں۔ lcd.setCursor (0 ، 0)؛ lcd.print (دستیاب)؛
اسی طرح پارکنگ کی دستیابی کو فائربیس پر آن لائن ٹریک کیا جاسکتا ہے جیسا کہ ذیل میں اسنیپ شاٹ میں دکھایا گیا ہے:
یہ ESP8266 نوڈیم سی یو ماڈیول اور مختلف پردییوں کا استعمال کرتے ہوئے مکمل سمارٹ پارکنگ سسٹم کو ختم کرتا ہے۔ آپ الٹراسونک اور آئی آر سینسر کی جگہ میں دوسرے سینسر بھی استعمال کرسکتے ہیں۔ اسمارٹ پارکنگ سسٹم کی ایک وسیع اطلاق موجود ہے اور اسے مزید اسمارٹ بنانے کے ل different مختلف مصنوعات شامل کی جاسکتی ہیں۔ اگر آپ کو کوئی شک ہے یا مزید مدد کے لئے ہمارے فورم پر پہنچیں تو نیچے تبصرہ کریں۔