Sensor láser de distancia VL53L0X

Vamos a probar el sensor de distancia VL53L0X, un pequeño módulo integrado que permite medir la distancia de una forma precisa y sin afectarle la reflactancia del objeto. Se puede medir distancias absolutas
hasta 2 metros.

Aquí podéis consultar el datasheet del integrado.

Conexiones

Si vemos el pinout de este módulo veremos que funciona mediante bus I2C, por lo que únicamente nos harán falta dos cables para la comunicación y otros dos para la alimentación.

En mi prueba he utilizado un Arduino UNO, por lo que tenemos que asegurarnos de cuales son los pines I2C con los que trabaja Arduino que estamos utilizando. En este caso SDA - pin A4 y SCL - pin A5.

El voltaje de trabajo puede estar entre 2.6V y 5.5V, así que podemos alimentarlo directamente desde nuestro Arduino.

Librerías disponibles

Si hacemos una búsqueda de VL53L0X en el IDE de Arduino, encontramos varias propuestas. Vamos a hacer un repaso de lo que nos sale:

gestor_librerias_arduino

Adafruit_VL53L0X
https://github.com/adafruit/Adafruit_VL53L0X

STM32duino VL53L0X
https://github.com/stm32duino/VL53L0X
Ésta librería no es compatible con Arduino, únicamente sirve para programar el STMicroelectronics STM32: https://en.wikipedia.org/wiki/STM32
Depende de otra librería que tendrémos que instalar y que podemos encontrar también el en IDE:

STM32duino X-NUCLEO-53L0A1
https://github.com/stm32duino/X-NUCLEO-53L0A1
Ésta librería depende de las dos anteriores, por lo tanto está pensada para microcontroladores STM32:

VL53L0X by Pololu
https://github.com/pololu/vl53l0x-arduino

Llegados a este punto, solamente nos queda probar la de Adafruit y la de Pololu.

Adafruit_VL53L0X

Esta librería únicamente nos trae un ejemplo muy sencillo:

ejemplo_adafruit_vl53l0x

vl53l0x_adafruit_code

El código nos motrará la distancia que está midiendo el sensor y nos lo mostrará por el Serial. Simple y fácil.

A partir de aquí toca investigar un poquito mas sobre este dispostivo, ya que por lo visto tiene varias amplicaciones prácticas (a parte de medir distancia), control de gestos, detección de objetos, mediciones para sistemas de enfoque, etc.