Skip to main content
ARani.1
Associate
August 19, 2020
Question

I am using a VL53L0x for a distance measurement. During the measurements there is an error of 10cm for long range measurements. how could i overcome this?

  • August 19, 2020
  • 14 replies
  • 3403 views

..

This topic has been closed for replies.

14 replies

John E KVAM
ST Employee
August 19, 2020

Idea one. Carefully read the datasheet about accuracy. One can expect +/- about 3 percent. If the error is outside this range, then we look to calibration. There is a large section on Crosstalk, and how to overcome it. Could that be your issue? (You would under-range as the distances get longer.) There is no crosstalk without a coverglass. So to check this you can try it without a coverglass. Does that work better??

2) As the distances get longer the light spreads. The illumination circle diameter is about 1/2 the distance to the object. Could it be that at the longer distances the target does not fill the entire Field of view? If so, the light might be hitting a wall behind your target. All the photon travel times are averaged. And this multiple target effect might be throwing off your answer.

3) Can you increase the timing budget. 4x the time, will 2x the accuracy.

If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.
ARani.1
ARani.1Author
Associate
August 20, 2020
Thank you
Eleon BORLINI
ST Employee
August 21, 2020

Hi @ARani.1​ , please let us know if you solved your issue... thanks and regards

ARani.1
ARani.1Author
Associate
August 26, 2020

Yes the results are consistent with +/- 3 percent error but not accurate.

ARani.1
ARani.1Author
Associate
August 26, 2020

I will be using this sensor for measurement of water in the underground tank.

Do this effect the sensor operation and is it water resistant?

John E KVAM
ST Employee
August 26, 2020

ARani - The VL53L0X is NOT water resistant. In order to let the light out and back in the raw silicon has to be exposed. We do put a filter over the top, but the raw silicon is more exposed than other chips. If you are going to use it under water is has to be in a very well sealed enclosure.

If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.
ARani.1
ARani.1Author
Associate
August 27, 2020

I have tried enclosing it in a small transparent plastic container but this was not helpful since container was considered as target surface by the sensor

ARani.1
ARani.1Author
Associate
August 27, 2020

 it will be mounted to TOP OF A LARGE WATER TANK of 200,000L capacity. Since the tank is in the exteriors (exposed to Sun light), there is Humidity inside the tank in the open space between water and the sensor.

What type of harm this can cause to the sensor?

John E KVAM
ST Employee
August 27, 2020

I don't think a little humidity will hurt the sensor any more than any other electronics. But it should be a simple matter to build a water-proof enclosure, would it not?

If life were perfect the sensor would sit pressed flat against the coverglass. You could put a rubber gasket around the sensor. The heat generated by the laser would be enough to keep any humidity from condensing. At least I would think so. (I know lots about our part - but not so much about humidity.)

If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.
John E KVAM
ST Employee
August 27, 2020

>>>I have tried enclosing it in a small transparent plastic container...

Push the sensor flush with the 'glass' of the container. We use the sensor behind the glass in nearly a billion cellphones, so we know that works. (Sorry for Bragging.)

You will get accurate numbers for close distances. Some of the photons will reflect off the coverglass, but they will be dwarfed by the ones from the target. At the longer distances the 'crosstalk' becomes more of an issue. We have a way to calibrate this out. Read the section of the datasheet on Crosstalk Calibration. It will fix you right up.

And you might consider the VL53L3CX or the VL53L1X. The software on the L3 is larger, but the extra range might be worth it. The L1X is more expensive, but it has a lens to further increase the range. In a large tank that might help. Also if you are looking for the surface of the water, I've had better luck with the VL53L1X.

If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.
ARani.1
ARani.1Author
Associate
September 3, 2020

I am trying out with glass container of 2mm thickness result are not consistent can u please suggest me what can be done?

ARani.1
ARani.1Author
Associate
September 15, 2020

can u please suggest me how do i calibrate for an accurate long range.i have tried out with ur previous suggestions but the error is more than 3% of actual distance.

here is my code:

#include <Wire.h>

#include <VL53L0X.h>

VL53L0X sensor;

void setup()

{

 Serial.begin(9600);

 Wire.begin();

 sensor.setTimeout(1000);

 if (!sensor.init())

 {

  Serial.println("Failed to detect and initialize sensor!");

  while (1) {}

 }

 sensor.setSignalRateLimit(0.2);

 sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodPreRange, 18);

 sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodFinalRange, 14);

}

void loop()

{

 Serial.print(sensor.readRangeSingleMillimeters());

 if (sensor.timeoutOccurred()) { Serial.print(" TIMEOUT"); }

 Serial.println();

}