11 KiB
तापमान मापें - रास्पबेरी पाई
इस पाठ के इस भाग में, आप अपने रास्पबेरी पाई में एक तापमान सेंसर जोड़ेंगे।
हार्डवेयर
आप जो सेंसर उपयोग करेंगे वह DHT11 ह्यूमिडिटी और तापमान सेंसर है, जो एक पैकेज में दो सेंसर को जोड़ता है। यह काफी लोकप्रिय है, और कई व्यावसायिक रूप से उपलब्ध सेंसर तापमान, आर्द्रता और कभी-कभी वायुमंडलीय दबाव को जोड़ते हैं। तापमान सेंसर घटक एक नेगेटिव टेम्परेचर कोएफिशिएंट (NTC) थर्मिस्टर है, एक थर्मिस्टर जिसमें तापमान बढ़ने पर प्रतिरोध कम हो जाता है।
यह एक डिजिटल सेंसर है, इसलिए इसमें ऑनबोर्ड ADC होता है जो एक डिजिटल सिग्नल बनाता है जिसमें तापमान और आर्द्रता डेटा होता है जिसे माइक्रोकंट्रोलर पढ़ सकता है।
तापमान सेंसर को कनेक्ट करें
Grove तापमान सेंसर को रास्पबेरी पाई से जोड़ा जा सकता है।
कार्य
तापमान सेंसर को कनेक्ट करें
-
Grove केबल के एक सिरे को ह्यूमिडिटी और तापमान सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।
-
रास्पबेरी पाई को बंद करके, Grove केबल के दूसरे सिरे को Grove बेस हैट पर D5 नामक डिजिटल सॉकेट में कनेक्ट करें, जो पाई से जुड़ा है। यह सॉकेट GPIO पिन के पास वाले सॉकेट की पंक्ति में बाईं ओर से दूसरा है।
तापमान सेंसर को प्रोग्राम करें
अब डिवाइस को जोड़े गए तापमान सेंसर का उपयोग करने के लिए प्रोग्राम किया जा सकता है।
कार्य
डिवाइस को प्रोग्राम करें।
-
पाई को चालू करें और इसे बूट होने दें।
-
VS Code लॉन्च करें, या तो सीधे पाई पर, या Remote 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
स्टेटमेंटseeed_dht
मॉड्यूल से Grove तापमान सेंसर के साथ इंटरैक्ट करने के लिएDHT
सेंसर क्लास को इम्पोर्ट करता है। -
ऊपर दिए गए कोड के बाद निम्नलिखित कोड जोड़ें ताकि तापमान सेंसर को मैनेज करने वाले क्लास का एक इंस्टेंस बनाया जा सके:
sensor = DHT("11", 5)
यह
DHT
क्लास का एक इंस्टेंस घोषित करता है जो Digital Humidity और Temperature सेंसर को मैनेज करता है। पहला पैरामीटर कोड को बताता है कि उपयोग किया जा रहा सेंसर DHT11 सेंसर है - आप जिस लाइब्रेरी का उपयोग कर रहे हैं वह इस सेंसर के अन्य वेरिएंट को भी सपोर्ट करती है। दूसरा पैरामीटर कोड को बताता है कि सेंसर Grove बेस हैट पर डिजिटल पोर्ट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 का उपयोग करके अनुवादित किया गया है। जबकि हम सटीकता सुनिश्चित करने का प्रयास करते हैं, कृपया ध्यान दें कि स्वचालित अनुवाद में त्रुटियां या अशुद्धियां हो सकती हैं। मूल भाषा में उपलब्ध मूल दस्तावेज़ को प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।