Mundarija:

Mahalliy veb -serverda DHT11 yordamida ESP8266 Nodemcu haroratini kuzatish - Brauzeringizda xona harorati va namligini oling: 6 qadam
Mahalliy veb -serverda DHT11 yordamida ESP8266 Nodemcu haroratini kuzatish - Brauzeringizda xona harorati va namligini oling: 6 qadam

Video: Mahalliy veb -serverda DHT11 yordamida ESP8266 Nodemcu haroratini kuzatish - Brauzeringizda xona harorati va namligini oling: 6 qadam

Video: Mahalliy veb -serverda DHT11 yordamida ESP8266 Nodemcu haroratini kuzatish - Brauzeringizda xona harorati va namligini oling: 6 qadam
Video: Mahalliy og`riqsizlantirish 2024, Noyabr
Anonim
Mahalliy veb -serverda DHT11 yordamida ESP8266 Nodemcu haroratini kuzatish | Brauzeringizda xona harorati va namligini oling
Mahalliy veb -serverda DHT11 yordamida ESP8266 Nodemcu haroratini kuzatish | Brauzeringizda xona harorati va namligini oling

Salom bolalar, bugun biz ESP 8266 NODEMCU va DHT11 harorat sensori yordamida namlik va haroratni nazorat qilish tizimini yaratamiz. Harorat va namlik DHT11 Sensor -dan olinadi va uni veb -server esp 8266 tomonidan boshqariladigan brauzerda ko'rish mumkin.

1 -qadam: Sizga kerak bo'lgan narsalar

Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar
Sizga kerak bo'lgan narsalar

Ushbu loyiha uchun sizga quyidagilar kerak: 1x ESP 8266 Nodemcu:

1x DHT11: https://www.utsource.net/itm/p/8831706.html1x non paneli:.:

Bir nechta sakrash:

2 -qadam: O'chirish

O'chirish
O'chirish

Sxematikada ko'rsatilganidek, sxemani hamma narsaga ulash juda oson

3 -qadam: kutubxonalarni oling

Kutubxonalarni oling
Kutubxonalarni oling
Kutubxonalarni oling
Kutubxonalarni oling

Arduino IDE -ni oching va Sketch> Kutubxonani qo'shish> Kutubxonalarni boshqarish -ga o'ting. Kutubxona menejeri ochilishi kerak. Qidiruv maydonida "DHT" ni qidiring va Adafruit -dan DHT kutubxonasini o'rnating. Adafruit -dan DHT kutubxonasini o'rnatgandan so'ng, qidiruv maydoniga "Adafruit Unified Sensor" yozing. Kutubxonani topib o'rnatish uchun pastga aylantiring va kutubxonalarni o'rnatgandan so'ng Arduino IDE -ni qayta ishga tushiring.

4 -qadam: kod

Kod
Kod

Yuqoridagi amallarni bajargandan so'ng, quyidagi kodni ESP8266 nodemcu -ga yuklang (to'g'ri port va taxtani tanlang) va kodni yuklashdan oldin, wifi -ning ssid va parolini kodga kiriting: // ESP8266 WiFi kutubxonasi #ni o'z ichiga oladi #DHL. h "// Siz foydalanadigan DHT sensori turiga quyidagi satrlardan birini qoldiring!#DHTTYPE DHT11 // DHT 11 //#DHTTYPE DHT21 // DHT 21 (AM2301) //#DHTTYPE DHT22 // DHT ni aniqlang 22 (AM2302), AM2321 // Tarmoq detallari bilan almashtiring char* ssid = "YOUR_NETWORK_NAME"; const char* password = "YOUR_NETWORK_PASSWORD"; // 80WiFiServer serveridagi port (80); // DHT Sensorconst int DHTPin = 5; // DHT sensorini ishga tushirish. DHT dht (DHTPin, DHTTYPE); // Vaqtinchalik o'zgaruvchilar statik char celsiusTemp [7]; statik char fahrenheitTemp [7]; statik char namlikTemp [7]; // bootvoid o'rnatishda faqat bir marta ishlaydi () { // Nosozliklarni tuzatish uchun ketma -ket portni ishga tushirish Serial.begin (115200); kechikish (10); dht.begin (); // WiFi tarmog'iga ulanish Serial.println (); Serial.print ("Ulanish"); Serial.println (ssid); WiFi.begin (ssid, parol); while (WiFi.status ()! = WL_CONNECTED) {kechiktirish (500); Serial.print ("."); } Serial.println (""); Serial.println ("Wi -Fi ulangan"); // server.begin () veb -serverini ishga tushirish; Serial.println ("Veb -server ishlayapti. ESP IP kutilmoqda …"); kechikish (10000); // ESP IP -manzilini chop etish Serial.println (WiFi.localIP ());} // qayta -qayta ishlaydivoid loop () {// Yangi mijozlarni tinglash WiFiClient client = server.available (); if (mijoz) {Serial.println ("Yangi mijoz"); // bolean, http so'rovi tugashi bilan, boolean blank_line = true; while (client.connected ()) {if (client.available ()) {char c = client.read (); if (c == '\ n' && blank_line) {// Sensor o'qishlari ham 2 sekundgacha eski bo'lishi mumkin (bu juda sekin sensori) float h = dht.readHumidity (); // Haroratni Selsiy bo'yicha o'qing (standart) float t = dht.readTemperature (); // Haroratni Farengeyt sifatida o'qing (isFahrenheit = rost) float f = dht.readTemperature (rost); // O'qish muvaffaqiyatsiz bo'lganligini tekshiring va erta chiqing (qaytadan urinish uchun). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println ("DHT sensoridan o'qib bo'lmadi!"); strcpy (celsiusTemp, "Muvaffaqiyatsiz"); strcpy (fahrenheitTemp, "Muvaffaqiyatsiz"); strcpy (moistTemp, "Muvaffaqiyatsiz"); } else {// Selsiy + Farengeyt va namlikdagi harorat qiymatlarini hisoblab chiqadi hic = dht.computeHeatIndex (t, h, false); dtostrf (hik, 6, 2, celsiusTemp); float hif = dht.computeHeatIndex (f, h); dtostrf (hif, 6, 2, fahrenheitTemp); dtostrf (h, 6, 2, nemTemp); // Siz quyidagi Serial.print -ni o'chirib tashlashingiz mumkin, bu faqat disk raskadrovka maqsadida Serial.print ("Namlik:"); Ketma -ket chop etish (h); Serial.print (" %\ t Harorat:"); Ketma -ket chop etish (t); Serial.print (" *C"); Ketma -ket chop etish (f); Serial.print (" *F / t Issiqlik indeksi:"); Ketma -ket chop etish (hic); Serial.print (" *C"); Serial.print (hif); Serial.print (" *F"); Serial.print ("Namlik:"); Ketma -ket chop etish (h); Serial.print (" %\ t Harorat:"); Ketma -ket chop etish (t); Serial.print (" *C"); Ketma -ket chop etish (f); Serial.print (" *F / t Issiqlik indeksi:"); Ketma -ket chop etish (hic); Serial.print (" *C"); Serial.print (hif); Serial.println (" *F"); } client.println ("HTTP/1.1 200 OK"); client.println ("Kontent turi: matn/html"); client.println ("Ulanish: yopish"); mijoz.println (); // harorat va namlik mijozini ko'rsatadigan sizning haqiqiy veb -sahifangiz

5 -qadam: IP -ni oling

IP -ni oling
IP -ni oling

Siz veb -sahifaning IP manzilini olishimiz uchun zarur bo'lgan harorat va namlikni ko'rasiz. Buning uchun esp8266 kompyuteringizga ulanganligiga ishonch hosil qiling, so'ngra ketma -ket monitorni oching va ketma -ket monitorda siz ESP8266 veb -serverining IP -manzilini ko'rishingiz mumkin.

6 -qadam: Brauzerda harorat va namlikni tekshiring

Brauzerda harorat va namlikni tekshiring
Brauzerda harorat va namlikni tekshiring

ESP8266 nodemcu IP -ni olganingizdan so'ng, kompyuter yoki mobil -da brauzerni oching, lekin shaxsiy kompyuteringiz/mobil qurilmangiz Nodemcu/ESP8266 bilan bir xil tarmoqqa ulanganligiga ishonch hosil qiling, so'ngra brauzeringizga o'ting (agar siz mobil telefondan foydalanayotgan bo'lsangiz, standart brauzerdan foydalaning. Ya'ni Android uchun xromdan foydalaning) va keyin oldingi bosqichda olgan IP -ni kiriting va mahalliy veb -sahifa rasmda ko'rsatilgandek namlik va haroratni ko'rsatadi, shuning uchun xona harorati va namlik monitorini yasang.

Tavsiya: