Lidar fijo vl53l0x

Este lidar fijo es una muy buena opción barata y fiable para detectar obstáculos y con solo 2 pines. Es compatible con cualquier placa que tenga interfaz I2C (pines SDA y SCL). La distancia de medición es de 5cm a 120cm.
La conexión es la típica de I2C:
- VCC a 3,3V o 5v de la placa.
- GND a GND.
- SCL si es arduino UNO, NANO a A5, si es MEGA a 21 y ESP32 a 22.
- SDA si es arduino UNO, NANO a A4, si es MEGA a 20 y ESP32 a 21.
- GPIO1 a HIGH para activarlo aunque es opcional.
Instalamos la librería vl53l0x de Polulu aunque hay muchas más para este sensor.
Precauciones
- No meterle más de 5V.
Incluimos las librerías del sensor y Wire porque utilizamos I2C:
#include <Wire.h>
#include <VL53L0X.h>
Definimos el objeto y lo llamamos sonar por ejemplo:
VL53L0X sonar;
Iniciamos, el serial y el sonar. Si falla está mal conectado o no funciona:
Serial.begin(115200);
Wire.begin();
sonar.setTimeout(500);
if (!sonar.init()) {
Serial.println(“Fallo al iniciar el lidar”);
return;
}
Lo ponemos en modo escaneo continuo:
sonar.startContinuous();
Printamos la distancia. Si da error de medición dará error:
Serial.print(sonar.readRangeContinuousMillimeters());
if (sonar.timeoutOccurred()) { Serial.print(” TIMEOUT”); }
Notas
- El FOV es de 24º.
- La luz solar afecta a la medición.
- Hay que tener en cuanta que la distancia mínima es de 5 cm. Menos dará error.