cancel
Showing results for 
Search instead for 
Did you mean: 

VL53L0X linearity observation

YGude.1
Associate II

We are using VL53L0x for measuring piston position inside syringe.

We consider piston position at bottom of syringe as reference position.

As we move piston to top, the difference between actual and measured reading start increasing.

At bottom difference around 0 mm. As we move piston up, the difference start increasing to around 1 mm, 2 mm, 3 mm.

we feel the behavior is due to piston surface facing to sensor in our application. It is not flat but cone type. Time of flight change and we observe variation is actual and measured reading.

Is our understanding correct?

We found VL53L0X_SetLinearityCorrectiveGain. Will this API useful for our observation? What is the purpose of this API?

1 ACCEPTED SOLUTION

Accepted Solutions
John E KVAM
ST Employee

The VL53L0X works by measureing the time-of-flight, or the time the light takes to echo. But as the target gets very near the sensor, the light can echo twice, or even 3 times. So at 2cm, you get 2, but as you move closer, instead of getting a smaller number the distance goes up!.

If you paint your structure a very dull black, this effect is lessened somewhat as the double echo is diminished. (Careful here, black plastic is pretty transparent to 940nm light. It almost has to be paint.)

But to guarentee a solution, you have to move the sensor back so there is physically no way your piston can get to a distance below about 2 cm.

Unfortuanately this is a problem with the physics of the light, so setting that Gain value will not help.

One can switch to the VL6180V1 - it generates less light, and thus has less of this effect - although the problem still exists, just to a smaller extent.


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.

View solution in original post

1 REPLY 1
John E KVAM
ST Employee

The VL53L0X works by measureing the time-of-flight, or the time the light takes to echo. But as the target gets very near the sensor, the light can echo twice, or even 3 times. So at 2cm, you get 2, but as you move closer, instead of getting a smaller number the distance goes up!.

If you paint your structure a very dull black, this effect is lessened somewhat as the double echo is diminished. (Careful here, black plastic is pretty transparent to 940nm light. It almost has to be paint.)

But to guarentee a solution, you have to move the sensor back so there is physically no way your piston can get to a distance below about 2 cm.

Unfortuanately this is a problem with the physics of the light, so setting that Gain value will not help.

One can switch to the VL6180V1 - it generates less light, and thus has less of this effect - although the problem still exists, just to a smaller extent.


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.