विषयसूची:
- चरण 1: I2c कैसे काम करता है
- चरण 2: पुस्तकालय
- चरण 3: व्यवहार
- चरण 4: I2c उपयोग
- चरण 5: एक तार का उपयोग
- चरण 6: लागू पढ़ें
- चरण 7: सरल पढ़ें
- चरण 8: पूरा पढ़ें
- चरण 9: कनेक्शन आरेख
- चरण 10: अरुडिनो: वनवायर
- चरण 11: Arduino: I2c
- चरण 12: Esp8266 (D1Mini) वनवायर
- चरण 13: Esp8266 (D1Mini) I2c
- चरण 14: धन्यवाद
![DHT12 (i2c सस्ता आर्द्रता और तापमान सेंसर), तेज़ आसान उपयोग: 14 कदम DHT12 (i2c सस्ता आर्द्रता और तापमान सेंसर), तेज़ आसान उपयोग: 14 कदम](https://i.howwhatproduce.com/images/001/image-1509-29-j.webp)
वीडियो: DHT12 (i2c सस्ता आर्द्रता और तापमान सेंसर), तेज़ आसान उपयोग: 14 कदम
![वीडियो: DHT12 (i2c सस्ता आर्द्रता और तापमान सेंसर), तेज़ आसान उपयोग: 14 कदम वीडियो: DHT12 (i2c सस्ता आर्द्रता और तापमान सेंसर), तेज़ आसान उपयोग: 14 कदम](https://i.ytimg.com/vi/_0f_WZPjz5w/hqdefault.jpg)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:20
![DHT12 (i2c सस्ता आर्द्रता और तापमान सेंसर), तेज़ आसान उपयोग DHT12 (i2c सस्ता आर्द्रता और तापमान सेंसर), तेज़ आसान उपयोग](https://i.howwhatproduce.com/images/001/image-1509-30-j.webp)
आप मेरी साइट https://www.mischianti.org/2019/01/01/dht12-library-en/ पर अपडेट और अन्य पा सकते हैं।
मुझे सेंसर पसंद है जिसका उपयोग 2 तार (i2c प्रोटोकॉल) के साथ किया जा सकता है, लेकिन मुझे सस्ता पसंद है।
यह बहुत कम लागत वाले तापमान/आर्द्रता सेंसर (1$ से कम) की DHT12 श्रृंखला के लिए एक Arduino और esp8266 पुस्तकालय है जो i2c या एक तार कनेक्शन के साथ काम करता है।
बहुत उपयोगी है यदि आप आर्द्रता और तापमान को पढ़ने और इसे i2c LCD पर प्रदर्शित करने के लिए esp01 (यदि आप धारावाहिक का उपयोग करते हैं तो आपके पास केवल 2 पिन हैं) का उपयोग करना चाहते हैं।
एआई ने पढ़ा कि कभी-कभी ऐसा लगता है कि अंशांकन की आवश्यकता है, लेकिन मेरे पास इसका पेड़ है और डीएचटी 22 के समान मूल्य प्राप्त करता है। यदि आपके पास इस समस्या का अंशांकन है, तो जीथब पर खुला मुद्दा और मैं कार्यान्वयन जोड़ता हूं।
चरण 1: I2c कैसे काम करता है
![I2c कैसे काम करता है I2c कैसे काम करता है](https://i.howwhatproduce.com/images/001/image-1509-31-j.webp)
I2C इसके दो तारों, SDA (डेटा लाइन) और SCL (क्लॉक लाइन) के साथ काम करता है।
ये दोनों लाइनें ओपन-ड्रेन हैं, लेकिन प्रतिरोधों के साथ खींची गई हैं।
आमतौर पर लाइन पर एक मास्टर और एक या एक से अधिक दास होते हैं, हालांकि कई स्वामी हो सकते हैं, लेकिन हम इसके बारे में बाद में बात करेंगे।
स्वामी और दास दोनों डेटा संचारित या प्राप्त कर सकते हैं, इसलिए, एक उपकरण इन चार राज्यों में से एक में हो सकता है: मास्टर ट्रांसमिट, मास्टर रिसीव, स्लेव ट्रांसमिट, स्लेव रिसीव।
चरण 2: पुस्तकालय
आप यहां मेरी लाइब्रेरी पा सकते हैं।
डाउनलोड करने के लिए।
ऊपरी दाएं कोने में डाउनलोड बटन पर क्लिक करें, असम्पीडित फ़ोल्डर DHT12 का नाम बदलें।
जांचें कि DHT फ़ोल्डर में DHT12.cpp और DHT12.h है।
DHT लाइब्रेरी फोल्डर को अपने /लाइब्रेरी/फोल्डर में रखें।
यदि आपकी पहली लाइब्रेरी है तो आपको लाइब्रेरी सबफ़ोल्डर बनाने की आवश्यकता हो सकती है।
आईडीई को पुनरारंभ करें।
चरण 3: व्यवहार
यह लाइब्रे मानक डीएचटी लाइब्रेरी सेंसर के व्यवहार का अनुकरण करने का प्रयास करता है (और बहुत सारे कोड कॉपी करता है), और मैं उसी तरह से i2c olso को प्रबंधित करने के लिए कोड जोड़ता हूं।
विधि DHT लाइब्रेरी सेंसर के समान है, जिसमें कुछ ओस बिंदु फ़ंक्शन की तरह जोड़ते हैं।
चरण 4: I2c उपयोग
i2c (डिफ़ॉल्ट पता और डिफ़ॉल्ट SDA SCL पिन) के साथ उपयोग करने के लिए कंस्ट्रक्टर है:
डीएचटी12 डीएचटी12;
और एसडीए एससीएल पिन के लिए डिफ़ॉल्ट मान लें।
(ESP-01 के लिए आवश्यक esp8266 के लिए निर्दिष्ट निर्माता के साथ फिर से परिभाषित करना संभव है)। या
DHT12 dht12(uint8_t पताOrPin)
पताओरपिन -> पता
पता बदलने के लिए।
चरण 5: एक तार का उपयोग
एक तार का उपयोग करने के लिए:
DHT12 dht12(uint8_t पतायापिन, सच)
एड्रेसऑरपिन -> पिन
बूलियन मान वनवायर या i2c मोड का चयन है।
चरण 6: लागू पढ़ें
आप इसे "अंतर्निहित", "सरल पढ़ने" या "पूर्ण पढ़ने" के साथ उपयोग कर सकते हैं: लागू, केवल सेंसर का सही पढ़ने वाला पहला पढ़ने वाला, दूसरा पढ़ने जो 2 सेकेंड में बन जाता है। अंतराल पहले पढ़ने का संग्रहीत मूल्य है।
// सेंसर के पढ़ने में 2 सेकंड का समय बीत चुका है, जब तक कि आप बल पैरामीटर पास नहीं करते हैं
// तापमान को सेल्सियस के रूप में पढ़ें (डिफ़ॉल्ट) फ्लोट t12 = dht12.readTemperature (); // तापमान को फ़ारेनहाइट के रूप में पढ़ें (फ़ारेनहाइट = सत्य) फ्लोट f12 = dht12.readTemperature (सत्य); // सेंसर रीडिंग 2 सेकंड तक 'पुरानी' हो सकती है (इसका बहुत धीमा सेंसर) फ्लोट h12 = dht12.readHumidity(); // फारेनहाइट में गणना गर्मी सूचकांक (डिफ़ॉल्ट) फ्लोट hif12 = dht12.computeHeatIndex(f12, h12); // सेल्सियस में हीट इंडेक्स की गणना करें (isFahreheit = false) फ्लोट hic12 = dht12.computeHeatIndex(t12, h12, false); // फारेनहाइट में गणना ओस बिंदु (डिफ़ॉल्ट) फ्लोट dpf12 = dht12.dewPoint (f12, h12); // सेल्सियस में ओस बिंदु की गणना करें (isFahreheit = false) फ्लोट dpc12 = dht12.dewPoint (t12, h12, false);
चरण 7: सरल पढ़ें
पढ़ने की स्थिति प्राप्त करने के लिए सरल पढ़ें।
// सेंसर के पढ़ने में 2 सेकंड का समय बीत चुका है, जब तक कि आप बल पैरामीटर पास नहीं करते हैं
बूल chk = dht12.read (); // सच पढ़ना ठीक है, गलत पढ़ने की समस्या
// तापमान को सेल्सियस के रूप में पढ़ें (डिफ़ॉल्ट)
फ्लोट t12 = dht12.readTemperature (); // तापमान को फ़ारेनहाइट के रूप में पढ़ें (फ़ारेनहाइट = सत्य) फ्लोट f12 = dht12.readTemperature (सत्य); // सेंसर रीडिंग 2 सेकंड तक 'पुरानी' हो सकती है (इसका बहुत धीमा सेंसर) फ्लोट h12 = dht12.readHumidity(); // फारेनहाइट में गणना गर्मी सूचकांक (डिफ़ॉल्ट) फ्लोट hif12 = dht12.computeHeatIndex(f12, h12); // सेल्सियस में हीट इंडेक्स की गणना करें (isFahreheit = false) फ्लोट hic12 = dht12.computeHeatIndex(t12, h12, false); // फारेनहाइट में गणना ओस बिंदु (डिफ़ॉल्ट) फ्लोट dpf12 = dht12.dewPoint (f12, h12); // सेल्सियस में ओस बिंदु की गणना करें (isFahreheit = false) फ्लोट dpc12 = dht12.dewPoint (t12, h12, false);
चरण 8: पूरा पढ़ें
निर्दिष्ट स्थिति प्राप्त करने के लिए पूर्ण पढ़ें।
// सेंसर के पढ़ने में 2 सेकंड का समय बीत चुका है, जब तक कि आप बल पैरामीटर पास नहीं करते हैं
DHT12:: रीडस्टैटस chk = dht12.readStatus (); सीरियल.प्रिंट (एफ ("\ n सेंसर पढ़ें: ")); स्विच (chk) {केस DHT12::OK: Serial.println(F("OK")); टूटना; मामला DHT12:: ERROR_CHECKSUM: Serial.println (F ("चेकसम त्रुटि")); टूटना; मामला DHT12:: ERROR_TIMEOUT: Serial.println (F ("टाइमआउट त्रुटि")); टूटना; मामला DHT12:: ERROR_TIMEOUT_LOW: Serial.println (F ("कम सिग्नल पर टाइमआउट त्रुटि, उच्च पुलअप प्रतिरोध डालने का प्रयास करें")); टूटना; मामला DHT12:: ERROR_TIMEOUT_HIGH: Serial.println (F ("कम सिग्नल पर टाइमआउट त्रुटि, कम पुलअप प्रतिरोध डालने का प्रयास करें")); टूटना; मामला DHT12::ERROR_CONNECT: Serial.println(F("Connect error")); टूटना; मामला DHT12::ERROR_ACK_L: Serial.println(F("AckL error")); टूटना; मामला DHT12::ERROR_ACK_H: Serial.println(F("AckH error")); टूटना; मामला DHT12:: ERROR_UNKNOWN: Serial.println (F ("अज्ञात त्रुटि का पता लगाया गया")); टूटना; मामला DHT12:: कोई नहीं: Serial.println (F ("कोई परिणाम नहीं")); टूटना; डिफ़ॉल्ट: Serial.println (F ("अज्ञात त्रुटि")); टूटना; }
// तापमान को सेल्सियस के रूप में पढ़ें (डिफ़ॉल्ट)
फ्लोट t12 = dht12.readTemperature (); // तापमान को फ़ारेनहाइट के रूप में पढ़ें (फ़ारेनहाइट = सत्य) फ्लोट f12 = dht12.readTemperature (सत्य); // सेंसर रीडिंग 2 सेकंड तक 'पुरानी' हो सकती है (इसका बहुत धीमा सेंसर) फ्लोट h12 = dht12.readHumidity(); // फारेनहाइट में गणना गर्मी सूचकांक (डिफ़ॉल्ट) फ्लोट hif12 = dht12.computeHeatIndex(f12, h12); // सेल्सियस में हीट इंडेक्स की गणना करें (isFahreheit = false) फ्लोट hic12 = dht12.computeHeatIndex(t12, h12, false); // फारेनहाइट में गणना ओस बिंदु (डिफ़ॉल्ट) फ्लोट dpf12 = dht12.dewPoint (f12, h12); // सेल्सियस में ओस बिंदु की गणना करें (isFahreheit = false) फ्लोट dpc12 = dht12.dewPoint (t12, h12, false);
चरण 9: कनेक्शन आरेख
उदाहरणों के साथ, कनेक्शन आरेख हैं, सही पुलअप रोकनेवाला का उपयोग करना महत्वपूर्ण है।
जीथब में कोड साझा करने के लिए बोबादास, डीप्लासा और एडफ्रूट का धन्यवाद (जहां मैं कुछ कोड और विचार लेता हूं)।
चरण 10: अरुडिनो: वनवायर
![अरुडिनो: वनवायर अरुडिनो: वनवायर](https://i.howwhatproduce.com/images/001/image-1509-32-j.webp)
चरण 11: Arduino: I2c
![अरुडिनो: I2c अरुडिनो: I2c](https://i.howwhatproduce.com/images/001/image-1509-33-j.webp)
चरण 12: Esp8266 (D1Mini) वनवायर
![Esp8266 (D1Mini) वनवायर Esp8266 (D1Mini) वनवायर](https://i.howwhatproduce.com/images/001/image-1509-34-j.webp)
चरण 13: Esp8266 (D1Mini) I2c
![Esp8266 (D1Mini) I2c Esp8266 (D1Mini) I2c](https://i.howwhatproduce.com/images/001/image-1509-35-j.webp)
चरण 14: धन्यवाद
Arduino खेल का मैदान (https://playground.arduino.cc/Main/DHT12SensorLibrary)
i2c परियोजना श्रृंखला (संग्रह):
- तापमान आर्द्रता सेंसर
- एनालॉग विस्तारक
- डिजिटल विस्तारक
- एलसीडी प्रदर्शन
सिफारिश की:
Arduino के साथ DHT12 I2C आर्द्रता और तापमान सेंसर का उपयोग कैसे करें: 7 कदम
![Arduino के साथ DHT12 I2C आर्द्रता और तापमान सेंसर का उपयोग कैसे करें: 7 कदम Arduino के साथ DHT12 I2C आर्द्रता और तापमान सेंसर का उपयोग कैसे करें: 7 कदम](https://i.howwhatproduce.com/images/001/image-1318-47-j.webp)
Arduino के साथ DHT12 I2C आर्द्रता और तापमान सेंसर का उपयोग कैसे करें: इस ट्यूटोरियल में हम सीखेंगे कि Arduino के साथ DHT12 I2C आर्द्रता और तापमान सेंसर का उपयोग कैसे करें और OLED डिस्प्ले पर मान प्रदर्शित करें। वीडियो देखें
433mhz ओरेगन सेंसर के रूप में Arduino सौर ऊर्जा संचालित तापमान और आर्द्रता सेंसर: 6 कदम
![433mhz ओरेगन सेंसर के रूप में Arduino सौर ऊर्जा संचालित तापमान और आर्द्रता सेंसर: 6 कदम 433mhz ओरेगन सेंसर के रूप में Arduino सौर ऊर्जा संचालित तापमान और आर्द्रता सेंसर: 6 कदम](https://i.howwhatproduce.com/images/009/image-25178-j.webp)
433mhz ओरेगन सेंसर के रूप में Arduino सौर ऊर्जा संचालित तापमान और आर्द्रता सेंसर: यह एक सौर ऊर्जा संचालित तापमान और आर्द्रता सेंसर का निर्माण है। सेंसर 433mhz ओरेगन सेंसर का अनुकरण करता है, और टेलडस नेट गेटवे में दिखाई देता है। आपको क्या चाहिए: 1x "10-एलईडी सौर ऊर्जा गति संवेदक" eBay से. सुनिश्चित करें कि यह 3.7v बैटर कहता है
DT11 तापमान सेंसर के साथ वेब सर्वर के लिए ESP8266 NodeMCU एक्सेस प्वाइंट (AP) और ब्राउज़र में प्रिंटिंग तापमान और आर्द्रता: 5 कदम
![DT11 तापमान सेंसर के साथ वेब सर्वर के लिए ESP8266 NodeMCU एक्सेस प्वाइंट (AP) और ब्राउज़र में प्रिंटिंग तापमान और आर्द्रता: 5 कदम DT11 तापमान सेंसर के साथ वेब सर्वर के लिए ESP8266 NodeMCU एक्सेस प्वाइंट (AP) और ब्राउज़र में प्रिंटिंग तापमान और आर्द्रता: 5 कदम](https://i.howwhatproduce.com/images/001/image-1849-52-j.webp)
DT11 तापमान सेंसर और ब्राउज़र में मुद्रण तापमान और आर्द्रता के साथ वेब सर्वर के लिए ESP8266 NodeMCU एक्सेस प्वाइंट (AP) ESP8266 द्वारा होस्ट किए गए वेबसर्वर तक पहुंचकर वाईफाई पर कोई भी उपकरण लेकिन एकमात्र समस्या यह है कि हमें एक काम करने वाले राउटर की आवश्यकता है
Arduino के साथ DHT11 तापमान सेंसर का उपयोग कैसे करें और तापमान गर्मी और आर्द्रता प्रिंट करें: 5 कदम
![Arduino के साथ DHT11 तापमान सेंसर का उपयोग कैसे करें और तापमान गर्मी और आर्द्रता प्रिंट करें: 5 कदम Arduino के साथ DHT11 तापमान सेंसर का उपयोग कैसे करें और तापमान गर्मी और आर्द्रता प्रिंट करें: 5 कदम](https://i.howwhatproduce.com/images/002/image-3457-34-j.webp)
Arduino और प्रिंट तापमान गर्मी और आर्द्रता के साथ DHT11 तापमान सेंसर का उपयोग कैसे करें: DHT11 सेंसर का उपयोग तापमान और आर्द्रता को मापने के लिए किया जाता है। वे बहुत लोकप्रिय इलेक्ट्रॉनिक्स शौक़ीन हैं। DHT11 आर्द्रता और तापमान सेंसर आपके DIY इलेक्ट्रॉनिक्स परियोजनाओं में आर्द्रता और तापमान डेटा जोड़ना वास्तव में आसान बनाता है। यह प्रति
तेज़, तेज़, सस्ता, अच्छी दिखने वाली एलईडी रूम लाइटिंग (किसी के लिए भी): 5 कदम (चित्रों के साथ)
![तेज़, तेज़, सस्ता, अच्छी दिखने वाली एलईडी रूम लाइटिंग (किसी के लिए भी): 5 कदम (चित्रों के साथ) तेज़, तेज़, सस्ता, अच्छी दिखने वाली एलईडी रूम लाइटिंग (किसी के लिए भी): 5 कदम (चित्रों के साथ)](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10968772-fast-quick-cheap-good-looking-led-room-lighting-for-anyone-5-steps-with-pictures-j.webp)
तेज, तेज, सस्ती, अच्छी दिखने वाली एलईडी रूम लाइटिंग (किसी के लिए भी): सभी का स्वागत है :-) यह मेरा पहला निर्देश है इसलिए टिप्पणियों का स्वागत है :-) टिनी बगेट। आपको क्या चाहिए: केबल एलईडी रेसिस्टर्स (12V के लिए 510Ohms) स्टेपल सोल्डरिंग आयरन कटर और अन्य बेस