Բովանդակություն:

CircuitPython և TinyLiDAR. Պարզ օրինակ ՝ 3 քայլ
CircuitPython և TinyLiDAR. Պարզ օրինակ ՝ 3 քայլ

Video: CircuitPython և TinyLiDAR. Պարզ օրինակ ՝ 3 քայլ

Video: CircuitPython և TinyLiDAR. Պարզ օրինակ ՝ 3 քայլ
Video: Anica T9 և Power Bank 6 ԱՄՍՈՒՄ【J-A Shop - Փաթեթ Չինաստանից】#YouTubeAM 2024, Նոյեմբեր
Anonim
CircuitPython և TinyLiDAR. Պարզ օրինակ
CircuitPython և TinyLiDAR. Պարզ օրինակ

MicroElectronicDesign tinyLiDAR- ը ST VL53L0X- ի վրա հիմնված թռիչքի (ToF) տատանումների մոդուլ է ՝ i2c ավտոբուսային կապով: Adafruit միկրոկառավարիչների տախտակները հեշտությամբ միացված են այս սենսորին, քանի որ դրանք կարող են i2c արձանագրությունը խոսել իրենց տվյալների կապերի միջոցով:

M0/M4 շարքը առավելություն ունի մյուս տախտակների նկատմամբ, քանի որ դրանք աջակցում են Python- ի ենթախմբին, ինչը ծրագրավորումն ավելի հասանելի է դարձնում ավելի լայն լսարանի համար, քան C- ն Arduino- ում: Սա պարզ օրինակ է, օգտագործելով CircuitPython- ը Gemma M0 տախտակի վրա ՝ tinyLiDAR- ից հեռավորության արժեքները կարդալու և հեռավորությունը նշելու համար ՝ փոխելով ներկառուցված RGB LED լուսավորության պայծառությունը: Պիտոնի աջակցության համար տախտակը պետք է լինի M0 տարբերակը:

Նշում. Adafruit- ն նաև պատրաստում է տարբեր հեռավորության տախտակներ, ներառյալ մեկը `հիմնված VL53L0X- ի վրա:

Քայլ 1: CircuitPython կոդ

  1. Ներբեռնեք lib/adafruit_dotstar.mpy և lib/adafruit_bus_device/i2c_device.mpy, եթե դրանք դեռ չունեք: Դրանք գրադարանի կամընտիր փաթեթի մի մասն են, տե՛ս CircuitPython I2C- ի առաջին բաժինը ՝ դրանք տեղադրելու վերաբերյալ նշումների համար: Այս ֆայլերը պետք է մտնեն lib և lib/adafruit_bus_device գրացուցակներում Gemma M0- ում:
  2. Ներբեռնեք gemma-m0-tinylidar-simple.py, վերանվանեք այն main.py և պատճենեք Gemma M0- ի արմատային գրացուցակում:

Programրագիրը գրում է արտադրանք սերիական վահանակին, ինչպես նաև փոփոխում Gemma MO RGB LED լուսավորությունը `կարդացած հեռավորության համեմատ: Gemma M0- ը ընթերցման համար անջատում և անջատում է, այնպես որ այն կթարթվի մոտավորապես 5 Հց հաճախականությամբ, և tinyLiDAR տախտակի կանխադրված վարքագիծն այն է, որ իր հրամանի կապույտ լուսարձակը բռնկվի 10 Հց հաճախականությամբ:

Ավտոբուսը աշխատում է 100kHz- ով, ինչը լավ է աշխատում այս դեպքում: Ինչպես ցանկացած ավտոբուս, այնպես էլ հաղորդակցության արագությունը հաղորդակցության արագությունը սահմանափակվում է հաղորդման գծի (երի) բնութագրերով, ուստի ուշադրություն պետք է դարձնել երկարությանը, տարողությանը և այլ գործոնների:

Քայլ 2. TinyLiDAR- ի միացում Gemma M0- ին

TinyLiDAR- ի միացում Gemma M0- ին
TinyLiDAR- ի միացում Gemma M0- ին

Նկարը ցույց է տալիս արդյունավետ, բայց ոչ էլեգանտ ժամանակավոր կարգավորում ՝ tinyLiDAR- ը Gemma M0 տախտակին միացնելու համար: TinyLiDAR- ի «Grove» 4 պին ունիվերսալ միակցիչը օգտագործվում է Seeed Grove փոխակերպման մալուխի, պահեստային վերնագրի և կոկորդիլոսի տեսահոլովակների միջոցով ՝ Gemma M0- ին միանալու համար: Վերնագրի վրա եղունգների միջև որոշակի տարանջատումը հեռացնում է անզգուշական կարճի վտանգը: Կապերն են.

  • Սև: gnd to gnd
  • Կարմիր ՝ +V- ից 3Vo
  • Սպիտակ ՝ SDA- ից D0 (տվյալներ)
  • Դեղին ՝ SCL- ից D2 (ժամացույց)

Adafruit- ի տախտակները ունեն որոշ կապում, որոնք արդյունավետորեն ապահովում են i2c արձանագրությունը ապարատային սարքավորումների մեջ: Gemma M0- ի դեպքում դրանք պետք է օգտագործվեն ՝ D0 տվյալների համար և D2 ժամացույցի համար:

I2c ավտոբուսը պահանջում է քաշման դիմադրություն տվյալների և ժամացույցի գծերի վրա: Այս դեպքում tinyLiDAR- ն ապահովում է մոտ 4.7K ինքնաթիռի ռեզիստորներ: Եթե դրանք հեռացվել են շղթայից `գծերը կտրելով, ապա համարժեքները պետք է ավելացվեն շղթայում:

Քայլ 3: Սերիայի ելք

Սերիական ելք
Սերիական ելք

Programրագիրը գրում է արտադրանք սերիական վահանակին, որը ցույց է տալիս չափված հեռավորությունը, ահա տերմինալի սքրինշոթը, որը ցույց է տալիս սենսորից հեռացող օբյեկտը:

Խորհուրդ ենք տալիս: