पर्यावरण की स्थिति को मापने के लिए आर्द्रता और तापमान सामान्य पैरामीटर हैं। इस Arduino आधारित परियोजना में हम परिवेश के तापमान और आर्द्रता को मापने और इसे 16x2 एलसीडी स्क्रीन पर प्रदर्शित करने जा रहे हैं। इस सेल्सियस स्केल थर्मामीटर और प्रतिशत स्केल आर्द्रता मापक परियोजना को विकसित करने के लिए Arduino uno के साथ एक संयुक्त तापमान और हेयसिटी सेंसर DHT11 का उपयोग किया जाता है। मेरी पिछली परियोजना में, मैंने तापमान संवेदक LM35 का उपयोग करके एक डिजिटल थर्मामीटर भी विकसित किया है।
इस परियोजना में तीन खंड शामिल हैं - एक आर्द्रता और तापमान संवेदक DHT11 का उपयोग करके आर्द्रता और तापमान को महसूस करता है । दूसरा खंड DHTsensor मॉड्यूल के आउटपुट को पढ़ता है और तापमान और आर्द्रता के मानों को प्रतिशत और सेल्सियस पैमाने में उपयुक्त संख्या में निकालता है। और सिस्टम का तीसरा भाग एलसीडी पर आर्द्रता और तापमान प्रदर्शित करता है।
इस परियोजना का कार्य एकल तार सीरियल संचार पर आधारित है। पहले arduino DHT मॉड्यूल को एक स्टार्ट सिग्नल भेजता है और फिर DHT एक प्रतिक्रिया संकेत देता है जिसमें तापमान और आर्द्रता डेटा होता है। Arduino दो भागों में इकट्ठा होता है और निकालता है, एक आर्द्रता है और दूसरा तापमान है और फिर उन्हें 16x2 एलसीडी पर भेजें।
यहाँ इस परियोजना में हमने DHT11 नामक एक सेंसर मॉड्यूल का उपयोग किया है । इस मॉड्यूल में एक कैलिब्रेटेड डिजिटल सिग्नल आउटपुट के साथ एक आर्द्रता और तापमान परिसर होता है इसका मतलब है कि DHT11 सेंसर मॉड्यूल आर्द्रता और तापमान को महसूस करने के लिए एक संयुक्त मॉड्यूल है जो एक कैलिब्रेटेड डिजिटल आउटपुट सिग्नल देता है। DHT11 हमें आर्द्रता और तापमान का बहुत सटीक मूल्य देता है और उच्च विश्वसनीयता और दीर्घकालिक स्थिरता सुनिश्चित करता है। इस सेंसर में 8-बिट माइक्रोकंट्रोलर इनबिल्ट के साथ एक प्रतिरोधक प्रकार की आर्द्रता माप घटक और एनटीसी प्रकार तापमान माप घटक होता है, जिसकी तीव्र प्रतिक्रिया और लागत प्रभावी होती है और 4-पिन एकल पंक्ति पैकेज में उपलब्ध होती है।
DHT11 मॉड्यूल सीरियल कम्युनिकेशन यानी सिंगल वायर कम्युनिकेशन पर काम करता है। यह मॉड्यूल विशिष्ट समय अवधि की पल्स ट्रेन के रूप में डेटा भेजता है। Arduino को डेटा भेजने से पहले उसे समय की देरी के साथ कुछ इनिशियलाइज़ कमांड की आवश्यकता होती है। और पूरी प्रक्रिया का समय लगभग 4ms है। एक पूर्ण डेटा ट्रांसमिशन 40-बिट का है और इस प्रक्रिया का डेटा प्रारूप नीचे दिया गया है:
8-बिट इंटीग्रल आरएच डेटा + 8-बिट दशमलव आरएच डेटा + 8-बिट इंटीग्रल टी डेटा + 8-बिट दशमलव टी डेटा + 8-बिट चेक राशि।
पूरी प्रक्रिया
सबसे पहले arduino, DHT की पहचान सुनिश्चित करने के लिए 18 delay की देरी के साथ DHT11 को एक उच्च से कम स्टार्ट सिग्नल भेजता है। और फिर arduino डेटा लाइन को खींचता है और DHT की प्रतिक्रिया के लिए 20-40 for के लिए प्रतीक्षा करता है। डीएचटी का पता लगने के बाद, यह 80 starts के दशक की देरी में आर्डूइनो को कम वोल्टेज स्तर की प्रतिक्रिया संकेत भेजेगा। और फिर DHT कंट्रोलर डेटा लाइन को खींचता है और इसे DHT के डेटा भेजने की व्यवस्था के लिए 80 fors के लिए रखता है।
जब डेटा बस कम वोल्टेज स्तर पर होती है तो इसका मतलब है कि DHT11 प्रतिक्रिया संकेत भेज रहा है। एक बार यह हो जाने के बाद, DHT फिर से डेटा ट्रांसमिशन तैयार करने के लिए 80 fors के लिए डेटा लाइन पुल-अप करता है।
डेटा फॉर्मेट जो कि DHT द्वारा हर बिट के लिए Arduino को भेज रहा है, 50 low कम वोल्टेज स्तर से शुरू होता है और उच्च वोल्टेज स्तर सिग्नल की लंबाई निर्धारित करती है कि डेटा बिट "0" या "1" है या नहीं।
एक महत्वपूर्ण बात यह है कि प्रतिरोधक मान को खींचने के लिए सुनिश्चित करें क्योंकि अगर हम DHT सेंसर को <20 मीटर की दूरी पर रख रहे हैं, तो 5k पुल अप रेज़िस्टर की सिफारिश की जाती है। यदि DHT को 20 मीटर से अधिक समय तक रखना है, तो उचित मूल्य पुल अप रेज़िस्टर का उपयोग करें।
सर्किट आरेख और स्पष्टीकरण
एक लिक्विड क्रिस्टल डिस्प्ले का उपयोग तापमान और आर्द्रता को प्रदर्शित करने के लिए किया जाता है जो सीधे 4-बिट मोड में आर्डिनो से जुड़ा होता है। एलसीडी के आरएस, ईएन, डी 4, डी 5, डी 6 और डी 7 आर्दीनो डिजिटल पिन नंबर 2, 3, 4, 5, 6 और 7 से जुड़े होते हैं। एक डीएचटी 11 सेंसर मॉड्यूल भी एक के साथ आर्टिनो 12 के डिजिटल पिन से जुड़ा होता है। 5k पुल-अप रोकनेवाला।
प्रोग्रामिंग विवरण
प्रोग्रामिंग में, हम DHT11 सेंसर और एलसीडी डिस्प्ले मॉड्यूल के लिए पूर्व-निर्मित पुस्तकालयों का उपयोग करने जा रहे हैं।
फिर हमने एलसीडी और डीएचटी सेंसर के लिए परिभाषित पिनों को तैयार किया और सेटअप में सभी चीजों को इनिशियलाइज़ किया। फिर dht फ़ंक्शन का उपयोग करके एक लूप में DHT सेंसर पढ़ता है और फिर कुछ dht फ़ंक्शन का उपयोग करके हम आर्द्रता और तापमान निकालते हैं और उन्हें LCD पर प्रदर्शित करते हैं।
यहां कस्टम चरित्र विधि का उपयोग करके डिग्री प्रतीक बनाया जाता है।