Isi kandungan:

CircuitPython dan TinyLiDAR: Contoh Mudah: 3 Langkah
CircuitPython dan TinyLiDAR: Contoh Mudah: 3 Langkah

Video: CircuitPython dan TinyLiDAR: Contoh Mudah: 3 Langkah

Video: CircuitPython dan TinyLiDAR: Contoh Mudah: 3 Langkah
Video: Cytron Edu:bit with Adafruit CLUE and tinyLiDAR - servo-mounted scanning 2024, September
Anonim
CircuitPython dan TinyLiDAR: Contoh Mudah
CircuitPython dan TinyLiDAR: Contoh Mudah

MicroElectronicDesign tinyLiDAR adalah modul jangka masa penerbangan (ToF) berasaskan ST VL53L0X dengan sambungan bas i2c. Papan mikrokontroler Adafruit disambungkan dengan mudah ke sensor ini kerana mereka dapat menyampaikan protokol i2c melalui pin data mereka.

Siri M0 / M4 mempunyai kelebihan berbanding papan lain kerana mereka menyokong subset Python yang menjadikan pengaturcaraan lebih mudah diakses oleh khalayak yang lebih luas daripada C di Arduino. Ini adalah contoh mudah menggunakan CircuitPython pada papan Gemma M0 untuk membaca nilai jarak dari smallLiDAR dan menunjukkan jarak dengan mengubah kecerahan LED RGB on-board. Papan mestilah versi M0 untuk sokongan python.

Catatan: Adafruit juga membuat pelbagai papan pengesan jarak termasuk satu berdasarkan VL53L0X.

Langkah 1: Kod CircuitPython

  1. Muat turun lib / adafruit_dotstar.mpy dan lib / adafruit_bus_device / i2c_device.mpy jika anda belum memilikinya. Ini adalah sebahagian daripada kumpulan perpustakaan pilihan, lihat bahagian pertama CircuitPython I2C untuk nota mengenai cara memasangnya. Fail-fail ini mesti masuk dalam direktori lib dan lib / adafruit_bus_device di Gemma M0.
  2. Muat turun gemma-m0-tinylidar-simple.py, namakan semula menjadi main.py dan salin ke direktori root Gemma M0.

Program ini menulis output ke konsol bersiri serta mengubah kecerahan LED Gemma MO RGB mengikut jarak yang dibaca. Led Gemma M0 bergantian antara hidup dan mati untuk bacaan sehingga akan berkelip pada kira-kira 5Hz dan tingkah laku lalai dari papan tinyLiDAR adalah memancarkan led biru per arahannya pada 10Hz.

Bas dipacu pada 100kHz yang berfungsi dengan baik untuk kes ini. Seperti mana-mana bas, kelajuan komunikasi kecepatan komunikasi dibatasi oleh ciri-ciri saluran penghantaran sehingga perhatian harus diberikan kepada panjang, kapasitansi dan faktor-faktor lain.

Langkah 2: Menyambungkan TinyLiDAR ke Gemma M0

Menyambungkan TinyLiDAR ke Gemma M0
Menyambungkan TinyLiDAR ke Gemma M0

Gambar menunjukkan penyediaan sementara yang berkesan tetapi tidak relevan untuk menghubungkan tinyLiDAR ke papan Gemma M0. Penyambung universal "Grove" smallpiDAR 4pin digunakan melalui kabel penukaran Seeed Grove, header ganti dan klip buaya untuk menyambung ke Gemma M0. Beberapa pemisahan antara pin pada header menghilangkan risiko pendek yang tidak disengajakan. Sambungannya adalah:

  • Hitam: gnd ke gnd
  • Merah: + V hingga 3Vo
  • Putih: SDA hingga D0 (data)
  • Kuning: SCL hingga D2 (jam)

Papan Adafruit mempunyai beberapa pin yang menyokong protokol i2c dengan cekap dalam perkakasan. Dalam kes Gemma M0, ini mesti digunakan, D0 untuk data dan D2 untuk jam.

Bas i2c memerlukan perintang penarik pada garis data dan jam. Dalam kes ini, tinyLiDAR menyediakan kira-kira 4.7K perintang on-board. Sekiranya ini telah dikeluarkan dari litar dengan memotong garis maka setara mesti ditambahkan ke litar.

Langkah 3: Hasil Bersiri

Keluaran Bersiri
Keluaran Bersiri

Program menulis output ke konsol bersiri yang menunjukkan jarak yang diukur, berikut adalah contoh tangkapan terminal yang menunjukkan objek bergerak jauh dari sensor.

Disyorkan: