विषयसूची:
- चरण 1: एलसीडी ग्राफिक मॉड्यूल 128x128 आरजीबी टीएफटी आईएलआई 9163C
- चरण 2: आर्द्रता और तापमान सेंसर AM2302 DHT22
- चरण 3: सर्किट
- चरण 4: विधानसभा
- चरण 5: पुस्तकालय
- चरण 6: कोड
- चरण 7: कुछ अन्य दिलचस्प कार्य
वीडियो: एलसीडी डिस्प्ले के साथ ESP8266 डिजिटल थर्मामीटर: 7 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
आज, मैं आपको दिखाऊंगा कि किसी दिए गए वास्तविक समय के वातावरण के लिए तापमान और आर्द्रता डेटा प्रदर्शित करने के लिए ESP8266 NodeMCU पर TFT LCD डिस्प्ले का उपयोग कैसे करें। मैं DHT22 के साथ डिस्प्ले का उपयोग करने का एक उदाहरण बनाता हूं, जो तापमान और आर्द्रता गेज है। इस वीडियो में, विशेष रूप से, मैं अपने डिजिटल थर्मामीटर के लिए एक कॉम्पैक्ट डिस्प्ले का उपयोग करता हूं, जो ग्राफिक है और सिस्टम पर ही निगरानी की अनुमति देता है। इसलिए, आज का उद्देश्य ESP8266 का उपयोग करके लिक्विड क्रिस्टल डिस्प्ले के संचालन के बारे में सीखना है।
चरण 1: एलसीडी ग्राफिक मॉड्यूल 128x128 आरजीबी टीएफटी आईएलआई 9163C
इस प्रोजेक्ट में हम जिस डिस्प्ले का उपयोग करते हैं वह 128x128 पिक्सल है। 0, 0 ऊपरी बाएँ कोने में है, और इस मॉडल में टेक्स्ट-प्रिंटिंग और ग्राफिक-प्रिंटिंग दोनों फ़ंक्शन हैं, जिन्हें हम बाद में देखेंगे।
चरण 2: आर्द्रता और तापमान सेंसर AM2302 DHT22
हम अपनी असेंबली में AM2302 DHT22 का उपयोग करेंगे, जो एक सेंसर है जो मुझे वास्तव में पसंद है, क्योंकि यह बहुत सटीक है।
चरण 3: सर्किट
प्रोजेक्ट में, हमारे पास एक ESP8266 है जो पहले से ही प्रोग्राम किया गया है और USB पावर का उपयोग कर रहा है। DHT22 डेटा और पुल-अप रोकनेवाला से ESP8266 से जुड़ा है, जो LCD डिस्प्ले को नियंत्रित करता है।
चरण 4: विधानसभा
यहां, हमारे पास हमारी असेंबली का विद्युत आरेख है, जो NodeMCU, सेंसर और डिस्प्ले को दर्शाता है। याद रखें कि यह एक सीरियल डिस्प्ले, i2c है, जिसका उपयोग करना आसान है क्योंकि इसमें अधिक पिन हैं।
चरण 5: पुस्तकालय
चूंकि हम Arduino C भाषा के साथ डिस्प्ले को प्रोग्राम करने जा रहे हैं, हमें DHT22 लाइब्रेरी, साथ ही LCD की आवश्यकता है।
सबसे पहले, आर्द्रता और तापमान सेंसर के साथ संचार के लिए निम्नलिखित "DHT सेंसर लाइब्रेरी" लाइब्रेरी जोड़ें।
बस "स्केच >> लाइब्रेरी शामिल करें >> लाइब्रेरी प्रबंधित करें …" तक पहुंचें
अब, निम्नलिखित पुस्तकालय जोड़ें, "एडफ्रूट-जीएफएक्स-लाइब्रेरी-मास्टर।"
बस "स्केच >> लाइब्रेरी शामिल करें >> लाइब्रेरी प्रबंधित करें …" तक पहुंचें
साथ ही, LCD ग्राफिक मॉड्यूल के साथ संचार के लिए "TFT_ILI9163C" लाइब्रेरी जोड़ें।
लिंक तक पहुंचें (((((((https://github.com/sumotoy/TFT_ILI9163C)))))) और पुस्तकालय डाउनलोड करें।
फ़ाइल को अनज़िप करें और इसे Arduino IDE के लाइब्रेरी फ़ोल्डर में पेस्ट करें।
सी: / प्रोग्राम फ़ाइलें (x86) / Arduino / पुस्तकालय
चरण 6: कोड
आइए पहले उन पुस्तकालयों को जोड़ें जिनका उपयोग हमारे कोड में किया जाएगा।
#शामिल//उपयोगिता के लिए कम्युनिकर कॉम ओ मोडुलो एलसीडी#शामिल हैं
परिभाषाएं
हम प्रोग्राम के दौरान उपयोग किए जाने वाले वेरिएबल्स और ऑब्जेक्ट्स के उदाहरण के नीचे देखेंगे।
#define DHTPIN D6 // पिनो que conectaremos o sensor DHT22#define DHTTYPE DHT22 // DHT22 और o टिपो डू सेंसर क्यू यूटिलिजेरमोस (महत्वपूर्ण पैरा ओ कंस्ट्रक्टर) डीएचटी डीएचटी (डीएचटीपीआईएन, डीएचटीटीपीई); // कंस्ट्रुटर डू ओब्जेटो क्यू यूटिलिज़रेमोस पैरा से कम्युनिकर कॉम ओ सेंसर // रंग परिभाषाएं # ब्लैक 0x0000 परिभाषित करें # ब्लू 0x001F परिभाषित करें # लाल 0xF800 परिभाषित करें # ग्रीन 0x07E0 परिभाषित करें # CYAN 0x07FF परिभाषित करें # मैजेंटा 0xF81F परिभाषित करें # परिभाषित करें WELLOW # परिभाषित करें परिभाषित करें _CS D1 // पिनो क्यू कनेक्टेरेमोस ओ सीएस डू मोडुलो एलसीडी #define _DC D4 // पिनो क्यू कनेक्टेरेमोस ओ आरएस डू मोडुलो एलसीडी TFT_ILI9163C डिस्प्ले = TFT_ILI9163C (_CS, _DC); // कंस्ट्रक्टर डू ओब्जेटो क्यू यूटिलिजेरमॉस पैरा से कम्युनिकर कॉम ओ मोडुलो एलसीडी
सेट अप
सेटअप () फ़ंक्शन में, हम वेरिएबल "dht" को इनिशियलाइज़ करते हैं, जो ह्यूमिडिटी सेंसर और तापमान के साथ संचार के लिए ज़िम्मेदार है। हम "डिस्प्ले" वैरिएबल को भी इनिशियलाइज़ करेंगे जिसका उपयोग LCD मॉड्यूल के साथ संचार करने के लिए किया जाता है।
हम स्क्रीन पर ड्राइंग शुरू करने के लिए ऑब्जेक्ट को भी कॉन्फ़िगर करेंगे।
शून्य सेटअप (शून्य) {dht.begin (); // inicialização para se comunicar com o sensor display.begin(); // inicialização para se comunicar com o modulo LCD display.clearScreen(); // लिंपा ए टेला, रिमूवेंडो टूडोस ओएस डेसेनहोस डिस्प्ले। फिलस्क्रीन (ब्लैक); // पिंटा और पहले से ही डिस्प्ले.सेटटेक्स्टसाइज(2); // configura o tamanho do texto com o tamanho 2 display.setTextColor(GREEN); // configura a cor do texto como verde display.setCursor(5, 10); // पॉज़िशन या कर्सर के लिए एक एस्क्रिटा ए पार्टिर डू (एक्स, वाई) डिस्प्ले।प्रिंट ("टेम्परैटुर"); // उन्हें आगे बढ़ाएं डिस्प्ले.सेट कर्सर (22, 70); // रिपॉजिशन या कर्सर डिस्प्ले।प्रिंट ("उमिडे"); // उन्हें आगे बढ़ाएं डिस्प्ले.सेटटेक्स्टकोलर (सफेद); // कॉन्फिगुरा ए कोर डू टेक्स्टो कोमो ब्रैंको (एक पार्टिर डे अगोरा) देरी (1000); // एस्पेरा डे १ सेगुंडो }
कुंडली
लूप () फ़ंक्शन में, हम सेंसर द्वारा पढ़ी गई आर्द्रता और तापमान को पुनः प्राप्त करेंगे और विशिष्ट स्थान पर स्क्रीन पर लिखे जाएंगे। 5 सेकंड के प्रत्येक अंतराल पर, मान को सेंसर से पढ़ा जाता है और स्क्रीन पर लिखा जाता है।
शून्य लूप () { int h = dht.readHumidity (); // faz a leitura da umidade do sensor int t = dht.readTemperature(); // faz a leitura da tempatura do sensor // as 2 linhas seguintes utilizando o metodo "fillRect", são para fazer a limpeza do local onde escreveremos a umidade e a tempatura, apagaremos o valor atual para escrever novmente atualizado. डिस्प्ले.फिलरेक्ट (5, 32, 120, 20, ब्लैक); // fillRect (x, y, चौड़ाई, ऊंचाई, रंग); डिस्प्ले.फिलरेक्ट (5, 92, 120, 20, ब्लैक); डिस्प्ले.सेट कर्सर (40, 35); // रिपॉजिशन या एस्क्रेवर डिस्प्ले के लिए कर्सर।प्रिंट (टी); // एस्क्रेव ए टेम्परेचर एम टेला डिस्प्ले।प्रिंट ((चार) 247); // एस्क्रेव ओ सिम्बोलो डी ग्राउ ° एट्रावेस डी कोडिगो डिस्प्ले।प्रिंट ("सी"); // कोलोका या "सी" के लिए संकेतक क्यू é graus Celcius display.setCursor(40, 95); // रिपॉजिशन या एस्क्रेवर डिस्प्ले के लिए कर्सर।प्रिंट (एच); // एक umidade em tela display.print("%"); // एस्क्रेव ओ सिम्बोलो डे "पोरसेंटेजम" पैरा इंडिकार ए umidade देरी (5000); }
चरण 7: कुछ अन्य दिलचस्प कार्य
// स्क्रीन की सामग्री को घुमाता है (पैरामीटर 0, 1, 2 या 3)
डिस्प्ले.सेटरोटेशन (uint8_t);
// रंग प्रदर्शित करता है (नकारात्मक बनाता है)
display.invertDisplay (बूलियन);
// स्क्रीन पर स्थिति (x, y) पर एक एकल पिक्सेल खींचता है
display.drawPixel (x, y, रंग);
// स्थिति में एक लंबवत रेखा खींचता है
display.drawFastVLine (x, y, चौड़ाई, रंग);
// निर्दिष्ट स्थान पर एक लंबवत रेखा खींचता है
display.drawFastHLine (x, y, चौड़ाई, रंग);
// निर्दिष्ट स्थान पर एक क्षैतिज रेखा खींचता है
display.drawRect (x, y, चौड़ाई, ऊंचाई, रंग);
// निर्दिष्ट स्थान पर एक सर्कल बनाएं
display.drawCircle (x, y, त्रिज्या, रंग);
सिफारिश की:
स्मार्टफोन को गैर संपर्क थर्मामीटर / पोर्टेबल थर्मामीटर के रूप में उपयोग करें: 8 कदम (चित्रों के साथ)
स्मार्टफोन को नॉन कॉन्टैक्ट थर्मामीटर / पोर्टेबल थर्मामीटर के रूप में इस्तेमाल करें: थर्मो गन की तरह नॉन-कॉन्टैक्ट / कॉन्टैक्टलेस से शरीर के तापमान को मापना। मैंने यह प्रोजेक्ट इसलिए बनाया क्योंकि थर्मो गन अब बहुत महंगी है, इसलिए मुझे DIY बनाने का विकल्प मिलना चाहिए। और उद्देश्य कम बजट संस्करण के साथ बनाना है। आपूर्तिMLX90614Ardu
एलसीडी आक्रमणकारियों: 16x2 एलसीडी कैरेक्टर डिस्प्ले पर गेम जैसा एक अंतरिक्ष आक्रमणकारी: 7 कदम
LCD Invaders: a Space Invaders Like Game on 16x2 LCD कैरेक्टर डिस्प्ले: एक पौराणिक "अंतरिक्ष आक्रमणकारियों" गेम को पेश करने की कोई आवश्यकता नहीं है। इस प्रोजेक्ट की सबसे दिलचस्प विशेषता यह है कि यह ग्राफिकल आउटपुट के लिए टेक्स्ट डिस्प्ले का उपयोग करता है। यह 8 कस्टम वर्णों को लागू करके हासिल किया जाता है। आप पूरा Arduino डाउनलोड कर सकते हैं
I2C / IIC एलसीडी डिस्प्ले - Arduino के साथ SPI से IIC मॉड्यूल का उपयोग करके I2C LCD डिस्प्ले में SPI LCD का उपयोग करें: 5 चरण
I2C / IIC एलसीडी डिस्प्ले | Arduino के साथ I2C LCD डिस्प्ले के लिए SPI से IIC मॉड्यूल का उपयोग करते हुए SPI LCD का उपयोग करें: हाय दोस्तों चूंकि एक सामान्य SPI LCD 1602 में कनेक्ट करने के लिए बहुत सारे तार होते हैं, इसलिए इसे arduino के साथ इंटरफ़ेस करना बहुत मुश्किल होता है, लेकिन बाजार में एक मॉड्यूल उपलब्ध है जो कर सकता है SPI डिस्प्ले को IIC डिस्प्ले में बदलें तो आपको केवल 4 तारों को जोड़ने की आवश्यकता है
I2C / IIC एलसीडी डिस्प्ले - SPI LCD को I2C LCD डिस्प्ले में बदलें: 5 कदम
I2C / IIC एलसीडी डिस्प्ले | SPI LCD को I2C LCD डिस्प्ले में बदलें: spi LCD डिस्प्ले का उपयोग करने के लिए बहुत सारे कनेक्शन की आवश्यकता होती है, जो वास्तव में करना कठिन होता है इसलिए मुझे एक मॉड्यूल मिला जो i2c LCD को spi LCD में बदल सकता है तो चलिए शुरू करते हैं
एक्मे डिजिटल थर्मामीटर डब्ल्यू/डीएस18बी20 अस्थायी जांच और आई2सी एलसीडी: 5 कदम
Acme Digital Thermometer W/DS18B20 Temp Probe & I2C LCD: यह एक बहुत ही सरल परियोजना है जिसमें बहुत अधिक खर्च नहीं होता है और इसमें अधिक समय भी नहीं लगता है। मैंने इसे अमेज़ॅन बॉक्स में रखा क्योंकि यह वहां था, लेकिन इसे लगभग किसी भी चीज़ में रखा जा सकता था