Мазмұны:

Кешенді өнер сенсорлық тақтасындағы MicroPython: 3 қадам
Кешенді өнер сенсорлық тақтасындағы MicroPython: 3 қадам

Бейне: Кешенді өнер сенсорлық тақтасындағы MicroPython: 3 қадам

Бейне: Кешенді өнер сенсорлық тақтасындағы MicroPython: 3 қадам
Бейне: Ең таңғажайып әлемнің бассейндер 2024, Қыркүйек
Anonim
MicroPython күрделі өнер сенсорлық тақтасында
MicroPython күрделі өнер сенсорлық тақтасында
MicroPython күрделі өнер сенсорлық тақтасында
MicroPython күрделі өнер сенсорлық тақтасында

ESP32 микроконтроллерінің таңғажайып аспектілерінің бірі - оның MicroPython -ды басқару мүмкіндігі. Мұны екі жолмен жасауға болады: толық Python бағдарламаларын іске қосу немесе консольдық қосымша арқылы интерактивті. Бұл нұсқаулықта MicroPython -ды қалай қолдану керектігін көрсететін кешенді өнер сенсорлық тақтасы қолданылады. Біз алдымен BNO_085 IMU -ден акселерометр деректерін жинайтын мысал қосымшаны іске қосамыз, содан кейін Python -да интерактивті бағдарламалау үшін сериялық бағдарламаны қолданамыз.

Деңгейі: Бұл оқулық Python туралы біраз білімді және Python орнатылғанын болжайды. Ол сонымен қатар негізгі терминалдық командалар туралы білімді болжайды.

Құралдар: Бізге сенсорлық тақта, терминалды бағдарлама және консольдық сериялық бағдарлама қажет болады. Mac жүйесінде терминалды қолдануға болады. Windows компьютерінде сізге терминалды бағдарламаны жүктеу және орнату қажет. Сериялық консоль үшін. Шпатель әрқашан жақсы таңдау болып табылады.

1 -қадам: микробағдарлама мен кітапханаларды алу

Жұмысты бастау үшін бізге Complex Arts ұсынатын реттелетін микробағдарламаны жүктеу керек, содан кейін оны сенсорлық тақтаға жыпылықтау керек. Микробағдарламаны мына жерден табуға болады:

Firmware.bin файлын жүктеп алып, оны өзіңіз қалаған қалтаға салыңыз. Ақыр соңында сізге кешенді өнер үлгісі бағдарламасы қажет болады, сондықтан дәл қазір жасай аласыз; өтіңіз: https://github.com/ComplexArts/SensorBoardPython және git clone немесе сіз таңдаған жерге жүктеңіз.

Сізде файлдар болғаннан кейін бізге ESP32 интерфейсі үшін бірнеше пакет қажет болады. Бізге қажет бірінші пакет - esptool.py. Оны орнату үшін жай теріңіз

esptool орнатыңыз

терминалда.

Esptool орнатылғаннан кейін, біз чипті өшіріп, қайта жыпылықтай аламыз. Ол үшін енгізіңіз

esptool.py --chip esp32 -порт COM4 erase_flash

порт үшін сенсорлық тақтаға сәйкес келетін сериялық портты енгізіңіз. Mac жүйесінде бұл --port /dev /ttyUSB0 сияқты болады

Бұл аяқталғаннан кейін біз чипті жыпылықтаймыз:

esptool.py --chip esp32 -порт COM4 --baud 460800 write_flash -z 0x1000 firmware.bin

Тағы да портты сәйкесінше өзгертіңіз.

2 -қадам: MicroPython -мен жұмыс

MicroPython -мен жұмыс
MicroPython -мен жұмыс

Егер біз сенсорлық тақтаның сериялық шығуын тексеретін болсақ, онда Python REPL (оқу-бағалау-басып шығару циклы: >>>) көреміз. Бұл үшін бізге консольдық сериялық бағдарлама қажет болады. Putty - бұл жақсы нұсқа, өйткені ол SSH және telnet үшін опцияларды ұсынады, сонымен қатар біз мұнда жасайтын қарапайым сериялық байланыс. putty.org. Оны орнатқаннан кейін, оны ашып, «Қосылым түрі:» астындағы «Сериялық» таңдаңыз, сізге жоғарыдағы қосалқы құрал үшін енгізілген сериялық порт атауын теру керек, содан кейін жылдамдық үшін жылдамдық 115200. Жалғастырыңыз және «Ашу» түймесін басыңыз. Және Python бар!

Енді біз мысал кодын жүктеп, іске қосқымыз келеді. Ол үшін бұрын SensorBoardPython мысалдарын сақтаған қалтаға өтіңіз. Бізге Adafruit -тің керемет пакеті қажет. Сіз оны мыналармен орната аласыз:

pip install adafruit-ampy = 0.6.3

Сізде болғаннан кейін акселерометрдің мысалын тақтаға жүктеу үшін ampy пайдаланыңыз:

ampy -p COM4 акселерометр.py қойыңыз

(сәйкесінше портты өзгерту). Енді тақтаны қалпына келтіру түймесімен қалпына келтіріңіз. Біз Putty -ге қайтып ораламыз және >>> шақыруында теріңіз

импорттық акселерометр

Виола! Сіз енді сенсорлық тақтада accelerometer.py кодын іске қосасыз! Код 20 секунд жұмыс істейді, содан кейін тоқтайды. Назар аударыңыз, акселерометр коды жұмыс істеп тұрғанда, тақтадағы көк жарық диоды жыпылықтайды. Python -ды жақсы білетіндер үшін бұл жіпсіз және кідіріссіз орындалатынын байқайсыз (). Бұл Python asyncio кітапханасын қолданумен байланысты, ол бір уақытта тапсырмаларды орындаудың тамаша әдістерін ұсынады және ESP32 сияқты ендірілген платформаларда өте пайдалы. Егер сіз онымен таныс болмасаңыз, тексеруге тұрарлық; мұнда керемет оқулық бар: https://github.com/peterhinch/micropython-async/b… (бірақ ескерту керек, бұл аздап).

3 -қадам: MicroPython сериялық

Қолдағы тапсырмаға оралыңыз! Акселерометр коды тоқтағанда, сіз қайтадан Python >>> көресіз. Енді біз сенсорлық тақтаны Python аудармашысы ретінде интерактивті түрде бағдарламалай аламыз. Ол үшін енгізіңіз

>> x = 10

>> у = 11

>> x + y

21

Бұл ең қарапайым мысалдар болғанымен, біз бастапқы нүкте ретінде Complex Arts кітапханаларын қолдана отырып, күрделі код құруды оңай бастай аламыз. Бұл позициялық өлшемдерді және қозғалысты нақты уақытта басқаруға мүмкіндік береді. Сенсорлық тақтада қол жетімді GPIO түйреуіштерінің көмегімен сіз сервоприводтарды, шамдарды, датчиктерді, қозғалтқыштарды немесе кез келген физикалық құрылғыларды интерактивті түрде немесе Python бағдарламасы арқылы қосуға болады. Масайрау!

Қосымша ақпарат алу үшін мына басқа ресурстарды қараңыз:

complexarts.net/home/

complexarts.net/docs/bno085/

Ұсынылған: