Inhoudsopgave:

ESP8266 en Python-communicatie voor noobs: 6 stappen
ESP8266 en Python-communicatie voor noobs: 6 stappen

Video: ESP8266 en Python-communicatie voor noobs: 6 stappen

Video: ESP8266 en Python-communicatie voor noobs: 6 stappen
Video: Makeblock Untimate Robot Kit Part 2 : Robtic Arm Explaine, Software, Code App and Having Fun demo 2024, Juli-
Anonim
ESP8266 en Python-communicatie voor noobs
ESP8266 en Python-communicatie voor noobs

Met deze gids kunt u alle gegevens van ESP8266 krijgen en deze over python besturen zonder AT-commando's.

Voor beginners zijn de meeste handleidingen over het gebruik van ESP8266 moeilijk, omdat ze willen dat je "AT COMMANDS" in de chip flasht, namelijk:

  • Onnodig
  • Verspilling van het geheugen van ESP
  • Geeft je beperkte controle
  • Moeilijk en uitdagend
  • En niet geschikt voor alle ESP8266-modules

Daarom heb ik een heel eenvoudig mDNS-communicatiesysteem gemaakt dat alleen wordt bestuurd met 3 eenvoudige functies. Het geeft je ook volledige controle.

Stap 1: Theorie

Theorie
Theorie

Onze esp maakt verbinding met onze wifi en maakt een localhost-server en begint op een verzoek te wachten. Elke keer dat onze python een verzoek naar die localhost stuurt, voert esp de gewenste code uit en retourneert het resultaat als een http-verzoek. Ten slotte leest python die geretourneerde gegevens als http-verzoek en haalt die variabelen eruit. Hiermee kan esp strings, datas en arrays retourneren. Python-code zal hun datatype begrijpen.

Stap 2: De benodigde bibliotheken voorbereiden

De vereiste bibliotheken voorbereiden
De vereiste bibliotheken voorbereiden

Allereerst moet u de ESP8266-kaartbibliotheek naar arduino ide downloaden. Als je niet weet hoe, hier is de gids.

Daarna moet je mijn microbibliotheek hier downloaden.

Nadat je hebt gedownload, is er in de bibliotheekmap een bestand met de naam "ESP_MICRO.h", kopieer het naar je codeermap van het huidige Arduino-project. Ja, kopieer het niet naar de bibliotheken van Arduino, het is een microbibliotheek, dus je kopieert het naar de map van je huidige Arduino-project.

Dus nu is aan onze eisen voldaan. We kunnen beginnen met coderen.

Stap 3: Een eenvoudige aanvraagcode schrijven

Een eenvoudige aanvraagcode schrijven
Een eenvoudige aanvraagcode schrijven

Wanneer u uw project.ino opent, ziet u twee tabbladen op arduino ide. Een daarvan is uw project, de andere is "ESP_MICRO.h", onze microbibliotheek.

Nu heb je die 5-functie in ESP_MICRO.h in je hoofdcode (de functies worden uitgelegd in de eerste regels van ESP_MICRO.h)

Hier is een eenvoudige variabele toenemende code.

Arduino-code:

/* F5-TEST VOOR ESP2PY

* Geschreven door Junicchi * https://github.com/KebabLord/esp_to_python * Het verhoogt en retourneert eenvoudig een variabele telkens wanneer een python req kwam */ #include "ESP_MICRO.h" //Include the micro library int testvariable = 0; void setup(){ Serial.begin(9600); // Seriële poort starten om details te zien start ("USERNAME", "PASSWORD"); // EnAIt maakt verbinding met je wifi met de gegeven details } void loop () { waitUntilNewReq (); //Wacht tot er een nieuw verzoek van python komt /* verhoogt de index wanneer er een nieuw verzoek komt*/ testvariabele += 1; returnThisInt(testvariabele); // Geeft de gegevens terug aan python}

Stap 4: Uploaden

Uploaden
Uploaden

Programmeren Nodemcu ESP8266's pluggen eenvoudigweg usb in en uploaden de schets van arduino.

Maar het programmeren van ESP8266-1 is moeilijker, er zijn twee methoden om ze te programmeren:

ESP programmeren via arduino

Als je goed bent met jumpers, kun je het via arduino programmeren met dit circuit. Maar voor de lange termijn is het pijn. Dus ik stel een andere methode voor.

Programmeren met ESP programmeur

Het is veel gemakkelijker en sneller. Het is maar 1 dollar, koop er een en gebruik een programmer usb.

Het IP-adres van ESP leren

Terwijl de code wordt geüpload, opent u de seriële poort, u zult zien dat de details worden afgedrukt wanneer het uploaden is voltooid. Leer het IP-adres van esp en noteer dat. Onthoud, ESP's IP op lokaal; verandert door wifi naar wifi, niet van sessie naar sessie, dus als je het later sluit en opent, wordt het niet gewijzigd.

Stap 5: Lezen en Python

Lezen en Python
Lezen en Python

In de esp_to_python/bibliotheek is er een "EXAMPLE_PYTHON_READER.py"

bewerk het, wijzig de 5e regel met het IP-adres van de esp-module die op de seriële poort is afgedrukt en voer het python-script uit. In dit project heb ik python gebruikt om verzoeken te verzenden en te lezen. Maar u kunt de onbewerkte gegevens ook met een browser bekijken terwijl u het ip van ESP in een browser plakt. Of u kunt een aanvraag indienen om het te lezen, of u kunt zelfs een andere taal gebruiken. Het besturen van de module via python wordt ook uitgelegd in het " ledControl " project in de map met voorbeelden.

Stap 6: Finaliseren

Finaliseren
Finaliseren

Alle functies en codes worden uitgelegd in de ESP_MICRO.h en in het README.md-bestand.

Als dit project je heeft geholpen, kun je het originele project een ster geven op github.

Aanbevolen: