Indholdsfortegnelse:
- Trin 1: Hentning af firmware og biblioteker
- Trin 2: Arbejde med MicroPython
- Trin 3: MicroPython Over Serial
Video: MicroPython på Complex Arts Sensor Board: 3 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Et af de mest fantastiske aspekter ved ESP32 -mikrokontrolleren er dens evne til at køre MicroPython. Dette kan gøres på to måder: at køre fulde Python -programmer eller interaktivt via en konsolapplikation. Denne instruktion vil demonstrere, hvordan man bruger MicroPython på begge måder ved hjælp af Complex Arts Sensor Board. Vi kører først et eksempelprogram, der samler accelerometerdata fra BNO_085 IMU, derefter bruger vi et serielt program til interaktivt at programmere i Python.
Niveau: Denne vejledning forudsætter en vis viden om Python, og at Python er installeret. Det forudsætter også kendskab til grundlæggende terminalkommandoer.
Værktøjer: De eneste værktøjer, vi skal bruge, er Sensor Board, et terminalprogram og et serielt konsolprogram. På en Mac kan du simpelthen bruge terminal. På en Windows -maskine skal du downloade og installere et terminalprogram. Til den serielle konsol. Spartel er altid et godt valg.
Trin 1: Hentning af firmware og biblioteker
For at komme i gang skal vi downloade den brugerdefinerede firmware fra Complex Arts og derefter blinke den til Sensor Board. Firmwaren kan findes her:
Download firmware.bin -filen, og placer den i den mappe, du vælger. Du får også i sidste ende brug for programmet Complex Arts, så du kan lige så godt gøre det nu; gå til: https://github.com/ComplexArts/SensorBoardPython og git klon eller download til det sted, du vælger.
Når du har fået filerne, skal vi bruge et par pakker til grænseflade med ESP32. Den første pakke, vi skal bruge, er esptool.py. For at installere det skal du blot skrive
pip installere esptool
i terminalen.
Når esptool er installeret, kan vi slette og derefter blinke chippen igen. For at gøre det skal du indtaste
esptool.py --chip esp32 --port COM4 erase_flash
for porten, skal du indtaste den serielle port, der falder sammen med sensorkortet. På en Mac ville det ligne noget lignende --port /dev /ttyUSB0
Når dette er gjort, blinker vi chippen med:
esptool.py --chip esp32 --port COM4 --baud 460800 write_flash -z 0x1000 firmware.bin
Igen, skift porten i overensstemmelse hermed.
Trin 2: Arbejde med MicroPython
Hvis vi kontrollerer sensorens serielle output på dette tidspunkt, ser vi Python REPL (læse-eval-print loop: >>>) For at gøre dette har vi brug for et serielt konsolprogram. Putty er en god mulighed, da den giver muligheder for SSH og telnet, men også enkel seriel kommunikation, som vi vil gøre her. putty.org. Når du har installeret det, skal du åbne det og vælge "Serial" under "Forbindelsestype:" Du skal indtaste det samme serielle portnavn, som du indtastede for esptool ovenfor, derefter en baudhastighed på 115200 for hastigheden. Fortsæt og klik på "Åbn". Og der er Python!
Nu vil vi uploade og køre vores eksempelkode. For at gøre det skal du gå til den mappe, hvor du tidligere gemte SensorBoardPython -eksemplerne. Vi får brug for Adafruit's fantastiske ampy -pakke. Du kan installere det med:
pip installer adafruit-ampy = 0.6.3
Når du har det, skal du bruge ampy til at uploade accelerometereksemplet til tavlen:
ampy -p COM4 put accelerometer.py
(naturligvis ændring af porten). Nulstil nu dit bræt med nulstillingsknappen. Vi vender tilbage til Putty på dette tidspunkt og ved >>> prompten skriver du
import accelerometer
Viola! Du kører nu accelerometer.py -koden på sensorbrættet! Koden kører i 20 sekunder og stopper derefter. Bemærk, at mens accelerometerkoden kører, blinker den blå LED på tavlen. For dem, der er mere fortrolige med Python, vil du bemærke, at dette sker uden trådning og uden forsinkelse (). Det skyldes brugen af Pythons asyncio -bibliotek, som giver gode metoder til at køre opgaver samtidigt og er super nyttig på integrerede platforme såsom ESP32. Hvis du ikke er bekendt med det, er det værd at tjekke; der er en fantastisk tutorial her: https://github.com/peterhinch/micropython-async/b… (men vær advaret, det er lidt berusende).
Trin 3: MicroPython Over Serial
Tilbage til opgaven! Når accelerometerkoden stopper, ser du igen Python >>>. Nu kan vi interaktivt programmere ved hjælp af Sensor Board som vores Python -tolk. For at gøre det skal du indtaste
>> x = 10
>> y = 11
>> x + y
21
Selvom dette er det mest basale af eksempler, kan vi let begynde at oprette mere kompleks kode ved hjælp af Complex Arts -bibliotekerne som udgangspunkt. Dette giver dig mulighed for at køre positionsmålinger og bevægelse i farten med kontrol i realtid. Med GPIO -benene til rådighed på Sensor Board kan du let tilslutte servoer, lys, sensorer, motorer eller et hvilket som helst antal fysiske enheder ved hjælp af dem enten interaktivt eller via et Python -program. Hav det sjovt!
For mere information, tjek disse andre ressourcer:
complexarts.net/home/
complexarts.net/docs/bno085/
Anbefalede:
Desoldering Complex Components: 4 trin
Desoldering Complex Components: Har du nogensinde ønsket at få den tilfældige chip eller komponent fra det tilfældige printkort, du har? Det er sikkert let at gøre med ting som kondensatorer eller LED'er, men når det kommer til mere komplekse ting, bliver det lidt sværere … Og når tingene går i stykker
MXY Board - Lavt budget XY Plotter Drawing Robot Board: 8 trin (med billeder)
MXY Board - Lavbudget XY Plotter Drawing Robot Board: Mit mål var at designe mXY boardet til at lave lavt budget til XY plotter tegnemaskinen. Så jeg designede en tavle, der gør det lettere for dem, der ønsker at lave dette projekt. I det forrige projekt, mens du bruger 2 stk Nema17 stepper motorer, bruger dette bord
Docker Pi -serien af Sensor Hub Board Om IOT: 13 trin
Docker Pi -serien af Sensor Hub Board Om IOT: Hej alle gutter. I dag er næsten alt relateret til IOT. Ingen tvivl om det, vores DockerPi -seriekort understøtter også IOT. I dag vil jeg introducere DockerPi -serien af SensorHub hvordan at ansøge om IOT til dig. Jeg kører dette element, der er baseret på
STM32F407VET6 Black Board og MicroPython: 3 trin
STM32F407VET6 Black Board og MicroPython: INTRODUKTION Jeg er stødt på et billigt STM32F407 board fra AliExpress, jeg besluttede at prøve det med MicroPython. STM32F407 stort set den samme controller som STM32F405 bruges i original pyboard, men viste sig på MicroPython download side der er DFU
Brug af Complex Arts Sensor Board til at styre rene data over WiFi: 4 trin (med billeder)
Brug af Complex Arts Sensor Board til at styre rene data over WiFi: Har du nogensinde ønsket at eksperimentere med gestikal kontrol? Få tingene til at bevæge sig med en håndbølge? Styr musik med et twist af dit håndled? Denne instruktør viser dig hvordan! Complex Arts Sensor Board (complexarts.net) er en alsidig mikrok