A VL53L0X egy kompakt és pontos repülési idő (TOF) távolság-érzékelő, amely képes 2 méter távolságra mérni milliméter pontossággal. Lézerrel mérje meg a fényhez és a visszautazáshoz szükséges időt, így ideális a robotikához, a közelségérzékeléshez és az akadályok észleléséhez. Ebben az oktatóanyagban átvezetjük Önt a VL53L0X és az Arduino összekapcsolásával.
Mire lesz szüksége
- VL53L0X távolsági érzékelő modul
- Arduino Board (például Uno, Mega, Nano)
- Kenyérlemez és jumper vezetékek
- Egy számítógép, amelyen az Arduino IDE telepített
1. lépés: A VL53L0X érzékelő megértése
A VL53L0X az I2C protokoll segítségével kommunikál, megkönnyítve az Arduino -hoz való csatlakozást. Jellemzői:
- I2C interfész: SDA és SCL vonalakat használ.
- Regény képességek: Méri a távolságokat néhány milliméter és 2 méter között.
VL53L0X Pinout
Csap | Funkció |
---|---|
Vin | Tápegység (3,3 V/5 V) |
GND | Föld |
SDA | I2C adatsor |
SCL | I2C óravonal |
Xshut | Leállítási bemenet (opcionális) |
GPIO1 | Megszakítás (opcionális) |
2. lépés: A VL53L0X huzalozása Arduino -ra
Csatlakoztassa a VL53L0X -et az Arduino -hoz, az alábbiak szerint:
VL53L0X PIN | Arduino Pin |
---|---|
Vin | 5 V -os |
GND | GND |
SDA | A4 (SDA) |
SCL | A5 (SCL) |
Jegyzet: Ha Arduino Mega -t vagy más táblát használ, ellenőrizze az I2C pinout -ot.
3. lépés: Telepítse a VL53L0X könyvtárat
Az AdaFruit VL53L0X könyvtár egyszerűsíti az érzékelővel való interakciót.
A telepítéshez szükséges lépések:
- Nyissa meg az Arduino IDE -t.
- Elindul Vázlat > Tartalmazza a könyvtárat > Könyvtárak kezelése.
- Keressen az "AdaFruit VL53L0X" -re, majd kattintson Beilleszt.
4. lépés: Töltse fel a kódot
Íme egy példa vázlat a távolságmérések elolvasására a VL53L0X -ről:
#include <Wire.h>
#include <Adafruit_VL53L0X.h>
Adafruit_VL53L0X lox = Adafruit_VL53L0X();
void setup() {
Serial.begin(9600);
while (!Serial) {
delay(1); // Wait for Serial Monitor to open
}
Serial.println("Adafruit VL53L0X Test");
if (!lox.begin()) {
Serial.println("Failed to find VL53L0X sensor! Check wiring.");
while (1);
}
Serial.println("VL53L0X sensor initialized.");
}
void loop() {
VL53L0X_RangingMeasurementData_t measure;
lox.rangingTest(&measure, false); // Perform a ranging test
if (measure.RangeStatus != 4) { // Check if valid
Serial.print("Distance (mm): ");
Serial.println(measure.RangeMilliMeter);
} else {
Serial.println("Out of range");
}
delay(100); // Wait before the next measurement
}
5. lépés: Tesztelje a beállítást
- Csatlakoztassa az Arduino -t a számítógépéhez USB -n keresztül.
- Nyissa meg az Arduino IDE -t, és válassza ki a megfelelőt Bizottság és Kikötő a Szerszámok menü.
- Töltse fel a kódot az Arduino -ba kattintással Feltöltés.
- Nyissa meg a soros monitort (Szerszámok > Soros monitor) és állítsa be az adatátviteli sebességet
9600
. - Mutassa meg a VL53L0X érzékelőt egy objektumra. A milliméterben lévő távolságnak meg kell jelennie a soros monitoron.
Opcionális: Több VL53L0X érzékelő használata
Több VL53L0X érzékelő használatához ugyanazon az I2C buszon meg kell változtatnia az I2C címeket a XSHUT
PIN:
- Húzza a
XSHUT
Az egyik érzékelő pinja alacsony, hogy letiltsa. - Inicializálja az aktív érzékelőt és változtassa meg annak I2C címét.
- Ismételje meg a további érzékelőket.
Példa kód az I2C cím megváltoztatásához:
lox.setAddress(0x31); // Set a new I2C address (default is 0x29)
A VL53L0X alkalmazásai
- Akadályérzékelés a robotok számára
- Közelség -érzékelők intelligens eszközökhöz
- Automatikus világításvezérlés
- Drón leszálló rendszerek
Hibaelhárítás
- Nincs válasz az érzékelőtől: Ellenőrizze duplán a huzalozást, és ellenőrizze, hogy az érzékelő táplálkozik-e.
- A tartományon kívüli leolvasásokon kívül: Győződjön meg arról, hogy a célobjektum az érzékelő tényleges tartományában van (legfeljebb 2 m).
-
Több érzékelő zavaró: Használja a
XSHUT
PIN -kód az egyedi I2C címek hozzárendeléséhez.
Következtetés
Sikeresen beállította a VL53L0X repülési időérzékelőt Arduino-val. Precíziós és kompakt mérete sokoldalú eszközévé teszi a különféle projektekhez. Kísérletezzen különféle alkalmazásokkal, például a robotikával vagy az intelligens otthoni rendszerekkel, hogy a lehető legtöbbet hozza ki ebből az erőteljes érzékelőből!