ESP32 staatilise IP-aadressi seadistamine

Esp32 Staatilise Ip Aadressi Seadistamine



IP-aadress on kordumatu numbriseeria, mis suudab tuvastada võrgus oleva seadme. Mitu seadet ja arvutit kasutavad üksteisega suhtlemiseks IP-aadresse. Staatiline IP aadress on nagu kindel aadress nagu ka tänava aadress. See näitab, et staatilised IP-aadressid ei muutu ja see aitab teistel seadmetel kontrollida, kus konkreetne seade või arvuti asub.

Selles artiklis seadistame ESP32 staatilise IP-aadressi, mida teised seadmed mäletavad.

ESP32 IP-aadressi tutvustus

ESP32-ga töötamine võib vajada eraldi staatilist IP-aadressi, kuna ESP32 jaoks veebiserveri kavandamisel pääseme sellele veebiserverile juurde ESP32 IP-aadressi kasutades. Selle IP-aadressi määrab WiFi-võrk, millega ESP32 on ühendatud.







See võib projektis ESP32 käsitlemisel probleeme tekitada, sest iga kord, kui ESP32 välja lülitatakse või lähtestatakse, määrab WiFi-võrk sellele uue IP-aadressi. Seetõttu vajame veebiserveri jaoks uut IP-aadressi. Seega on kiire lahendus ESP32 jaoks staatilise IP-aadressi määramine, mis jääb muutumatuks isegi siis, kui ESP32 on välja lülitatud või lähtestatud.



Tavaliselt DHCP (Dynamic Host Configuration Protocol) võrguhaldustööriist määrab IP-aadressid kõigile WiFi-võrku ühendatud seadmetele. DHCP on abiks, kuna väldib võrguadministraatorite vajadust määrata käsitsi IP-aadresse kõigile võrku ühendatud seadmetele. Koduvõrgus toimib WiFi-ruuter tavaliselt DHCP-serverina.



Lisaks IP-aadressile määrab DHCP ka mõned muud parameetrid, sealhulgas:





  • Alamvõrgu mask: See on 32-bitine number, mis varjab IP-aadresse ja jagab need võrgu- ja hostiaadressideks.
  • Lüüsi aadress: See on seadme IP-aadress, mis ühendab kohaliku võrgu seadmed Internetiga, tavaliselt kodus, see on WiFi-ruuter.
  • DNS: See on domeeninimeserveri IP-aadress.

Kõik need parameetrid on ESP32 veebiserverile juurdepääsuks olulised. Kui kasutame ESP32 jaoks staatilist IP-aadressi, tuleb kõik need parameetrid edastada, vastasel juhul ei õnnestu ESP32-l sidet luua.

Kui ESP32-le on määratud staatiline IP-aadress, ei kasuta see seda DHCP serverisse ja ei too vajalikke andmeid. Seega, ESP32 ühendamiseks staatilise IP-aadressiga WiFi-võrgus peame teadma ülalnimetatud parameetreid, selleks ühendame selle kõigepealt WiFi-võrguga ja kontrollime kõiki võrgu parameetreid, sealhulgas alamvõrgu mask, lüüsi aadress ja DNS-i IP aadress.



Pärast parameetrite tundmist saame määrata staatilise IP-aadressi.

Võrgu vaikeparameetrite leidmine

Nagu eelmises jaotises arutatud, ühendame ESP32 WiFi-võrguga, et saada kõik selle võrgu parameetrid. Seega, määrates võrgu SSID ja parooli ning kasutades WiFi.h teeki, saame ESP32 võrku ühendada.

Kood

Laadige ESP32 plaadile üles alltoodud kood ja ärge unustage muuta SSID-d ja parooli oma võrgumandaatidega.

#include


konst char * ssid = 'teie võrgunimi' ;
konst char * parool = 'yourNetworkPass' ;

tühine seadistamine ( ) {
Sari. alustada ( 115 200 ) ;

WiFi. alustada ( ssid , parool ) ;

samal ajal ( WiFi. olek ( ) != WL_CONNECTED ) {
viivitus ( 500 ) ;
Sari. printida ( 'Ühendamine... \n \n ' ) ;
}

Sari. printida ( 'Kohalik IP:' ) ;
Sari. println ( WiFi. kohalik IP ( ) ) ;
Sari. printida ( 'Alamvõrgu mask:' ) ;
Sari. println ( WiFi. alamvõrgumask ( ) ) ;
Sari. printida ( 'Lüüsi IP:' ) ;
Sari. println ( WiFi. lüüsi IP ( ) ) ;
Sari. printida ( 'DNS 1:' ) ;
Sari. println ( WiFi. dnsIP ( 0 ) ) ;
Sari. printida ( 'DNS 2:' ) ;
Sari. println ( WiFi. dnsIP ( 1 ) ) ;
}

tühine silmus ( ) { }

Kood algas WiFi.h raamatukogu kaasamisega. Järgmisena määratlesime SSID ja parooli. Siin on ESP32 ühendatud WiFi-võrguga ja kõik vajalikud parameetrid määrab DHCP-server.

Koodi teises osas printisime DHCP-serveri määratud IP-aadressi koos lisaparameetritega: alamvõrgu mask, lüüsi IP ja mõlemad DNS-serveri IP-d.

Väljund

Väljundis näeme kõiki jadamonitorile trükitud võrguparameetreid.

Nüüd seame staatiliseks IP-ks ESP32. Kõik ülejäänud parameetrid, välja arvatud kohalikud IP-aadressid, kasutatakse järgmises jaotises.

Staatilise IP-aadressi määramine ESP32 jaoks

Kuna me juba teame selle võrgu parameetreid, kus ESP32 on nüüd ühendatud, kasutame ESP32 ühendamiseks samas võrgus kohandatud IP-aadressi, kasutades muid parameetreid muutmata kujul, nagu saime eelmises väljundis.

Kuid enne seda peame installima ESP32Ping.h raamatukogu Arduino IDE-s. Seda teeki kasutades saame kontrollida, kas meie staatiline IP-aadress töötab või mitte. Klõpsake allalaadimiseks ESP32Ping.h raamatukogu.

Kui ZIP-fail on alla laaditud, minge aadressile: Sketch>Include Library> Add .Zip Library

  Graafiline kasutajaliides, tekst, rakendus Kirjeldus genereeritakse automaatselt

Kood

Nüüd laadige alla ESP32-s antud kood. See kood määrab ESP32 jaoks staatilise IP-aadressi. Ärge unustage asendada võrgu SSID ja parool.

#include

#include

konst char * ssid = 'teie võrgunimi' ;
konst char * parool = 'yourNetworkPass' ;

IP-aadress staatiline IP ( 192 , 168 , 18 , 53 ) ;
IP-aadressi lüüs ( 192 , 168 , 18 , 1 ) ;
IP-aadressi alamvõrk ( 255 , 255 , 255 , 0 ) ;
IP-aadressi dns ( 101 , viiskümmend , 101 , viiskümmend ) ;

tühine seadistamine ( ) {
Sari. alustada ( 115 200 ) ;

kui ( WiFi. konfig ( staatiline IP , värav , alamvõrk , dns , dns ) == vale ) {
Sari. println ( 'Konfigureerimine ebaõnnestus.' ) ;
}

WiFi. alustada ( ssid , parool ) ;

samal ajal ( WiFi. olek ( ) != WL_CONNECTED ) {
viivitus ( 500 ) ;
Sari. printida ( 'Ühendamine... \n \n ' ) ;
}

Sari. printida ( 'Kohalik IP:' ) ;
Sari. println ( WiFi. kohalik IP ( ) ) ;
Sari. printida ( 'Alamvõrgu mask:' ) ;
Sari. println ( WiFi. alamvõrgumask ( ) ) ;
Sari. printida ( 'Lüüsi IP:' ) ;
Sari. println ( WiFi. lüüsi IP ( ) ) ;
Sari. printida ( 'DNS 1:' ) ;
Sari. println ( WiFi. dnsIP ( 0 ) ) ;
Sari. printida ( 'DNS 2:' ) ;
Sari. println ( WiFi. dnsIP ( 1 ) ) ;

korralik edu = Ping. ping ( 'www.google.com' , 3 ) ;

kui ( ! edu ) {
Sari. println ( ' \n Ping ebaõnnestus' ) ;
tagasi ;
}

Sari. println ( ' \n Ping õnnestus.' ) ;
}

tühine silmus ( ) { }

Kood algas WiFi ja Ping-teegi kaasamisega. Järgmisena määratlesime WiFi võrgu SSID ja parooli.

Pärast seda määratlesime kõik parameetrid, sealhulgas staatilise IP-aadressi koos DNS-i, IP-lüüsi ja alamvõrguga. Pange tähele, et oleme määranud IP-aadressi (192, 168, 18, 53) mis asub samas IP-aadressi alamvõrgus, mille saime eelmises koodis. Veenduge, et seda IP-aadressi ei kasutaks ükski teine ​​võrgus olev seade.

Kui WiFi on ühendatud, printisime kõik võrguparameetrid ja testisime Pingi Google'i abil. Kui kõik parameetrid on õigesti määratletud Ping õnnestus ilmub teade.

Väljund

Kui me ESP32 plaadi pärast lahtiühendamist uuesti arvutiga ühendasime, oli selle staatiline IP-aadress taas konfigureeritud, mis näitab, et see ei muutu isegi siis, kui toide kaob.

Oleme ESP32-le edukalt andnud staatilise IP-aadressi.

Järeldus

ESP32-ga projektide kavandamisel töötades on vajalik staatiline IP-aadress. Kui mitu seadet peavad ühenduma ESP32 staatiliste IP-aadressidega, muutke kogu protsess sujuvaks. Võrguparameetrite abil saame määratleda mis tahes staatilise IP-aadressi. Selles artiklis käsitlesime staatilise IP-aadressi määratlemiseks vajalikke samme.