cancel
Showing results for 
Search instead for 
Did you mean: 

How to filter multitarget readings on ToF sensor

karlacha
Associate II

Hello,

We've been developing a tank level monitoring system using these sensors:

VL53L4CD (18° FoV)
VL53L3CX (25° FoV, multitarget)
VL53L4CX (18° FoV, multiobject, multitarget)

First question is the definitions and distinctions between the terms multizone, multitarget, and multiobject. We couldn't get a clear information about these on the datasheets.

Secondly, we are just using example libraries to get measurements. We are still discovering how to filter the readings that are not within the central zone.

We've made a spreadsheet that we'll be happy to share privately. It shows the minimum tank diameter and the maximum tank depth that won't cause signal bouncing around the inner walls.

Thank you. 

1 ACCEPTED SOLUTION

Accepted Solutions
John E KVAM
ST Employee

Multizone - In our smaller parts (VL53L0, L1, L3, and L4) there is a 16x16 SPAD array (Single Photon Avalanche Diode).

On the L0, L3 and L4 there is no lens on the receive side, so one cannot tell from where the photons came.

On the VL53L1 there is such a lens, and thus one can choose a Region of Interest - or zone. But you only get one zone per range. You can change the ROI between ranges to get a 'mulit-zone' effect.

IN the VL53L5, L7, and L8 you get true multi-zone. 8x8 zones of about 5degrees square are returned every range.

Multi-target - In the chips that use histograms (VL53L3CX, VL53L1CB and VL53L4CX plus the larger L5, L7 and L8) you can see multiple targets in the same zone. Generally, this is the edge of one target and whatever is in the background.

But the near target and the far target have to be 60-80 cm apart in distance in order to resolve them.  I'm guessing this is not useful in a tank or bottle.

Given the parts you listed. VL53L3CX and VL53L4CX use histograms. A histogram is a table consisting of photon counts per clock for every clock after the laser turns on. Researchers like to see this data. And in these sensors, it's your MCU that extracts the distance from the histogram data.  

On the VL53L4CD, the sensor computes the distance without the help of the MCU using a different method. Histograms work better, but for the close distances there is not much advantage. 

- john


Our community relies on fruitful exchanges and good quality content. You can thank and reward helpful and positive contributions by marking them as 'Accept as Solution'. When marking a solution, make sure it answers your original question or issue that you raised.

ST Employees that act as moderators have the right to accept the solution, judging by their expertise. This helps other community members identify useful discussions and refrain from raising the same question. If you notice any false behavior or abuse of the action, do not hesitate to 'Report Inappropriate Content'

View solution in original post

4 REPLIES 4
John E KVAM
ST Employee

Multizone - In our smaller parts (VL53L0, L1, L3, and L4) there is a 16x16 SPAD array (Single Photon Avalanche Diode).

On the L0, L3 and L4 there is no lens on the receive side, so one cannot tell from where the photons came.

On the VL53L1 there is such a lens, and thus one can choose a Region of Interest - or zone. But you only get one zone per range. You can change the ROI between ranges to get a 'mulit-zone' effect.

IN the VL53L5, L7, and L8 you get true multi-zone. 8x8 zones of about 5degrees square are returned every range.

Multi-target - In the chips that use histograms (VL53L3CX, VL53L1CB and VL53L4CX plus the larger L5, L7 and L8) you can see multiple targets in the same zone. Generally, this is the edge of one target and whatever is in the background.

But the near target and the far target have to be 60-80 cm apart in distance in order to resolve them.  I'm guessing this is not useful in a tank or bottle.

Given the parts you listed. VL53L3CX and VL53L4CX use histograms. A histogram is a table consisting of photon counts per clock for every clock after the laser turns on. Researchers like to see this data. And in these sensors, it's your MCU that extracts the distance from the histogram data.  

On the VL53L4CD, the sensor computes the distance without the help of the MCU using a different method. Histograms work better, but for the close distances there is not much advantage. 

- john


Our community relies on fruitful exchanges and good quality content. You can thank and reward helpful and positive contributions by marking them as 'Accept as Solution'. When marking a solution, make sure it answers your original question or issue that you raised.

ST Employees that act as moderators have the right to accept the solution, judging by their expertise. This helps other community members identify useful discussions and refrain from raising the same question. If you notice any false behavior or abuse of the action, do not hesitate to 'Report Inappropriate Content'

Hello John,

 

Just a follow up question... We populated a specific version of boards with the 3 sensor models that we have: (VL53L4CD (18° FoV)
VL53L3CX (25° FoV, multitarget)
VL53L4CX (18° FoV, multiobject, multitarget)
Since the 3 models accept the same code and have the same I2C address, is there a way for us to inquire through the firmware the sensor model? Also, do you think that the VL53L4CD is best for a specific tank depth monitoring where its placement is offset (existing hole near the inner wall is to be used for sensor placement, kindly refer to attachments) since it is a single-zone? This is a new PoC that we will be presenting. We already have a stable production for the VL53L4CX though where the sensor is placed exactly at the center.

 

Thank you.

Telling the difference between the L3 and the L4s are easy. There is a ID register. And they are different.  

call VL53L4CD_ULP_GetSensorId(). This function will work on both the L4 and L3. It reads the same register. 

sensor_id == 0xebaa on the L4. 

Telling the difference between the L4CX and the L4CD is going to be harder.

The two L4s are from the same wafer. The L4CD is just binned to run the slightly more difficult code.  For short periods of time, I'm sure the L4CD can run the L4CX code, but you can't go into production like that. The failure rate would not be good. Sorry about that. 

I'm going to bet that in all your containers, the L4 is going to make you happier. That narrower Field of View is why. 

You biggest issue is the light that reflects off the side of your container. Some of that is going to reflect and you are going to spend some time calibrating the number you get back with the depth of the liquid. 

I'm not saying it cannot be done, but it's not going to be a lot of fun. 

if you are lucky, most of the light will hit the side of the can and reflect downward. Photons that return are going to mess with your range and return a shorter distance than you would like. So you are going to have to calibrate each container, and keep a look-up table. 

good luck, 

- john

 


Our community relies on fruitful exchanges and good quality content. You can thank and reward helpful and positive contributions by marking them as 'Accept as Solution'. When marking a solution, make sure it answers your original question or issue that you raised.

ST Employees that act as moderators have the right to accept the solution, judging by their expertise. This helps other community members identify useful discussions and refrain from raising the same question. If you notice any false behavior or abuse of the action, do not hesitate to 'Report Inappropriate Content'

Thank you very much for your quick response. The reason why I'm somehow confident is because of this device where the placement around the rim. I cracked it open and saw that it's also a ST ToF sensor with a Hornix cover. https://www.youtube.com/watch?v=gO5zgnPYuyE