Taula de continguts:

CircuitPython i TinyLiDAR: exemple senzill: 3 passos
CircuitPython i TinyLiDAR: exemple senzill: 3 passos

Vídeo: CircuitPython i TinyLiDAR: exemple senzill: 3 passos

Vídeo: CircuitPython i TinyLiDAR: exemple senzill: 3 passos
Vídeo: Cytron Edu:bit with Adafruit CLUE and tinyLiDAR - servo-mounted scanning 2024, Desembre
Anonim
CircuitPython i TinyLiDAR: exemple senzill
CircuitPython i TinyLiDAR: exemple senzill

El MicroElectronicDesign tinyLiDAR és un mòdul d’interval de temps de vol (ToF) basat en ST VL53L0X amb connexió de bus i2c. Les plaques de microcontroladors Adafruit es connecten fàcilment a aquest sensor, ja que poden parlar el protocol i2c sobre els seus pins de dades.

Les sèries M0 / M4 tenen l'avantatge respecte a altres taulers perquè admeten un subconjunt de Python que fa que la programació sigui més accessible per a un públic més ampli que C en un Arduino. Aquest és un exemple senzill que utilitza CircuitPython en una placa Gemma M0 per llegir els valors de distància d’un tinyLiDAR i indicar-ne la distància variant la brillantor del LED RGB incorporat. El tauler ha de ser la versió M0 per al suport de Python.

Nota: Adafruit també fabrica diverses plaques de detecció de distància, inclosa una basada en el VL53L0X.

Pas 1: CircuitPython Code

  1. Baixeu lib / adafruit_dotstar.mpy i lib / adafruit_bus_device / i2c_device.mpy si encara no en teniu. Aquests formen part del paquet de biblioteques opcionals; consulteu la primera secció de CircuitPython I2C per obtenir notes sobre com instal·lar-los. Aquests fitxers han d’anar als directoris lib i lib / adafruit_bus_device del Gemma M0.
  2. Descarregueu gemma-m0-tinylidar-simple.py, canvieu el nom a main.py i copieu-lo al directori arrel del Gemma M0.

El programa escriu la sortida a la consola sèrie, a més de variar la brillantor del LED Gemma MO RGB en proporció a la distància llegida. El led Gemma M0 alterna entre encès i apagat per a lectures, de manera que parpellejarà aproximadament a 5Hz i el comportament predeterminat de la placa tinyLiDAR és fer parpellejar el seu led blau per ordre a 10Hz.

El bus funciona a 100 kHz, cosa que funciona bé per a aquest cas. Com qualsevol bus, la velocitat de comunicació de la velocitat de comunicació està limitada per les característiques de les línies de transmissió, de manera que s’ha de prestar atenció a la longitud, la capacitat i altres factors.

Pas 2: Connectar el TinyLiDAR a un Gemma M0

Connexió del TinyLiDAR a una Gemma M0
Connexió del TinyLiDAR a una Gemma M0

La imatge mostra una configuració temporal efectiva però poc elegant per connectar el tinyLiDAR a una placa Gemma M0. El connector universal “Grove” de 4 pins del tinyLiDAR s’utilitza mitjançant un cable de conversió Seeed Grove, una capçalera de recanvi i clips de cocodril per connectar-se al Gemma M0. Una certa separació entre els passadors de la capçalera elimina el risc d'un curtmetratge involuntari. Les connexions són:

  • Negre: gnd a gnd
  • Vermell: + V a 3Vo
  • Blanc: SDA a D0 (dades)
  • Groc: SCL a D2 (rellotge)

Les plaques Adafruit tenen alguns pins que admeten el protocol i2c de manera eficient al maquinari. En el cas de la Gemma M0, s’han d’utilitzar, D0 per a dades i D2 per a rellotge.

Un bus i2c requereix una resistència pull-up a les línies de dades i de rellotge. En aquest cas, el tinyLiDAR proporciona unes resistències incorporades de 4,7 K. Si s’han eliminat del circuit tallant les línies, s’han d’afegir equivalents al circuit.

Pas 3: sortida en sèrie

Sortida en sèrie
Sortida en sèrie

El programa escriu la sortida a la consola sèrie mostrant la distància mesurada, aquí teniu un exemple de captura de pantalla d’un terminal que mostra un objecte que s’allunya del sensor.

Recomanat: