cancel
Showing results for 
Search instead for 
Did you mean: 

Why ranging Time-of-Flight sensor (VL53L1X) gives fluctuate value for fixed distance?

BGhos.1
Associate

While measuring the distance of an obstacle using VL53L1X ( https://www.st.com/en/imaging-and-photonics-solutions/vl53l1x.html ) the result is fluctuating. This was tested with the breakout board ( https://www.st.com/en/evaluation-tools/vl53l1x-satel.html ).

Example of the test conducted:

We have set the fixed obstacle at a distance of 140 mm from the sensing unit.

Case 1: Setting:

Ranging: Autonomous ,

Distance Mode: Short ,

Timing Budget: 50ms ,

Inter measurement period: 50ms.

Result: Varies in the range 138-144 mm

Case 2: Setting:

Ranging: Autonomous ,

Distance Mode: Short ,

Timing Budget: 500ms ,

Inter measurement period: 50ms.

Result: Varies in the range 139-141 mm

Why the variation is observed for the tightly fixed obstacle (non varying distance) in these kind of sensors? What is the physics behind it (measurement fluctuation reason)? Please help me with the technical explanation.

With regards,

Bhaskar Ghosh

3 REPLIES 3
John E KVAM
ST Employee

The speed of light is really fast. To get mm accuraccy you need to measure stuff in pico-seconds. But the tiny bit of digital logic in the sensor is just not that fast.

So how does one do it? STATISTICS.

The sensor collects between 0.5 and 20million photon detects and 'averages all the times'. But those collects are only accurate to several centemeters, and we are looking for millimeters. But with millions of samples the statistics get pretty close.

Another factor is the sensor is not using a 'dot' laser. At 140mm the Field of View is about 1/2 the range - so a it's a 61.6mm diameter circle at the target. So some photons hit the center and some hit the sides of that circle and the distances are different. One might contend that your target is both 140mm away in the center and 142 mm away at the edges of the FoV. We try to compensate for that, but we don't really know from where the photon come.

One can get more accuracy, if you have the time. In general quadrupling your ranging time wll double your accuracy.

I know of one application that counts on real accuracy - they use a 500ms timing budget.

And oddly. doing one long range is slightly more accurate than averageing several shorter ranges of the same total duration.

if you have a known target at a pretty specific distances, choose a target that reflects such that you are using 150 SPADs or more and are getting a signal rate of 20 million most of the time. The sensor turns off SPADs if the signal goes over 20million per second to keep the signal in the sweet spot. But using more SPADs is also desirable. And use a target that covers the entire FoV.


In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question. It helps the next guy.
RGupp
Associate II

I’m not certain of the effect on the measurement repeatability, but I noted that in the original post the inter measurement period is significantly shorter (50 ms) than the timing budget (500 ms) yet I’m sure I read it had to be the opposite.

John E KVAM
ST Employee

The two timers are independent.

the TB is how long each range takes to complete.

the IM period is the time between the start of one range and the start of the next.

If you get them backward, the sensor still works, you just don't get what you expect.

If the IM clock goes off and the range is not complete, it will do nothing.

At some point the IM clock will trigger and the range will have completed. It will then start again.

with a TB of 500 ms, and a 50ms IM, you will get a range and then either 50ms of quiet, and the next range or 0ms of quiet before the next range takes off.

10 IM periods will have gone off while ranging, and then it's a race to see if the IM triggers just before or just after the range completes.

Ideally the TB should be shorter than the IM.


In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question. It helps the next guy.