Tartalomjegyzék:

MicroPython a komplex művészeti érzékelő táblán: 3 lépés
MicroPython a komplex művészeti érzékelő táblán: 3 lépés

Videó: MicroPython a komplex művészeti érzékelő táblán: 3 lépés

Videó: MicroPython a komplex művészeti érzékelő táblán: 3 lépés
Videó: The Most Beautiful Thing I've Ever Built 2024, November
Anonim
MicroPython a Complex Arts Sensor Boardon
MicroPython a Complex Arts Sensor Boardon
MicroPython a Complex Arts Sensor Boardon
MicroPython a Complex Arts Sensor Boardon

Az ESP32 mikrokontroller egyik legcsodálatosabb tulajdonsága a MicroPython futtatásának képessége. Ez kétféleképpen történhet: teljes Python programok futtatásával, vagy interaktív módon egy konzolos alkalmazáson keresztül. Ez az útmutató bemutatja, hogy a MicroPython -ot mindkét irányban használhatja a Complex Arts Sensor Board használatával. Először futtatunk egy példaalkalmazást, amely gyorsulásmérő adatokat gyűjt a BNO_085 IMU -ból, majd soros program segítségével interaktívan programozzuk a Python -ban.

Szint: Ez az oktatóanyag feltételezi a Python ismereteit és a Python telepítését. Feltételezi az alapvető terminálparancsok ismeretét is.

Eszközök: Az egyetlen eszköz, amire szükségünk lesz, az érzékelő kártya, egy terminálprogram és egy soros konzol program. Mac számítógépen egyszerűen használhatja a terminált. Windows gépen le kell töltenie és telepítenie kell egy terminál programot. A soros konzolhoz. A gitt mindig jó választás.

1. lépés: A firmware és a könyvtárak beszerzése

A kezdéshez le kell töltenünk a Complex Arts által biztosított egyedi firmware -t, majd le kell töltenünk az érzékelő táblára. A firmware itt található:

Töltse le a firmware.bin fájlt, és helyezze el a kívánt mappába. Szüksége lesz végül a komplex művészeti példaprogramra is, így akár most is megteheti; lépjen a következő helyre: https://github.com/ComplexArts/SensorBoardPython és git klón, vagy töltse le az Ön által választott helyre.

Miután megkapta a fájlokat, szükségünk lesz néhány csomagra az ESP32 -hez való kapcsolódáshoz. Az első csomag, amire szükségünk lesz, az esptool.py. A telepítéshez egyszerűen írja be

pip install esptool

a terminálban.

Az esptool telepítése után törölhetjük, majd újra villanhatjuk a chipet. Ehhez lépjen be

esptool.py --chip esp32 --port COM4 erase_flash

porthoz adja meg azt a soros portot, amely egybeesik az érzékelőpanellel. Mac gépen ez valahogy így nézne ki --port /dev /ttyUSB0

Ha ez megtörtént, a chipet a következőkkel villogjuk:

esptool.py --chip esp32 --port COM4 --baud 460800 write_flash -z 0x1000 firmware.bin

Ismét ennek megfelelően változtassa meg a portot.

2. lépés: A MicroPython használata

MicroPython használata
MicroPython használata

Ha ezen a ponton ellenőrizzük az érzékelő kártya soros kimenetét, látni fogjuk a Python REPL-t (az olvasás-eval-nyomtatás ciklus: >>>). Ehhez soros konzolprogramra lesz szükségünk. A Putty jó megoldás, mivel opciókat kínál az SSH és a telnet számára, de egyszerű soros kommunikációt is, ahogy itt fogjuk csinálni. putty.org. Miután telepítette, nyissa meg, és válassza a „Soros” lehetőséget a „Kapcsolat típusa” alatt: Ugyanazt a soros port nevet kell begépelnie, amelyet a fenti esptoolhoz megadott, majd 115200 bitsebességet a sebességhez. Lépjen tovább, és kattintson a „Megnyitás” gombra. És ott a Python!

Most szeretnénk feltölteni és futtatni a példakódunkat. Ehhez menjen abba a mappába, ahová korábban mentette a SensorBoardPython példákat. Szükségünk lesz az Adafruit fantasztikus ampy csomagjára. Ezt telepítheti:

pip install adafruit-ampy = 0.6.3

Ha megvan, töltse fel az ampy segítségével a gyorsulásmérő példáját a táblára:

ampy -p COM4 fel gyorsulásmérő.py

(természetesen a port megváltoztatása). Most állítsa alaphelyzetbe a táblát a reset gombbal. Ezen a ponton visszatérünk a Putty -hoz, és a >>> parancssorba írja be

import gyorsulásmérő

Brácsa! Most az accelerometer.py kódot futtatja az érzékelő táblán! A kód 20 másodpercig fut, majd leáll. Vegye figyelembe, hogy amíg a gyorsulásmérő kódja fut, a táblán lévő kék LED villog. Azok számára, akik jobban ismerik a Python -t, észre fogják venni, hogy ez szál nélkül és késedelem nélkül történik (). Ennek oka a Python asyncio könyvtárának használata, amely nagyszerű módszereket kínál a feladatok egyidejű futtatásához, és rendkívül hasznos olyan beágyazott platformokon, mint az ESP32. Ha nem ismered, érdemes megnézni; van egy nagyszerű oktatóanyag itt: https://github.com/peterhinch/micropython-async/b… (de figyelmeztetni kell, ez egy kicsit fejvesztett).

3. lépés: MicroPython soros kapcsolaton keresztül

Vissza a feladathoz! Amikor a gyorsulásmérő kódja leáll, újra megjelenik a Python >>>. Most már interaktívan programozhatunk a Sensor Board segítségével, mint Python tolmácsunk. Ehhez lépjen be

>> x = 10

>> y = 11

>> x + y

21

Bár ez a legalapvetőbb példa, könnyen elkezdhetjük bonyolultabb kód létrehozását a Complex Arts könyvtárak kiindulópontjaként. Ez lehetővé teszi a pozíciómérések és mozgás menet közbeni végrehajtását valós idejű vezérléssel. Az érzékelőtáblán található GPIO csapok segítségével egyszerűen csatlakoztathat szervókat, lámpákat, érzékelőket, motorokat vagy tetszőleges számú fizikai eszközt interaktív módon vagy Python program segítségével. Érezd jól magad!

További információkért tekintse meg ezeket az egyéb forrásokat:

complexarts.net/home/

complexarts.net/docs/bno085/

Ajánlott: