VL53L0X: חיישן מרחק לייזר ברמת דיוק גבוהה

VL53L0X

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

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

מהו ה- ToF?

עקרון ToF (תכנית)

זמן טיסה או מצלמת ToF (זמן טיסה) זו טכניקה המשמשת למדידת מרחקים. היא מבוססת על אופטיקה, ומודדת את הזמן שחלף בין פליטת קרן האור לקליטתה. הם יכולים להיות CCD, חיישני CMOS, והפולסים יכולים להיות אינפרא אדום, לייזר וכו '. המערכת תסונכרן כדי להתחיל במדידת הזמן בדיוק כאשר הדופק מופעל ולעצור את הדלפק כאשר הם מקבלים את ההקפצה על ידי החיישן.

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

ESP8266
Artaculo relacionado:
ESP8266: מודול ה- WIFI לארדואינו

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

מהו VL53L0X וגליון הנתונים

VL53L0X

El VL53L0X משתמש בעקרון זה למדידת מרחקים באמצעות אינפרא אדום לייזר. הדור האחרון. יחד עם מעבד, כמו Arduino, הוא יכול להיות כלי רב עוצמה למדידה. באופן ספציפי, השבב יכול לתפוס מרחקים בין 50 מ"מ ל -2000 מ"מ, כלומר בין 5 ס"מ ל -2 מטר.

כדי למדוד מרחקים קרובים יותר, כנראה שאתה זקוק לגרסה של שבב זה בשם VL6180X המאפשר לך למדוד טווח שבין 5 ל -200 מ"מ, כלומר בין חצי ס"מ ל -20 ס"מ. אם ברצונך למצוא מכשיר דומה אך מבוסס אולטראסאונד מכל סיבה טכנית, עליך להסתכל על HC-SR04, עוד מודול זול למדי פופולרי בקרב יצרנים.

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

זה הופך את זה לאחד מחיישני המרחק הטובים ביותר שתמצאו בשוק. בדיוק רב יותר בהשוואה לחיישנים המבוססים על אולטרסאונד או אינפרא אדום (IR). הסיבה לדייק כל כך היא שהלייזר לא יושפע מהדהדים או החזרות של עצמים כמו בשאר המקרים.

נכון לעכשיו אתה יכול למצוא את זה משולב בפרדות עם קצת תוספת עבור כ 16 € או לוחות פשוטים יותר של קצת יותר € 1 או € 3 במקרים אחרים. אתה כבר יודע שתמצא אותו בחנויות כמו eBay, AliExpress, אמזון וכו '. יצרני המכשירים הללו שונים, כך שאם אתה צריך לדעת את פרטי הדגם שקנית, עדיף לבדוק גליון הנתונים של היצרן שבחרת. לדוגמה:

El VL53L0X יש בתוך השבב פולט דופק הלייזר והחיישן כדי ללכוד את הקורה החוזרת. במקרה זה, הפולט הוא לייזר באורך גל 940nm וסוג VCSEL (לייזר פולט משטח אנכי). באשר לחיישן הלכידה, מדובר ב- SPAD (דיודות מפולת פוטון בודדות). הוא משלב גם אלקטרוניקה פנימית בשם FlightSense ™ שתחשב את המרחק.

El זווית מדידה או FOV (שדה ראייה) במקרה זה זה 25 מעלות. זה מתורגם לשטח מדידה של 0,44m בקוטר במרחק של 1m. למרות שטווח המדידה יהיה תלוי בתנאים הסובבים. אם זה נעשה בבית זה קצת יותר גבוה מאשר אם זה נעשה בחוץ. זה יהיה תלוי גם בהשתקפות של האובייקט אליו אתה מצביע:

החזרת היעד תנאים פנים חיצוני
מטרה לבנה טיפוסי 200cm 80cm
לְחַקוֹת 120cm 60cm
מטרה אפורה טיפוסי 80cm 50cm
במינימו 70cm 40cm

בנוסף, ל- VL53L0X יש כמה מצבי הפעלה שעשוי לשנות את התוצאות. מצבים אלה מסוכמים בטבלה הבאה:

מודו תזמון מרחב דיוק
ברירת מחדל 30ms 1.2m ראה את הטבלה למטה
דיוק גבוה 200ms 1.2m + / - 3%
טווח ארוך 33ms 2m ראה את הטבלה למטה
מהירות גבוהה 20ms 1.2m + / - 5%

על פי מצבים אלה, יש לנו כמה דיוקים סטנדרטיים וארוכי טווח שיש לך בטבלה זו:

פנים חיצוני
החזרת היעד מרחק 33ms 66ms מרחק 33ms 66ms
מטרה לבנה 120 ס"מ 4% 3% 60 ס"מ 7% 6%
מטרה אפורה 70 ס"מ 7% 6% 40 ס"מ 12% 9%

פינאוט וחיבור

דיאגרמת שבב VL53L0X

כדי שכל זה יעבוד כמו שצריך אתה צריך ממשק עם העולם החיצון. וזה מושג באמצעות כמה סיכות או חיבורים. ה- pinout של VL53L0X הוא די פשוט, יש לו רק 6 סיכות. לצורך שילובו עם Arduino, ניתן לבצע תקשורת באמצעות I2C.

כדי להאכיל אותו, אתה יכול חבר פינים כך:

  • VCC ל 5 v מארדואינו
  • GND ל- GND של Arduino
  • SCL לסיכה אנלוגית של Arduino. לדוגמא A5
  • SDA לסיכה אנלוגית אחרת. לדוגמא A4
  • כרגע אין צורך להשתמש בסיכות GPI01 ו- XSHUT.

שילוב עם ארדואינו

VL53L0X מחובר לארדואינו

באשר למודולים רבים אחרים, עבור VL53L0X יש לך גם ספריות (למשל זו עבור אדאפרוט) של קוד זמין שבו אתה יכול להשתמש כדי לעבוד עם פונקציות מסוימות כשאתה כותב קוד המקור לטיפול בפרויקט שלך ב- Arduino IDE. אם זו הפעם הראשונה שלך עם Arduino, אני ממליץ מדריך התכנות שלנו.

דוגמה של קוד פשוט לביצוע מדידות והצגת ערך מדידה דרך יציאה טורית כדי שתוכל לראות את זה ממסך המחשב שלך בזמן שלוח Arduino מחובר הוא:

#include "Adafruit_VL53L0X.h"
 
Adafruit_VL53L0X lox = Adafruit_VL53L0X();
 
void setup() {
  Serial.begin(9600);
 
  // Iniciar sensor
  Serial.println("VL53L0X test");
  if (!lox.begin()) {
    Serial.println(F("Error al iniciar VL53L0X"));
    while(1);
  }
}
 
 
void loop() {
  VL53L0X_RangingMeasurementData_t measure;
    
  Serial.print("Leyendo sensor... ");
  lox.rangingTest(&measure, false); // si se pasa true como parametro, muestra por puerto serie datos de debug
 
  if (measure.RangeStatus != 4)
  {
    Serial.print("Distancia (mm): ");
   Serial.println(measure.RangeMilliMeter);
  } 
  else
  {
    Serial.println("  Fuera de rango ");
  }
    
  delay(100);
}

בספרייה של Adafruit עצמו יש לך דוגמאות נוספות לשימוש אם אתה צריך את זה ...


היה הראשון להגיב

השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.