תוכן עניינים:
- אספקה
- שלב 1: לגרום לזה לעבוד
- שלב 2: כיצד פועל הקוד
- שלב 3: הגדר את NODEMCU כשרת
- שלב 4: טען קובץ HTML
- שלב 5: נסה זאת
וִידֵאוֹ: אופן השימוש ב- ESP8266 כשרת אינטרנט: 5 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:12
היי, אני משתמש כרגע ב- Windows 10, NodeMCU 1.0 והנה רשימת התוכנות בהן השתמשתי ומדריכי ההתקנה שעקבתי אחריהן:
- Arduino IDE
- לוחות נוספים עבור esp8266
- ספיף
הספרייה בשימוש:
Websocket
השתמשתי ב- NodeMCU כשרת כדי להגיש קובץ HTML שהכנתי מהתיעוד. כדי לשרת קובץ זה, העליתי את הקובץ למערכת הקבצים nodemcu באמצעות Spiffs. קובץ ה- HTML שולח נתונים ל- nodemcu באמצעות שקעי אינטרנט להדפסה על הצג הטורי לשם כך. התקשורת הדו -כיוונית המהירה באמצעות שקעי השרת והלקוח אפשרה זאת לשליטה מרחוק. בשלבים הבאים, לא תסביר איך הקוד שלי עובד
אספקה
NodeMCU
שלב 1: לגרום לזה לעבוד
להלן השלבים כיצד הוא פועל
- הורד את הקובץ המצורף ופתח את הקובץ mousebot.ino
- עבור אל סקיצה> הצג תיקיית סקיצה וצור תיקייה חדשה בשם נתונים
- שמור את קובץ html מהדרכה זו בתיקייה בשם. קראתי לשלי בשם "ג'ויסטיק"
- וודא שהספיף שלך כבר מתפקד על ידי מעבר לכלים וראיית "העלאת נתוני הסקיצה של esp8266"
- העלה את קובץ html ל- nodemcu על ידי לחיצה על "esp8266 העלאת נתוני סקיצה"
- לאחר העלאת הקובץ, העלה ל- nodemcu את קובץ mousebot.ino על ידי הפעלה ל- arduino IDE ולחיצה על ctrl U
שלב 2: כיצד פועל הקוד
ראשית, אנו כוללים את הספריות שבהן קוד זה ישתמש
// כדי לאפשר ל- ESP8266 להתחבר ל- WIFI
#include #include #include // מאפשרת ל- ESP8266 לפעול כשרת #include // מאפשרת תקשורת עם השרת והלקוח (המכשיר המחובר שלך) #include #include // לפתיחת הקובץ שהועלה ב- nodemcu #include
הגדר את esp8266 כשרת אינטרנט שנפתח ביציאה 80. יציאות הן מסלולים שהנתונים יעברו דרכם. כיציאת שרת, הוא ישלח את קובץ ה- HTML ללקוח (המכשירים המחוברים אליו).
מוסיף חיבור לשקע אינטרנט באמצעות יציאה 81 להאזנה להודעות מהלקוח
לשקעי הרשת יש את הפרמטר num, WStype_t, מטען וגודל. המספר קובע את מספר הלקוח, המטען הוא ההודעה שהוא שולח, הגודל הוא אורך ההודעה ו- WStype_t מיועד לאירועים שונים כגון:
- WStype_DISCONNECTED - על ניתוק של לקוח.
- WStype_CONNECTED: - כאשר לקוח מתחבר
- WStype_TEXT - התקבל נתונים מהלקוח
בהתאם לסוג האירוע מבצעים פעולות שונות ומגיבים כאן
void webSocketEvent (uint8_t num, סוג WStype_t, uint8_t * מטען, גודל_אורך) {
switch (סוג) {case WStype_DISCONNECTED: Serial.printf ("[%u] נותק! / n", מספר); // מדפיס נתונים לשבירת הצג הטורי; מקרה WStype_CONNECTED: {IPAddress ip = webSocket.remoteIP (num); // מקבל את כתובת ה- IP של הלקוח Serial.printf ("[%u] מחובר מ-%d.%d.%d.%d url:%s / n", num, ip [0], ip [1], ip [2], ip [3], מטען); webSocket.sendTXT (num, "מחובר"); // שולח "conencted" למסוף הדפדפן} break; מקרה WStype_TEXT: Serial.printf ("[%u] נתונים: %s / n", מספר, מטען); // מדפיס את מספר הלקוח ב- %u והנתונים שהתקבלו כמחרוזות בהפסקה של %s / n;}}
שלב 3: הגדר את NODEMCU כשרת
מגדיר את ה- ssid והסיסמה שבה תשתמש כדי להתחבר אליו מאוחר יותר
const char *ssid = "נסה";
const char *password = "12345678";
בהגדרה, אנו מציינים את הקצב שבו הנודמקו והמחשב שלנו יתקשרו, שהם 115200.
הגדרת void (void) {
Serial.begin (115200); Serial.print ("\ n");
מוגדר לאמיתי ראה את פלט האבחון של wifi במסוף הסרילה
Serial.setDebugOutput (true);
לחיות את מערכת הקבצים
SPIFFS.begin ();
הגדר את ה- nodemcu כנקודת גישה עם הגנת ssid וסיסמה קודם לכן ומדפיס את ה- ip של ה- nodemcu שאליו תתחבר קודם לכן. כברירת מחדל הוא 192.168.4.1
Serial.print ("הגדרת נקודת גישה …");
WiFi.mode (WIFI_AP); WiFi.softAP (ssid, סיסמא); IPAddress myIP = WiFi.softAPIP (); Serial.print ("כתובת IP של AP:"); Serial.println (myIP);
אתחל את שקע האינטרנט ב- nodemcu, שהוא שרת pur
webSocket.begin ();
קורא לפונקציה webSocketEvent כאשר מתרחש אירוע websocket.
webSocket.onEvent (webSocketEvent);
לצורך איתור באגים, הדפס "שרת WebSocket הופעל" בשורה חדשה. זה כדי לקבוע את שורת הקוד שה- nodemcu מעבד
Serial.println ("שרת WebSocket הופעל.");
כאשר לקוח מבקר ב- 192.168.4.1, הוא יקרא לפונקציה handleFileRead וישלח איתו את ה- URI של שרת הפרמטרים שבמקרה זה הוא המידע של nodemcu שלנו. הפונקציה handleFileRead תשרת את קובץ ה- html ממערכת הקבצים nodemcu
server.onNotFound ( () {
if (! handleFileRead (server.uri ()))
אם לא ניתן למצוא אותו יציג "FileNotFound"
server.send (404, "text/plain", "FileNotFound");
});
מתחיל את השרת ומדפיס שרת HTTP שהופעל.
server.begin (); Serial.println ("שרת HTTP הופעל");
בלולאת הריק שלנו, אנו מאפשרים לשרת להתמודד ללא הרף עם הלקוח ותקשורת האינטרנט שלו כדלקמן:
לולאת חלל (void) {
server.handleClient (); webSocket.loop ();}
שלב 4: טען קובץ HTML
נשתמש בפונקציה בשם handleFileRead לפתיחה ובקובץ html ממערכת הקבצים nodemcu. הוא יחזיר ערך בוליאני כדי לקבוע אם הוא נטען או לא.
כאשר "192.168.4.1/" נפתח על ידי הלקוח הגדרנו את נתיב הקובץ ל- "/Joystick.html, שם הקובץ שלנו בתיקיית הנתונים.
bool handleFileRead (נתיב מחרוזת) {
Serial.println ("handleFileRead:" + נתיב); if (path.endsWith ("/")) path += "Joystick.html"; if (SPIFFS.exists (נתיב)) {קובץ קובץ = SPIFFS.open (נתיב, "r"); size_t נשלח = server.streamFile (קובץ, "text/html"); file.close (); להחזיר נכון; } החזר שקר; }
בדוק אם קיים נתיב הקובץ "/Joystick.html"
אם (SPIFFS.exists (נתיב)) {
אם הוא קיים, פתח את הנתיב במטרה לקרוא אותו אשר מצוין על ידי ה- "r". לך לכאן למטרות נוספות.
קובץ קובץ = SPIFFS.open (נתיב, "r");
שולח את הקובץ לשרת כמו סוג תוכן של "טקסט/HTML"
size_t נשלח = server.streamFile (קובץ, "text/html");
לסגור את הקובץ
file.close ();
הפונקציה handleFileRead מחזירה true
להחזיר נכון;}
אם נתיב הקובץ אינו קיים, הפונקציה handleFileRead מחזירה שקר
להחזיר נכון; }
שלב 5: נסה זאת
התחבר אל nodeMCU ועבור אל "192.168.4.1" ונסה את זה!:)
מוּמלָץ:
אופן השימוש במודול RFID-RC522 עם Arduino: 5 שלבים
אופן השימוש במודול RFID-RC522 עם Arduino: במדריך זה, אני אתן הסבר על עקרון העבודה הבסיסי של מודול ה- RFID יחד עם התגים והשבבים שלו. אני גם אספק דוגמה קצרה לפרויקט שעשיתי באמצעות מודול RFID זה עם נורית RGB. כרגיל עם התוספות שלי
אופן השימוש במודול שעון בזמן אמת (DS3231): 5 שלבים
אופן השימוש במודול שעון בזמן אמת (DS3231): DS3231 הוא שעון בזמן אמת בעל עלות נמוכה ומדויקת במיוחד (RTC) עם מתנד קריסטל מפוצל בטמפרטורה (TCXO) וקריסטל. המכשיר כולל כניסת סוללה ושומר על דיוק זמן מדויק כאשר הכוח הראשי ל
אופן השימוש מחולל אותות תדר Arduino DDS AD9850: 7 שלבים
אופן השימוש במחולל אותות תדר Arduino DDS AD9850: במדריך זה נלמד כיצד להכין מחולל אותות תדר באמצעות מודול AD9850 ו- Arduino. צפה בסרטון! הערה: הצלחתי להשיג תדר של עד 50MHz אך איכות האות מגיעה גרוע יותר עם התדרים הגבוהים יותר
אופן השימוש בחיישן PIR ובמודול זמזם - מדריך Visuino: 6 שלבים
אופן השימוש בחיישן PIR ובמודול זמזם - מדריך Visuino: במדריך זה נלמד כיצד להשתמש בחיישן PIR ובמודול זמזם להשמעת צליל בכל פעם שחיישן PIR מזהה תנועה. צפה בסרטון הדגמה
אופן השימוש ב- IRC (צ'אט ממסר אינטרנט): 5 שלבים
אופן השימוש ב- IRC (צ'אט ממסר אינטרנט): [עריכה] זהו מדריך המיועד כמנה ראשונה למי שעוד לא מבין צ'אט ממסר אינטרנט, או IRC. פרויקט זה אינו מיועד לכסות את כל היקף ה- IRC ואת כל יכולותיו של כל לקוח, אלא מכוון לזכייה