Სარჩევი:

CircuitPython და TinyLiDAR: მარტივი მაგალითი: 3 ნაბიჯი
CircuitPython და TinyLiDAR: მარტივი მაგალითი: 3 ნაბიჯი

ვიდეო: CircuitPython და TinyLiDAR: მარტივი მაგალითი: 3 ნაბიჯი

ვიდეო: CircuitPython და TinyLiDAR: მარტივი მაგალითი: 3 ნაბიჯი
ვიდეო: Arduino VS CircuitPython Speed Comparison 2024, ნოემბერი
Anonim
CircuitPython და TinyLiDAR: მარტივი მაგალითი
CircuitPython და TinyLiDAR: მარტივი მაგალითი

MicroElectronicDesign tinyLiDAR არის ST VL53L0X დაფუძნებული ფრენის დრო (ToF) დაწყებული მოდული i2c ავტობუსის კავშირით. Adafruit მიკროკონტროლის დაფები ადვილად არის დაკავშირებული ამ სენსორთან, რადგან მათ შეუძლიათ ისაუბრონ i2c პროტოკოლზე მათი მონაცემების ქინძისთავებზე.

M0/M4 სერიას აქვს უპირატესობა სხვა დაფებთან შედარებით, რადგან ისინი მხარს უჭერენ პითონის ქვეგანყოფილებას, რაც პროგრამირებას უფრო ხელმისაწვდომს ხდის უფრო ფართო აუდიტორიისთვის, ვიდრე C არდუინოზე. ეს არის მარტივი მაგალითი CircuitPython– ის გამოყენებით Gemma M0 დაფაზე, რომ წაიკითხოთ მანძილი tinyLiDAR– დან და მიუთითოთ მანძილი ბორტზე RGB LED– ის სიკაშკაშის მიხედვით. დაფა უნდა იყოს M0 ვერსია პითონის მხარდაჭერისთვის.

შენიშვნა: ადაფრუტი ასევე ქმნის დისტანციის შემმოწმებელ დაფებს, მათ შორის ერთს VL53L0X- ის საფუძველზე.

ნაბიჯი 1: CircuitPython კოდი

  1. ჩამოტვირთეთ lib/adafruit_dotstar.mpy და lib/adafruit_bus_device/i2c_device.mpy თუ უკვე არ გაქვთ. ეს არის არჩევითი ბიბლიოთეკის პაკეტის ნაწილი, იხილეთ CircuitPython I2C– ის პირველი ნაწილი, რომ ნახოთ როგორ დააინსტალიროთ ისინი. ეს ფაილები უნდა შევიდეს lib და lib/adafruit_bus_device დირექტორიებში Gemma M0– ზე.
  2. ჩამოტვირთეთ gemma-m0-tinylidar-simple.py, გადაარქვით მას სახელი main.py და დააკოპირეთ Gemma M0- ის ძირითად დირექტორიაში.

პროგრამა წერს სერიულ კონსოლზე გამომავალს, ასევე ცვლის Gemma MO RGB LED სიკაშკაშის წაკითხვის მანძილის პროპორციულად. Gemma M0 იწვევს მონაცვლეობას და გამორთვას წაკითხვისთვის, ასე რომ, ის ანათებს დაახლოებით 5Hz– ზე და tinyLiDAR დაფის ნაგულისხმევი ქცევაა მისი ლურჯი led განათება თითო ბრძანებაზე 10 HHz– ზე.

ავტობუსი მუშაობს 100kHz– ზე, რაც კარგად მუშაობს ამ შემთხვევაში. ნებისმიერი ავტობუსის მსგავსად, კომუნიკაციის სიჩქარე კომუნიკაციის სიჩქარე შეზღუდულია გადამცემი ხაზის მახასიათებლებით, ამიტომ ყურადღება უნდა მიექცეს სიგრძეს, ტევადობას და სხვა ფაქტორებს.

ნაბიჯი 2: TinyLiDAR- ის დაკავშირება Gemma M0- თან

TinyLiDAR- ის დაკავშირება Gemma M0- თან
TinyLiDAR- ის დაკავშირება Gemma M0- თან

სურათი გვიჩვენებს ეფექტურ, მაგრამ არა ელეგანტურ დროებით კონფიგურაციას tinyLiDAR- ის დასაკავშირებლად Gemma M0 დაფაზე. TinyLiDAR- ის "Grove" 4pin უნივერსალური კონექტორი გამოიყენება Seeed Grove კონვერტაციის კაბელის, სათადარიგო სათაურისა და ნიანგის სამაგრების საშუალებით Gemma M0- თან დასაკავშირებლად. სათაურზე ქინძისთავებს შორის გარკვეული განცალკევება უნებლიე მოკლედ განვითარების რისკს. კავშირებია:

  • შავი: gnd to gnd
  • წითელი: +V– დან 3Vo– მდე
  • თეთრი: SDA to D0 (მონაცემები)
  • ყვითელი: SCL to D2 (საათი)

Adafruit დაფებს აქვთ რამდენიმე ქინძისთავები, რომლებიც ეფექტურად უჭერენ მხარს i2c პროტოკოლს ტექნიკაში. Gemma M0– ის შემთხვევაში, ეს უნდა იქნას გამოყენებული, D0 მონაცემებისთვის და D2 საათისთვის.

I2c ავტობუსი მოითხოვს გამწევ რეზისტორს მონაცემებსა და საათის ხაზებზე. ამ შემთხვევაში, tinyLiDAR გთავაზობთ 4.7K ბორტზე არსებულ რეზისტორებს. თუ ეს ამოღებულია წრედიდან ხაზების მოჭრისას, ეკვივალენტები უნდა დაემატოს წრეს.

ნაბიჯი 3: სერიული გამომავალი

სერიული გამომავალი
სერიული გამომავალი

პროგრამა წერს გამოშვებას სერიულ კონსოლზე, რომელიც აჩვენებს გაზომულ მანძილს, აქ არის ტერმინალის ეკრანის ანაბეჭდი, რომელიც აჩვენებს სენსორიდან დაშორებულ ობიექტს.

გირჩევთ: