Vehículo de inteligencia artificial IoT con ESP32 y VL53L0X

El VL53L0X es un sensor totalmente integrado con emisor infrarrojo integrado, láser seguro para los ojos humanos, filtros avanzados y matrices de detección de fotones de velocidad ultralta. El VL53L0X mejora la serie ST FlightSense™ con mayores distancias de medición y mayor velocidad y precisión, abriendo la puerta a nuevas aplicaciones. Incluso en condiciones de funcionamiento exigentes, el sensor puede determinar directamente la distancia hasta un objeto objetivo de hasta 2 metros, independientemente de la reflectividad del objetivo.

 

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

 
  1. 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.

  2. 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.

  3. 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
 
En las aplicaciones prácticas, es necesario seleccionar el modo de precisión adecuado según los requisitos actuales para lograr los mejores resultados de medición.
 
La interfaz del módulo de medición de distancia láser VL53L0X es la siguiente:
 
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
 
A continuación se explica cómo conectar el módulo de medición de distancia láser a la placa de desarrollo ESP32. Aquí se utilizan los pines predeterminados 21 y 22 del ESP32 para la comunicación IIC. Las conexiones específicas se muestran en la tabla siguiente:
 
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

 
El siguiente paso es abrir el software de desarrollo Arduino IDE. Primero debe instalar la biblioteca VL53L0X. El uso de bibliotecas puede ahorrarnos mucho trabajo de desarrollo de bajo nivel: no es necesario prestar atención a los detalles de la comunicación IIC ni comprender minuciosamente la estructura de los registros internos del VL53L0X. Con las funciones proporcionadas por los archivos de la biblioteca, puede utilizar directamente el módulo.
  1. 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.

  1. 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

 
¡El módulo de medición de distancia láser está configurado! El siguiente paso es sustituir el módulo de medición ultrasónica por el módulo de medición láser en el vehículo para crear el vehículo IoT con inteligencia artificial.
 

 

 

Si estás trabajando en un proyecto que utiliza VL53L0X o una placa de desarrollo ESP32, nuestro sitio web ofrece una amplia gama de productos VL53L0X y placas de desarrollo ESP32, y también podemos fabricar placas de desarrollo VL53L0X y ESP32 personalizadas según tus requisitos.
 
OpenELAB es una plataforma de desarrollo integral para los entusiastas de la electrónica AIoT de todo el mundo y una comunidad de código abierto para ingenieros electrónicos. Además de proporcionar módulos de desarrollo en línea, nuestros servicios también incluyen la fabricación personalizada de diversas piezas electrónicas, como microinterruptores y baterías, así como piezas de plástico o metal mediante impresión 3D, moldeo por inyección, CNC, corte láser, etc.
 
Además de las placas de desarrollo VL53L0X y ESP32, OpenELAB ofrece otros servicios de abastecimiento de componentes electrónicos, como sensores, pantallas, IoT y más. OpenELAB cuenta con un sitio web fácil de usar que permite encontrar fácilmente los componentes que necesitas y ofrece envíos rápidos a clientes de todo el mundo.
 
Además, OpenELAB ofrece Diseño como servicio (DaaS) para la optimización del diseño, Fabricación como servicio (MaaS) para la fabricación de productos, Cadena de suministro como servicio (SaaS) para el apoyo a la cadena de suministro y Calidad como servicio (QaaS) para el control de calidad de productos de IAoT que pasan a la producción en masa, garantizando una transición fluida a la fase de producción comercial.
 
Lo más importante es que OpenELAB se dedica a crear una comunidad global de código abierto para desarrolladores de dispositivos electrónicos de IAoT. A través de la comunidad abierta de OpenELAB, los desarrolladores de la revolución electrónica de IAoT pueden colaborar, empoderarse mutuamente y crear una cultura de respeto mutuo y colaboración compartida, generando productos de hardware inteligente de IAoT más innovadores para el mundo.
 
 

 

Deja un comentario

Tu dirección de correo electrónico no se publicará. Los campos obligatorios están marcados con *

Regístrate en nuestro boletín de noticias

Obtén la información más reciente sobre nuestros productos y ofertas especiales.

Website Feedback

Help us improve OpenELAB

Found a website issue or have an idea? Tell us what would make your experience better.