Obsah:

Komunikácia ESP8266 a Python pre  Noobs: 6 krokov
Komunikácia ESP8266 a Python pre Noobs: 6 krokov

Video: Komunikácia ESP8266 a Python pre Noobs: 6 krokov

Video: Komunikácia ESP8266 a Python pre  Noobs: 6 krokov
Video: Start Using Wemos D1 Mini NodeMCU WiFi ESP8266 module with Arduino 2024, November
Anonim
Komunikácia ESP8266 a Python pre Noobs
Komunikácia ESP8266 a Python pre Noobs

Táto príručka vám umožňuje získať akékoľvek údaje z ESP8266 a ovládať ich v pythone bez príkazov AT.

Pre začiatočníkov je väčšina sprievodcov používaním ESP8266 náročná, pretože chcú, aby ste na čip blikali „AT COMMANDS“, čo je:

  • Zbytočné
  • Plytvanie pamäťou ESP
  • Poskytuje vám obmedzenú kontrolu
  • Ťažké a náročné
  • A nie je vhodný pre všetky moduly ESP8266

Preto som vytvoril veľmi jednoduchý komunikačný systém mDNS, ktorý je ovládaný iba 3 jednoduchými funkciami. Tiež vám dáva plnú kontrolu.

Krok 1: Teória

Teória
Teória

Náš esp sa pripojí k našej wifi, vytvorí server localhost a začne čakať na žiadosť. Zakaždým, keď náš python pošle požiadavku tomuto localhostu, esp spustí požadovaný kód a potom vráti výsledok ako požiadavku http. Nakoniec python načíta vrátené údaje ako požiadavku http a vyberie z nich tieto premenné. Vďaka tomu môže esp vracať reťazce, údaje a polia. Kód Pythonu porozumie ich dátovému typu.

Krok 2: Príprava požadovaných knižníc

Príprava požadovaných knižníc
Príprava požadovaných knižníc

Najprv si musíte stiahnuť arduino ide knižnicu ESP8266. Ak neviete ako, tu je návod.

Potom si musíte odtiaľ stiahnuť moju mikro knižnicu.

Po stiahnutí sa v priečinku knižnice nachádza súbor s názvom „ESP_MICRO.h“, skopírujte ho do priečinka s kódovaním aktuálneho projektu arduino. Áno, nekopírujte ho do knižníc arduina, je to mikro knižnica, takže ho skopírujete do priečinka aktuálneho projektu arduino.

Teraz sú naše požiadavky splnené. Môžeme začať s kódovaním.

Krok 3: Napíšte jednoduchý kód žiadosti

Napísanie jednoduchého kódu žiadosti
Napísanie jednoduchého kódu žiadosti

Po otvorení projektu.ino sa vám zobrazia dve karty arduino ide. Jedným z nich je váš projekt a druhým je naša mikro knižnica „ESP_MICRO.h“.

Teraz máte funkciu 5 v ESP_MICRO.h vo svojom hlavnom kóde (funkcie sú vysvetlené v prvých riadkoch ESP_MICRO.h)

Tu je jednoduchý kód zvyšujúci premenné.

Arduino kód:

/* TEST F5 PRE ESP2PY

* Napísal Junicchi * https://github.com/KebabLord/esp_to_python * Jednoducho zvýši a vráti premennú vždy, keď príde požiadavka pythonu */#include "ESP_MICRO.h" // Zahrňte mikroknižnicu int testvariable = 0; void setup () {Serial.begin (9600); // Spustenie sériového portu na zobrazenie podrobných informácií („USERNAME“, „PASSWORD“); // EnAIt sa pripojí k vašej sieti Wi -Fi s danými podrobnosťami} void loop () {waitUntilNewReq (); // Čaká, kým príde nová požiadavka z pythonu/* zvýši index, keď príde nová požiadavka*/testvariable += 1; returnThisInt (testovateľná); // Vráti údaje do pythonu}

Krok 4: Odovzdanie

Nahráva sa
Nahráva sa

Programovanie Nodemcu ESP8266s je jednoducho zapojením USB a odoslaním náčrtu z arduina.

Programovanie ESP8266-1 je však ťažšie, existujú dva spôsoby, ako ich naprogramovať

Programovanie ESP prostredníctvom arduina

Ak vám to ide s prepojkami, môžete to pomocou tohto obvodu naprogramovať cez arduino. Ale z dlhodobého hľadiska je to bolesť. Preto navrhujem inú metódu.

Programovanie pomocou programátora ESP

Je to oveľa jednoduchšie a rýchlejšie. Je to len 1 dolár, kúpte si jeden a použite programátor USB.

Naučiť sa IP adresu ESP

Počas nahrávania kódu otvorte sériový port a uvidíte, že po dokončení nahrávania sa vytlačia podrobnosti. Zistite IP adresu esp a všimnite si to. Pamätajte si, že IP ESP na lokálnom serveri; zmení sa z wifi na wifi, nie z relácie na reláciu, takže keď ju neskôr zatvoríte a otvoríte, nezmení sa.

Krok 5: Čítanie a Python

Čítanie a Python
Čítanie a Python

V knižnici esp_to_python/„EXAMPLE_PYTHON_READER.py“

upravte ho, zmeňte 5. riadok pomocou adresy IP modulu esp, ktorý je vytlačený na sériovom porte, a spustite skript python. V tomto projekte som použil python na odoslanie a čítanie požiadavky. Surové údaje si však môžete prezrieť aj v prehliadači, pričom do prehliadača vložíte IP adresu ESP. Alebo si môžete vytvoriť aplikáciu na jej prečítanie alebo dokonca použiť iný jazyk. Ovládanie modulu cez python je tiež vysvetlené v projekte "ledControl" v priečinku examples.

Krok 6: Dokončenie

Finalizácia
Finalizácia

Všetky funkcie a kódy sú vysvetlené v ESP_MICRO.h a v súbore README.md.

Ak vám tento projekt pomohol, môžete pôvodný projekt označiť hviezdičkou na github.

Odporúča: