विषयसूची:

रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी: 6 कदम (चित्रों के साथ)
रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी: 6 कदम (चित्रों के साथ)

वीडियो: रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी: 6 कदम (चित्रों के साथ)

वीडियो: रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी: 6 कदम (चित्रों के साथ)
वीडियो: Temperature monitoring using Raspberry Pi | Raspberry Pi for Beginners in Hindi #10 2024, जुलाई
Anonim
रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी
रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी
रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी
रास्पबेरी पाई का उपयोग करके तापमान और आर्द्रता की निगरानी

गर्मियां आ रही हैं, और बिना एयर कंडीशनर वाले लोगों को घर के अंदर के वातावरण को मैन्युअल रूप से नियंत्रित करने के लिए तैयार रहना चाहिए। इस पोस्ट में, मैं मानव आराम के लिए सबसे महत्वपूर्ण मापदंडों को मापने के आधुनिक तरीके का वर्णन कर रहा हूं: तापमान और आर्द्रता। यह एकत्रित डेटा क्लाउड को भेजा जाता है और वहां संसाधित किया जाता है।

मैं रास्पबेरी पाई 1 बोर्ड और DHT22 सेंसर का उपयोग कर रहा हूं। आप इंटरनेट, GPIO और Python वाले किसी भी कंप्यूटर पर ऐसा कर सकते हैं। सस्ता DHT11 सेंसर भी ठीक काम करता है।

चरण 1: हार्डवेयर तैयार करना

हार्डवेयर तैयार करना
हार्डवेयर तैयार करना
हार्डवेयर तैयार करना
हार्डवेयर तैयार करना

आइए शुरू से ही शुरू करते हैं, क्योंकि मैंने काफी लंबे समय तक अपने रास्पबेरी पाई का उपयोग नहीं किया था।

हमें आवश्यकता होगी:

  • रास्पबेरी पाई बोर्ड (या अन्य IoT- उन्मुख मंच)।
  • एसडी या माइक्रोएसडी कार्ड (प्लेटफॉर्म पर निर्भर करता है)।
  • माइक्रो-यूएसबी के माध्यम से 5वी/1ए।
  • लैन केबल, जो इंटरनेट कनेक्शन प्रदान करती है।
  • एचडीएमआई डिस्प्ले, आरसीए डिस्प्ले या यूएआरटी पोर्ट (एसएसएच को सक्षम करने के लिए)।

पहला कदम रास्पियन डाउनलोड कर रहा है। मैंने लाइट संस्करण चुना है, क्योंकि मैं डिस्प्ले के बजाय एसएसएच का उपयोग करने जा रहा हूं। पिछली बार जब मैंने इसे किया था तब से चीजें बदल गई हैं: अब एचर नामक एक महान बर्निंग सॉफ़्टवेयर है, जो पूरी तरह से काम करता है, और इसमें एक शानदार डिज़ाइन है.

इमेज बर्निंग पूरी होने के बाद, मैंने अपने पाई में एसडी कार्ड डाला, लैन और पावर केबल्स को प्लग इन किया और थोड़ी देर बाद, मेरे राउटर ने नया डिवाइस पंजीकृत किया।

चरण 2: SSH. को सक्षम करना

SSH. को सक्षम करना
SSH. को सक्षम करना
SSH. को सक्षम करना
SSH. को सक्षम करना
SSH. को सक्षम करना
SSH. को सक्षम करना

SSH डिफ़ॉल्ट रूप से अक्षम है। मैं या तो यूएआरटी-यूएसबी कनवर्टर का उपयोग कर सकता हूं या खोल तक पहुंचने और एसएसएच को सक्षम करने के लिए सिर्फ एक डिस्प्ले कनेक्ट कर सकता हूं।

रिबूट करने के बाद, मैं अंत में अंदर हूं। सबसे पहले चीज़ें, आइए अपडेट करें:

sudo उपयुक्त अद्यतन && sudo उपयुक्त उन्नयन -y

अब इस ताज़ा डिवाइस को क्लाउड से कनेक्ट करते हैं।

चरण 3: Cloud4RPi स्थापित करना

Cloud4RPi स्थापित करना
Cloud4RPi स्थापित करना

मैंने Cloud4RPi नामक क्लाउड प्लेटफ़ॉर्म को आज़माने का फैसला किया, जिसे IoT के लिए डिज़ाइन किया गया है।

डॉक्स के अनुसार, इसे चलाने के लिए हमें निम्नलिखित पैकेजों की आवश्यकता है:

sudo apt स्थापित git अजगर अजगर-पाइप -y

क्लाइंट लाइब्रेरी को एक कमांड में स्थापित किया जा सकता है:

sudo pip स्थापित करें cloud4rpi

अब हमें यह सुनिश्चित करने के लिए कुछ नमूना कोड चाहिए कि यह काम करे।

गिट क्लोन https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python git क्लोन https://gist.github.com/f8327a1ef09ceb1ef142fa68701270de.git e && mv e/minimal.py न्यूनतम && rmdir -re

