תוכן עניינים:

CircuitPython ו- TinyLiDAR: דוגמה פשוטה: 3 שלבים
CircuitPython ו- TinyLiDAR: דוגמה פשוטה: 3 שלבים

וִידֵאוֹ: CircuitPython ו- TinyLiDAR: דוגמה פשוטה: 3 שלבים

וִידֵאוֹ: CircuitPython ו- TinyLiDAR: דוגמה פשוטה: 3 שלבים
וִידֵאוֹ: Motor Shield בקצרה 2024, נוֹבֶמבֶּר
Anonim
CircuitPython ו- TinyLiDAR: דוגמא פשוטה
CircuitPython ו- TinyLiDAR: דוגמא פשוטה

ה- MicroElectronicDesign tinyLiDAR הוא מודול זמן טיסה (ToF) מבוסס ST VL53L0X עם חיבור אוטובוס i2c. לוחות המיקרו -בקר של Adafruit מתחברים בקלות לחיישן זה מכיוון שהם יכולים לדבר על פרוטוקול i2c על סיכות הנתונים שלהם.

לסדרת M0/M4 יש את היתרון על פני לוחות אחרים מכיוון שהם תומכים בתת -קבוצה של פייתון מה שהופך את התכנות לנגיש יותר לקהל רחב יותר מאשר C בארדואינו. זוהי דוגמה פשוטה באמצעות CircuitPython על לוח Gemma M0 כדי לקרוא את ערכי המרחק מ- tinyLiDAR ולציין את המרחק על ידי שינוי בהירות נורית ה- RGB המשולבת. הלוח חייב להיות גרסת M0 לתמיכה בפייתון.

הערה: Adafruit מייצרים גם לוחות חישה למרחקים שונים כולל אחד המבוסס על 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.

התוכנית כותבת פלט לקונסולה הסדרתית, כמו גם משתנה את בהירות נורית ה- RGB של Gemma MO ביחס למרחק הנקרא. ה- Gemma M0 LED מתחלף בין כיבוי וכיבוי לקריאות כך שיבהב בסביבות 5 הרץ והתנהגות ברירת המחדל של לוח ה- tinyLiDAR היא להבהב את הנורית הכחולה שלו לכל פקודה ב -10 הרץ.

האוטובוס מונע במהירות 100 קילוהרץ מה שעובד טוב במקרה זה. כמו כל אוטובוס, מהירות התקשורת במהירות התקשורת מוגבלת על ידי המאפיינים של קווי ההולכה ולכן יש לשים לב לאורך, קיבול וגורמים אחרים.

שלב 2: חיבור ה- TinyLiDAR ל- Gemma M0

חיבור ה- TinyLiDAR ל- Gemma M0
חיבור ה- TinyLiDAR ל- Gemma M0

התמונה מראה התקנה זמנית יעילה אך לא אלגנטית לחיבור ה- tinyLiDAR ללוח Gemma M0. המחבר האוניברסלי "Grove" 4pin של tinyLiDAR נמצא בשימוש באמצעות כבל המרה של Seeed Grove, כותרת רזרבית וקליפי תנינים לחיבור ל- Gemma M0. הפרדה מסוימת בין הסיכות בכותרת מסירה את הסיכון לקצר לא מכוון. החיבורים הם:

  • שחור: gnd to gnd
  • אדום: +V עד 3Vo
  • לבן: SDA עד D0 (נתונים)
  • צהוב: SCL עד D2 (שעון)

ללוחות Adafruit יש כמה סיכות התומכות בפרוטוקול i2c ביעילות בחומרה. במקרה של Gemma M0, יש להשתמש באלה, D0 לנתונים ו- D2 לשעון.

אוטובוס i2c דורש נגד משיכה על קווי הנתונים והשעון. במקרה זה, ה- tinyLiDAR מספק כמה נגדים משולבים של 4.7K. אם אלה הוסרו מהמעגל על ידי חיתוך הקווים יש להוסיף שווי ערך למעגל.

שלב 3: פלט סידורי

פלט סידורי
פלט סידורי

התוכנית כותבת פלט לקונסולה הטורית שמציגה את המרחק הנמדד, להלן צילום מסך של מסוף המראה אובייקט שמתרחק מהחיישן.

מוּמלָץ: