Talaan ng mga Nilalaman:

MicroPython sa Complex Arts Sensor Board: 3 Mga Hakbang
MicroPython sa Complex Arts Sensor Board: 3 Mga Hakbang

Video: MicroPython sa Complex Arts Sensor Board: 3 Mga Hakbang

Video: MicroPython sa Complex Arts Sensor Board: 3 Mga Hakbang
Video: Part 4. Using a button - Embedded C Programming with PIC18F14K50 2024, Nobyembre
Anonim
MicroPython sa Complex Arts Sensor Board
MicroPython sa Complex Arts Sensor Board
MicroPython sa Complex Arts Sensor Board
MicroPython sa Complex Arts Sensor Board

Ang isa sa mga kamangha-manghang mga aspeto ng ESP32 microcontroller ay ang kakayahang patakbuhin ang MicroPython. Maaari itong magawa sa dalawang paraan: pagpapatakbo ng buong mga programa ng Python, o interactive sa pamamagitan ng isang application ng console. Ipapakita ng Instructable na ito kung paano gamitin ang MicroPython ay parehong paraan gamit ang Board ng Sensor ng Sensor ng Kompanya. Nagpapatakbo muna kami ng isang halimbawang application na nangangalap ng data ng accelerometer mula sa BNO_085 IMU, pagkatapos ay gagamit kami ng isang serial program upang interactive na programa sa Python.

Antas: Ipinapalagay ng tutorial na ito ang ilang kaalaman sa Python, at na-install ang Python. Ipinagpapalagay din nito ang kaalaman sa mga pangunahing utos ng terminal.

Mga tool: Ang mga tool lamang na kakailanganin namin ay ang Sensor Board, isang programa ng terminal, at isang programa ng serial console. Sa isang Mac, maaari mo lamang gamitin ang terminal. Sa isang makina sa Windows, kakailanganin mong mag-download at mag-install ng isang programa ng terminal. Para sa serial console. Si Putty ay palaging isang mahusay na pagpipilian.

Hakbang 1: Pagkuha ng Firmware at Mga Aklatan

Upang magsimula, kakailanganin naming i-download ang pasadyang firmware na ibinigay ng Complex Arts at pagkatapos ay i-flash ito sa Sensor Board. Ang firmware ay matatagpuan dito:

I-download ang firmware.bin file at ilagay ito sa folder na iyong pipiliin. Kakailanganin mo rin sa kalaunan ang programang halimbawa ng Complex Arts, kaya maaari mo rin itong gawin ngayon; pumunta sa: https://github.com/ComplexArts/SensorBoardPython at git clone o i-download sa lokasyon na iyong pinili.

Kapag nakuha mo na ang mga file, kakailanganin namin ang ilang mga pakete para sa pag-interfaces sa ESP32. Ang unang package na kakailanganin namin ay esptool.py. Upang mai-install ito, simpleng i-type

pip install ng esptool

sa terminal.

Kapag na-install na ang esptool, maaari nating burahin pagkatapos muling i-flash ang chip. Upang magawa ito, ipasok

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

para sa port, ipasok ang serial port na kasabay ng Sensor Board. Sa isang Mac, magiging hitsura iyon ng --port / dev / ttyUSB0

Kapag tapos na ito, i-flash namin ang chip kasama ang:

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

Muli, baguhin ang port nang naaayon.

Hakbang 2: Paggawa Sa MicroPython

Paggawa Sa MicroPython
Paggawa Sa MicroPython

Kung susuriin natin ang serial output ng Sensor Board sa puntong ito, makikita natin ang Python REPL (ang read-eval-print loop: >>>) Upang magawa ito, kakailanganin namin ng isang programa ng serial console. Ang Putty ay isang mahusay na pagpipilian dahil nagbibigay ito ng mga pagpipilian para sa SSH at telnet, ngunit din simpleng serial komunikasyon tulad ng gagawin namin dito. putty.org. Kapag na-install mo na iyon, buksan ito at piliin ang "Serial" sa ilalim ng "Uri ng koneksyon:" Kakailanganin mong i-type ang parehong serial port na pangalan na ipinasok mo para sa esptool sa itaas, pagkatapos ay isang baud rate na 115200 para sa Bilis. Sige at i-click ang "Buksan". At may Python!

Ngayon nais naming i-upload at patakbuhin ang aming halimbawa ng code. Upang magawa iyon, pumunta sa folder kung saan mo nai-save ang mga halimbawa ng SensorBoardPython. Kakailanganin namin ang mahusay na pakete ng Adafruit. Maaari mong i-install iyon sa:

pip install adafruit-sapat = 0.6.3

Kapag mayroon ka nito, gumamit ng sapat upang mai-upload ang halimbawa ng accelerometer sa pisara:

sapat -p COM4 ilagay ang accelerometer.py

(binabago ang port nang naaayon, syempre). Ngayon i-reset ang iyong board gamit ang pindutan ng pag-reset. Babalik kami sa Putty sa puntong ito at sa >>> prompt, uri

mag-import ng accelerometer

Viola! Pinapatakbo mo ngayon ang accelerometer.py code sa Sensor Board! Tatakbo ang code sa loob ng 20 segundo, pagkatapos ay huminto. Pansinin na habang tumatakbo ang code ng accelerometer, kumikislap ang asul na LED sa board. Para sa mga mas pamilyar sa Python, mapapansin mo na ginagawa ito nang walang pag-thread at walang pagkaantala (). Ito ay dahil sa paggamit ng asyncio library ng Python, na nagbibigay ng mahusay na mga pamamaraan para sa pagpapatakbo ng mga gawain nang sabay-sabay at sobrang kapaki-pakinabang sa mga naka-embed na platform tulad ng ESP32. Kung hindi ka pamilyar dito, sulit na suriin; mayroong isang mahusay na tutorial dito: https://github.com/peterhinch/micropython-async/b… (ngunit babalaan, medyo kaunti ito).

Hakbang 3: MicroPython Higit sa Serial

Bumalik sa gawain na nasa ngayon! Kapag tumigil ang code ng accelerometer, makikita mo muli ang Python >>>. Ngayon ay maaari kaming interactive na programa gamit ang Sensor Board bilang aming Python interpreter. Upang magawa ito, ipasok

>> x = 10

>> y = 11

>> x + y

21

Habang ito ang pinaka-pangunahing mga halimbawa, madali naming masisimulan ang paglikha ng mas kumplikadong code gamit ang mga library ng Complex Arts bilang isang panimulang punto. Pinapayagan kang magpatakbo ng mga posisyong pagsukat at paggalaw nang mabilis, na may kontrol sa real-time. Gamit ang mga GPIO pin na magagamit sa Sensor Board, maaari mong madaling ikonekta ang mga servo, ilaw, sensor, motor, o anumang bilang mga pisikal na aparato, gamit ang mga ito alinman sa interactive, o sa pamamagitan ng isang programa ng Python. Magsaya ka!

Para sa karagdagang impormasyon, tingnan ang iba pang mga mapagkukunan:

complexarts.net/home/

complexarts.net/docs/bno085/

Inirerekumendang: