Sommario:

ESP8266 e comunicazione Python per i nibbi: 6 passaggi
ESP8266 e comunicazione Python per i nibbi: 6 passaggi

Video: ESP8266 e comunicazione Python per i nibbi: 6 passaggi

Video: ESP8266 e comunicazione Python per i nibbi: 6 passaggi
Video: Arduino: ESP8266 and Python Communication (3 Solutions!!) 2024, Dicembre
Anonim
ESP8266 e comunicazione Python per noobs
ESP8266 e comunicazione Python per noobs

Questa guida ti consente di ottenere qualsiasi dato da ESP8266 e controllarlo su Python senza comandi AT.

Per i principianti, la maggior parte delle guide sull'utilizzo di ESP8266 è difficile, perché vogliono che tu faccia lampeggiare "AT COMMANDS" nel chip, che è:

  • Non necessario
  • Sprecare la memoria dell'ESP
  • Ti dà un controllo limitato
  • Difficile e impegnativo
  • E non adatto a tutti i moduli ESP8266

Ecco perché ho creato un sistema di comunicazione mDNS molto semplice che viene controllato solo con 3 semplici funzioni. Ti dà anche il pieno controllo.

Fase 1: Teoria

Teoria
Teoria

Il nostro esp si connette al nostro wifi e crea un server localhost e inizia ad aspettare una richiesta. Ogni volta che il nostro python invia una richiesta a quel localhost, esp esegue il codice desiderato e quindi restituisce il risultato come richiesta http. Infine python legge i dati restituiti come richiesta http e prende le variabili da esso. Con questo, esp può restituire stringhe, dati e array. Il codice Python capirà il loro tipo di dati.

Passaggio 2: preparazione delle librerie richieste

Preparazione delle librerie richieste
Preparazione delle librerie richieste

Prima di tutto, devi scaricare la libreria di schede ESP8266 su arduino ide. Se non sai come fare, ecco la guida.

Dopodiché, devi scaricare la mia micro libreria da qui.

Dopo aver scaricato, nella cartella della libreria c'è un file chiamato "ESP_MICRO.h", copialo nella cartella di codifica del progetto arduino corrente. Sì, non copiarlo nelle librerie di arduino, è una micro libreria quindi la copierai nella cartella del tuo attuale progetto arduino.

Quindi ora le nostre esigenze sono soddisfatte. Possiamo iniziare a codificarlo.

Passaggio 3: scrittura di un codice di richiesta semplice

Scrivere un semplice codice di richiesta
Scrivere un semplice codice di richiesta

Quando apri il tuo project.ino, vedrai due schede su arduino ide. Uno è il tuo progetto, l'altro è "ESP_MICRO.h" la nostra micro libreria.

Ora hai quella funzione 5 in ESP_MICRO.h nel tuo codice principale (le funzioni sono spiegate nelle prime righe di ESP_MICRO.h)

Ecco un semplice codice crescente variabile.

Codice Arduino:

/* F5 TEST PER ESP2PY

* Scritto da Junicchi * https://github.com/KebabLord/esp_to_python * Semplicemente aumenta e restituisce una variabile ogni volta che arriva un python req */ #include "ESP_MICRO.h" //Include la micro libreria int testvariable = 0; void setup(){ Serial.begin(9600); // Avvio della porta seriale per vedere i dettagli start("USERNAME", "PASSWORD"); // EnAIt si connetterà al tuo wifi con i dettagli forniti } void loop(){ waitUntilNewReq(); //Attende l'arrivo di una nuova richiesta da python /* aumenta l'indice quando arriva una nuova richiesta*/ testvariable += 1; returnThisInt(variabile di prova); // Restituisce i dati a Python }

Passaggio 4: caricamento

Caricamento
Caricamento

La programmazione di Nodemcu ESP8266 sta semplicemente collegando USB e caricando lo schizzo da arduino.

Ma programmare ESP8266-1 è più difficile, ci sono due metodi per programmarli

Programmazione ESP tramite arduino

Se stai bene con i ponticelli, puoi programmarlo tramite arduino con questo circuito. Ma a lungo termine, è dolore. Quindi suggerisco un altro metodo.

Programmandolo con il programmatore ESP

È molto più facile e veloce. Costa solo 1 dollaro, comprane uno e usa un programmatore usb.

Imparare l'indirizzo IP di ESP

Durante il caricamento del codice, apri la porta seriale, vedrai che i dettagli vengono stampati al termine del caricamento. Impara l'IP di esp e notalo. Ricorda, l'IP di ESP in locale; cambia da wifi a wifi, non da sessione a sessione, quindi quando lo chiudi e lo apri in un secondo momento, non verrà modificato.

Passaggio 5: lettura e Python

Lettura e Python
Lettura e Python

In esp_to_python/library c'è un "EXAMPLE_PYTHON_READER.py"

modificalo, cambia la 5a riga con l'indirizzo IP del modulo esp stampato sul porta seriale ed esegui lo script python. In questo progetto, ho usato Python per inviare e leggere la richiesta. Ma puoi anche visualizzare i dati grezzi con un browser mentre incolli l'ip di ESP su un browser. Oppure puoi creare un'applicazione per leggerlo o puoi persino usare un'altra lingua. Il controllo del modulo su python è spiegato anche nel progetto "ledControl" nella cartella degli esempi.

Passaggio 6: finalizzazione

finalizzazione
finalizzazione

Tutte le funzioni ei codici sono spiegati in ESP_MICRO.he nel file README.md.

Se questo progetto ti ha aiutato, puoi iniziare il progetto originale su github.

Consigliato: