
Características principales del chip VL53L0X:
1.Módulo miniatura totalmente integrado
-
Láser VCSEL de 940 nm
-
Controlador VCSEL
-
Sensor de medición de distancia con microcontrolador integrado avanzado
-
4.4mmx2.4mmx1.0mm
-
Medición de distancia rápida y precisa
-
Mide distancias absolutas de hasta 2 m
-
Las distancias indicadas no se ven afectadas por la reflectividad del objetivo
-
Funciona en entornos con alta intensidad de luz infrarroja
-
Compensación avanzada integrada de la diafonía óptica para simplificar el diseño de la carcasa de vidrio.
2.Seguridad para los ojos humanos
- Equipo láser de clase 1 conforme a la norma más reciente IEC 60825-1:2014 (3.ª edición)
3.Fácil de integrar
-
Componentes compatibles con el proceso de reflujo
-
No requiere óptica adicional
-
Fuente de alimentación única
-
Interfaz I2C para el control del dispositivo y la transferencia de datos
-
GPIO de apagado X e interrupción
-
Tensión de funcionamiento: 3,3 V/5 V
4.Parámetros del VL53L0X:
-
Tamaño del producto: 4,4 mm × 2,4 mm × 1,0 mm
-
Rango de medición de distancia: 30 ~ 2000 mm
-
Precisión de medición de distancia: ±5 % (modo de alta velocidad), ±3 % (modo de alta precisión)
-
Tiempo de medición (mín.): 20 ms (modo de alta velocidad), 200 ms (modo de alta precisión)
-
Ángulo de medición: 25
-
Longitud de onda del láser: 940 nm
-
Temperatura de funcionamiento: -20 ~ 70 °C
El sensor VL53L0X ofrece 3 modos de medición
-
Modo de medición única: En este modo de medición, un solo disparador realiza únicamente una medición de distancia y, después de finalizarla, el sensor VL53L0X vuelve al modo de espera y espera el siguiente disparador.
-
Modo de medición continua: En este modo, la medición de distancia se ejecuta de forma continua. Cuando termina una medición, la siguiente comienza inmediatamente, y el usuario debe detener la medición de distancia para volver al modo de espera; la última medición finaliza antes de detenerse.
-
Modo de medición temporizada: Este modo es, en realidad, un modo de medición continua con intervalos de tiempo especificados. Cuando se completa una medición, la siguiente se inicia después de un tiempo de espera definido por el usuario. El usuario debe detener la medición de distancia para volver al modo de espera, y la última medición se completa antes de detenerse.
El sensor VL53L0X también ofrece 4 modos de precisión diferentes:
|
Modo de precisión
|
Rango del presupuesto de tiempo de medición (ms)
|
Distancia de medición (m)
|
Escenarios de aplicación típicos
|
|
predeterminado
|
30
|
1.2
|
estándar
|
|
alta precisión
|
200
|
1,2 (precisión <± 3%)
|
Medición precisa
|
|
larga distancia
|
33
|
2
|
Larga distancia, solo para condiciones oscuras sin infrarrojos
|
|
alta velocidad
|
20
|
1,2 (precisión <
± 5%)
|
Alta velocidad, la precisión no es prioritaria
|
| Interfaz | Descripción |
| VCC | Positivo de alimentación (entrada de alimentación de 3,3 V/5 V) |
| GND | Tierra de alimentación |
| SDA | Pin de datos I2C |
| SCL | Pin de reloj I2C |
| SHUT | Pin, conectable a un puerto IO |
| INT | Pin de salida de interrupción, conectable a un puerto IO |
| Módulo de medición de distancia láser | Módulo ESP32 |
| VCC | +5V |
| GND | GND |
| SDA | P21 |
| SCL | P22 |
Proceso de operación específico
-
Abra el panel de gestión de bibliotecas del IDE de Arduino, introduzca VL53L0X en el cuadro de búsqueda y, a continuación, seleccione instalar la biblioteca Adafruit_VL53L0X, como se muestra a continuación.
-
El siguiente paso es examinar un programa de plantilla sencillo para el modo de medición única. Se muestra a continuación:ESP32 con VL53L0X realiza un vehículo de inteligencia artificial IoT: programa de plantilla sencillo
Como puede ver en el código anterior, estos pasos son necesarios para completar una sola medición con el módulo de medición de distancia láser:
(1) Cree una instancia del objeto Adafruit_VL53L0X.
Adafruit_VL53L0X lox = Adafruit_VL53L0X();
Llame al método begin() para completar la inicialización del módulo de medición de distancia láser.
(3) Cree una instancia de la estructura VL53L0X_RangingMeasurementData_t que almacene los resultados de la medición.
(4) Llama al método rangingTest() para completar una medición.
(5) El atributo RangeStatus del objeto de resultado de la medición indica el estado del resultado de la medición, y el valor del atributo RangeMilliMeter es la distancia medida (en milímetros).
Para la medición continua, la diferencia con la medición única anterior es que, después de llamar a begin() para completar la inicialización del módulo, debes llamar al método startRangeContinuous() para cambiar el módulo de medición de distancia láser al modo de medición continua. La diferencia al leer los datos consiste en utilizar el método isRangeComplete() para determinar si el módulo de medición de distancia láser ha completado una medición y, a continuación, el método readRange() para leer los resultados de la medición. La plantilla del programa se muestra a continuación:ESP32 con VL53L0X realiza un vehículo de inteligencia artificial IoT -medición continua

