Мазмуну:
- 1 -кадам: Камтылган программаны жана китепканаларды алуу
- 2 -кадам: MicroPython менен иштөө
- 3 -кадам: MicroPython Over Serial
Video: MicroPython комплекстүү көркөм сенсордук тактасында: 3 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:38
ESP32 микроконтроллеринин эң таң калыштуу аспектилеринин бири анын MicroPython иштетүү жөндөмдүүлүгү. Бул эки жол менен жасалышы мүмкүн: Python программаларын толук иштетүү же консолдук тиркеме аркылуу интерактивдүү. Бул көрсөтмө MicroPythonду кантип колдонуу керектигин көрсөтөт, ал комплекстүү искусство сенсордук тактасын колдонуунун эки жолу. Биз адегенде BNO_085 IMUдан акселерометр маалыматтарын чогулткан мисал тиркемесин иштетебиз, андан кийин Pythonдо интерактивдүү программалоо үчүн сериялык программаны колдонобуз.
Даража: Бул окуу куралы Python жөнүндө бир аз билимге ээ жана Python орнотулган. Ал ошондой эле негизги терминалдык буйруктарды билүүнү болжолдойт.
Куралдар: Бизге керек болгон бир гана курал - бул сенсордук тактасы, терминалдык программа жана сериялык консоль программасы. Macта сиз жөн гана терминалды колдоно аласыз. Windows машинасында сиз терминалдык программаны жүктөп алып, орнотушуңуз керек болот. Сериялык консол үчүн. Putty ар дайым жакшы тандоо болуп саналат.
1 -кадам: Камтылган программаны жана китепканаларды алуу
Баштоо үчүн, биз Complex Arts тарабынан берилген колдонуучунун программасын жүктөп алып, андан кийин аны сенсордук тактага жаркыратышыбыз керек. Камтылган программаны бул жерден тапса болот:
Firmware.bin файлын жүктөп алып, өзүңүз тандаган папкага салыңыз. Сиз ошондой эле акыры Complex Arts мисал программасына муктаж болосуз, андыктан азыр муну кыла аласыз; баруу: https://github.com/ComplexArts/SensorBoardPython жана git clone же тандаган жериңизге жүктөп алыңыз.
Файлдарды алгандан кийин, ESP32 менен иштөө үчүн бизге бир нече пакеттер керек болот. Бизге керек болгон биринчи пакет - esptool.py. Аны орнотуу үчүн жөн эле териңиз
esptool орнотуу
терминалда.
Esptool орнотулгандан кийин, биз чипти тазалап, кайра жаркырата алабыз. Ан үчүн кириңиз
esptool.py --chip esp32 --port COM4 erase_flash
порт үчүн, сенсордук тактага дал келген сериялык портту киргизиңиз. Macта, бул окшош болмок --port /dev /ttyUSB0
Бул бүткөндөн кийин, биз чипти жаркырайбыз:
esptool.py --chip esp32 -порт COM4 -аудит 460800 write_flash -z 0x1000 firmware.bin
Дагы, ошого жараша портту өзгөртүңүз.
2 -кадам: MicroPython менен иштөө
Эгерде биз бул учурда сенсордук тактанын сериялык чыгарылышын текшерсек, анда Python REPLди көрөбүз (read-eval-print loop: >>>) Бул үчүн бизге сериялык консолдук программа керек болот. Putty - бул жакшы вариант, анткени ал SSH жана telnet үчүн мүмкүнчүлүктөрдү камсыз кылат, бирок биз жасай турган жөнөкөй сериялык байланыш. putty.org. Аны орноткондон кийин, аны ачып, "Байланыштын түрү" астындагы "Сериялыкты" тандаңыз. Жогорудагы esptool үчүн сиз киргизген сериялык порттун атын, андан кийин Ылдамдык үчүн 115200 бадын ылдамдыгын теришиңиз керек болот. Улантуу жана "Ачуу" баскычын чыкылдатыңыз. Жана Python бар!
Эми биз мисал кодубузду жүктөп, иштеткибиз келет. Ал үчүн сен мурун SensorBoardPython мисалдарын сактаган папкага өт. Бизге Adafruitтин укмуштуу ампи пакети керек болот. Сиз муну орното аласыз:
pip орнотуу adafruit-ampy = 0.6.3
Сизде болгондон кийин, акселерометрдин мисалын тактага жүктөө үчүн ampy колдонуңуз:
ampy -p COM4 акселерометр.py койду
(портту ошого жараша өзгөртүү, албетте). Эми тактаңызды баштапкы абалга келтирүү баскычы менен. Биз бул учурда Puttyге кайтып барабыз жана >>> чакыруусунан териңиз
импорттук акселерометр
Viola! Сиз азыр сенсор тактасында accelerometer.py кодун иштетип жатасыз! Код 20 секунд иштейт, андан кийин токтойт. Акселерометрдин коду иштеп жатканда, борттогу көк LED жарк этип турганын байкаңыз. Python менен көбүрөөк тааныштар үчүн, бул жипсиз жана кечиктирилбестен жасалганын байкайсыз (). Бул Python асинсио китепканасынын колдонулушуна байланыштуу, ал милдеттерди бир убакта иштетүүнүн сонун ыкмаларын камсыз кылат жана ESP32 сыяктуу камтылган платформаларда абдан пайдалуу. Эгерде сиз аны менен тааныш болбосоңуз, анда ал текшерүүгө арзыйт; бул жерде сонун окуу куралы бар: https://github.com/peterhinch/micropython-async/b… (бирок эскерткиле, бул бир аз баш ооруткан).
3 -кадам: MicroPython Over Serial
Колдонулган тапшырмага кайтыңыз! Акселерометрдин коду токтогондо, сиз дагы Python >>> көрөсүз. Эми биз Python тилмечибиз катары сенсордук тактаны колдонуп интерактивдүү программалай алабыз. Ан үчүн кириңиз
>> x = 10
>> y = 11
>> x + y
21
Бул мисалдардын эң негизгиси болсо да, биз татаал кодду баштапкы чекит катары Complex Arts китепканаларын колдонуп оңой эле баштай алабыз. Бул реалдуу убакыт көзөмөлү менен позиционалдык өлчөөлөрдү жана кыймылды чуркап жүрүүгө мүмкүнчүлүк берет. Сенсордук тактада GPIO төөнөгүчтөрү бар болгондуктан, аларды интерактивдүү түрдө же Python программасы аркылуу сервоприводдорду, чырактарды, сенсорлорду, моторлорду же физикалык түзмөктөрдү туташтырсаңыз болот. Көңүл ачуу!
Көбүрөөк маалымат алуу үчүн, бул башка ресурстарды карап көрүңүз:
complexarts.net/home/
complexarts.net/docs/bno085/
Сунушталууда:
Караңгы сенсорду нан тактасында кантип жасаса болот: 5 кадам
Караңгы сенсор - бул LDR тактасында караңгылыктын бар экенин сезүүчү түзмөк. свет жок бөлмөдө LED жаркырайт, аны Авт деп да атаса болот
WiFi аркылуу таза маалыматтарды көзөмөлдөө үчүн комплекстүү көркөм сенсордук тактаны колдонуу: 4 кадам (сүрөттөр менен)
Wi -Fi аркылуу таза маалыматтарды көзөмөлдөө үчүн комплекстүү көркөм сенсордук тактаны колдонуу: Сиз качандыр бир убакта жаңсоолук менен эксперимент кылгыңыз келген беле? Колуңуздун толкуну менен нерселерди кыймылга келтиресизби? Билегиңиз менен музыканы башкарасызбы? Бул көрсөтмө сизге кантип көрсөтөт! Комплекстүү искусство сенсордук тактасы (complexarts.net) ар тараптуу микро
Баары бир Microcontroler тактасында: 8 кадам
Бардыгы бир микроконтроллер тактасында: Ар-бир микроконтроллер тактасынын максаты-бул Arduinoго караганда көбүрөөк функционалдуу болуу, болжол менен 100 сааттан кийин мен аны коомчулук менен бөлүшүүнү чечтим, бул аракетти баалайсың деп үмүттөнөм аны колдоо (Бардык суроолор же
Variable Output менен комплекстүү көп түстүү шаблондор: 12 кадам (сүрөттөр менен)
Ар түрдүү түстүү комплекстүү көп түстүү шаблондор: Көп кабаттуу түстүү реалдуу трафарет баары эле тез жана оңой эмес. Албетте, сиз бир сааттын ичинде бир нерсени чече аласыз, бирок процессти кайталап, аны ар бир трафаретке кантип тууралоону билүү үчүн убакыт жана практика керек. Бул көрсөтмөдө мен
Нан тактасында Ардуино / ATMega чипи: 8 кадам (сүрөттөр менен)
Breadboardдогу Standalone Arduino / ATMega Chip: Эгерде сиз мага окшош болсоңуз, мен Arduinoмду алып, биринчи чипимде акыркы программалоону аткаргандан кийин, мен аны Arduino Duemilanoveдан сууруп алып, өзүмдүн схемама койгум келди. Бул менин Arduinoмду келечектеги долбоорлор үчүн бошотот. Проблема