Sommario:
- Passaggio 1: ottenere il firmware e le librerie
- Passaggio 2: lavorare con MicroPython
- Passaggio 3: MicroPython su seriale
Video: MicroPython sulla scheda sensore Complex Arts: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Uno degli aspetti più sorprendenti del microcontrollore ESP32 è la sua capacità di eseguire MicroPython. Questo può essere fatto in due modi: eseguendo programmi Python completi o interattivamente tramite un'applicazione console. Questo Instructable dimostrerà come utilizzare MicroPython in entrambi i modi utilizzando la Complex Arts Sensor Board. Eseguiremo prima un'applicazione di esempio che raccoglie i dati dell'accelerometro dall'IMU BNO_085, quindi utilizzeremo un programma seriale per programmare in modo interattivo in Python.
Livello: questo tutorial presuppone una certa conoscenza di Python e che Python sia installato. Presuppone inoltre la conoscenza dei comandi di base del terminale.
Strumenti: gli unici strumenti di cui avremo bisogno saranno la Sensor Board, un programma terminale e un programma console seriale. Su un Mac, puoi semplicemente usare il terminale. Su una macchina Windows, dovrai scaricare e installare un programma terminale. Per la console seriale. Il mastice è sempre una buona scelta.
Passaggio 1: ottenere il firmware e le librerie
Per iniziare, dovremo scaricare il firmware personalizzato fornito da Complex Arts e quindi installarlo sulla Sensor Board. Il firmware può essere trovato qui:
Scarica il file firmware.bin e mettilo nella cartella che preferisci. Alla fine avrai anche bisogno del programma di esempio Complex Arts, quindi potresti anche farlo ora; vai su: https://github.com/ComplexArts/SensorBoardPython e git clone o scarica nella posizione che preferisci.
Una volta ottenuti i file, avremo bisogno di alcuni pacchetti per l'interfaccia con ESP32. Il primo pacchetto di cui avremo bisogno è esptool.py. Per installarlo, digita semplicemente
pip install esptool
nel terminale.
Una volta installato esptool, possiamo cancellare e quindi eseguire nuovamente il flashing del chip. Per farlo, entra
esptool.py --chip esp32 --port COM4 erase_flash
per la porta inserire la porta seriale che coincide con la Sensor Board. Su un Mac, sarebbe simile a --port /dev/ttyUSB0
Fatto ciò, lampeggeremo il chip con:
esptool.py --chip esp32 --port COM4 --baud 460800 write_flash -z 0x1000 firmware.bin
Di nuovo, cambia la porta di conseguenza.
Passaggio 2: lavorare con MicroPython
Se controlliamo l'uscita seriale della Sensor Board a questo punto, vedremo il REPL Python (il ciclo read-eval-print: >>>) Per fare ciò, avremo bisogno di un programma di console seriale. Putty è una buona opzione in quanto fornisce opzioni per SSH e telnet, ma anche una semplice comunicazione seriale come faremo qui. putty.org. Una volta installato, aprilo e seleziona "Seriale" sotto "Tipo di connessione:" Dovrai digitare lo stesso nome della porta seriale che hai inserito per esptool sopra, quindi una velocità di trasmissione di 115200 per la velocità. Vai avanti e fai clic su "Apri". E c'è Python!
Ora vorremmo caricare ed eseguire il nostro codice di esempio. Per farlo, vai alla cartella in cui hai precedentemente salvato gli esempi di SensorBoardPython. Avremo bisogno del fantastico pacchetto di Adafruit. Puoi installarlo con:
pip install adafruit-ampy = 0.6.3
Una volta che lo hai, usa ampy per caricare l'esempio dell'accelerometro sulla scheda:
ampy -p COM4 put accelerometer.py
(cambiando la porta di conseguenza, ovviamente). Ora ripristina la tua scheda con il pulsante di ripristino. Torneremo a Putty a questo punto e al prompt >>>, digitare
importare accelerometro
Viola! Ora stai eseguendo il codice accelerometer.py sulla Sensor Board! Il codice verrà eseguito per 20 secondi, quindi si fermerà. Notare che mentre il codice dell'accelerometro è in esecuzione, il LED blu sulla scheda lampeggia. Per chi ha più familiarità con Python, noterai che questo viene fatto senza threading e senza delay(). Ciò è dovuto all'uso della libreria asyncio di Python, che fornisce ottimi metodi per eseguire attività contemporaneamente ed è super utile su piattaforme integrate come ESP32. Se non lo conosci, vale la pena dare un'occhiata; c'è un ottimo tutorial qui: https://github.com/peterhinch/micropython-async/b… (ma attenzione, è un po' inebriante).
Passaggio 3: MicroPython su seriale
Torna al compito a portata di mano! Quando il codice dell'accelerometro si ferma, vedrai di nuovo il Python >>>. Ora possiamo programmare in modo interattivo usando la Sensor Board come nostro interprete Python. Per farlo, entra
>>x = 10
>>y = 11
>>x + y
21
Sebbene questo sia l'esempio più elementare, possiamo facilmente iniziare a creare codice più complesso utilizzando le librerie Complex Arts come punto di partenza. Ciò consente di eseguire misurazioni di posizione e movimento al volo, con controllo in tempo reale. Con i pin GPIO disponibili sulla Sensor Board, puoi facilmente collegare servi, luci, sensori, motori o qualsiasi numero di dispositivi fisici, utilizzandoli in modo interattivo o tramite un programma Python. Divertiti!
Per ulteriori informazioni, dai un'occhiata a queste altre risorse:
complexarts.net/home/
complexarts.net/docs/bno085/
Consigliato:
Installa Ubuntu 18.04.4 LTS sulla tua scheda Raspberry Pi: 8 passaggi
Installa Ubuntu 18.04.4 LTS sulla tua scheda Raspberry Pi: Il team Ubuntu ha rilasciato il sistema operativo Ubuntu 18.04.4 Supporto a lungo termine per computer a scheda singola Raspberry Pi 2/3/4 ARM. Breve panoramicaCome sappiamo, Raspbian è basato su Debian distro, che è il sistema operativo ufficiale per il Raspber
Tweet sul display OLED SPI e sulla scheda fotonica delle particelle: 6 passaggi
Tweet sul display OLED SPI e sulla scheda fotonica di Particle: saluti a tutti. Questo semplice tutorial ci mostrerà come leggere i nostri tweet usando IFTTT e una scheda Photon. Potrebbe essere necessario vedere questo istruibile
Arduino che controlla più sensori P.I.R sulla stessa scheda: 3 passaggi
Arduino che controlla più sensori PIR sulla stessa scheda: oggi ti dirò come collegare più sensori PIR con un singolo Arduino Bord >qui ho anche usato un modulo relè a 4 canali per alcune funzionalità extra.ARDUINO + modulo relè a 4 canali + sensore 4 PIR (OPPURE puoi usare tanti pin del tuo arduin
Utilizzo della scheda sensore Complex Arts per controllare i dati puri tramite WiFi: 4 passaggi (con immagini)
Utilizzo della scheda sensore Complex Arts per controllare i dati puri tramite WiFi: hai mai desiderato sperimentare il controllo gestuale? Far muovere le cose con un gesto della mano? Controllare la musica con una rotazione del polso? Questo Instructable ti mostrerà come! La Complex Arts Sensor Board (complexarts.net) è un microc
Come programmare una scheda AVR utilizzando una scheda Arduino: 6 passaggi
Come programmare una scheda AVR utilizzando una scheda Arduino: hai una scheda microcontrollore AVR in giro? È complicato programmarlo? Bene, sei nel posto giusto. Qui, ti mostrerò come programmare una scheda microcontrollore Atmega8a utilizzando una scheda Arduino Uno come programmatore. Quindi senza ulteriori