- ڈی ایچ ٹی 11 سینسر کا جائزہ:
- پیشگی شرائط:
- راسبیری پائی پر اڈفریٹ LCD لائبریری کا انسٹال کرنا:
- راسبیری پائی پر اڈفریٹ ڈی ایچ ٹی 11 لائبریری کا انسٹال کرنا:
- سرکٹ ڈایاگرام:
- ڈی ایچ ٹی 11 سینسر کے لئے ازگر پروگرامنگ:
- راسبیری پائی کا استعمال کرتے ہوئے نمی اور درجہ حرارت کی پیمائش:
درجہ حرارت اور نمی سب سے عام پیرامیٹرز ہیں جن کی نگرانی کسی بھی ماحول میں کی جارہی ہے۔ درجہ حرارت اور نمی کی پیمائش کے ل from منتخب کرنے کے لئے بہت سارے سینسر موجود ہیں ، لیکن اس کی پیمائش کی حد اور درستگی کی وجہ سے سب سے زیادہ استعمال شدہ DHT11 ہے ۔ یہ ون پن مواصلات کے ساتھ بھی کام کرتا ہے اور اسی وجہ سے مائکروکنٹرولرز یا مائکرو پروسیسرس کے ساتھ انٹرفیس کرنا بہت آسان ہے۔ اس ٹیوٹوریل میں ہم یہ سیکھنے جارہے ہیں کہ کس طرح راسبیری پائی کے ساتھ مشہور ڈی ایچ ٹی 11 سینسر کو انٹرفیس کریں اور 16x2 LCD اسکرین پر درجہ حرارت اور نمی کی قدر کو کس طرح دکھائیں۔ ہم پہلے ہی اسے IOT راسبیری پے ویدر اسٹیشن کی تعمیر کے لئے استعمال کر چکے ہیں۔
ڈی ایچ ٹی 11 سینسر کا جائزہ:
DHT11 سینسر مندرجہ ذیل خصوصیات کے ساتھ نسبتا نمی اور درجہ حرارت کی پیمائش کرسکتا ہے
درجہ حرارت کی حد: 0-50 ° C درجہ حرارت کی درستگی: ± 2 ° C نمی کی حد: 20-90 R RH نمی کی درستگی: ± 5٪
DHT11 سینسر یا تو ماڈیول شکل میں یا سینسر کی شکل میں دستیاب ہے۔ اس ٹیوٹوریل میں ہم سینسر کی ماڈیول شکل استعمال کررہے ہیں ، دونوں کے درمیان صرف اتنا ہی فرق ہے کہ ماڈیول کی شکل میں سینسر میں فلٹرنگ کاپاکیسیٹر ہوتا ہے اور سینسر کے آؤٹ پٹ پن سے منسلک پل اپ ریزٹر ہوتا ہے۔ لہذا اگر آپ اکیلے سینسر کا استعمال کررہے ہیں تو یقینی بنائیں کہ آپ نے ان دونوں اجزاء کو شامل کیا ہے۔ ارڈوینو کے ساتھ DHT11 انٹرفیسنگ بھی سیکھیں۔
ڈی ایچ ٹی 11 سینسر کیسے کام کرتا ہے:
DHT11 سینسر نیلے یا سفید رنگ کے سانچے کے ساتھ آتا ہے۔ اس سانچے کے اندر ہمارے پاس دو اہم اجزاء ہیں جو ہمیں نمی اور درجہ حرارت کا نسبت کرنے میں مدد کرتے ہیں۔ پہلا جزو الیکٹروڈ کا ایک جوڑا ہے ۔ ان دونوں الیکٹروڈ کے مابین بجلی کی مزاحمت کا فیصلہ نمی کے انعقاد والے سبسٹریٹ کے ذریعہ کیا جاتا ہے۔ لہذا ماپا مزاحمت ماحول کی نسبت نمی کے متضاد متناسب ہے۔ نسبتا نمی کی نسبت زیادہ نسبت مزاحمت کی قدر ہوگی اور اس کے برعکس۔ یہ بھی نوٹ کریں کہ نسبت نمی حقیقی نمی سے مختلف ہے۔ نسبتا hum نمی ہوا میں موجود پانی کے مقدار کو ہوا کے درجہ حرارت کے لحاظ سے ماپتا ہے۔
دوسرا جزو ایک سطح پر سوار NTC Thermistor ہے ۔ اصطلاح این ٹی سی کا مطلب ہے منفی درجہ حرارت کی گتانک ، درجہ حرارت میں اضافے کے لئے مزاحمت کی قدر کم ہوگی
پیشگی شرائط:
یہ فرض کیا جاتا ہے کہ آپ کی رسبری پائی پہلے ہی آپریٹنگ سسٹم کے ساتھ چمک رہی ہے اور وہ انٹرنیٹ سے رابطہ قائم کرنے کے قابل ہے۔ اگر نہیں تو ، آگے بڑھنے سے پہلے راسبیری پِی ٹیوٹوریل کے ساتھ شروعات کرنا عمل کریں۔
یہ بھی فرض کیا جاتا ہے کہ آپ کو اپنے pi تک یا تو ٹرمینل ونڈوز کے ذریعے یا کسی دوسرے ایپلی کیشن کے ذریعہ رسائی حاصل ہے جس کے ذریعے آپ ازگر کے پروگرام لکھ سکتے ہیں اور اس پر عمل کرسکتے ہیں اور ٹرمینل ونڈو کا استعمال کرسکتے ہیں۔
راسبیری پائی پر اڈفریٹ LCD لائبریری کا انسٹال کرنا:
درجہ حرارت اور نمی کی قدر 16 * 2 LCD ڈسپلے پر ظاہر ہوگی۔ اڈفروٹ ہمیں اس LCD کو آسانی سے 4 بٹ موڈ میں چلانے کے ل a ایک لائبریری فراہم کرتی ہے ، لہذا آئیے ہم اسے ٹرمینل ونڈو PI کھول کر اور مندرجہ ذیل مراحل پر عمل کرکے اپنے راسبیری پائی میں شامل کریں۔
مرحلہ 1: درج ذیل لائن کا استعمال کرکے اپنے راسبیری پائی پر گٹ لگائیں۔ گٹ آپ کو گیتوب پر کسی بھی پروجیکٹ فائلوں کا کلون بنانے اور اسے اپنے راسبیری پائی پر استعمال کرنے کی اجازت دیتا ہے۔ ہماری لائبریری گتوب پر ہے لہذا ہمیں اس لائبریری کو pi میں ڈاؤن لوڈ کرنے کے لئے گٹ انسٹال کرنا ہوگا۔
گیٹ انسٹال کریں
مرحلہ 2: مندرجہ ذیل لائن گیٹ ہب صفحے سے منسلک ہے جہاں لائبریری موجود ہے ، صرف ہوم ڈائرکٹری پر پروجیکٹ فائل کو کلون کرنے کے لئے لائن پر عمل درآمد
گٹ کلون گٹ: //github.com/adafruit/Adaf فرو_Python_CharLCD
مرحلہ 3: ڈائریکٹری لائن کو تبدیل کرنے کے لئے ، نیچے دیئے گئے کمانڈ کا استعمال کریں ، اس پروجیکٹ فائل میں جانے کے لئے جو ہم نے ابھی ڈاؤن لوڈ کیا ہے۔ کمانڈ لائن نیچے دی گئی ہے
سی ڈی اڈفریٹ_پھٹن_چیر ایل سی ڈی
مرحلہ 4: ڈائریکٹری کے اندر سیٹ اپ ڈاٹ پی پی نامی ایک فائل ہوگی ، ہمیں لائبریری انسٹال کرنے کے ل it ، اسے انسٹال کرنا ہوگا۔ لائبریری انسٹال کرنے کے لئے درج ذیل کوڈ کا استعمال کریں
sudo ازگر setup.py انسٹال کریں
یہی ہے کہ لائبریری کو کامیابی کے ساتھ انسٹال کرنا چاہئے تھا ۔ اب اسی طرح DHT لائبریری انسٹال کرنے کے ساتھ آگے بڑھیں جو اڈفروٹ سے بھی ہے۔
راسبیری پائی پر اڈفریٹ ڈی ایچ ٹی 11 لائبریری کا انسٹال کرنا:
ڈی ایچ ٹی 11 سینسر ون وائر سسٹم کے اصول کے ساتھ کام کرتا ہے۔ درجہ حرارت اور نمی کی قدر سینسر کے ذریعہ محسوس ہوتی ہے اور پھر آؤٹ پٹ پن کے ذریعہ سیریل ڈیٹا کے بطور منتقل ہوتی ہے۔ اس کے بعد ہم MCU / MPU پر I / O پن کا استعمال کرکے ان اعداد و شمار کو پڑھ سکتے ہیں۔ ان اقدار کو کس طرح پڑھا جاتا ہے اس کو سمجھنے کے ل you آپ کو ڈی ایچ ٹی 11 سینسر کے ڈیٹا شیٹ کے ذریعے پڑھنا ہوگا ، لیکن اب چیزوں کو آسان رکھنے کے ل we ہم ڈی ایچ ٹی 11 سینسر سے بات کرنے کے لئے لائبریری کا استعمال کریں گے۔
DHT11 لائبریری Adafruit کی طرف سے فراہم کے ساتھ ساتھ DHT11، DHT22 اور دوسرے ایک تار کا درجہ حرارت سینسر کے لئے استعمال کیا جا سکتا ہے. ڈی ایچ ٹی 11 لائبریری کو انسٹال کرنے کا طریقہ کار بھی اسی طرح ہے جو ایل سی ڈی لائبریری کو انسٹال کرنے کے لئے چلتا ہے۔ واحد لائن جو تبدیل ہوگی گیٹ ہب پیج کا لنک ہے جس پر ڈی ایچ ٹی لائبریری محفوظ ہے۔
ڈی ایچ ٹی لائبریری کو انسٹال کرنے کے لئے ٹرمینل پر ایک ایک کرکے چار کمانڈ لائنیں داخل کریں
گٹ کلون
سی ڈی Adafruit_Python_DHT سودو مناسب حاصل تعمیر ضروری ازگر دیو انسٹال سودو ازگر setup.py انسٹال
ایک بار جب یہ ہوجائے تو آپ ہمارے رسبری پِی پر دونوں لائبریریوں کو کامیابی کے ساتھ انسٹال کردیں گے۔ اب ہم ہارڈویئر کنکشن کے ساتھ آگے بڑھ سکتے ہیں۔
سرکٹ ڈایاگرام:
راسبیری پائی کے ساتھ مکمل سرکٹ ڈایاگرام انٹرفیسنگ DH11 ذیل میں دیا گیا ہے ، یہ فریٹنگز کا استعمال کرتے ہوئے بنایا گیا تھا۔ کنکشن پر عمل کریں اور سرکٹ بنائیں
دونوں LCD اور DHT11 سینسر + 5V فراہمی کے ساتھ کام کرتے ہیں لہذا ہم راسبیری پائی پر 5V پنوں کو دونوں کو طاقت میں استعمال کرتے ہیں۔ DHT11 سینسر کے آؤٹ پٹ پن پر ویلیو 1K کا ایک پل اپ ریزٹر استعمال ہوتا ہے ، اگر آپ ماڈیول استعمال کررہے ہیں تو آپ اس ریزسٹر سے بچ سکتے ہیں۔
ایل سی ڈی کے برعکس سطح پر قابو پانے کے لئے ایل سی ڈی کے وی پن میں 10 ک کا ایک ٹرمر برتن شامل کیا جاتا ہے۔ اس کے علاوہ تمام رابطے بالکل سیدھے آگے ہیں۔ لیکن ایک نوٹ بنائیں کہ آپ کون سے GPIO پنوں کو پنوں کو مربوط کرنے کے لئے استعمال کررہے ہیں چونکہ ہمیں ہمارے پروگرام میں ضرورت ہوگی۔ نیچے دیئے گئے چارٹ میں آپ کو GPIO پن نمبر معلوم کرنے کی اجازت دینی چاہئے۔
چارٹ کا استعمال کریں اور سرکٹ آریگرام کے مطابق اپنے رابطے بنائیں۔ میں نے اپنے روابط بنانے کے لئے بریڈ بورڈ اور جمپر تاروں کا استعمال کیا۔ چونکہ میں نے ڈی ایچ ٹی 11 ماڈیول کا استعمال کیا ہے میں نے اسے براہ راست راسبیری پائی پر لگا دیا۔ میرا ہارڈویئر نیچے کی طرح دکھائی دے رہا تھا
ڈی ایچ ٹی 11 سینسر کے لئے ازگر پروگرامنگ:
ہمیں ڈی ایچ ٹی 11 سینسر سے درجہ حرارت اور نمی کی قدر پڑھنے کے ل a ایک پروگرام لکھنا ہے اور پھر LCD پر اسی کو ظاہر کرنا ہے۔ چونکہ ہم نے LCD اور DHT11 سینسر دونوں کے لئے لائبریریوں کو ڈاؤن لوڈ کیا ہے ، اس لئے کوڈ بہت سیدھا ہونا چاہئے۔ ازگر مکمل پروگرام اس صفحے کے آخر میں دیکھا جا سکتا ہے، لیکن آپ اس پروگرام کیسے کام کرتا ہے کو سمجھنے کے لئے میں مزید پڑھ سکتے ہیں.
ہمیں LCD لائبریری اور DHT11 لائبریری کو اس سے متعلق افعال کو استعمال کرنے کے ل import اپنے پروگرام میں درآمد کرنا ہے۔ چونکہ ہم ان کو پہلے ہی ڈاؤن لوڈ اور انسٹال کر چکے ہیں ہم ان کو درآمد کرنے کے لئے درج ذیل لائنوں کا استعمال کرسکتے ہیں۔ ہم تاخیر کی تقریب کو استعمال کرنے کے لئے ٹائم لائبریری بھی درآمد کرتے ہیں۔
تاخیر کرنے کے لئے درآمد کا وقت # درآمد وقت LCD # درآمد LCD لائبریری کے طور پر درآمد Adafruit_CharLCD سینسر کے لئے درآمد Adafruit_DHT # درآمد DHT لائبریری
اگلا ، ہمیں یہ بتانا ہوگا کہ سینسر کس پن سے منسلک ہے اور درجہ حرارت سینسر کس قسم کا ہے۔ متغیر سینسر کا نام ایڈافٹ_ڈی ایچ ٹی ڈبلیو ایچ ٹی 11 کو تفویض کیا گیا ہے کیونکہ ہم یہاں ڈی ایچ ٹی 11 سینسر استعمال کررہے ہیں۔ سینسر کا آؤٹ پٹ راسبیری پائی کے جی پی آئی او 17 سے منسلک ہے لہذا ہم 17 کو سینسر_پین متغیر کو تفویض کرتے ہیں جیسا کہ ذیل میں دکھایا گیا ہے۔
سینسر_ نام = اڈافٹ_ڈی ایچ ٹی۔ ڈی ایچ ٹی 11 # ہم DHT11 سینسر سینسر_پن = 17 استعمال کررہے ہیں # سینسر پائی پر GPIO17 سے منسلک ہے
اسی طرح ، ہمیں یہ بھی بتانا ہے کہ ایل سی ڈی کس GPIO پن سے منسلک ہے ۔ یہاں ہم LCD کو 4 بٹ موڈ میں استعمال کر رہے ہیں لہذا ہمارے پاس pI کے GPIO پنوں سے رابطہ قائم کرنے کے لئے چار ڈیٹا پن اور دو کنٹرول پن ہوں گے۔ نیز ، اگر آپ بیک لائٹ کو بھی کنٹرول کرنا چاہتے ہیں تو آپ بیک لائٹ پن کو کسی جی پی آئ او پن سے مربوط کرسکتے ہیں۔ لیکن ابھی میں اس کا استعمال نہیں کر رہا ہوں لہذا میں نے اسے 0 تفویض کیا ہے۔
lcd_rs = 7 #RS LCD GPIO 7 سے PI پر جڑا ہوا ہے lcd_en = 8 # LCD GPIO 8 سے PI lcd_d4 = 25 # D4 LId میں GPIO 25 سے منسلک ہے lcd_d5 = 24 # D5 LCD ہے پی سی lcd_d6 = 23 # D6 پر LCD کا GPIO 23 سے منسلک ہے LIdddd = = # LCD کا DI GPIO 18 سے PI lcd_backlight = 0 #LED منسلک نہیں ہے لہذا ہم 0 کو تفویض کرتے ہیں۔
آپ LCD کو 8 بٹ موڈ میں راسبیری پائی سے بھی جوڑ سکتے ہیں لیکن پھر مفت پنوں کو کم کردیا جائے گا۔
ہم نے ڈاؤن لوڈ کردہ اڈفروٹ کی LCD لائبریری کو ہر قسم کی خصوصیت کے LCD ڈسپلے کے لئے استعمال کیا جاسکتا ہے۔ ہمارے پروجیکٹ میں ہم 16 * 2 LCD ڈسپلے استعمال کررہے ہیں لہذا ہم قطار اور قطار کے کالم کی تعداد کو متغیر کے لئے ذکر کررہے ہیں جیسا کہ ذیل میں دکھایا گیا ہے۔
lcd_collines = 16 # for 16 * 2 LCD lcd_rows = 2 # 16 * 2 LCD کے لئے
اب ، جب ہم LCD پنوں اور ایل سی ڈی کے لئے قطار اور کالموں کی تعداد کا اعلان کر چکے ہیں تو ہم مندرجہ ذیل لائن کا استعمال کرکے LCD ڈسپلے کو ابتدا کرسکتے ہیں جو لائبریری کو تمام مطلوبہ معلومات بھیجتا ہے۔
ایل سی ڈی = ایل سی ڈی۔ اڈفریٹ_چار ایل سی ڈی (lcd_rs، lcd_en، lcd_d4، lcd_d5، lcd_d6، lcd_d7، lcd_collines، lcd_rows، lcd_backlight) # تمام پن کی تفصیلات لائبریری میں بھیجیں
پروگرام شروع کرنے کے لئے ، ہم lcd.message () فنکشن کا استعمال کرتے ہوئے ایک چھوٹا انٹرو میسج ڈسپلے کرتے ہیں اور پھر میسج کو پڑھنے کے قابل بنانے کیلئے 2 سیکنڈ کی تاخیر کرتے ہیں۔ 2 ینڈی لائن پر پرنٹنگ کے لئے کمانڈ \ n ذیل میں دکھایا جاسکتا ہے
lcd .message ('DHT11 with Pi \ n-CircuitDigest') # ایک انٹرو میسج ٹائم دیں۔ نیند (2) # سیکنڈ میں 2 سیکنڈ
آخر میں، ہمارے اندر جبکہ لوپ ہم درجہ حرارت اور نمی کی قدر پڑھنا چاہیے سینسر سے اور ہر 2 سیکنڈ کے لئے LCD کی سکرین پر ظاہر. جبکہ لوپ کے اندر مکمل پروگرام نیچے دکھایا گیا ہے
جبکہ 1: # غیر معینہ لوپ
نمی ، درجہ حرارت = Adaf فرو_DHT.read_retry (سینسر_ نام ، سینسر_پن) # سینسر سے پڑھیں اور درجہ حرارت اور نمی میں مختلف اقسام میں متعلقہ اقدار کو بچائیں
lcd.clear () # LCD اسکرین کو صاف کریں lcd.message ('Temp =٪.1f C'٪ درجہ حرارت) # درجہ حرارت کی قیمت دکھائیں lcd.message ('H nHum =٪.1f٪٪'٪ نمی) # ڈسپلے کریں نمی کے وقت کی قدر۔ نیند (2) # 2 سیکنڈ کا انتظار کریں پھر اقدار کو اپ ڈیٹ کریں
ہم ذیل میں اس واحد لائن کا استعمال کرتے ہوئے سینسر سے درجہ حرارت اور نمی کی قدر آسانی سے حاصل کرسکتے ہیں۔ جیسا کہ آپ دیکھ سکتے ہیں کہ اس سے دو قدریں واپس آئیں گی جو متغیر نمی اور درجہ حرارت میں محفوظ ہیں ۔ sensor_name اور sensor_pin تفصیلات کے پیرامیٹرز کے طور پر منظور کر رہے ہیں؛ پروگرام کے آغاز میں ان اقدار کو اپ ڈیٹ کیا گیا تھا
نمی ، درجہ حرارت = اڈاف فروٹ_ڈی ایچ ٹی۔ریڈ_ریٹری (سینسر_ نام ، سینسر_پن)
یلسیڈی سکرین پر ایک متغیر کا نام ظاہر کرنے سے ہم ہم استعمال دشملو نقطہ کے بعد صرف ایک عددی کے ساتھ ایک چل نقاط تعداد کی نمائش کر رہے ہیں کے بعد سے ہم د،٪ C وغیرہ یہاں کی طرح & شناخت کار استعمال کر سکتے ہیں کا شناخت٪.1f ہے کے لئے میں قدر کی نمائش متغیر درجہ حرارت اور نمی
lcd .message ('Temp =٪.1f C'٪ درجہ حرارت) lcd .message ('\ n ہم =٪.1f ٪٪'٪ نمی)
راسبیری پائی کا استعمال کرتے ہوئے نمی اور درجہ حرارت کی پیمائش:
سرکٹ ڈایاگرام کے مطابق کنکشن بنائیں اور مطلوبہ لائبریری انسٹال کریں۔ اس کے بعد اس صفحے کے آخر میں دیا گیا ازگر کا پروگرام شروع کریں۔ آپ کے LCD کو انٹرو میسج ڈسپلے کرنا چاہئے اور پھر موجودہ درجہ حرارت اور نمی کی قیمت کو ڈسپلے کرنا چاہئے جیسا کہ نیچے کی تصویر میں دکھایا گیا ہے۔
اگر آپ کو ایل سی ڈی ظاہر کرنے میں کچھ بھی نہیں ملتا ہے ، تو چیک کریں کہ اگر ازگر کی شیل ونڈو میں کوئی ایررو دکھا رہی ہے ، اگر کوئی غلطی ظاہر نہیں ہوئی ہے تو پھر اپنے کنیکشنز کو ایک بار پھر چیک کریں اور پوٹینومیٹر کو ایڈجسٹ کریں کہ ایل سی ڈی کے کنٹراسٹ لیول کو مختلف کریں اور چیک کریں کہ آیا آپ کو کچھ حاصل ہے۔ سکرین.
امید ہے کہ آپ کو پروجیکٹ سمجھ گیا ہے اور اس کی تعمیر سے لطف اندوز ہوئے ، اگر آپ کو یہ کام کرنے میں کوئی پریشانی کا سامنا کرنا پڑا تو اس کو کمنٹ سیکشن پر رپورٹ کریں یا فورم کو تکنیکی مدد کے لئے استعمال کریں۔ میں اپنی پوری کوشش کروں گا کہ تمام تبصروں کا جواب دوں۔
آپ دوسرے مائکروکانٹرولر کے ساتھ DHT11 کا استعمال کرتے ہوئے ہمارے دوسرے پروجیکٹس کو بھی دیکھ سکتے ہیں۔