Table des matières:
- Étape 1: Théorie
- Étape 2: Préparation des bibliothèques requises
- Étape 3: Rédaction d'un code de requête simple
- Étape 4: Téléchargement
- Étape 5: Lecture et Python
- Étape 6: Finalisation
Vidéo: ESP8266 et Python Communication For Noobs : 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Ce guide vous permet d'obtenir toutes les données d'ESP8266 et de les contrôler via python sans commandes AT.
Pour les débutants, la plupart des guides sur l'utilisation de l'ESP8266 sont difficiles, car ils veulent que vous fassiez clignoter « AT COMMANDES » dans la puce, c'est-à-dire:
- Inutile
- Perte de mémoire de l'ESP
- Vous donne un contrôle limité
- Difficile et exigeant
- Et ne convient pas à tous les modules ESP8266
C'est pourquoi j'ai créé un système de communication mDNS très simple qui n'est contrôlé qu'avec 3 fonctions simples. Cela vous donne également un contrôle total.
Étape 1: Théorie
Notre esp se connecte à notre wifi et crée un serveur localhost et commence à attendre une demande. Chaque fois que notre python envoie une requête à cet hôte local, esp exécute le code souhaité, puis renvoie le résultat sous forme de requête http. Enfin, python lit les données renvoyées en tant que requête http et en extrait ces variables. Avec cela, esp peut renvoyer des chaînes, des données et des tableaux. Le code Python comprendra leur type de données.
Étape 2: Préparation des bibliothèques requises
Tout d'abord, vous devez télécharger la bibliothèque de cartes ESP8266 sur arduino ide. Si vous ne savez pas comment faire, voici le guide.
Après cela, vous devez télécharger ma micro bibliothèque à partir d'ici.
Après avoir téléchargé, dans le dossier de la bibliothèque, il y a un fichier appelé "ESP_MICRO.h", copiez-le dans votre dossier de codage du projet Arduino actuel. Oui, ne le copiez pas dans les bibliothèques d'arduino, c'est une micro-bibliothèque, vous le copierez donc dans le dossier de votre projet arduino actuel.
Alors maintenant, nos exigences sont satisfaites. Nous pouvons commencer à le coder.
Étape 3: Rédaction d'un code de requête simple
Lorsque vous ouvrez votre project.ino, vous verrez deux onglets sur arduino ide. L'un est votre projet, l'autre est "ESP_MICRO.h" notre micro bibliothèque.
Maintenant, vous avez cette fonction 5 dans ESP_MICRO.h dans votre code principal, (les fonctions sont expliquées dans les premières lignes de ESP_MICRO.h)
Voici un simple code croissant de variable.
Code Arduino:
/* TEST F5 POUR ESP2PY
* Écrit par Junicchi * https://github.com/KebabLord/esp_to_python * Il augmente simplement et renvoie une variable à chaque fois qu'une requête python est arrivée */ #include "ESP_MICRO.h" // Inclut la micro bibliothèque int testvariable = 0; void setup(){ Serial.begin(9600); // Démarrage du port série pour voir les détails start("USERNAME", "PASSWORD"); // EnAIt se connectera à votre wifi avec les détails donnés } void loop(){ waitUntilNewReq(); // Attend qu'une nouvelle requête de python arrive /* augmente l'index lorsqu'une nouvelle requête arrive*/ testvariable += 1; returnThisInt(testvariable); //Renvoie les données à python }
Étape 4: Téléchargement
La programmation des Nodemcu ESP8266 consiste simplement à brancher l'usb et à télécharger le croquis à partir d'arduino.
Mais la programmation de l'ESP8266-1 est plus difficile, il existe deux méthodes pour les programmer
Programmation ESP via arduino
Si vous êtes d'accord avec les cavaliers, vous pouvez le programmer via arduino avec ce circuit. Mais à long terme, c'est la douleur. Je propose donc une autre méthode.
Le programmer avec le programmateur ESP
C'est beaucoup plus facile et plus rapide. C'est seulement 1 dollar, achetez-en un et utilisez un programmeur USB.
Apprendre l'adresse IP d'ESP
Pendant le téléchargement du code, ouvrez le port série, vous verrez que les détails sont imprimés lorsque le téléchargement est terminé. Apprenez l'IP d'esp et notez-le. N'oubliez pas que l'adresse IP d'ESP est locale; change de wifi en wifi, pas de session en session, donc lorsque vous le fermez et l'ouvrez plus tard, il ne sera pas modifié.
Étape 5: Lecture et Python
Dans esp_to_python/library il y a un "EXAMPLE_PYTHON_READER.py"
modifiez-le, modifiez la 5ème ligne avec l'adresse IP du module esp imprimé sur le port série et exécutez le script python. Dans ce projet, j'ai utilisé python pour envoyer et lire des requêtes. Mais vous pouvez également visualiser les données brutes avec un navigateur tout en collant l'ip d'ESP sur un navigateur. Ou vous pouvez faire une application pour le lire, ou vous pouvez même utiliser une autre langue. Le contrôle du module sur python est également expliqué dans le projet " ledControl " dans le dossier des exemples.
Étape 6: Finalisation
Toutes les fonctions et codes sont expliqués dans le ESP_MICRO.h et dans le fichier README.md.
Si ce projet vous a aidé, vous pouvez démarrer le projet original sur github.
Conseillé:
Communication sans fil LoRa 3Km à 8Km avec dispositif E32 (sx1278/sx1276) à faible coût pour Arduino, Esp8266 ou Esp32 : 15 étapes
Communication sans fil LoRa 3Km à 8Km avec appareil E32 (sx1278/sx1276) à faible coût pour Arduino, Esp8266 ou Esp32: je crée une bibliothèque pour gérer EBYTE E32 basée sur la série Semtech d'appareil LoRa, appareil très puissant, simple et bon marché.Vous pouvez trouver Version 3Km ici, version 8Km iciIls peuvent fonctionner sur une distance de 3000m à 8000m, et ils ont beaucoup de fonctionnalités et
Carte de découverte STM32F4 et communication Python USART (STM32CubeMx) : 5 étapes
Carte de découverte STM32F4 et communication Python USART (STM32CubeMx) : Salut ! Dans ce tutoriel, nous allons essayer d'établir une communication USART entre le MCU ARM STM32F4 et Python (il peut être remplacé par n'importe quel autre langage). Alors, commençons:)
PIC MCU et communication série Python : 5 étapes
PIC MCU et Python Serial Communication : Bonjour, les gars ! Dans ce projet, je vais essayer d'expliquer mes expériences sur la communication série PIC MCU et Python. Sur Internet, il existe de nombreux tutoriels et vidéos sur la façon de communiquer avec PIC MCU via un terminal virtuel, ce qui est très utile. Cependant
Communication série Arduino et Python - Affichage du clavier : 4 étapes
Arduino et Python Serial Communication - Keypad Display : Ce projet est conçu pour les utilisateurs de Mac mais il peut également être implémenté pour Linux et Windows, la seule étape qui devrait être différente est l'installation
ESP8266 Communication directe de données : 3 étapes
ESP8266 Direct Data Communication: Introduction Bien que j'aie réalisé certains projets avec les modules Arduinos et nRF24l01, je me demandais si je pouvais économiser des efforts en utilisant à la place un module ESP8266. L'avantage du module ESP8266 est qu'il contient un micro contrôleur embarqué, donc non