Mündəricat:

Kompleks İncəsənət Sensor lövhəsində MicroPython: 3 addım
Kompleks İncəsənət Sensor lövhəsində MicroPython: 3 addım

Video: Kompleks İncəsənət Sensor lövhəsində MicroPython: 3 addım

Video: Kompleks İncəsənət Sensor lövhəsində MicroPython: 3 addım
Video: heyet ucun bulaq 2024, Noyabr
Anonim
Kompleks İncəsənət Sensor lövhəsində MicroPython
Kompleks İncəsənət Sensor lövhəsində MicroPython
Kompleks İncəsənət Sensor lövhəsində MicroPython
Kompleks İncəsənət Sensor lövhəsində MicroPython

ESP32 mikrokontrolörünün ən heyrətləndirici cəhətlərindən biri də MicroPython -u işlətmə qabiliyyətidir. Bu iki yolla edilə bilər: tam Python proqramlarını işlətmək və ya interaktiv olaraq konsol proqramı vasitəsilə. Bu Təlimat, MicroPython -un necə istifadə olunacağını, Kompleks İncəsənət Sensor lövhəsindən istifadə etməyin hər iki yolunu göstərəcək. Əvvəlcə BNO_085 IMU -dan akselerometr məlumatlarını toplayan bir nümunə tətbiq işlədəcəyik, sonra Python -da interaktiv olaraq proqramlaşdırmaq üçün bir sıra proqramdan istifadə edəcəyik.

Səviyyə: Bu dərslik Python haqqında bir az bilik əldə etdiyini və Pythonun quraşdırıldığını güman edir. Həm də əsas terminal əmrləri haqqında məlumat əldə edir.

Alətlər: Ehtiyac duyacağımız yeganə alətlər Sensor Board, terminal proqramı və serial konsol proqramı olacaq. Mac -da sadəcə terminaldan istifadə edə bilərsiniz. Windows maşınında bir terminal proqramı yükləməli və quraşdırmalısınız. Serial konsol üçün. Macun həmişə yaxşı bir seçimdir.

Addım 1: Firmware və Kitabxanaları əldə edin

Başlamaq üçün, Complex Arts tərəfindən təmin edilən xüsusi proqram təminatını yükləməli və sonra Sensor Board -a yandırmalıyıq. Firmware burada tapa bilərsiniz:

Firmware.bin faylını yükləyin və seçdiyiniz qovluğa yerləşdirin. Sonda Kompleks Sənətlər nümunə proqramına ehtiyacınız olacaq, buna görə də indi edə bilərsiniz; keçin: https://github.com/ComplexArts/SensorBoardPython və git clone və ya seçdiyiniz yerə endirin.

Faylları əldə etdikdən sonra ESP32 ilə əlaqə qurmaq üçün bir neçə pakete ehtiyacımız olacaq. Ehtiyac duyduğumuz ilk paket esptool.py -dir. Quraşdırmaq üçün sadəcə yazın

pip esptool qurun

terminalda.

Esptool quraşdırıldıqdan sonra çipi silə bilərik, sonra yenidən yandıra bilərik. Bunu etmək üçün daxil edin

esptool.py --çip esp32 --port COM4 erase_flash

liman üçün Sensor Board ilə üst -üstə düşən serial portunu daxil edin. Mac -da bu --port /dev /ttyUSB0 kimi görünür

Bunu etdikdən sonra çipi yanıb -söndürəcəyik:

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

Yenə buna uyğun olaraq limanı dəyişdirin.

Addım 2: MicroPython ilə işləmək

MicroPython ilə işləmək
MicroPython ilə işləmək

Bu anda Sensor Board-un seriyalı çıxışını yoxlasaq, Python REPL-i (oxu-eval-print loop: >>>) görərik Bunu etmək üçün serial konsol proqramına ehtiyacımız olacaq. Putty, SSH və telnet üçün seçimlər təmin etdiyi üçün yaxşı bir seçimdir, həm də burada edəcəyimiz kimi sadə serial ünsiyyətidir. putty.org. Bunu qurduqdan sonra açın və "Bağlantı növü" altında "Serial" ı seçin: Yuxarıdakı esptool üçün daxil etdiyiniz eyni seriya port adını yazmalısınız, sonra isə Sürət üçün 115200 baud dərəcəsi. Davam edin və "Aç" düyməsini basın. Və Python var!

İndi nümunə kodumuzu yükləmək və işə salmaq istəyəcəyik. Bunu etmək üçün əvvəllər SensorBoardPython nümunələrini saxladığınız qovluğa gedin. Adafruit -in möhtəşəm geniş paketinə ehtiyacımız olacaq. Bunu aşağıdakılarla quraşdıra bilərsiniz:

pip install adafruit-ampy = 0.6.3

Əldə etdikdən sonra, accelerometer nümunəsini lövhəyə yükləmək üçün ampy istifadə edin:

ampy -p COM4, accelerometer.py qoyun

(Əlbəttə ki, limanı buna uyğun olaraq dəyişdirmək). İndi sıfırlama düyməsini istifadə edərək lövhənizi sıfırlayın. Bu nöqtədə Putty -ə qayıdacağıq və >>> istəyində yazın

idxal akselerometri

Viola! İndi Sensor Board -da accelerometer.py kodunu işə salırsınız! Kod 20 saniyə işləyəcək, sonra dayandırılacaq. Diqqət yetirin ki, akselerometr kodu işləyərkən lövhədəki mavi LED yanıb sönür. Python ilə daha yaxından tanış olanlar üçün bunun iş parçalamadan və gecikmədən edildiyini görəcəksiniz (). Bu, eyni anda vəzifələri yerinə yetirmək üçün əla üsullar təmin edən və ESP32 kimi quraşdırılmış platformalarda çox faydalı olan Python -un asyncio kitabxanasının istifadəsi ilə əlaqədardır. Əgər tanış deyilsinizsə, yoxlamağa dəyər; burada əla bir dərs var: https://github.com/peterhinch/micropython-async/b… (amma xəbərdar olun, bu bir az başıaçıqdır).

Addım 3: MicroPython Serial üzərində

Əlinizdəki vəzifəyə qayıdın! Akselerometr kodu dayandıqda yenidən Python >>> görəcəksiniz. İndi Python tərcüməçimiz olaraq Sensor Board istifadə edərək interaktiv olaraq proqramlaşdıra bilərik. Bunu etmək üçün daxil edin

>> x = 10

>> y = 11

>> x + y

21

Bu ən əsas nümunələr olsa da, Başlanğıc nöqtəsi olaraq Kompleks Sənət kitabxanalarından istifadə edərək daha mürəkkəb bir kod yaratmağa başlaya bilərik. Bu, real vaxt nəzarəti ilə mövqe ölçmələrini və hərəkəti anında idarə etməyə imkan verir. Sensor lövhəsində mövcud olan GPIO pinləri ilə interaktiv olaraq və ya Python proqramı vasitəsi ilə servoları, işıqları, sensörləri, mühərrikləri və ya istənilən sayda fiziki cihazı asanlıqla birləşdirə bilərsiniz. Əylənin!

Daha çox məlumat üçün bu digər mənbələrə baxın:

complexarts.net/home/

complexarts.net/docs/bno085/

Tövsiyə: