Sadržaj:
- Korak 1: Nabavite firmver i biblioteke
- Korak 2: Rad s MicroPythonom
- Korak 3: MicroPython preko serije
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Jedan od najnevjerovatnijih aspekata mikrokontrolera ESP32 je njegova sposobnost pokretanja MicroPythona. To se može učiniti na dva načina: pokretanjem punih Python programa ili interaktivno putem konzole. Ovaj Instructable će pokazati kako se MicroPython koristi na oba načina pomoću Complex Arts Sensor Board -a. Prvo ćemo pokrenuti primjer aplikacije koja prikuplja podatke akcelerometra iz BNO_085 IMU, zatim ćemo koristiti serijski program za interaktivno programiranje u Pythonu.
Nivo: Ovaj vodič pretpostavlja određeno znanje o Pythonu i da je Python instaliran. Također pretpostavlja poznavanje osnovnih terminalnih naredbi.
Alati: Jedini alati koji će nam trebati bit će senzorska ploča, terminalni program i program serijske konzole. Na Macu možete jednostavno koristiti terminal. Na Windows računaru morate preuzeti i instalirati terminalni program. Za serijsku konzolu. Git je uvijek dobar izbor.
Korak 1: Nabavite firmver i biblioteke
Za početak ćemo morati preuzeti prilagođeni firmver koji nudi Complex Arts, a zatim ga prenijeti na ploču senzora. Firmver možete pronaći ovdje:
Preuzmite datoteku firmware.bin i postavite je u fasciklu po svom izboru. Na kraju će vam također trebati primjer programa Complex Arts, pa biste to mogli učiniti i sada; idite na: https://github.com/ComplexArts/SensorBoardPython i git clone ili preuzmite na lokaciju po vašem izboru.
Nakon što nabavite datoteke, trebat će nam nekoliko paketa za povezivanje s ESP32. Prvi paket koji će nam trebati je esptool.py. Da biste ga instalirali, jednostavno upišite
pip install esptool
u terminalu.
Nakon što je esptool instaliran, možemo izbrisati, a zatim ponovno bljeskati čip. Da biste to učinili, unesite
esptool.py --chip esp32 --port COM4 erase_flash
za port unesite serijski port koji se poklapa sa senzorskom pločom. Na Macu bi to izgledalo otprilike --port /dev /ttyUSB0
Nakon što to učinimo, čip ćemo zamijeniti sa:
esptool.py --chip esp32 --port COM4 --baud 460800 write_flash -z 0x1000 firmware.bin
Ponovo promijenite port u skladu s tim.
Korak 2: Rad s MicroPythonom
Ako u ovom trenutku provjerimo serijski izlaz Sensor Board-a, vidjet ćemo Python REPL (petlja read-eval-print: >>>) Da bismo to učinili, trebat će nam program serijske konzole. Putty je dobra opcija jer pruža mogućnosti za SSH i telnet, ali i jednostavnu serijsku komunikaciju kao što ćemo ovdje raditi. putty.org. Nakon što ste ga instalirali, otvorite ga i odaberite "Serijski" pod "Vrsta veze:" Morat ćete unijeti isti naziv serijskog porta koji ste unijeli za gornji esptool, a zatim brzinu prijenosa od 115200 za brzinu. Idite naprijed i kliknite "Otvori". A tu je i Python!
Sada ćemo htjeti učitati i pokrenuti naš primjer koda. Da biste to učinili, idite u mapu u koju ste ranije spremili primjere SensorBoardPython. Trebat će nam odličan Adapruit paket ampy. To možete instalirati pomoću:
pip install adafruit-ampy = 0.6.3
Kada ga imate, upotrijebite ampy za postavljanje primjera akcelerometra na ploču:
ampy -p COM4 staviti accelerometer.py
(naravno mijenjajući port u skladu s tim). Sada resetirajte ploču pomoću gumba za resetiranje. Vratit ćemo se na Putty u ovom trenutku i na promptu >>> upišite
Uvozni akcelerometar
Viola! Sada pokrećete kod accelerometer.py na ploči senzora! Kôd će raditi 20 sekundi, a zatim će se zaustaviti. Primijetite da dok je kod akcelerometra aktivan, plava LED dioda na ploči treperi. Za one koji su upućeniji u Python, primijetit ćete da se to radi bez navoja niti bez odlaganja (). To je zbog upotrebe Pythonove biblioteke asyncio, koja pruža odlične metode za istovremeno izvršavanje zadataka i super je korisna na ugrađenim platformama poput ESP32. Ako niste upoznati s tim, vrijedi provjeriti; ovdje postoji odličan vodič: https://github.com/peterhinch/micropython-async/b… (ali upozoravam, malo je omamljen).
Korak 3: MicroPython preko serije
Nazad na zadatak koji vam je na raspolaganju! Kad se kod akcelerometra zaustavi, ponovno ćete vidjeti Python >>>. Sada možemo interaktivno programirati pomoću ploče senzora kao našeg Python tumača. Da biste to učinili, unesite
>> x = 10
>> y = 11
>> x + y
21
Iako je ovo najosnovniji primjer, lako možemo početi stvarati složeniji kod koristeći biblioteke Complex Arts kao polazište. To vam omogućava da pokrećete mjerenje položaja i kretanje u hodu, uz kontrolu u stvarnom vremenu. Pomoću GPIO pinova dostupnih na ploči senzora, možete lako povezati servo, svjetla, senzore, motore ili bilo koji drugi fizički uređaj, koristeći ih interaktivno ili putem programa Python. Zabavi se!
Za više informacija pogledajte ove druge izvore:
complexarts.net/home/
complexarts.net/docs/bno085/
Preporučuje se:
Python program - složene kamate sa mjesečnim doprinosima/depozitima: 5 koraka
Python program - složena kamata sa mjesečnim doprinosima/depozit: Program za izračunavanje složene kamate sa mjesečnim doprinosom na kraju mjeseca. Formula preuzeta sa stranice TheCalculatorSite.com: Složena kamata za glavnicu: P (1+r/n)^(nt) Buduća vrijednost serije: PMT × ((((1 + r/n)^nt - 1)/(r/n))
Impedansa komponente pomoću složene matematike: 6 koraka
Impedancija komponente pomoću složene matematike: Evo praktične primjene složenih matematičkih jednadžbi. Ovo je u stvari vrlo korisna tehnika koju možete koristiti za karakteriziranje komponenti, ili čak antene, na unaprijed određenim frekvencijama. Ako ste se petljali s elektronikom mozda je porodica
Skica do digitalne umjetnosti - Iron Man: 10 koraka
Skica za digitalnu umjetnost - Iron Man: Nedavno sam se bavio nekim stripom. Nešto što sam puno radio dok sam bio mlađi. U posljednje vrijeme radio sam na nekoliko komada poput Batmana, Cyborg Supermana i The Flash -a. Sve je to urađeno ručno, uključujući i bojanje. Za
Generiranje umjetnosti iz komentara: 5 koraka (sa slikama)
Generiranje umjetnosti iz komentara: Ovaj je projekt ambiciozan, gdje želimo koristiti neke od najpouzdanijih dijelova interneta, odjeljke za komentare i sobe za chat za stvaranje umjetnosti. Također želimo učiniti projekt lako dostupnim kako bi se svi mogli okušati u stvaranju
Korištenje složene ploče senzora umjetnosti za kontrolu čistih podataka putem WiFi -a: 4 koraka (sa slikama)
Korištenje složene ploče senzora umjetnosti za kontrolu čistih podataka putem WiFi -a: Jeste li ikada poželjeli eksperimentirati s kontrolom pokreta? Da pokrenete stvari pokretom ruke? Kontrolišite muziku okretanjem zgloba? Ovaj Instructable će vam pokazati kako! Složena ploča senzora za složenu umjetnost (complexarts.net) svestrana je mikroc