विषयसूची:

Arduino से रास्पबेरी पाई तक तापमान और आर्द्रता: 6 कदम
Arduino से रास्पबेरी पाई तक तापमान और आर्द्रता: 6 कदम

वीडियो: Arduino से रास्पबेरी पाई तक तापमान और आर्द्रता: 6 कदम

वीडियो: Arduino से रास्पबेरी पाई तक तापमान और आर्द्रता: 6 कदम
वीडियो: how to make Wireless Temperature and Humidity Monitoring System using Bluetooth | mit app inventor 2024, नवंबर
Anonim
Arduino से रास्पबेरी पाई तक तापमान और आर्द्रता
Arduino से रास्पबेरी पाई तक तापमान और आर्द्रता

यदि आपके पास ग्रीनहाउस है, या अपने ग्रीनहाउस को मिनी स्मार्ट-फार्म में अपग्रेड करने की भविष्य की योजना है, तो तापमान और आर्द्रता पर नज़र रखना महत्वपूर्ण है।

अपने पहले निर्देश के लिए मैं एक प्रोटोटाइप बनाने का तरीका दिखाऊंगा:

  • DHT11 तापमान और आर्द्रता सेंसर को Arduino Mega 2560. से कनेक्ट करें
  • सेंसर डेटा को पढ़ने के लिए Arduino को C में प्रोग्राम करें
  • Arduino से जुड़े LCD पर तापमान और आर्द्रता डेटा प्रदर्शित करें
  • Arduino को रास्पबेरी पाई 3 मॉडल B+. को सेंसर डेटा भेजने का निर्देश दें
  • सेंसर डेटा प्रदर्शित करने के लिए पायथन में कोड लिखें

आरपीआई और अरुडिनो का एक साथ उपयोग क्यों करें?

Arduino और RPi कनेक्शन महान क्षमताओं के लिए अनुमति दे सकते हैं यदि आपको I/O की आवश्यकता होती है, जिस पर Arduino उत्कृष्ट होता है और नेटवर्क संचार/मल्टीथ्रेडिंग/विज़ुअल जो RPi बहुत बेहतर होता है।

दूसरे शब्दों में, हम गहन कार्यों को नियंत्रित करने के लिए Arduino का उपयोग करने जा रहे हैं और RPi का उपयोग गहन कार्यों की गणना के लिए करेंगे।

Arduinos के बीहड़ संस्करण बीहड़-सर्किट पर उपलब्ध हैं

चरण 1: Arduino और RPi हार्डवेयर प्राप्त करना

Arduino स्टार्टर किट आसानी से उपलब्ध हैं और आपको विभिन्न प्रकार के सेंसर और गैजेट्स के साथ प्रयोग करने की अनुमति देते हैं। अलग-अलग हिस्सों को अलग-अलग ऑर्डर करने के बजाय स्टार्टर किट खरीदना सस्ता पड़ता है। मैंने नीचे कुछ सहबद्ध लिंक प्रदान किए हैं जो बैंगगूड और अमेज़ॅन यूएस की ओर इशारा करते हैं।

Arduino स्टार्टर किट (बैंगगूड)

Arduino स्टार्टर किट (अमेज़ॅन यूएस)

एलिमेंट 14 आरपीआई 3 बी+ मदरबोर्ड (अमेज़न यूएस)

रास्पबेरी पाई 3 बी + केस (अमेज़ॅन यूएस)

32GB माइक्रो एसडी कार्ड (अमेज़न यूएस)।

चरण 2: DHT11 और LCD को Arduino से कनेक्ट करें

DHT11 और LCD को Arduino से कनेक्ट करें
DHT11 और LCD को Arduino से कनेक्ट करें

चरण 3: Arduino को प्रोग्राम करें

#arduino-dht11-lcd2004

#लेखक: वासु वीरपेन

#https://www.instructables.com/member/VasooV/ # Arduino से जुड़े DHT11 से डेटा पढ़ता है, LCD2004 पर प्रदर्शित होता है और रास्पबेरी पाई को सीरियल पर डेटा भेजता है

#शामिल

#शामिल

// एलसीडी डिस्प्ले को I2C बस में डिवाइस नंबर 0x27 के रूप में परिभाषित किया गया है

लिक्विड क्रिस्टल_आई2सी एलसीडी (0x27, 20, 4);

// DHT11 पिन 8 से जुड़ा है

डीएचटी डीएचटी; #डिफाइन सेंसरपिन 8

// रास्पबेरी पाई सीरियल 0. से जुड़ा है

#डिफाइन सीरियलपी सीरियल

व्यर्थ व्यवस्था() {

LCD.begin(20, 4); // एलसीडी स्क्रीन के लिए इंटरफेस को इनिशियलाइज़ करता है, और डिस्प्ले के आयाम (चौड़ाई और ऊंचाई) को निर्दिष्ट करता है LCD.init (); एलसीडी प्रकाश(); सीरियलपी.बेगिन (९६००); // Arduino से सीरियल मॉनिटर }

शून्य लूप () {

// सेंसर डेटा पढ़ें

इंट सेंसरडेटा = DHT.read11 (सेंसरपिन); फ्लोट तापमान = DHT.तापमान; फ्लोट आर्द्रता = DHT.आर्द्रता;

// प्रिंट तापमान

LCD.setCursor(0, 0); LCD.print ("तापमान"); एलसीडी.प्रिंट (तापमान); एलसीडी.प्रिंट ("सी");

// प्रिंट आर्द्रता

LCD.setCursor(0, 1); LCD.print ("आर्द्रता"); एलसीडी.प्रिंट (आर्द्रता); एलसीडी.प्रिंट ("%");

// रास्पबेरी पाई को तापमान और आर्द्रता डेटा भेजें

सीरियलपी.प्रिंट ("");

// 10 सेकंड के लिए प्रतीक्षा करें

देरी (10000); }

चरण 4: वर्किंग Arduino, LCD और DHT11 सेटअप

वर्किंग Arduino, LCD और DHT11 सेटअप
वर्किंग Arduino, LCD और DHT11 सेटअप

चरण 5: रास्पबेरी पाई को Arduino से कनेक्ट करें

रास्पबेरी पाई को Arduino से कनेक्ट करें
रास्पबेरी पाई को Arduino से कनेक्ट करें

चरण 6: यूएसबी पोर्ट सीरियल डेटा पढ़ने के लिए आरपीआई पायथन कोड

#rpi-arduino-dht11

#रास्पबेरी पाई Arduino से तापमान और आर्द्रता सेंसर डेटा पढ़ता है

आयात धारावाहिक, स्ट्रिंग, समय

#इस उदाहरण में /dev/ttyUSB0 का प्रयोग किया जाता है

#यह आपके मामले में /dev/ttyUSB1, /dev/ttyUSB2, आदि ser = serial. Serial('/dev/ttyUSB0', 9600) में बदल सकता है।

# कोड का निम्नलिखित ब्लॉक इस तरह काम करता है:

#यदि सीरियल डेटा मौजूद है, तो लाइन पढ़ें, UTF8 डेटा को डिकोड करें, #…लाइन कैरेक्टर के पीछे वाले सिरे को हटा दें #… डेटा को तापमान और आर्द्रता में विभाजित करें #…शुरुआती और समाप्ति पॉइंटर्स को हटा दें () #…आउटपुट को प्रिंट करते समय सच: अगर ser.in_waiting > 0: rawserial = ser.readline () पका हुआ सीरियल = rawserial.decode ('utf-8')। स्ट्रिप ('\ r / n') डेटास्प्लिट = cookserial.split (',') तापमान = डेटास्प्लिट [0]। स्ट्रिप ('') प्रिंट (तापमान) प्रिंट (आर्द्रता)

सिफारिश की: