Мазмұны:

ESP8266 NodeMCU кіру нүктесі (AP) DT11 температура сенсоры бар веб -сервер үшін және шолуда температура мен ылғалдылықты басып шығару: 5 қадам
ESP8266 NodeMCU кіру нүктесі (AP) DT11 температура сенсоры бар веб -сервер үшін және шолуда температура мен ылғалдылықты басып шығару: 5 қадам

Бейне: ESP8266 NodeMCU кіру нүктесі (AP) DT11 температура сенсоры бар веб -сервер үшін және шолуда температура мен ылғалдылықты басып шығару: 5 қадам

Бейне: ESP8266 NodeMCU кіру нүктесі (AP) DT11 температура сенсоры бар веб -сервер үшін және шолуда температура мен ылғалдылықты басып шығару: 5 қадам
Бейне: Как запрограммировать модуль реле Wi-Fi ESP8266 ESP-01 2024, Қараша
Anonim
ESP8266 NodeMCU кіру нүктесі (AP) DT11 температура сенсоры бар веб -сервер үшін және шолғышта баспа температурасы мен ылғалдылығы
ESP8266 NodeMCU кіру нүктесі (AP) DT11 температура сенсоры бар веб -сервер үшін және шолғышта баспа температурасы мен ылғалдылығы

Сәлем достар, біз ESP8266 пайдаланатын жобалардың көпшілігінде және біз ESP8266 -ды веб -сервер ретінде қолданамыз, сондықтан кез келген құрылғыдан WSP арқылы ESP8266 орналастырылған веб -серверге кіру арқылы қол жеткізуге болады, бірақ жалғыз мәселе - бізге жұмыс маршрутизаторы қажет. бұл және біздің құрылғы маршрутизаторға қосылуы керек және біз Wi -Fi тіркелгі деректерін кодқа енгізуіміз керек, егер сіз wifi -ді өзгертсеңіз, кодтағы тіркелгі деректерін өзгертуіңіз керек және оны қайта жүктеуіңіз керек.: 1- бізге веб-серверді (маршрутизаторды) орналастыру үшін Wi-Fi байланысы қажет. 2- егер Wi-Fi қосылымын өзгерту қажет болса, біз тіркелгі деректерін енгізуіміз керек және кодты қайта жүктеуіміз керек. wifi -ға қол жеткізу біз ESP8266 -ды өзімізге Wi -Fi қосылымын құруға мүмкіндік береді, сондықтан егер біз осы Wi -Fi қосылымына қосылсақ, біз ESP8266 веб -серверіне кіре аламыз, сондықтан біз кіру нүктесі бар ESP8266 бар веб -серверді орналастыратын боламыз. құратын болады ESP8266 кіру нүктесін пайдаланатын веб -сервер, біз DHT11 сенсорын қосамыз және веб -сервер бетінде температура мен ылғалдылықты басып шығарамыз.

1 -қадам: Сізге қажет заттар

Сізге қажет заттар
Сізге қажет заттар
Сізге қажет заттар
Сізге қажет заттар

1x ESP 8266 Nodemcu: 1x DHT11: 1x нан тақтасы:.: Аз секірушілер:

2 -қадам: DHT11 кітапханаларын алыңыз

DHT11 кітапханаларын алыңыз
DHT11 кітапханаларын алыңыз
DHT11 кітапханаларын алыңыз
DHT11 кітапханаларын алыңыз

Arduino IDE ашыңыз және эскиз> Кітапхананы қосу> кітапханаларды басқару тармағына өтіңіз. Кітапхана менеджері ашуы керек. Іздеу жолағында «DHT» іздеңіз және Adafruit -тен DHT кітапханасын орнатыңыз. Adafruit -тен DHT кітапханасын орнатқаннан кейін іздеу жолағына «Adafruit Unified Sensor» деп теріңіз. Кітапхананы тауып, оны орнату үшін төмен қарай жылжытыңыз. Кітапханаларды орнатқаннан кейін Arduino IDE қайта іске қосыңыз.

3 -қадам: Қосылымдар

Қосылымдар
Қосылымдар

Схема схматикада көрсетілгендей бәрін қосу өте оңай

4 -қадам: кіру нүктесінің коды

Кіру нүктесінің коды
Кіру нүктесінің коды

Алдыңғы нұсқаулықтардан мен осы нұсқаулықтардың веб-сервер кодын өзгертемін:

Оны кіру нүктесінің веб -серверінің кодына айналдырыңыз. Төменде келтірілген кодты көшіріңіз:

#«Arduino.h» қосу#«ESP8266WiFi.h» қосу

#«Hash.h» қосыңыз

#«ESPAsyncTCP.h» қосыңыз

#«ESPAsyncWebServer.h» қосыңыз

#«Adafruit_Sensor.h» қосыңыз

#«DHT.h» қосыңыз

