Comment définir l'adresse IP statique ESP32

Comment Definir L Adresse Ip Statique Esp32



Une adresse IP est la série unique de nombres qui peuvent identifier un appareil dans un réseau. Plusieurs appareils et ordinateurs utilisent des adresses IP pour communiquer entre eux. I.P statique l'adresse est comme une adresse fixe, tout comme l'adresse de la rue. Il indique que les adresses IP statiques ne changent pas et aide les autres appareils à vérifier où se trouve un appareil ou un ordinateur spécifique.

Dans cet article, nous allons définir une adresse IP statique ESP32 qui peut être mémorisée par d'autres appareils.

Introduction à l'adresse IP ESP32

Travailler avec ESP32 peut nécessiter une adresse IP statique distincte, car lorsque nous concevons un serveur Web pour ESP32, nous accédons à ce serveur Web en utilisant l'adresse IP d'ESP32. Cette adresse IP est attribuée par le réseau WiFi auquel ESP32 est connecté.







Cela peut causer des problèmes lors de la gestion d'ESP32 dans un projet, car chaque fois qu'ESP32 s'arrête ou se réinitialise, une nouvelle adresse IP lui sera attribuée par le réseau WiFi. Par conséquent, nous avons besoin d'une nouvelle adresse IP pour le serveur Web. Ainsi, une solution rapide à cela consiste à définir une adresse IP statique pour ESP32 qui reste inchangée même si ESP32 est éteint ou réinitialisé.



Normalement DHCP (Dynamic Host Configuration Protocol) outil de gestion de réseau attribue des adresses IP à tous les appareils connectés à l'intérieur d'un réseau WiFi. DHCP est utile car il évite aux administrateurs réseau d'avoir à attribuer manuellement des adresses IP à tous les périphériques connectés au réseau. Dans le réseau domestique, le routeur WiFi agit normalement comme un serveur DHCP.



Outre l'adresse IP, DHCP attribue également d'autres paramètres, notamment :





  • Masque de sous-réseau : Il s'agit d'un nombre 32 bits qui masque les adresses IP et les divise en adresses réseau et hôte.
  • Adresse de la passerelle: Il s'agit de l'adresse IP d'un appareil qui relie les appareils du réseau local à Internet. Normalement, à la maison, il s'agit d'un routeur WiFi.
  • DNS : Il s'agit de l'adresse IP du serveur de noms de domaine.

Tous ces paramètres sont importants pour accéder au serveur web ESP32. Lorsque nous utiliserons une adresse IP statique pour ESP32, tous ces paramètres doivent être transmis, sinon ESP32 ne parviendra pas à établir la communication.

Une fois que l'ESP32 est attribué avec une adresse IP statique, il n'utilisera pas le DHCP serveur et ne récupèrera pas les données requises. Ainsi, pour connecter ESP32 à un réseau WiFi avec une adresse IP statique, nous devons connaître les paramètres mentionnés ci-dessus pour cela, nous allons d'abord le connecter au réseau WiFi et vérifier tous les paramètres du réseau, y compris masque de sous-réseau, adresse de passerelle et IP DNS adresse.



Après avoir pris connaissance des paramètres, nous pouvons attribuer une adresse IP statique.

Recherche des paramètres réseau par défaut

Comme indiqué dans la section précédente, nous connecterons ESP32 au réseau WiFi pour obtenir tous les paramètres de ce réseau. Ainsi, en définissant le SSID et le mot de passe du réseau et en utilisant la bibliothèque WiFi.h, nous pouvons connecter l'ESP32 à un réseau.

Code

Téléchargez le code indiqué ci-dessous dans la carte ESP32 et n'oubliez pas de changer le SSID et le mot de passe avec vos propres informations d'identification réseau.

#include


constante carboniser * ssid = 'votreNomRéseau' ;
constante carboniser * le mot de passe = 'votreNetworkPass' ;

annuler mettre en place ( ) {
En série. commencer ( 115200 ) ;

Wifi. commencer ( ssid , le mot de passe ) ;

tandis que ( Wifi. statut ( ) != WL_CONNECTED ) {
retard ( 500 ) ;
En série. imprimer ( 'De liaison... \n \n ' ) ;
}

En série. imprimer ( « IP locale : » ) ;
En série. println ( Wifi. IPlocale ( ) ) ;
En série. imprimer ( « Masque de sous-réseau : » ) ;
En série. println ( Wifi. masque de sous-réseau ( ) ) ;
En série. imprimer ( « IP de la passerelle : » ) ;
En série. println ( Wifi. gatewayIP ( ) ) ;
En série. imprimer ( « DNS 1 : » ) ;
En série. println ( Wifi. DNSIP ( 0 ) ) ;
En série. imprimer ( « DNS 2 : » ) ;
En série. println ( Wifi. DNSIP ( 1 ) ) ;
}

annuler boucle ( ) { }

Le code a commencé en incluant la bibliothèque WiFi.h. Ensuite, nous avons défini le SSID et le mot de passe. Ici, ESP32 est connecté au réseau WiFi et tous les paramètres nécessaires seront définis par le serveur DHCP.

Dans la deuxième partie du code, nous avons imprimé l'adresse IP attribuée par le serveur DHCP avec des paramètres supplémentaires : le masque de sous-réseau, l'IP de la passerelle et les deux IP du serveur DNS.

Production

En sortie, nous pouvons voir tous les paramètres réseau imprimés sur le moniteur série.

Nous allons maintenant définir une adresse IP statique sur ESP32. À l'exception des adresses IP locales, tous les paramètres restants seront utilisés dans la section suivante.

Définition d'une adresse IP statique pour ESP32

Comme nous connaissons déjà les paramètres du réseau auquel ESP32 est connecté, nous allons maintenant utiliser une adresse IP personnalisée pour connecter ESP32 au même réseau tout en utilisant les autres paramètres inchangés comme nous l'avons obtenu dans la sortie précédente.

Mais avant cela, nous devons installer ESP32Ping.h bibliothèque dans l'IDE Arduino. En utilisant cette bibliothèque, nous pouvons vérifier si notre adresse IP statique fonctionne ou non. Cliquez pour télécharger ESP32Ping.h bibliothèque.

Une fois le fichier zip téléchargé, allez à : Esquisse> Inclure la bibliothèque> Ajouter une bibliothèque .Zip

  Interface utilisateur graphique, texte, application Description générée automatiquement

Code

Téléchargez maintenant le code indiqué ci-dessous dans ESP32. Ce code définira une adresse IP statique pour ESP32. N'oubliez pas de remplacer le SSID et le mot de passe du réseau.

#include

#include

constante carboniser * ssid = 'votreNomRéseau' ;
constante carboniser * le mot de passe = 'votreNetworkPass' ;

Adresse IP statique IP ( 192 , 168 , 18 , 53 ) ;
Passerelle d'adresse IP ( 192 , 168 , 18 , 1 ) ;
Sous-réseau d'adresse IP ( 255 , 255 , 255 , 0 ) ;
DNS d'adresse IP ( 101 , cinquante , 101 , cinquante ) ;

annuler mettre en place ( ) {
En série. commencer ( 115200 ) ;

si ( Wifi. configuration ( I.P statique , passerelle , sous-réseau , DNS , DNS ) == faux ) {
En série. println ( 'La configuration a échoué.' ) ;
}

Wifi. commencer ( ssid , le mot de passe ) ;

tandis que ( Wifi. statut ( ) != WL_CONNECTED ) {
retard ( 500 ) ;
En série. imprimer ( 'De liaison... \n \n ' ) ;
}

En série. imprimer ( « IP locale : » ) ;
En série. println ( Wifi. IPlocale ( ) ) ;
En série. imprimer ( « Masque de sous-réseau : » ) ;
En série. println ( Wifi. masque de sous-réseau ( ) ) ;
En série. imprimer ( « IP de la passerelle : » ) ;
En série. println ( Wifi. gatewayIP ( ) ) ;
En série. imprimer ( « DNS 1 : » ) ;
En série. println ( Wifi. DNSIP ( 0 ) ) ;
En série. imprimer ( « DNS 2 : » ) ;
En série. println ( Wifi. DNSIP ( 1 ) ) ;

boo succès = Ping. ping ( 'www.google.com' , 3 ) ;

si ( ! Succès ) {
En série. println ( ' \n Le ping a échoué' ) ;
revenir ;
}

En série. println ( ' \n Ping réussi.' ) ;
}

annuler boucle ( ) { }

Le code a commencé en incluant le WiFi et la bibliothèque Ping. Ensuite, nous avons défini le SSID et le mot de passe pour le réseau WiFi.

Après cela, nous avons défini tous les paramètres, y compris l'adresse IP statique ainsi que le DNS, la passerelle IP et le sous-réseau. Notez que nous avons attribué une adresse IP (192, 168, 18, 53) qui se trouve dans le même sous-réseau d'adresse IP que nous avons obtenu précédemment dans le code précédent. Assurez-vous que cette adresse IP n'est utilisée par aucun autre appareil à l'intérieur du réseau.

Une fois le WiFi connecté, nous avons imprimé tous les paramètres du réseau et testé le Ping avec Google. Si tous les paramètres sont définis correctement Ping réussi apparaîtra.

Production

Maintenant, lorsque nous avons reconnecté la carte ESP32 au PC après avoir été déconnectée, son adresse IP statique a été à nouveau configurée, indiquant qu'elle ne changerait pas même en cas de coupure de courant.

Nous avons réussi à attribuer une adresse IP statique à ESP32.

Conclusion

Lorsque vous travaillez avec ESP32 dans la conception de projets, une adresse IP statique est nécessaire. Lorsque plusieurs appareils doivent se connecter avec des adresses IP statiques ESP32, l'ensemble du processus est fluide. En utilisant les paramètres réseau, nous pouvons définir n'importe quelle adresse IP statique. Ici, dans cet article, nous avons couvert les étapes nécessaires pour définir une adresse IP statique.