विषयसूची:
वीडियो: Arduino संचालित धूल कण निगरानी स्टेशन: 4 कदम (चित्रों के साथ)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
आप आसानी से एक DIY इंटरनेट ऑफ़ थिंग्स डिवाइस बना सकते हैं जो आपके घर में $50 से कम के लिए धूल प्रदूषण पर नज़र रखता है और जब धूल का स्तर बहुत अधिक हो जाता है तो आपको सूचित किया जाता है ताकि आप कमरे को हवा दे सकें, या आप इसे बाहर सेट कर सकते हैं और सूचित कर सकते हैं यदि यह है यदि आप अत्यधिक प्रदूषित क्षेत्र में रहते हैं तो बाहर जाना सुरक्षित है।
मैंने इसे एक स्कूल प्रोजेक्ट के रूप में बनाया था, इसलिए मेरे पास ऐसी सेवा खोजने के लिए पर्याप्त समय नहीं था जो MQTT संदेशों को ले लेगी और उन्हें आपको सूचनाएं या ईमेल भेज देगी।
यह भी ध्यान दें कि सेंसर को हर समय चालू रखने से पंखे का जीवनकाल कम हो जाएगा।
चरण 1: आवश्यक भागों
आपको किस चीज़ की ज़रूरत पड़ेगी
- Arduino Uno
- Arduino ईथरनेट शील्ड
- पार्टिकुलेट मैटर लेजर सेंसर (आमतौर पर eBay / aliexpress पर $ 10- $ 30 के लिए जाता है)
- DHT11 तापमान और आर्द्रता सेंसर (वैकल्पिक)
- ब्रेड बोर्ड
- जंपर केबल
चरण 2: भागों को इकट्ठा करें
सबसे पहले, आपको Arduino पर ईथरनेट शील्ड को प्लग करना होगा
पीएम सेंसर में कई तार होते हैं, लेकिन हमें जिनकी जरूरत होती है, वे हैं वीसीसी, जीएनडी, TX, आरएक्स।
ब्रेडबोर्ड पर क्रमशः VCC और GND को + और - से कनेक्ट करें।
Arduino में हार्डवेयर RX और TX पिन हैं, लेकिन हम क्रमशः पिन 2 और 3 पर RX और TX पिन के सॉफ़्टवेयर एमुलेशन का उपयोग करेंगे। सेंसर के RX को Arduino के TX और सेंसर के TX को Arduino के RX में प्लग करें।
यदि आप तापमान संवेदक का उपयोग करने जा रहे हैं, तो VCC और GND लाइनों को + और - ब्रेडबोर्ड पर और डेटा लाइन को पिन 7 पर प्लग करें।
चरण 3: कोड
आप या तो रास्पबेरी पाई पर एमक्यूटीटी ब्रोकर स्थापित कर सकते हैं या एक कंप्यूटर जो आपके पास हमेशा घर पर होता है, या क्लाउड एमक्यूटीटी सेवा का उपयोग कर सकते हैं, जैसे क्लाउड एमक्यूटीटी। फिर आप एक स्क्रिप्ट लिख सकते हैं जो डेटा को HTTP के रूप में IFTT वेबहुक पर भेजती है, क्योंकि वे अभी तक MQTT वेबहुक का समर्थन नहीं करते हैं और जब आपके घर में धूल का स्तर बहुत अधिक हो जाता है, तो इसके लिए सूचनाएं सेट करें।
अरुडिनो एयर स्टेशन
#शामिल |
#शामिल |
#शामिल |
#शामिल |
#शामिल |
#शामिल |
#शामिल |
#शामिल |
#defineDHT11_PIN7 |
#defineRX_PIN2 |
#defineTX_PIN3 |
आईपीएड्रेस आईपी(१६९, १६९, १००, ९८); |
बाइट मैक = { |
0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x02 |
}; |
कॉन्सचर *mqtt_server = "m23.cloudmqtt.com"; |
स्थिरांक mqtt_port = ११८९५; |
constchar *mqtt_user = "jhetjewk"; |
constchar *mqtt_pass = "QB2p9PiMV6pn"; |
constchar *mqtt_client_name = "arduinoClient1"; // क्लाइंट कनेक्शन में समान कनेक्शन नाम नहीं हो सकता है |
ईथरनेट क्लाइंट एथ क्लाइंट; |
पबसुब क्लाइंट क्लाइंट (एथ क्लाइंट); |
सॉफ्टवेयर सीरियल pmSerial (RX_PIN, TX_PIN); |
डीएचटी डीएचटी; |
इंट pm1; |
इंट pm2_5; |
इंट pm10; |
अहस्ताक्षरित आईडी; |
// फाइल मायफाइल; |
स्ट्रिंग एस; |
स्टेटिकजेसनबफर <200> जेसनबफर; |
JsonObject और रूट = jsonBuffer.createObject (); |
व्यर्थ व्यवस्था() { |
सीरियल.बेगिन (57600); |
pmSerial.begin (९६००); |
आईडी = 0; |
दोपहर 1 = 0; |
अपराह्न २_५ = ०; |
दोपहर 10 = 0; |
अगर (ईथरनेट.बेगिन (मैक) == 0) |
{ |
Serial.println ("डीएचसीपी का उपयोग करके ईथरनेट को कॉन्फ़िगर करने में विफल"); |
// फिक्स्ड आईपी एड्र के साथ प्रयास करें |
ईथरनेट.बेगिन (मैक, आईपी); |
} |
client.setServer (mqtt_server, mqtt_port); |
क्लाइंट.सेट कॉलबैक (कॉलबैक); |
देरी (2000); |
Serial.println (ईथरनेट.लोकलआईपी ()); |
client.connect("arduinoClient", mqtt_user, mqtt_pass); |
सीरियल.प्रिंट ("आरसी ="); |
सीरियल.प्रिंट (क्लाइंट.स्टेट ()); |
सीरियल.प्रिंट ("\ n"); |
} |
शून्य लूप () { |
इंइंडेक्स = 0; |
चार मूल्य; |
चार पिछलावैल्यू; |
अगर (! क्लाइंट। कनेक्टेड ()) |
{ |
अगर (क्लाइंट.कनेक्ट ("arduinoClient", mqtt_user, mqtt_pass)) { |
Serial.println ("कनेक्टेड"); |
} |
} |
जबकि (pmSerial.उपलब्ध ()) { |
मूल्य = pmSerial.read (); |
अगर ((सूचकांक == 0 && मान! = 0x42) || (सूचकांक == 1 && मान! = 0x4d)) { |
Serial.println ("डेटा हेडर नहीं ढूँढ सकता।"); |
वापसी; |
} |
अगर (इंडेक्स == 4 || इंडेक्स == 6 || इंडेक्स == 8 || इंडेक्स == 10 || इंडेक्स == 12 || इंडेक्स == 14) { |
पिछलावैल्यू = मान; |
} |
अन्य (सूचकांक == 5) { |
pm1 = 256 * पिछला मान + मान; |
रूट ["pm1"] = एब्स (pm1); |
} |
अन्य (सूचकांक == 7) { |
pm2_5 = 256 * पिछला मान + मान; |
रूट ["pm2_5"] = एब्स (pm2_5); |
} |
अन्य (सूचकांक == 9) { |
pm10 = 256 * पिछला मान + मान; |
रूट ["pm10"] = एब्स (pm10); |
} |
एल्सिफ़ (इंडेक्स>15) { |
टूटना; |
} |
सूचकांक++; |
} |
जबकि (pmSerial.उपलब्ध ()) pmSerial.read (); |
int chk = DHT.read11 (DHT11_PIN); |
अगर (DHT.temperature == -999 || DHT.humidity == -999) { |
जड़ ["तापमान"] = "एन/ए"; |
जड़ ["आर्द्रता"] = "एन/ए"; |
} अन्यथा { |
जड़ ["तापमान"] = DHT.तापमान; |
जड़ ["आर्द्रता"] = DHT.आर्द्रता; |
} |
भेजें परिणाम (); |
आईडी ++; |
देरी (5000); |
} |
voidsendResults() { |
// एमक्यूटीटी पर प्रकाशित करें |
चार जेसनचर [१००]; |
root.printTo(jsonChar); |
Serial.println(client.publish("arduino", jsonChar)); |
// सीरियल के लिए डिबग करें |
root.printTo (सीरियल); |
सीरियल.प्रिंट ('\ n'); |
} |
// सब्सक्राइब किए गए विषय (विषयों) पर आने वाले संदेशों को संभालता है |
voidcallback(char* विषय, बाइट* पेलोड, अहस्ताक्षरित लंबाई) { |
} |
देखें rawair_quality.ino GitHub द्वारा ❤ के साथ होस्ट किया गया
चरण 4: बॉक्स को इकट्ठा करें
मैंने बस एक बॉक्स का उपयोग किया था जिसके चारों ओर मैं लेटा था और सेंसर से हवा निकालने के लिए एक छेद ड्रिल किया और केबलों को बाहर जाने के लिए एक छेद काट दिया (हालाँकि यह थोड़ा बहुत बड़ा था)।
मैंने सेंसर को बॉक्स में संलग्न करने के लिए गोंद पैड का उपयोग किया, बॉक्स पर ड्रिल किए गए छेद के साथ सेंसर के इनपुट छेद को संरेखित किया।
अंत में, मैंने ईथरनेट और पावर केबल्स में प्लग किया।
सिफारिश की:
DIY मौसम स्टेशन और वाईफाई सेंसर स्टेशन: 7 कदम (चित्रों के साथ)
DIY मौसम स्टेशन और वाईफाई सेंसर स्टेशन: इस परियोजना में मैं आपको दिखाऊंगा कि वाईफाई सेंसर स्टेशन के साथ एक मौसम स्टेशन कैसे बनाया जाए। सेंसर स्टेशन स्थानीय तापमान और आर्द्रता डेटा को मापता है और इसे वाईफाई के माध्यम से मौसम स्टेशन पर भेजता है। मौसम स्टेशन तब प्रदर्शित करता है
Arduino और रास्पबेरी पाई संचालित पालतू निगरानी प्रणाली: 19 कदम (चित्रों के साथ)
Arduino और रास्पबेरी पाई संचालित पालतू निगरानी प्रणाली: हाल ही में छुट्टी के दौरान, हमें अपने पालतू बीगल के साथ संबंध की कमी का एहसास हुआ। कुछ शोध के बाद, हमें ऐसे उत्पाद मिले जिनमें एक स्थिर कैमरा था जो किसी को अपने पालतू जानवरों की निगरानी और संचार करने की अनुमति देता था। इन प्रणालियों के कुछ लाभ थे b
ब्लूटूथ ली और रास्पबेरीपी के साथ तापमान की निगरानी और रिकॉर्ड करें: 9 कदम (चित्रों के साथ)
ब्लूटूथ एलई और रास्पबेरीपी के साथ मॉनिटर और रिकॉर्ड तापमान: यह निर्देश योग्य है कि ब्लू रेडियो (बीएलईहोम) और रास्पबेरीपी 3बी से ब्लूटूथ एलई सेंसर बग के साथ एक बहु-नोड तापमान निगरानी प्रणाली को एक साथ कैसे रखा जाए, ब्लूटूथ एलई मानक के विकास के लिए धन्यवाद, है अब आसानी से उपलब्ध
सौर ऊर्जा संचालित वाईफाई मौसम स्टेशन V1.0: 19 कदम (चित्रों के साथ)
सोलर पावर्ड वाईफाई वेदर स्टेशन V1.0: इस इंस्ट्रक्शनल में, मैं आपको दिखाने जा रहा हूं कि वेमोस बोर्ड के साथ सोलर पावर्ड वाईफाई वेदर स्टेशन कैसे बनाया जाता है। Wemos D1 मिनी प्रो में एक छोटा फॉर्म-फैक्टर है और प्लग-एंड-प्ले शील्ड्स की एक विस्तृत श्रृंखला इसे जल्दी से प्राप्त करने के लिए एक आदर्श समाधान बनाती है
रास्पबेरी पाई और वीवक्स का उपयोग करते हुए एक्यूराइट 5 इन 1 वेदर स्टेशन (अन्य वेदर स्टेशन संगत हैं): 5 चरण (चित्रों के साथ)
रास्पबेरी पाई और वीवक्स का उपयोग करते हुए एक्यूराइट 5 इन 1 वेदर स्टेशन (अन्य वेदर स्टेशन संगत हैं): जब मैंने एक्यूराइट 5 इन 1 वेदर स्टेशन खरीदा था तो मैं अपने घर पर मौसम की जांच करने में सक्षम होना चाहता था, जबकि मैं दूर था। जब मैं घर गया और इसे स्थापित किया तो मुझे एहसास हुआ कि मुझे या तो कंप्यूटर से डिस्प्ले कनेक्ट करना होगा या उनका स्मार्ट हब खरीदना होगा