const char* ssid = «ESP8266»; const char* password = «password»;#DHTPIN 5 анықтаңыз // DHT сенсорына қосылған сандық түйін // Қолданылатын сенсор түріне түсініктеме бермеңіз: //#DHTTYPE DHT11 // DHT анықтаңыз 11#DHTTYPE DHT22 // DHT 22 (AM2302) //#DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht (DHTPIN, DHTTYPE) анықтау; // ағымдағы температура мен ылғалдылық, () float t = 0,0; float h = 0.0; // 80AsyncWebServer серверінде (80) AsyncWebServer нысанын жасаңыз; // Әдетте уақытты сақтайтын айнымалылар үшін «белгісіз ұзын» пайдалану керек // Қол қойылмаған ұзақMillis сақталуы үшін мән тез арада үлкен болады = 0; // DHT соңғы рет жаңартылған кезде сақталады // DHT көрсеткіштерін әр 10 секунд сайын ұзартады = 10000; const char index_html PROGMEM = R «rawliteral (ESP8266 DHT сервері)

Температура % TEMPERATURE % ° C

Ылғалдылық % HUMIDITY % %) rawliteral «; // Толтырғышты DHT valuesString процессорымен ауыстырады (const String & var) {//Serial.println(var); if (var ==» TEMPERATURE «) {return String (t);} else if (var == «HUMIDITY») {return String (h);} String ();} қайтару void () {// күйін келтіру үшін сериялық порт Serial.begin (115200); dht.begin (); Serial.print («AP параметрін орнату (Кіру нүктесі)… «); // Егер кіру нүктесінің WiFi.softAP (ssid, құпия сөз) ашылғанын қаласаңыз, пароль параметрін жойыңыз; IPAddress IP = WiFi.softAPIP (); Serial.print (» AP IP мекенжайы: «); Serial.println (IP); // ESP8266 жергілікті IP мекенжайын басып шығару Serial.println (WiFi.localIP ()); // Түбірлік / веб -бетке арналған жол..on (» / «, HTTP_GET, (AsyncWebServerRequest *сұранысы) {request-> send_P (200, «text/html», index_html, процессор);}); server.on («/temperature», HTTP_GET, (AsyncWebServerRequest *сұранысы) {сұраныс- > send_P (200, «text/plain», String (t).c_str ());}); server.on («/ылғалдылық», HTTP_GET, (AsyncWebServerRequest *сұранысы) {request-> send_P (200, «мәтін/қарапайым», Жол (h).c_str ()); }); // серверді іске қосыңыз server.begin ();} void loop () {unsigned long currentMillis = millis (); if (currentMillis - previousMillis> = interval) {// DHT мәндерін соңғы рет жаңартқан кезде алдыңғыMillis = currentMillis сақтау; // Оқу температурасы Цельсий ретінде (әдепкі) өзгермелі newT = dht.readTemperature (); // Температураны Фаренгейт ретінде оқыңыз (isFahrenheit = true) // float newT = dht.readTemperature (true); // егер температураны оқу сәтсіз болса, t мәнін өзгертпеңіз, егер (isnan (newT)) {Serial.println («Failed DHT сенсорынан оқу! »); } басқа {t = newT; Serial.println (t); } // Оқу ылғалдылығы float newH = dht.readHumidity (); // егер ылғалдылық оқылмаса, h мәнін өзгертпеңіз, егер (isnan (newH)) {Serial.println («DHT сенсорынан оқу мүмкін болмады!»); } басқа {h = newH; Serial.println (h); }}} Кодты жүктемес бұрын мына нәрселерді қойғаныңызға көз жеткізіңіз: const char* ssid = «ESP8266»; // wifi желісінің кез келген түрін қаласаңыз char* password = «password»; // жоғарыда қосылу үшін өту ssidSet ESP8266 кіру нүктесі ретінде: esp8266 кіру нүктесі ретінде орнату үшін біз төменде көрсетілгендей softAP пәрменін қолданамыз; кіру нүктесін құру үшін. WiFi.softAP (ssid, password); Сонымен қатар softAP () әдісіне беруге болатын басқа қосымша параметрлер бар. Міне, барлық параметрлер: Егер сіз сериялық мониторды ашсаңыз, кіру нүктесінің IP мекенжайын көре аласыз. Бұл кодтың бір бөлігін орындау арқылы жасалады. IPAddress IP = WiFi.softAPIP (); Serial.print («AP IP мекенжайы:»); Serial.println (IP); Әдепкі бойынша IP мекенжайы: 192.168.4.1

5 -қадам: Қорытынды кезең: Тестілеу

Қорытынды кезең: тестілеу
Қорытынды кезең: тестілеу

Кодты жүктегеннен кейін ұялы/компьютерлік wifi ашыңыз және esp8266 Wi -Fi желісіне қосылыңыз (кодқа енгізілген ssid және құпия сөзді қолданыңыз). Қосылғаннан кейін сериялық монитордан алынған браузердегі IP мекенжайын ашыңыз (https://192.168.4.1.) және сіз браузердегі температура мен ылғалдылықты менікі ретінде көре аласыз, және біз бұл үшін wifi желісін пайдаланбадық, осылайша esp8266 кіру нүктесі қалай жұмыс істейді.

Ұсынылған: