Inhaltsverzeichnis:

ESP8266 und Python-Kommunikation für Noobs - Gunook
ESP8266 und Python-Kommunikation für Noobs - Gunook

Video: ESP8266 und Python-Kommunikation für Noobs - Gunook

Video: ESP8266 und Python-Kommunikation für Noobs - Gunook
Video: micro Python | ESP8266 | ESP32 | Einführung deutsch | start uPython | erster Code 2024, November
Anonim
ESP8266 und Python-Kommunikation für Noobs
ESP8266 und Python-Kommunikation für Noobs

Mit dieser Anleitung können Sie beliebige Daten von ESP8266 abrufen und über Python ohne AT-Befehle steuern.

Für Anfänger sind die meisten Anleitungen zur Verwendung von ESP8266 schwierig, da sie möchten, dass Sie "AT COMMANDS" in den Chip flashen, was ist:

  • Unnötig
  • Speicher verschwenden von ESP
  • Gibt Ihnen begrenzte Kontrolle
  • Hart und Herausfordernd
  • Und nicht für alle ESP8266-Module geeignet

Aus diesem Grund habe ich ein sehr einfaches mDNS-Kommunikationssystem erstellt, das nur mit 3 einfachen Funktionen gesteuert wird. Es gibt Ihnen auch die volle Kontrolle.

Schritt 1: Theorie

Theorie
Theorie

Unser ESP verbindet sich mit unserem WLAN und erstellt einen localhost-Server und beginnt, auf eine Anfrage zu warten. Jedes Mal, wenn unser Python eine Anfrage an diesen localhost sendet, führt esp den gewünschten Code aus und gibt das Ergebnis dann als http-Anfrage zurück. Schließlich liest Python die zurückgegebenen Daten als http-Anfrage und holt sich diese Variablen daraus. Damit kann esp Strings, Daten und Arrays zurückgeben. Python-Code wird ihren Datentyp verstehen.

Schritt 2: Vorbereiten der erforderlichen Bibliotheken

Vorbereiten der erforderlichen Bibliotheken
Vorbereiten der erforderlichen Bibliotheken

Zunächst müssen Sie die ESP8266-Kartenbibliothek auf arduino ide herunterladen. Wenn Sie nicht wissen wie, hier ist die Anleitung.

Danach müssen Sie meine Mikrobibliothek von hier herunterladen.

Nach dem Herunterladen befindet sich im Bibliotheksordner eine Datei namens "ESP_MICRO.h". Kopieren Sie sie in Ihren Codierungsordner des aktuellen Arduino-Projekts. Ja, kopieren Sie es nicht in die Bibliotheken von Arduino, es ist eine Mikrobibliothek, also kopieren Sie es in den Ordner Ihres aktuellen Arduino-Projekts.

Damit sind unsere Anforderungen nun erfüllt. Wir können mit der Codierung beginnen.

Schritt 3: Schreiben eines einfachen Anfragecodes

Schreiben eines einfachen Anfragecodes
Schreiben eines einfachen Anfragecodes

Wenn Sie Ihr project.ino öffnen, sehen Sie zwei Registerkarten auf arduino ide. Das eine ist Ihr Projekt, das andere ist "ESP_MICRO.h" unsere Mikrobibliothek.

Jetzt haben Sie diese 5 Funktion in ESP_MICRO.h in Ihrem Hauptcode (die Funktionen werden in den ersten Zeilen von ESP_MICRO.h erklärt)

Hier ist ein einfacher Code zum Erhöhen von Variablen.

Arduino-Code:

/* F5 TEST FÜR ESP2PY

* Geschrieben von Junicchi * https://github.com/KebabLord/esp_to_python * Es wird einfach jedes Mal erhöht und eine Variable zurückgegeben, wenn eine Python-Anforderung kam */ #include "ESP_MICRO.h" //Einschließen der Mikrobibliothek int testvariable = 0; Void setup () {Serial.begin (9600); // Starten des seriellen Ports, um Details zu sehen start("USERNAME", "PASSWORD"); // EnAIt verbindet sich mit den angegebenen Details zu Ihrem WLAN } void loop () { waitUntilNewReq (); //Wartet, bis eine neue Anfrage von Python kommt /* erhöht den Index, wenn eine neue Anfrage kommt*/ testvariable += 1; returnThisInt(Testvariable); // Gibt die Daten an Python zurück}

Schritt 4: Hochladen

Hochladen
Hochladen

Beim Programmieren von Nodemcu ESP8266s wird einfach USB angeschlossen und die Skizze von Arduino hochgeladen.

Aber ESP8266-1 zu programmieren ist schwieriger, es gibt zwei Methoden, sie zu programmieren

ESP über arduino programmieren

Wenn Sie mit Jumpern einverstanden sind, können Sie es mit dieser Schaltung über Arduino programmieren. Aber auf Dauer tut es weh. Also schlage ich eine andere Methode vor.

Programmierung mit ESP-Programmierer

Es ist viel einfacher und schneller. Es ist nur 1 Dollar, kaufen Sie einen und verwenden Sie einen USB-Programmierer.

Lernen der IP-Adresse von ESP

Öffnen Sie während des Hochladens des Codes den seriellen Port. Sie sehen, dass nach dem Hochladen Details gedruckt werden. Lernen Sie die IP von esp und merken Sie sich das. Denken Sie daran, die IP von ESP lokal; ändert sich von WLAN zu WLAN, nicht von Sitzung zu Sitzung. Wenn Sie es also schließen und später öffnen, wird es nicht geändert.

Schritt 5: Lesen und Python

Lesen und Python
Lesen und Python

In der esp_to_python/library gibt es eine "EXAMPLE_PYTHON_READER.py"

Bearbeiten Sie es, ändern Sie die 5. Zeile mit der IP-Adresse des ESP-Moduls, das auf dem seriellen Port gedruckt wurde, und führen Sie das Python-Skript aus. In diesem Projekt habe ich Python verwendet, um Anfragen zu senden und zu lesen. Sie können die Rohdaten aber auch mit einem Browser anzeigen, während Sie die IP von ESP in einen Browser einfügen. Oder Sie können einen Antrag stellen, um es zu lesen, oder Sie können sogar eine andere Sprache verwenden. Die Steuerung des Moduls über Python wird auch im Projekt "ledControl" im Beispielordner erklärt.

Schritt 6: Finalisieren

Abschluss
Abschluss

Alle Funktionen und Codes sind in der ESP_MICRO.h und in der Datei README.md erklärt.

Wenn Ihnen dieses Projekt geholfen hat, können Sie das Originalprojekt auf github starten.

Empfohlen: