Përmbajtje:
- Furnizimet
- Hapi 1: Bëjeni që të funksionojë
- Hapi 2: Si funksionon Kodi
- Hapi 3: Vendosni NODEMCU si Server
- Hapi 4: Ngarko skedarin HTML
- Hapi 5: Provojeni
Video: Si të përdorni ESP8266 si server në internet: 5 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:10
Përshëndetje, aktualisht po përdor Windows 10, NodeMCU 1.0 dhe këtu është lista e Softuerëve që kam përdorur dhe udhëzuesit e instalimit që kam ndjekur:
- Arduino IDE
- Pllaka shtesë për esp8266
- Spiff
Biblioteka e përdorur:
Uebfaqe
Kam përdorur NodeMCU si një server për të shërbyer një skedar HTML që kam bërë nga mësuesi. Për t'i shërbyer këtij skedari, e ngarkova skedarin në sistemin e skedarëve nodemcu duke përdorur Spiffs. Skedari HTML dërgon të dhëna në nodemcu duke përdorur rrjeta në internet për t'u shtypur në monitorin serik për këtë. Komunikimi i shpejtë dypalësh përmes rrjetave të uebit të serverit dhe klientit mundësoi që kjo të përdoret si telekomandë. Në hapat e mëposhtëm, nuk do të shpjegoj se si funksionon kodi im
Furnizimet
NodeMCU
Hapi 1: Bëjeni që të funksionojë
Këtu janë hapat se si funksionon
- Shkarkoni skedarin e bashkangjitur dhe hapni skedarin mousebot.ino
- Shkoni te skica> shfaqni skedarin e skicës dhe krijoni një dosje të re të quajtur të dhëna
- Ruani skedarin html nga ky tutorial në dosjen me emrin. Unë e quaj timen si "Joystick"
- Sigurohuni që gryka juaj është tashmë funksionale duke shkuar te mjetet dhe duke parë "ngarkimin e të dhënave të skicës esp8266"
- Ngarko skedarin html në nodemcu duke klikuar "ngarkimi i të dhënave të skicës esp8266"
- Pas ngarkimit të skedarit, ngarkoni në nodemcu skedarin mousebot.ino duke hyrë në arduino IDE dhe duke shtypur ctrl U
Hapi 2: Si funksionon Kodi
Së pari, ne përfshijmë bibliotekat që ky kod do të përdorë
// për të mundësuar që ESP8266 të lidhet me WIFI
#include #include #include // Mundëson që ESP8266 të veprojë si një server #include // mundëson komunikimin me serverin dhe klientin (pajisja juaj e lidhur) #include #include // Për të hapur skedarin e ngritur në nodemcu #include
Vendosni esp8266 si një server në internet i hapur në portën 80. Portet janë rrugë nëpër të cilat do të kalojnë të dhënat. Si një port server, do t'i dërgojë skedarin HTML klientit (deivimet e lidhura me të).
Shton një lidhje websocket duke përdorur portën 81 për të dëgjuar mesazhet nga klienti
Rrjetat e uebit kanë parametrin num, WStype_t, ngarkesën dhe madhësinë. Numri përcakton numrin numërues të klientit, ngarkesa është mesazhi që ai dërgon, madhësia është gjatësia e mesazhit dhe WStype_t është për ngjarje të ndryshme si p.sh.
- WStype_DISCONNECTED - në shkyçjen e një klienti.
- WStype_CONNECTED: - kur një klient lidhet
- WStype_TEXT - Marrë të dhëna nga klienti
Në varësi të llojit të ngjarjes, veprime të ndryshme bëhen dhe komentohen këtu
i pavlefshëm webSocketEvent (uint8_t num, lloji WStype_t, uint8_t * ngarkesa, madhësia_t gjatësia) {
switch (type) {case WStype_DISCONNECTED: Serial.printf ("
Hapi 3: Vendosni NODEMCU si Server
vendos ssid dhe fjalëkalimin që do të përdorni për t'u lidhur me të më vonë
const char *ssid = "Provo";
const char *fjalëkalim = "12345678";
në ngritjen, ne specifikojmë shkallën me të cilën do të komunikojë nodemcu dhe kompjuteri ynë, e cila është 115200.
konfigurimi i pavlefshëm (i pavlefshëm) {
Serial.filloj (115200); Serial.print ("\ n");
e vendosur në true gjithashtu shihni daljen diagnostikuese wifi në terminalin serila
Serial.setDebugOutput (e vërtetë);
initalizoni sistemin e skedarëve
SPIFFS.filloj ();
Konfiguroni nodemcu si një pikë aksesi me ssid dhe defiend të fjalëkalimit më herët dhe printon ip e nodemcu me të cilën do të lidheni më herët. si parazgjedhje është 192.168.4.1
Serial.print ("Konfigurimi i pikës së hyrjes …");
Modaliteti WiFi (WIFI_AP); WiFi.softAP (ssid, fjalëkalim); IPAdresa myIP = WiFi.softAPIP (); Serial.print ("Adresa IP e AP:"); Serial.println (myIP);
Iniconi rrjetën në internet në nodemcu, i cili është server pur
webSocket.begin ();
Thërret funksionin webSocketEvent kur ndodh një ngjarje websocket.
webSocket.onEvent (webSocketEvent);
Për korrigjimin, printoni "WebSocket server filloi" në një linjë të re. Kjo është për të përcaktuar linjën e kodit që nodemcu po përpunon
Serial.println ("Serveri WebSocket filloi.");
kur një klient viziton 192.168.4.1, ai do të thërrasë funksionin handleFileRead dhe do të dërgojë me të parametrin URI të serverit i cili në këtë rast është informacioni ynë nodemcu. Funksioni handleFileRead do t'i shërbejë skedarit html nga sistemi i skedarëve nodemcu
server.onNotFound ( () {
nëse (! handleFileRead (server.uri ()))
nëse nuk mund të gjendet do të shfaqë "FileNotFound"
server.send (404, "text/plain", "FileNotFound");
});
Fillon serveri dhe serveri i printimit HTTP filloi.
server.filloj (); Serial.println ("Serveri HTTP filloi");
Në lakun tonë të pavlefshëm, ne i mundësojmë serverit të trajtojë me kontinuitet klientin dhe komunikimet e tij në ueb, si më poshtë:
lak void (i pavlefshëm) {
server.handleClient (); webSocket.loop ();}
Hapi 4: Ngarko skedarin HTML
ne do të përdorim një funksion të quajtur handleFileRead për të hapur dhe skedarin html nga sistemi i skedarëve nodemcu. do të kthejë një vlerë boolean për të përcaktuar nëse është ngarkuar apo jo.
Kur "192.168.4.1/" është hapur nga klienti, ne vendosim rrugën e skedarit në "/Joystick.html, emri i skedarit tonë në dosjen e të dhënave
bool handleFileRead (String path) {
Serial.println ("handleFileRead:" + shteg); if (path.endsWith ("/")) path += "Joystick.html"; if (SPIFFS.exists (path)) {File file = SPIFFS.open (path, "r"); size_t dërguar = server.streamFile (skedar, "tekst/html"); file.close (); kthehet e vërtetë; } kthimi false; }
Kontrolloni nëse ekziston rruga e skedarit "/Joystick.html"
nëse (SPIFFS.existon (shtegu)) {
Nëse ekziston, hapni shtegun me qëllim që ta lexoni atë të specifikuar me "r". Shkoni këtu për më shumë qëllime.
Skedari i skedarit = SPIFFS.open (rruga, "r");
Dërgon skedarin në server si me një lloj përmbajtje të "tekstit/html"
size_t dërguar = server.streamFile (skedar, "tekst/html");
mbyll dosjen
file.close ();
funksioni handleFileRead kthen true
kthehu e vërtetë;}
nëse shtegu i skedarit nuk ekziston, funksioni handleFileRead kthen false
kthehet e vërtetë; }
Hapi 5: Provojeni
Lidhuni me nodeMCU dhe shkoni te "192.168.4.1" dhe provojeni!:)
Recommended:
Udhëzues: Si të përdorni ESP32-CAM në Web Server për transmetimin e videove: 3 hapa
Udhëzues: Si të përdorni ESP32-CAM në Web Server për transmetimin e videove: Përshkrimi: ESP32-CAM është një Bord i Zhvillimit të Vizionit IoT Wireless ESP32 në një faktor shumë të vogël, i krijuar për t'u përdorur në projekte të ndryshme IoT, të tilla si pajisje shtëpiake të zgjuara, industriale kontroll pa tel, monitorim pa tel, identifikim pa tel QR
Si të përdorni një telefon Android si një kamerë në internet me Skype: 5 hapa
Si të përdorni një telefon Android si një kamerë në internet me Skype: Ekziston një thënie e vjetër se një fotografi vlen sa një mijë fjalë … dhe ka një thënie të re se një video vlen një milion. Tani kjo mund të duket si një ekzagjerim, por ka një ndryshim të madh midis të folurit me dikë në thirrje dhe të folurit me
Si të përdorni terminalin Mac dhe si të përdorni funksionet kryesore: 4 hapa
Si të përdorni terminalin Mac dhe si të përdorni funksionet kryesore: Ne do t'ju tregojmë se si të hapni terminalin MAC. Ne gjithashtu do t'ju tregojmë disa veçori brenda Terminalit, të tilla si ifconfig, ndryshimi i drejtorive, qasja në skedarë dhe arp. Ifconfig do t'ju lejojë të kontrolloni adresën tuaj IP dhe reklamën tuaj MAC
Përdorni Orange Pi Pa Monitor duke Përdorur SSH dhe VNC Server: 6 hapa
Përdorni Orange Pi Pa Monitor duke Përdorur SSH dhe VNC Server: Orange Pi është si një mini kompjuter. Ajo ka të gjitha portet bazë që ka një kompjuter normal. Ashtu si HDMIUSBEthernetIT ka disa porte të veçanta të veçanta, siUSUS OTGGPIO HeadersSD Slot Card Card Porta e Kamerave Paralele Nëse dëshironi të përdorni portokalli pi, duhet të keni nevojë për
Si ta përdorni videokamerën tuaj si një kamerë në internet: 4 hapa
Si ta përdorni videokamerën tuaj si një kamerë në internet: Nëse jeni si unë, keni shumë miq që janë larguar nga shtëpia dhe jetojnë mijëra kilometra larg, ose keni miq me të cilët keni shkuar në universitet, të cilët të gjithë jetojnë vende te ndryshme. Unë personalisht i urrej telefonat dhe pajisjet