मैंने न्यूनतम.पीई चलाने का फैसला किया, लेकिन मुझे नकली डेटा पसंद नहीं है। सौभाग्य से, मैंने इस उदाहरण में नैदानिक डेटा को वास्तविक बनाने का एक आसान तरीका देखा है। आयात अनुभाग में एक और आयात जोड़ें:

आरपीआई आयात से *

फिर नकली डेटा प्रदान करने वाले इन कार्यों को हटा दें (rpi.py उन्हें अब परिभाषित करता है):

डीईएफ़ सीपीयू_टेम्प ():

वापसी 70 डीईएफ़ ip_address (): वापसी '8.8.8.8' def host_name (): वापसी 'होस्टनाम' def os_name (): वापसी 'osx'

अब हमें एक टोकन की आवश्यकता है, जो Cloud4RPi को उपकरणों को खातों से जोड़ने की अनुमति देता है। एक प्राप्त करने के लिए, Cloud4rpi.io पर एक खाता बनाएं और इस पृष्ठ पर नया डिवाइस बटन दबाएं। अपने डिवाइस के टोकन के साथ _YOUR_DEVICE_TOKEN_ स्ट्रिंग को न्यूनतम.py फ़ाइल में बदलें और फ़ाइल को सहेजें। अब हम पहले लॉन्च के लिए तैयार हैं।

अजगर न्यूनतम.py

डिवाइस पेज खोलें और जांचें कि डेटा वहां है।

अब वास्तविक दुनिया के आंकड़ों पर चलते हैं।

चरण 4: सेंसर को जोड़ना

सेंसर कनेक्ट करना
सेंसर कनेक्ट करना

हमें आवश्यकता होगी:

  • DHT22 या DHT11 आर्द्रता सेंसर
  • पुल-अप रोकनेवाला (5-10 KΩ)
  • तारों

DHT22 सेंसर तापमान और आर्द्रता को एक साथ मापता है। संचार प्रोटोकॉल मानकीकृत नहीं है, इसलिए हमें इसे रास्पि-कॉन्फ़िगरेशन में सक्षम करने की आवश्यकता नहीं है - एक साधारण जीपीआईओ पिन पर्याप्त से अधिक है।

डेटा प्राप्त करने के लिए, मैं DHT सेंसरों के लिए Adafruit की महान लाइब्रेरी का उपयोग करूंगा, लेकिन हो सकता है कि यह काम न करे। मुझे एक बार कोड में एक अजीब निरंतर देरी मिली, जो मेरे हार्डवेयर के लिए काम नहीं करती थी, और दो साल बाद भी मेरा पुल अनुरोध अभी भी लंबित है। मैंने बोर्ड डिटेक्शन स्थिरांक भी बदल दिए हैं क्योंकि BCM2835 के साथ मेरे रास्पबेरी पाई 1 को आश्चर्यजनक रूप से रास्पबेरी पाई 3 के रूप में पाया गया था। काश यह सच होता … इस प्रकार, मैं अपने कांटे का उपयोग करने की सलाह देता हूं। यदि आपको इसके साथ कोई समस्या आती है, तो कृपया मूल भंडार का प्रयास करें, शायद यह किसी के लिए काम करता है, लेकिन मैं उनमें से एक नहीं हूं।

गिट क्लोन https://github.com/Himura2la/Adafruit_Python_DHT…। एडफ्रूट_पायथन_डीएचटी

जैसा कि पुस्तकालय सी में लिखा गया है, इसे संकलन की आवश्यकता है, इसलिए आपको बिल्ड-एसेंशियल और पायथन-देव पैकेज की आवश्यकता है।

sudo apt install बिल्ड-एसेंशियल python-dev -ysudo python setup.py install

जब संकुल संस्थापित हो रहा हो, चित्र में दिखाए अनुसार DHT22 को कनेक्ट करें।

और इसका परीक्षण करें:

cd ~python -c "Adafruit_DHT को d के रूप में आयात करें; प्रिंट d.read_retry(d. DHT22, 4)"

यदि आप (39.20000076293945, 22.600000381469727) जैसा कुछ देखते हैं, तो आपको पता होना चाहिए कि यह प्रतिशत में आर्द्रता और सेल्सियस में तापमान है।

अब, चलो सब कुछ एक साथ इकट्ठा करो!

चरण 5: सेंसर रीडिंग को क्लाउड पर भेजना

क्लाउड पर सेंसर रीडिंग भेजना
क्लाउड पर सेंसर रीडिंग भेजना

मैं एक आधार के रूप में न्यूनतम.py का उपयोग करूंगा और इसमें DHT22 इंटरैक्शन जोड़ूंगा।

सीडी क्लाउड4आरपीआई-रास्पबेरीपी-पायथन

सीपी न्यूनतम.py ~/cloud_dht22.py सीपी rpi.py ~/rpi.py सीडी vi cloud_dht22.py

चूंकि DHT22 एक ही कॉल में तापमान और आर्द्रता दोनों देता है, मैं उन्हें विश्व स्तर पर संग्रहीत करता हूं और अनुरोध में केवल एक बार अपडेट करता हूं, यह मानते हुए कि उनके बीच की देरी 10 सेकंड से अधिक है। निम्नलिखित कोड पर विचार करें, जो DHT22 डेटा प्राप्त करता है:

आयात एडफ्रूट_डीएचटी

अस्थायी, हम = कोई नहीं, कोई नहीं last_update = time.time() - 20 def update_data(): वैश्विक last_update, hum, temp अगर time.time() - last_update> 10: hum, temp = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) last_update = time.time() def get_t(): update_data() रिटर्न राउंड (अस्थायी, 2) अगर अस्थायी कोई नहीं है तो कोई नहीं def get_h(): update_data() रिटर्न राउंड (hum, 2) अगर hum नहीं है कोई और कोई नहीं

मौजूदा आयात के बाद इस कोड को डालें और चर अनुभाग को संपादित करें ताकि यह नए कार्यों का उपयोग करे:

चर = {

'DHT22 Temp': { 'टाइप': 'न्यूमेरिक', 'बाइंड': get_t}, 'DHT22 ह्यूमिडिटी': { 'टाइप': 'न्यूमेरिक', 'बाइंड': get_h}, 'CPU Temp': { 'टाइप करें। ': 'संख्यात्मक', 'बाइंड': cpu_temp } }

डेटा ट्रांसफर शुरू करने के लिए लाल बटन दबाएं:

अजगर Cloud_dht22.py

फिर आप डिवाइस पेज की जांच कर सकते हैं।

आप इसे वैसे ही छोड़ सकते हैं, लेकिन मैं हर चीज के लिए एक सेवा रखना पसंद करता हूं। यह सुनिश्चित करता है कि स्क्रिप्ट हमेशा चल रही है। पूरी तरह से स्वचालित स्क्रिप्ट के साथ एक सेवा बनाना:

wget -O https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python/blob/master/service_install.sh | सुडो बैश -s Cloud_dht22.py

सेवा शुरू करना:

सुडो सर्विस क्लाउड4आरपीआई स्टार्ट

और इसकी जाँच कर रहा है:

pi@raspberrypi:~ $ sudo service cloud4rpi status -l

● Cloud4rpi.service - Cloud4RPi डेमॉन लोडेड: लोडेड (/lib/systemd/system/cloud4rpi.service; सक्षम) सक्रिय: बुध 2017-05-17 20:22:48 UTC से सक्रिय (चल रहा है); 1 मिनट पहले मुख्य पीआईडी: 560 (पायथन) सीग्रुप: /system.slice/cloud4rpi.service └─560 /usr/bin/python /home/pi/cloud_dht22.py17 मई 20:22:51 raspberrypi python[560]: प्रकाशन iot -हब/संदेश: {'प्रकार': 'कॉन्फ़िगरेशन', 'टीएस': '2017-05-17T20…y'}]}17 मई 20:22:53 रास्पबेरी पाई पायथन[560]: iot-hub/messages का प्रकाशन: {'टाइप': 'डेटा', 'ts': '2017-05-17T20:2…40'}}17 मई 20:22:53 रास्पबेरी पाई पायथन[560]: iot-hub/messages का प्रकाशन: {'टाइप': 'सिस्टम', 'ts': '2017-05-17T20….4'}}

अगर सब कुछ उम्मीद के मुताबिक काम करता है, तो हम डेटा के साथ हेरफेर करने के लिए Cloud4RPi प्लेटफॉर्म की क्षमताओं का उपयोग कर सकते हैं।

चरण 6: चार्ट और अलार्म

चार्ट और अलार्म
चार्ट और अलार्म
चार्ट और अलार्म
चार्ट और अलार्म
चार्ट और अलार्म
चार्ट और अलार्म

सबसे पहले, आइए वेरिएबल्स को यह देखने के लिए प्लॉट करें कि वे कैसे बदलते हैं। यह एक नया कंट्रोल पैनल जोड़कर और उसमें आवश्यक चार्ट डालकर किया जा सकता है।

एक और चीज जो हम यहां कर सकते हैं वह है अलर्ट सेट करना। यह सुविधा आपको एक चर के लिए सुरक्षित श्रेणी को कॉन्फ़िगर करने में सक्षम बनाती है। जैसे ही सीमा समाप्त हो जाती है, यह एक ईमेल सूचना भेजता है। नियंत्रण कक्ष संपादन पृष्ठ पर, आप अलर्ट पर स्विच कर सकते हैं और एक सेट अप कर सकते हैं।

उसके ठीक बाद, मेरे कमरे में नमी बिना किसी ध्यान देने योग्य कारण के तेजी से कम होने लगी, और जल्द ही अलार्म बजने लगा।

आप किसी भी हार्डवेयर के साथ Cloud4RPi का मुफ्त में उपयोग कर सकते हैं जो Python को निष्पादित करने में सक्षम है। मेरे लिए, अब मुझे हमेशा पता है कि एयर ह्यूमिडिफायर को कब चालू करना है, और मैं इसे Cloud4RPi के माध्यम से रिमोट कंट्रोल के लिए रिले से भी जोड़ सकता हूं। मैं गर्मी के लिए तैयार हूँ! आपका स्वागत है गर्मी!

सिफारिश की: