Mündəricat:

CircuitPython və TinyLiDAR: Sadə Nümunə: 3 Addım
CircuitPython və TinyLiDAR: Sadə Nümunə: 3 Addım

Video: CircuitPython və TinyLiDAR: Sadə Nümunə: 3 Addım

Video: CircuitPython və TinyLiDAR: Sadə Nümunə: 3 Addım
Video: Собственное декодирование/воспроизведение MP3 в CircuitPython 2024, Iyul
Anonim
CircuitPython və TinyLiDAR: Sadə bir nümunə
CircuitPython və TinyLiDAR: Sadə bir nümunə

MicroElectronicDesign tinyLiDAR, i2c avtobus bağlantısı olan ST VL53L0X əsaslı uçuş vaxtı (ToF) dəyişən moduldur. Adafruit mikrokontrolör lövhələri, məlumat pinləri üzərindən i2c protokolunu danışa bildikləri üçün bu sensora asanlıqla bağlanır.

M0/M4 seriyası digər lövhələrdən üstünlüyə malikdir, çünki proqramlaşdırmanı bir Arduino C -dən daha geniş auditoriya üçün daha əlçatan edən Python alt dəstəsini dəstəkləyir. Bu, tinyLiDAR-dan məsafə dəyərlərini oxumaq və göyərtədəki RGB LED-in parlaqlığını dəyişərək məsafəni göstərmək üçün Gemma M0 lövhəsindəki CircuitPython istifadə edərək sadə bir nümunədir. Python dəstəyi üçün lövhə M0 versiyası olmalıdır.

Qeyd: Adafruit, VL53L0X əsaslı lövhələr də daxil olmaqla müxtəlif məsafə algılama lövhələri hazırlayır.

Addım 1: CircuitPython Kodu

  1. Əgər sizdə yoxdursa lib/adafruit_dotstar.mpy və lib/adafruit_bus_device/i2c_device.mpy yükləyin. Bunlar isteğe bağlı kitabxana paketinin bir hissəsidir, bunların necə qurulacağına dair qeydlər üçün CircuitPython I2C -nin birinci hissəsinə baxın. Bu fayllar Gemma M0 üzərindəki lib və lib/adafruit_bus_device qovluqlarında olmalıdır.
  2. Gemma-m0-tinylidar-simple.py yükləyin, adını main.py olaraq dəyişdirin və Gemma M0 kök qovluğuna kopyalayın.

Proqram seriya konsoluna çıxış yazır və Gemma MO RGB LED -in parlaqlığını oxunan məsafəyə uyğun olaraq dəyişir. Gemma M0 led oxuduqları üçün açma və söndürmə alternativləri təxminən 5Hz -də yanıb -sönəcək və tinyLiDAR lövhəsinin standart davranışı, əmr başına mavi ledini 10Hz -də yandırmaqdır.

Avtobus 100 kHz -də idarə olunur, bu da bu iş üçün yaxşı işləyir. Hər hansı bir avtobus kimi, ünsiyyət sürəti də ötürücü xətlərin xüsusiyyətlərinə görə məhduddur, buna görə uzunluğa, tutuma və digər amillərə diqqət yetirilməlidir.

Addım 2: TinyLiDAR -ı Gemma M0 -a bağlayın

TinyLiDAR -ı Gemma M0 -a bağlamaq
TinyLiDAR -ı Gemma M0 -a bağlamaq

Şəkil, tinyLiDAR -ı Gemma M0 lövhəsinə bağlamaq üçün təsirli, lakin zərif bir müvəqqəti quruluşu göstərir. TinyLiDAR -ın "Grove" 4pin universal konnektoru, Gemma M0 -ə qoşulmaq üçün Seeed Grove konvertasiya kabeli, ehtiyat başlığı və timsah klipləri vasitəsilə istifadə olunur. Başlıqdakı sancaqlar arasındakı bəzi boşluq, təsadüfən qısa olma riskini ortadan qaldırır. Bağlantılar bunlardır:

  • Qara: gnd to gnd
  • Qırmızı: +V - 3 Vo
  • Ağ: SDA -dan D0 -a qədər (məlumatlar)
  • Sarı: SCL - D2 (saat)

Adafruit lövhələrində i2c protokolunu aparatda səmərəli şəkildə dəstəkləyən bəzi sancaqlar var. Gemma M0 vəziyyətində bunlar məlumat üçün D0 və saat üçün D2 istifadə edilməlidir.

Bir i2c avtobusu məlumat və saat xətlərində bir çəkmə müqaviməti tələb edir. Bu vəziyyətdə, tinyLiDAR təxminən 4.7K bort rezistoru təmin edir. Əgər xətlər kəsilərək dövrədən çıxarılıbsa, dövrə ekvivalentləri əlavə edilməlidir.

Addım 3: Serial Çıxış

Serial Çıxış
Serial Çıxış

Proqram, ölçülmüş məsafəni göstərən serial konsoluna çıxış yazır, burada bir obyektin sensordan uzaqlaşdığını göstərən bir ekran görüntüsüdür.

Tövsiyə: