תוכן עניינים:

נקודת גישה ESP8266 NodeMCU (שרת אינטרנט) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 והדפסת טמפרטורה ולחות בדפדפן: 5 שלבים
נקודת גישה ESP8266 NodeMCU (שרת אינטרנט) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 והדפסת טמפרטורה ולחות בדפדפן: 5 שלבים

וִידֵאוֹ: נקודת גישה ESP8266 NodeMCU (שרת אינטרנט) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 והדפסת טמפרטורה ולחות בדפדפן: 5 שלבים

וִידֵאוֹ: נקודת גישה ESP8266 NodeMCU (שרת אינטרנט) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 והדפסת טמפרטורה ולחות בדפדפן: 5 שלבים
וִידֵאוֹ: ESP8266 WIFI Web Server Access Point 2024, יולי
Anonim
נקודת גישה ESP8266 NodeMCU (שרת) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 והדפסת טמפרטורה ולחות בדפדפן
נקודת גישה ESP8266 NodeMCU (שרת) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 והדפסת טמפרטורה ולחות בדפדפן

היי חברים ברוב הפרויקטים אנו משתמשים ב- ESP8266 וברוב הפרויקטים אנו משתמשים ב- ESP8266 כשרת אינטרנט כך שניתן לגשת לנתונים בכל מכשיר באמצעות wifi על ידי גישה לשרת האינטרנט המתארח על ידי ESP8266 אך הבעיה היחידה היא שצריך נתב עובד עבור זה וגם המכשיר שלנו צריך להתחבר לנתב ועלינו להכניס את פרטי ה- wifi שלנו לקוד כך שאם אתה משנה wifi אז אתה צריך לשנות את האישורים בקוד ואתה צריך להעלות אותו מחדש. אז בעצם יש לנו כאן שתי בעיות: 1- אנו זקוקים לחיבור wifi כדי לארח את שרת האינטרנט (נתב) 2- בכל פעם שאם יש צורך לשנות את חיבור ה- wifi עלינו להזין אישורים ולהעלות מחדש את הקוד. כדי להימנע מכל הבעיה הזו, מה שאנחנו יכולים לעשות הוא במקום לתת גישת wifi נוכל להפוך את ה- ESP8266 ליצירת חיבור wifi משלה כך שאם נתחבר לחיבור ה- wifi הזה נוכל לגשת לשרת האינטרנט של ESP8266. כך שבעצם נארח שרת אינטרנט עם ESP8266 עם נקודת גישה. אז במדריך זה נוכל יהיה ליצור שרת אינטרנט המשתמש בנקודת גישה עם ESP8266 ואנו נחבר חיישן DHT11 ונדפיס טמפרטורת ולחות בדף שרת האינטרנט.

שלב 1: דברים שאתה צריך

דברים שאתה צריך
דברים שאתה צריך
דברים שאתה צריך
דברים שאתה צריך

1x ESP 8266 Nodemcu: 1x DHT11: 1x קרש לחם:.: מעט קופצים:

שלב 2: קבל את ספריות DHT11

קבל את ספריות DHT11
קבל את ספריות DHT11
קבל את ספריות DHT11
קבל את ספריות DHT11

פתח את Arduino IDE שלך ועבור לסקיצה> כלול ספרייה> נהל ספריות. מנהל הספרייה צריך לפתוח. חפש "DHT" בתיבת החיפוש והתקן את ספריית DHT מ- Adafruit. לאחר התקנת ספריית DHT מ- Adafruit, הקלד "Adafruit Unified Sensor" בתיבת החיפוש. גלול כל הדרך למטה כדי למצוא את הספרייה והתקן אותה. לאחר התקנת הספריות, הפעל מחדש את ה- IDE של Arduino.

שלב 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 // לא להגיב על סוג החיישן בשימוש: //#define 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; // צור אובייקט AsyncWebServer ביציאת 80AsyncWebServer (80); // באופן כללי, עליך להשתמש ב"לא חתום ארוך "עבור משתנים המחזיקים זמן // הערך יהפוך במהירות גדול מדי עבור int כדי לאחסן בחנות קודמת ארוכה. = 0; // יאחסן בפעם האחרונה ש- DHT עודכן // מעדכן את קריאות DHT כל 10 שניות מרווח ארוך = 10000; const char index_html PROGMEM = R "rawliteral (שרת DHT ESP8266

טמפרטורה % 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);} return String ();} הגדרת void () {// יציאה טורית למטרות ניפוי Serial.begin (115200); dht.begin (); Serial.print ("הגדרת AP (נקודת גישה) … "); // הסר את פרמטר הסיסמה, אם אתה רוצה ש- AP (נקודת גישה) תהיה פתוחה WiFi.softAP (ssid, סיסמא); IPAddress IP = WiFi.softAPIP (); Serial.print (" כתובת IP של AP: "); Serial.println (IP); // הדפס כתובת IP מקומית ESP8266 Serial.println (WiFi.localIP ()); // מסלול עבור שרת שורש / דף אינטרנט (" / ", HTTP_GET, (AsyncWebServerRequest *בקשה) {request-> send_P (200, "text/html", index_html, מעבד);}); server.on ("/temperature", HTTP_GET, (AsyncWebServerRequest *בקשה) {request- > send_P (200, "text/plain", String (t).c_str ());}); server.on ("/לחות", HTTP_GET, (AsyncWebServerRequest *בקשה) {request-> send_P (200, "טקסט/רגיל", מחרוזת (h).c_str ()); }); // הפעל שרת server.begin ();} לולאת void () {unsign long current millill = millis (); if (currentMillis - previousMillis> = interval) {// שמור את הפעם האחרונה שעדכנת את ערכי DHT previousMillis = currentMillis; // קרא את הטמפרטורה כאשר צלזיוס (ברירת המחדל) צף newT = dht.readTemperature (); // קרא את הטמפרטורה כפרנהייט (isFahrenheit = true) // float newT = dht.readTemperature (true); // אם קריאת הטמפרטורה נכשלה, אל תשנה את ערך t אם (isnan (newT)) {Serial.println ("נכשל לקרוא מחיישן DHT! "); } אחר {t = newT; Serial.println (t); } // קראו לחות לצוף newH = dht.readHumidity (); // אם קריאת הלחות נכשלה, אל תשנה את ערך h אם (isnan (newH)) {Serial.println ("קריאה נכשלה מחיישן DHT!"); } אחר {h = newH; Serial.println (ח); }}} לפני שתעלה את הקוד הקפד לשים את הדברים הבאים: const char* ssid = "ESP8266"; // מה שתרצה מה- wifi שאתה רוצה konstant char* password = "password"; // pass להתחבר אל ssidSet למעלה ESP8266 כנקודת גישה: כדי להגדיר את esp8266 כנקודת גישה נשתמש בפקודת softAP כפי שמוצג להלן; ליצירת נקודת גישה. WiFi.softAP (ssid, סיסמא); ישנם גם פרמטרים אופציונליים אחרים שתוכל להעביר לשיטת softAP (). להלן כל הפרמטרים: אם אתה פותח את הצג הטורי תוכל לראות את כתובת ה- IP של נקודת הגישה. מה שמתבצע על ידי ביצוע חלק מהקוד. IPAddress IP = WiFi.softAPIP (); Serial.print ("כתובת IP של AP:"); Serial.println (IP); כברירת מחדל כתובת ה- IP היא: 192.168.4.1

שלב 5: שלב אחרון: בדיקה

שלב אחרון: בדיקה
שלב אחרון: בדיקה

לאחר העלאת הקוד פתח את הנייד/מחשב ה- wifi והתחבר ל- wifi esp8266 (מה ש- ssid והסיסמה שהזנת בקוד השתמש בזה). לאחר החיבור פשוט פתח את ה- IP בדפדפן שלך שקיבלנו מהצג הטורי (https://192.168.4.1.) ותוכל לראות את הטמפרטורה והלחות בדפדפן שלך כמו שלי. ולא השתמשנו בכל רשת wifi כדי לעשות זאת כך כך עובדת נקודת הגישה של esp8266.

מוּמלָץ: