Innehållsförteckning:
- Steg 1: Teori
- Steg 2: Förbereda de obligatoriska biblioteken
- Steg 3: Skriva en enkel begäranskod
- Steg 4: Uppladdning
- Steg 5: Läsning och Python
- Steg 6: Avsluta
Video: ESP8266 och Python Communication For Noobs: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Den här guiden låter dig få all data från ESP8266 och styra den över python utan AT -kommandon.
För nybörjare är de flesta guiderna om att använda ESP8266 svåra, eftersom de vill att du ska blinka "AT COMMANDS" till chip, vilket är:
- Onödigt
- Slöseri med minne om ESP
- Ger dig begränsad kontroll
- Hårt och utmanande
- Och inte lämplig för alla ESP8266 -moduler
Det är därför jag skapade ett mycket enkelt mDNS -kommunikationssystem som bara styrs med 3 enkla funktioner. Det ger dig också full kontroll.
Steg 1: Teori
Vår esp ansluter till vårt wifi och skapar en localhost -server och börjar vänta på en begäran. Varje gång vår python skickar en förfrågan till den lokala värden, kör esp den önskade koden och returnerar sedan resultatet som en http -begäran. Slutligen läser python den returnerade data som http -begäran och hämtar de variablerna från den. Med detta kan esp returnera strängar, data och matriser. Python -koden förstår deras datatyp.
Steg 2: Förbereda de obligatoriska biblioteken
Först och främst måste du ladda ner ESP8266 -kortbiblioteket till arduino ide. Om du inte vet hur, här är guiden.
Efter det måste du ladda ner mitt mikrobibliotek härifrån.
När du har laddat ner finns det en fil som heter "ESP_MICRO.h" i biblioteksmappen, kopiera den till din kodningsmapp för det aktuella arduino -projektet. Ja, kopiera inte det till arduinos bibliotek, det är ett mikrobibliotek så du kommer att kopiera det till mappen för ditt nuvarande arduino -projekt.
Så nu är våra krav uppfyllda. Vi kan börja koda det.
Steg 3: Skriva en enkel begäranskod
När du öppnar ditt project.ino ser du två flikar om arduino ide. Det ena är ditt projekt, det andra är "ESP_MICRO.h" vårt mikrobibliotek.
Nu har du den fem funktionen i ESP_MICRO.h i din huvudkod, (funktionerna förklaras i de första raderna i ESP_MICRO.h)
Här är en enkel variabel som ökar koden.
Arduino -kod:
/* F5 TEST FÖR ESP2PY
* Skrivet av Junicchi * https://github.com/KebabLord/esp_to_python * Det ökar helt enkelt och returnerar en variabel varje gång en pythonreq kom */#include "ESP_MICRO.h" // Inkludera mikrobiblioteket int testvariable = 0; void setup () {Serial.begin (9600); // Starta serieport för att se detaljer starta ("USERNAME", "PASSWORD"); // EnAIt ansluter till din wifi med givna detaljer} void loop () {waitUntilNewReq (); // Väntar tills en ny begäran från python kommer/* ökar index när en ny begäran kom*/testvariabel += 1; returnThisInt (testvariabel); // Returnerar data till python}
Steg 4: Uppladdning
Programmering av Nodemcu ESP8266s ansluter helt enkelt usb och laddar upp skissen från arduino.
Men att programmera ESP8266-1 är svårare, det finns två metoder för att programmera dem
Programmering av ESP genom arduino
Om du har det bra med hoppare kan du programmera det via arduino med denna krets. Men på lång sikt är det smärta. Så jag föreslår en annan metod.
Programmerar den med ESP -programmerare
Det är mycket lättare och snabbare. Det är bara 1 dollar, köp en och använd en programmerare usb.
Lär dig IP -adressen för ESP
Medan koden laddas upp, öppna den seriella porten, du ser att detaljer skrivs ut när uppladdningen är klar. Lär dig IP: n för esp och notera det. Kom ihåg att ESP: s IP på lokal; ändras med wifi till wifi, inte session till session, så när du stänger och öppnar det senare kommer det inte att ändras.
Steg 5: Läsning och Python
I esp_to_python/biblioteket finns en "EXAMPLE_PYTHON_READER.py"
redigera den, ändra den femte raden med IP -adressen för esp -modulen som skrivs ut på seriell port och kör python -skriptet. I detta projekt använde jag python för att skicka och läsa begäran. Men du kan också se rådata med en webbläsare medan du klistrar in ip för ESP i en webbläsare. Eller så kan du göra ett program för att läsa det, eller så kan du till och med använda ett annat språk. Att styra modulen över python förklaras också i "ledControl" -projektet i exempelmappen.
Steg 6: Avsluta
Alla funktioner och koder förklaras i ESP_MICRO.h och i filen README.md.
Om det här projektet hjälpte dig kan du stjärnmärka det ursprungliga projektet på github.
Rekommenderad:
ESP8266 och Visuino: DHT11 webbserver för temperatur och luftfuktighet: 12 steg
ESP8266 och Visuino: DHT11 Temperatur- och luftfuktighetswebbserver: ESP8266-moduler är bra fristående fristående styrenheter med inbyggt Wi-Fi, och jag har redan gjort ett antal instruktioner om dem. DTH11/DTH21/DTH22 och AM2301 är mycket populära kombinerade temperaturer och Arduino -sensorer för fuktighet, och jag gjorde ett antal
Komma igång med Python för ESP8266 och ESP32: 6 steg
Komma igång med Python för ESP8266 & ESP32: Bacground ESP8266 och dess yngre storebror ESP32 är billiga Wi-Fi-mikrochips med full TCP/IP-stack och mikrokontroller. ESP8266 -chipet uppmärksammades först av tillverkargemenskapen redan 2014. Sedan dess har det låga priset (
Väggfäste för iPad som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: 4 steg (med bilder)
Väggfäste för iPad Som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: På senare tid har jag ägnat ganska mycket tid åt att automatisera saker i och runt mitt hus. Jag använder Domoticz som min hemautomationsapplikation, se www.domoticz.com för mer information. I min sökning efter en instrumentpanelapplikation som visar all Domoticz -information tillsammans
ESP8266 NodeMCU Access Point (AP) för webbserver med DT11 temperatursensor och utskriftstemperatur och luftfuktighet i webbläsare: 5 steg
ESP8266 NodeMCU Access Point (AP) för webbserver med DT11 temperatursensor och utskriftstemperatur och luftfuktighet i webbläsare: Hej killar i de flesta projekt vi använder ESP8266 och i de flesta projekt använder vi ESP8266 som en webbserver så att data kan nås på vilken enhet som helst via wifi genom att komma åt webbservern som ESP8266 är värd för, men det enda problemet är att vi behöver en fungerande router för
STM32F4 Discovery Board och Python USART Communication (STM32CubeMx): 5 steg
STM32F4 Discovery Board och Python USART Communication (STM32CubeMx): Hej! I denna handledning kommer vi att försöka upprätta USART -kommunikation mellan STM32F4 ARM MCU och Python (den kan ersättas av något annat språk). Så låt oss börja