8.1 KiB
راسپبیری پائی - درجہ حرارت کی پیمائش
اس سبق کے اس حصے میں، آپ اپنے راسپبیری پائی میں ایک درجہ حرارت سینسر شامل کریں گے۔
ہارڈویئر
جو سینسر آپ استعمال کریں گے وہ DHT11 نمی اور درجہ حرارت سینسر ہے، جو ایک پیکج میں دو سینسرز کو یکجا کرتا ہے۔ یہ کافی مشہور ہے، اور کئی تجارتی طور پر دستیاب سینسرز درجہ حرارت، نمی، اور کبھی کبھار فضائی دباؤ کو یکجا کرتے ہیں۔ درجہ حرارت سینسر کا جزو ایک منفی درجہ حرارت کوفیشینٹ (NTC) تھرمسٹر ہے، ایک تھرمسٹر جس کی مزاحمت درجہ حرارت بڑھنے پر کم ہوتی ہے۔
یہ ایک ڈیجیٹل سینسر ہے، اس لیے اس میں ایک آن بورڈ ADC موجود ہے جو ڈیجیٹل سگنل بناتا ہے جس میں درجہ حرارت اور نمی کے ڈیٹا شامل ہوتے ہیں، جو مائیکرو کنٹرولر پڑھ سکتا ہے۔
درجہ حرارت سینسر کو جوڑیں
گروو درجہ حرارت سینسر کو راسپبیری پائی سے جوڑا جا سکتا ہے۔
کام
درجہ حرارت سینسر کو جوڑیں
-
گروو کیبل کے ایک سرے کو نمی اور درجہ حرارت سینسر کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں جائے گا۔
-
راسپبیری پائی کو بند حالت میں رکھتے ہوئے، گروو کیبل کے دوسرے سرے کو گروو بیس ہیٹ پر ڈیجیٹل ساکٹ D5 میں جوڑیں جو پائی سے منسلک ہے۔ یہ ساکٹ GPIO پنز کے ساتھ والی قطار میں بائیں سے دوسرا ہے۔
درجہ حرارت سینسر کو پروگرام کریں
اب اس ڈیوائس کو منسلک درجہ حرارت سینسر استعمال کرنے کے لیے پروگرام کیا جا سکتا ہے۔
کام
ڈیوائس کو پروگرام کریں۔
-
پائی کو پاور دیں اور بوٹ ہونے کا انتظار کریں۔
-
VS Code لانچ کریں، یا تو براہ راست پائی پر، یا ریموٹ SSH ایکسٹینشن کے ذریعے کنیکٹ کریں۔
⚠️ اگر ضرورت ہو تو سبق 1 میں VS Code کو سیٹ اپ اور لانچ کرنے کی ہدایات دیکھ سکتے ہیں۔
-
ٹرمینل سے،
pi
یوزر کے ہوم ڈائریکٹری میں ایک نیا فولڈر بنائیں جس کا نامtemperature-sensor
ہو۔ اس فولڈر میں ایک فائل بنائیں جس کا نامapp.py
ہو:mkdir temperature-sensor cd temperature-sensor touch app.py
-
اس فولڈر کو VS Code میں کھولیں۔
-
درجہ حرارت اور نمی سینسر استعمال کرنے کے لیے، ایک اضافی Pip پیکج انسٹال کرنا ہوگا۔ VS Code کے ٹرمینل سے، پائی پر یہ Pip پیکج انسٹال کرنے کے لیے درج ذیل کمانڈ چلائیں:
pip3 install seeed-python-dht
-
app.py
فائل میں درج ذیل کوڈ شامل کریں تاکہ مطلوبہ لائبریریاں درآمد کی جا سکیں:import time from seeed_dht import DHT
from seeed_dht import DHT
بیانDHT
سینسر کلاس کوseeed_dht
ماڈیول سے گروو درجہ حرارت سینسر کے ساتھ تعامل کرنے کے لیے درآمد کرتا ہے۔ -
اوپر دیے گئے کوڈ کے بعد درج ذیل کوڈ شامل کریں تاکہ درجہ حرارت سینسر کو منظم کرنے والے کلاس کا ایک انسٹینس بنایا جا سکے:
sensor = DHT("11", 5)
یہ
DHT
کلاس کا ایک انسٹینس اعلان کرتا ہے جو Digital Humidity اور Temperature سینسر کو منظم کرتا ہے۔ پہلا پیرامیٹر کوڈ کو بتاتا ہے کہ استعمال ہونے والا سینسر DHT11 ہے - آپ جو لائبریری استعمال کر رہے ہیں وہ اس سینسر کے دیگر ورژنز کو بھی سپورٹ کرتی ہے۔ دوسرا پیرامیٹر کوڈ کو بتاتا ہے کہ سینسر گروو بیس ہیٹ پر ڈیجیٹل پورٹD5
سے جڑا ہوا ہے۔✅ یاد رکھیں، تمام ساکٹس کے منفرد پن نمبر ہوتے ہیں۔ پنز 0، 2، 4، اور 6 اینالاگ پنز ہیں، جبکہ پنز 5، 16، 18، 22، 24، اور 26 ڈیجیٹل پنز ہیں۔
-
اوپر دیے گئے کوڈ کے بعد ایک لامتناہی لوپ شامل کریں تاکہ درجہ حرارت سینسر کی ویلیو پول کی جا سکے اور کنسول پر پرنٹ کی جا سکے:
while True: _, temp = sensor.read() print(f'Temperature {temp}°C')
sensor.read()
کو کال کرنے سے نمی اور درجہ حرارت کا ایک جوڑا واپس آتا ہے۔ آپ کو صرف درجہ حرارت کی ویلیو کی ضرورت ہے، اس لیے نمی کو نظر انداز کیا جاتا ہے۔ پھر درجہ حرارت کی ویلیو کنسول پر پرنٹ کی جاتی ہے۔ -
لوپ کے آخر میں دس سیکنڈ کی ایک چھوٹی نیند شامل کریں کیونکہ درجہ حرارت کی سطح کو مسلسل چیک کرنے کی ضرورت نہیں ہے۔ نیند ڈیوائس کی پاور کنزمپشن کو کم کرتی ہے۔
time.sleep(10)
-
VS Code ٹرمینل سے، درج ذیل کمانڈ چلائیں تاکہ آپ کی Python ایپ چلائی جا سکے:
python3 app.py
آپ کو کنسول پر درجہ حرارت کی ویلیوز نظر آئیں گی۔ سینسر کو گرم کرنے کے لیے کچھ استعمال کریں، جیسے کہ اس پر اپنا انگوٹھا رکھنا یا پنکھا استعمال کرنا تاکہ ویلیوز میں تبدیلی دیکھ سکیں:
pi@raspberrypi:~/temperature-sensor $ python3 app.py Temperature 26°C Temperature 26°C Temperature 28°C Temperature 30°C Temperature 32°C
💁 آپ اس کوڈ کو code-temperature/pi فولڈر میں دیکھ سکتے ہیں۔
😀 آپ کا درجہ حرارت سینسر پروگرام کامیاب رہا!
ڈسکلیمر:
یہ دستاویز AI ترجمہ سروس Co-op Translator کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