विषयसूची:

ESP8266 के साथ इन्फ्रारेड सेंसर: 6 कदम
ESP8266 के साथ इन्फ्रारेड सेंसर: 6 कदम

वीडियो: ESP8266 के साथ इन्फ्रारेड सेंसर: 6 कदम

वीडियो: ESP8266 के साथ इन्फ्रारेड सेंसर: 6 कदम
वीडियो: How to Interface IR Sensor with NodeMCU ESP8266 | Obstacle Detector with Buzzer & Arduino Code 🔥🔥 2024, जुलाई
Anonim
Image
Image
वाईफाई ESP8266 NodeMcu ESP-12E
वाईफाई ESP8266 NodeMcu ESP-12E

इस बार हमारा उद्देश्य एक ऐसा प्रोग्राम बनाना है जो हमारे सेंसर की ओर इशारा करते हुए किसी भी वस्तु के परिवेश के तापमान को पढ़ेगा। ऐसा करने के लिए, हम इस परियोजना में एक ESP8266 nodeMCU, एक MLX90614 इन्फ्रारेड सेंसर, और एक OLED 96 डिस्प्ले का उपयोग करेंगे, जो तापमान डेटा प्रदर्शित करेगा।

चरण 1: वाईफाई ESP8266 NodeMcu ESP-12E

चरण 2: इन्फ्रारेड सेंसर

अवरक्त संवेदक
अवरक्त संवेदक

इस सेटअप में इस्तेमाल किया गया MLX90614 इंफ्रारेड सेंसर असल में एक तरह का कैमकॉर्डर है। यह सीसीडी (चार्ज्ड कपल्ड डिवाइस) के माध्यम से छवियों को कैप्चर करता है, एक प्रणाली जो अभी भी डिजिटल कैमरों में उपयोग की जाने वाली प्रणाली के समान है। इस प्रकार, यह वस्तु से निकलने वाले अवरक्त की मात्रा को रिकॉर्ड करता है, और इस राशि के साथ, यह तापमान की गणना करता है। यह बहुत सटीक है।

चरण 3: OLED प्रदर्शित करें

OLED प्रदर्शित करें
OLED प्रदर्शित करें

चरण 4: विधानसभा

सभा
सभा

यह एक बहुत ही सरल योजना है। मेरे पास यहां एक टेबल है जो आसान विज़ुअलाइज़ेशन की अनुमति देती है।

ESP8266 - OLEDD5 - SCL

D7 - एसडीए

डी3 - आरईएस

डी4 - डीसी

डी8 - सीएस

३, ३वी - वीसीसी

जीएनडी - जीएनडी

एमएलएक्स९०६१४

डी1 - एससीएल

D2 - एसडीए

३, ३वी - वीसीसी

जीएनडी - जीएनडी

चरण 5: पुस्तकालय

पुस्तकालयों
पुस्तकालयों
पुस्तकालयों
पुस्तकालयों

OLED डिस्प्ले का उपयोग करने के लिए, निम्नलिखित "Adafruit-GFX-Library-master" लाइब्रेरी जोड़ें।

बस "स्केच >> लाइब्रेरी शामिल करें >> लाइब्रेरी प्रबंधित करें …" तक पहुंचें

इसके अलावा, निम्नलिखित "एडफ्रूट यूनिफाइड सेंसर" लाइब्रेरी जोड़ें।

पुस्तकालयों के लिए डाउनलोड लिंक पीडीएफ में हैं, जो नीचे उपलब्ध हैं।

चरण 6: स्रोत कोड

हम अपने कोड के दौरान उपयोग किए जाने वाले पुस्तकालयों और स्थिरांक को परिभाषित करके शुरू करेंगे।

#शामिल करें // बिब्लियोटेका पैरा आई२सी#शामिल करें #परिभाषित करें सीएस डी8 #पहले डी3 को परिभाषित करें #डीसी डी4 को परिभाषित करें 2 #define POS_Y_OBJETO 55 #define POS_X_TITULO 10 #define POS_Y_TITULO 4 // contrutor do objeto para comunicar com o display OLED Adafruit_SSD1331 डिस्प्ले = Adafruit_SSD1331(cs, dc, mosi, sclk, rst); // प्रतिक्रिया का जवाब दें संचार कॉम या सेंसर इन्फ्रावरमेलो IRTherm सेंसर; //variáveis que armazenarão o valor dastempaturas lidas float tempAmbiente; फ्लोट टेम्पोबेटो;

सेट अप

सेटअप () फ़ंक्शन में, हम सेंसर के साथ संचार की अपनी वस्तु, साथ ही प्रदर्शन के साथ संचार की वस्तु को आरंभ करेंगे। यहां उनमें से प्रत्येक के लिए कुछ सेटिंग्स दी गई हैं।

शून्य सेटअप () {//Inicializa sensor detemperatura infravermelho sensor.begin(); // सेलेकिओना टेम्परेचर एम सेल्सियस सेंसर.सेटयूनीट (टीईएमपी_सी); // पोडेमोस एंडा यूटिलिजर टीईएमपी_एफ पैरा फारेनहाइट // कहां टीईएमपी_के पैरा केल्विन // इनिशियलाइजा ओ ओब्जेटो पैरा कॉम्यूनिकारमॉस कॉम ओ डिस्प्ले ओएलईडी डिस्प्ले। बेगिन (); // पिंटा ए टेला टोडा डे प्रीटो डिस्प्ले। फिलस्क्रीन (ब्लैक); // configura या tamnaho do texto que escreveremos em tela display.setTextSize(0); // configura a cor branca para o texto display.setTextColor(WHITE); // ओएस कमांडो अबाइक्सो पॉज़िशनम ओ कर्सर नंबर (एक्स, वाई) डिसेजाडो पैरा ए सेगुइर एस्क्रेवरमोस एम टेल डिस्प्ले.सेट कर्सर (POS_X_TITULO, POS_Y_TITULO); डिस्प्ले.प्रिंट ("टेम्पराटूरा"); display.setCursor(POS_X_TITULO+20, POS_Y_TITULO+15); display.print("("); display.print((char)247); //símbolo de graus display.print("C)"); डिस्प्ले.सेट कर्सर (POS_X_AMBIENTE, POS_Y_AMBIENTE); डिस्प्ले.प्रिंट ("एएमबी:"); // AMBIENTE display.setCursor (POS_X_OBJETO, POS_Y_OBJETO); डिस्प्ले.प्रिंट ("ओबीजे:"); // ओब्जेटो }

कुंडली

लूप () फ़ंक्शन में, आइए सेंसर डेटा पढ़ें, और फिर उन्हें OLED डिस्प्ले पर प्रदर्शित करें।

//चैमामोस ओ मेटोडो "रीड" डू सेंसर पैरा रियलिज़र ए लेइटुरा डा टेम्परेचर // रीड रेटोर्ना 1 कैसो कॉन्सिगा रियलिज़र ए लेइटुरा, या 0 कैसो कॉन्ट्रारियो अगर (सेंसर.रीड ()) {/रिकुपेरा ए लेइटुरा दा टेम्परेचर डू एम्बिएंट टेम्पएम्बिएंट = सेंसर। परिवेश (); // रेकुपेरा ए लेइटुरा दा टेम्परेचर डू ओब्जेटो एपोंटाडो पेलो सेंसर टेम्पोबजेटो = सेंसर.ऑब्जेक्ट (); // लिम्पा ए एरिया ऑनडे कोलोकैमोस ओ वेलोर डा टेम्परेचुरा डो एम्बिएंट ई डू ओब्जेटो डिस्प्ले।फिलरेक्ट (POS_X_AMBIENTE+35, POS_Y_AMBIENTE, 35, 10, BLACK); display.fillRect (POS_X_OBJETO+35, POS_Y_OBJETO, 35, 10, BLACK); // स्थिति या कर्सर और एक तापमान परिवेश प्रदर्शन छोड़ दें। सेट कर्सर (POS_X_AMBIENTE+35, POS_Y_AMBIENTE); डिस्प्ले.प्रिंट (tempAmbiente); डिस्प्ले.प्रिंट ((चार) 247); // सिम्बोलो डी ग्राउस // पॉज़िसियोना ओ कर्सर ई एस्क्रेव ए टेम्परेचर डू ओब्जेटो क्यू ओ सेंसर एपोंटांडो डिस्प्ले।सेट कर्सर (POS_X_OBJETO+35, POS_Y_OBJETO); डिस्प्ले.प्रिंट (tempObjeto); डिस्प्ले.प्रिंट ((चार) 247); // सिम्बोलो डी ग्रास} देरी (1000); // इंटरवलो डे 1 सेगुंडो पैरा ए प्रॉक्सिमा लेइटुरा }

सिफारिश की: