Talaan ng mga Nilalaman:

CircuitPython at TinyLiDAR: Simpleng Halimbawa: 3 Hakbang
CircuitPython at TinyLiDAR: Simpleng Halimbawa: 3 Hakbang

Video: CircuitPython at TinyLiDAR: Simpleng Halimbawa: 3 Hakbang

Video: CircuitPython at TinyLiDAR: Simpleng Halimbawa: 3 Hakbang
Video: Cytron Edu:bit with Adafruit CLUE and tinyLiDAR - servo-mounted scanning 2024, Nobyembre
Anonim
CircuitPython at TinyLiDAR: Simpleng Halimbawa
CircuitPython at TinyLiDAR: Simpleng Halimbawa

Ang MicroElectronicDesign tinyLiDAR ay isang ST VL53L0X based time-of-flight (ToF) na sumasaklaw na module na may koneksyon sa i2c bus. Ang mga board ng Adafruit microcontroller ay madaling konektado sa sensor na ito dahil masasalita nila ang i2c protocol sa kanilang mga data pin.

Ang serye ng M0 / M4 ay may kalamangan kaysa sa iba pang mga board dahil sinusuportahan nila ang isang subset ng Python na ginagawang mas madaling ma-access ang programa sa isang mas malawak na madla kaysa sa C sa isang Arduino. Ito ay isang simpleng halimbawa ng paggamit ng CircuitPython sa isang Gemma M0 board upang basahin ang mga halaga ng distansya mula sa isang maliit naLiDAR at ipahiwatig ang distansya sa pamamagitan ng pag-iiba ng ningning ng on-board RGB LED. Ang board ay dapat na ang bersyon ng M0 para sa suporta ng sawa.

Tandaan: Gumagawa din ang adafruit ng iba't ibang mga disting sensing board kabilang ang isa batay sa VL53L0X.

Hakbang 1: CircuitPython Code

  1. Mag-download ng lib / adafruit_dotstar.mpy at lib / adafruit_bus_device / i2c_device.mpy kung wala mo ang mga ito. Ito ay bahagi ng opsyonal na bundle ng library, tingnan ang unang seksyon ng CircuitPython I2C para sa mga tala sa kung paano i-install ang mga ito. Ang mga file na ito ay dapat pumunta sa mga direktoryo ng lib at lib / adafruit_bus_device sa Gemma M0.
  2. I-download ang gemma-m0-tinylidar-simple.py, palitan ang pangalan nito sa main.py at kopyahin ang root Directory ng Gemma M0.

Nagsusulat ang programa ng output sa serial console pati na rin ang pag-iiba ng ningning ng Gemma MO RGB LED na proporsyon sa nabasa na distansya. Ang Gemma M0 na humantong kahalili sa pagitan ng at sa para sa mga bumabasa sa gayon ay flash sa humigit-kumulang 5Hz at ang default na pag-uugali ng tinyLiDAR board ay upang i-flash ang asul na humantong bawat utos sa 10Hz.

Ang bus ay hinihimok sa 100kHz na gumagana nang maayos para sa kasong ito. Tulad ng anumang bus, ang bilis ng komunikasyon sa bilis ng komunikasyon ay nalilimitahan ng mga katangian ng (mga) linya ng paghahatid kaya dapat bigyan ng pansin ang haba, kapasidad at iba pang mga kadahilanan.

Hakbang 2: Pagkonekta sa TinyLiDAR sa isang Gemma M0

Pagkonekta sa TinyLiDAR sa isang Gemma M0
Pagkonekta sa TinyLiDAR sa isang Gemma M0

Ipinapakita ng larawan ang isang mabisa ngunit hindi pansamantalang pansamantalang pag-setup upang ikonekta ang tinyLiDAR sa isang Gemma M0 board. Ang "Grove" 4pin unibersal na konektor ng tinyLiDAR ay ginagamit sa pamamagitan ng isang cable konversi ng Seeed Grove, isang ekstrang header at mga clip ng crocodile upang kumonekta sa Gemma M0. Ang ilang paghihiwalay sa pagitan ng mga pin sa header ay nagtanggal ng panganib ng isang hindi sinasadyang maikli. Ang mga koneksyon ay:

  • Itim: gnd to gnd
  • Pula: + V hanggang 3Vo
  • Puti: SDA hanggang D0 (data)
  • Dilaw: SCL hanggang D2 (orasan)

Ang mga board ng Adafruit ay may ilang mga pin na sumusuporta sa i2c protocol nang mahusay sa hardware. Sa kaso ng Gemma M0, dapat gamitin ang mga ito, D0 para sa data at D2 para sa orasan.

Ang isang i2c bus ay nangangailangan ng isang pull-up risistor sa mga linya ng data at orasan. Sa kasong ito, ang tinyLiDAR ay nagbibigay ng ilang 4.7K on-board resistors. Kung ang mga ito ay tinanggal mula sa circuit sa pamamagitan ng paggupit ng mga linya pagkatapos ang mga katumbas ay dapat idagdag sa circuit.

Hakbang 3: Serial Output

Serial Output
Serial Output

Nagsusulat ang programa ng output sa serial console na nagpapakita ng sinusukat na distansya, narito ang isang halimbawa ng screenshot ng isang terminal na nagpapakita ng isang bagay na papalayo sa sensor.

Inirerekumendang: