Satura rādītājs:

ESP8266 un Python komunikācija  Noobs: 6 soļi
ESP8266 un Python komunikācija Noobs: 6 soļi

Video: ESP8266 un Python komunikācija Noobs: 6 soļi

Video: ESP8266 un Python komunikācija  Noobs: 6 soļi
Video: Golang vs Python #shorts tiktok hackmymozg 2024, Jūlijs
Anonim
ESP8266 un Python Communication for Noobs
ESP8266 un Python Communication for Noobs

Šī rokasgrāmata ļauj iegūt datus no ESP8266 un kontrolēt to python bez AT komandām.

Iesācējiem lielākā daļa rokasgrāmatu par ESP8266 lietošanu ir grūti, jo viņi vēlas, lai jūs “AT COMMANDS” mirgo mikroshēmā, kas ir:

  • Nevajadzīgi
  • ESP atmiņas izšķērdēšana
  • Piešķir ierobežotu kontroli
  • Grūti un izaicinoši
  • Un nav piemērots visiem ESP8266 moduļiem

Tāpēc es izveidoju ļoti vienkāršu mDNS sakaru sistēmu, kas tiek kontrolēta tikai ar 3 vienkāršām funkcijām. Tas arī nodrošina pilnīgu kontroli.

1. solis: teorija

Teorija
Teorija

Mūsu esp izveido savienojumu ar mūsu wifi un izveido localhost serveri un sāk gaidīt pieprasījumu. Katru reizi, kad mūsu python nosūta pieprasījumu šim vietējam resursdatoram, esp palaiž vēlamo kodu un pēc tam atgriež rezultātu kā http pieprasījumu. Visbeidzot, python nolasa atgrieztos datus kā http pieprasījumu un paņem no tiem mainīgos. Tādējādi esp var atgriezt virknes, datus un masīvus. Python kods sapratīs to datu tipu.

2. darbība. Nepieciešamo bibliotēku sagatavošana

Nepieciešamo bibliotēku sagatavošana
Nepieciešamo bibliotēku sagatavošana

Pirmkārt, jums ir jālejupielādē ESP8266 karšu bibliotēka arduino ide. Ja jūs nezināt, kā, šeit ir ceļvedis.

Pēc tam jums ir jālejupielādē mana mikro bibliotēka no šejienes.

Pēc lejupielādes bibliotēkas mapē ir fails ar nosaukumu "ESP_MICRO.h", nokopējiet to pašreizējā arduino projekta kodēšanas mapē. Jā, nekopējiet to arduino bibliotēkās, tā ir mikro bibliotēka, lai jūs to nokopētu pašreizējā arduino projekta mapē.

Tātad mūsu prasības ir apmierinātas. Mēs varam sākt to kodēt.

3. darbība. Vienkārša pieprasījuma koda rakstīšana

Vienkārša pieprasījuma koda rakstīšana
Vienkārša pieprasījuma koda rakstīšana

Atverot projektu.ino, jūs redzēsit divas cilnes arduino ide. Viens ir jūsu projekts, otrs ir "ESP_MICRO.h" mūsu mikro bibliotēka.

Tagad jūsu galvenajā kodā ir šī 5 funkcija ESP_MICRO.h (funkcijas ir izskaidrotas ESP_MICRO.h pirmajās rindās)

Šeit ir vienkāršs mainīgā palielināšanas kods.

Arduino kods:

/* F5 TESTS ESP2PY

* Autors Junicchi * https://github.com/KebabLord/esp_to_python * Tas vienkārši palielina un atgriež mainīgo katru reizi, kad ienāca python req */#include "ESP_MICRO.h" // Iekļaut mikro bibliotēku int testvariable = 0; void setup () {Serial.begin (9600); // Sākuma sērijas ports, lai redzētu detaļu sākumu ("USERNAME", "PASSWORD"); // EnAIt izveidos savienojumu ar jūsu wifi ar norādīto informāciju} void loop () {waitUntilNewReq (); // Gaida, līdz jauns pieprasījums no python come/* palielina indeksu, kad nāca jauns pieprasījums*/testvariable += 1; returnThisInt (testa mainīgais); // Atgriež datus python}

4. darbība. Augšupielāde

Notiek augšupielāde
Notiek augšupielāde

Programmēšana Nodemcu ESP8266s vienkārši pievieno USB un augšupielādē skici no arduino.

Bet programmēt ESP8266-1 ir grūtāk, to programmēšanai ir divas metodes

ESP programmēšana, izmantojot arduino

Ja jums ir labi ar džemperiem, varat to programmēt, izmantojot arduino, izmantojot šo shēmu. Bet ilgtermiņā tās ir sāpes. Tāpēc es iesaku citu metodi.

Programmēšana ar ESP programmētāju

Tas ir daudz vieglāk un ātrāk. Tas ir tikai 1 dolārs, nopērciet vienu un izmantojiet programmētāju usb.

ESP IP adreses apguve

Kamēr kods tiek augšupielādēts, atveriet seriālo portu. Kad augšupielāde būs pabeigta, tiks parādīta informācija. Uzziniet esp IP un atzīmējiet to. Atcerieties, ka ESP IP vietējā līmenī; mainās ar wifi uz wifi, nevis no sesijas uz sesiju, tāpēc, aizverot un atverot to vēlāk, tas netiks mainīts.

5. darbība: lasīšana un Python

Lasīšana un Python
Lasīšana un Python

Esp_to_python/bibliotēkā ir "EXAMPLE_PYTHON_READER.py"

rediģējiet to, mainiet 5. rindu ar esp moduļa IP adresi, kas tika izdrukāta uz seriālā porta, un palaidiet python skriptu. Šajā projektā es izmantoju python, lai nosūtītu un izlasītu pieprasījumu. Bet neapstrādātos datus varat skatīt arī pārlūkprogrammā, pārlūkprogrammā ielīmējot ESP ip. Vai arī varat izveidot lietojumprogrammu tās lasīšanai vai pat izmantot citu valodu. Moduļa vadība, izmantojot python, ir paskaidrota arī projektā "ledControl" piemēru mapē.

6. darbība: pabeigšana

Pabeigšana
Pabeigšana

Visas funkcijas un kodi ir izskaidroti failā ESP_MICRO.h un failā README.md.

Ja šis projekts jums palīdzēja, varat sākotnējo projektu atzīmēt ar zvaigznīti vietnē github.

Ieteicams: