Cuprins:

CircuitPython și TinyLiDAR: Exemplu simplu: 3 pași
CircuitPython și TinyLiDAR: Exemplu simplu: 3 pași

Video: CircuitPython și TinyLiDAR: Exemplu simplu: 3 pași

Video: CircuitPython și TinyLiDAR: Exemplu simplu: 3 pași
Video: Product Showcase: LIDAR-Lite v3HP 2024, Iulie
Anonim
CircuitPython și TinyLiDAR: exemplu simplu
CircuitPython și TinyLiDAR: exemplu simplu

MicroElectronicDesign tinyLiDAR este un modul de variație a timpului de zbor (ToF) bazat pe ST VL53L0X cu o conexiune de magistrală i2c. Plăcile de microcontroler Adafruit sunt ușor conectate la acest senzor, deoarece pot vorbi protocolul i2c peste pinii lor de date.

Seriile M0 / M4 au avantajul față de alte plăci, deoarece acceptă un subset de Python care face programarea mai accesibilă pentru un public mai larg decât C pe un Arduino. Acesta este un exemplu simplu folosind CircuitPython pe o placă Gemma M0 pentru a citi valorile distanței de la un tinyLiDAR și a indica distanța variind luminozitatea LED-ului RGB de la bord. Placa trebuie să fie versiunea M0 pentru suport python.

Notă: Adafruit realizează, de asemenea, diverse plăci de detectare a distanței, inclusiv una bazată pe VL53L0X.

Pasul 1: Codul CircuitPython

  1. Descărcați lib / adafruit_dotstar.mpy și lib / adafruit_bus_device / i2c_device.mpy dacă nu le aveți deja. Acestea fac parte din pachetul de biblioteci opțional, a se vedea prima secțiune a CircuitPython I2C pentru note despre cum să le instalați. Aceste fișiere trebuie să intre în directoarele lib și lib / adafruit_bus_device de pe Gemma M0.
  2. Descărcați gemma-m0-tinylidar-simple.py, redenumiți-l în main.py și copiați în directorul rădăcină al Gemma M0.

Programul scrie ieșirea pe consola serială, precum și variază luminozitatea LED-ului Gemma MO RGB în funcție de distanța citită. Ledul Gemma M0 alternează între pornit și oprit pentru citiri, astfel încât să clipească la aproximativ 5Hz, iar comportamentul implicit al plăcii tinyLiDAR este să lumineze ledul albastru pe comandă la 10Hz.

Autobuzul este condus la 100kHz, ceea ce funcționează bine pentru acest caz. La fel ca orice magistrală, viteza de comunicație este limitată de caracteristicile liniilor de transmisie, deci trebuie acordată atenție lungimii, capacității și altor factori.

Pasul 2: Conectarea TinyLiDAR la un Gemma M0

Conectarea TinyLiDAR la un Gemma M0
Conectarea TinyLiDAR la un Gemma M0

Imaginea prezintă o configurare temporară eficientă, dar elegantă, pentru a conecta tinyLiDAR la o placă Gemma M0. Conectorul universal „Grove” 4 pin al tinyLiDAR este utilizat printr-un cablu de conversie Seeed Grove, un antet de rezervă și cleme de crocodil pentru a vă conecta la Gemma M0. O anumită separare între știfturile de pe antet elimină riscul scurtcircuitului accidental. Conexiunile sunt:

  • Negru: gnd la gnd
  • Roșu: + V la 3Vo
  • Alb: SDA la D0 (date)
  • Galben: SCL la D2 (ceas)

Plăcile Adafruit au niște pini care acceptă protocolul i2c eficient în hardware. În cazul Gemma M0, acestea trebuie utilizate, D0 pentru date și D2 pentru ceas.

O magistrală i2c necesită un rezistor de tracțiune pe liniile de date și ceas. În acest caz, tinyLiDAR oferă rezistențe la bord de 4,7K. Dacă acestea au fost scoase din circuit prin tăierea liniilor, atunci trebuie adăugate echivalente la circuit.

Pasul 3: ieșire serială

Ieșire serială
Ieșire serială

Programul scrie ieșirea pe consola serială care arată distanța măsurată, iată un exemplu de captură de ecran a unui terminal care arată un obiect care se îndepărtează de senzor.

Recomandat: