2018-05-08 04:21 AM
Hi, all!
maybe someone can explain me why when I change ROI (range of interest) parameter of VL53L1x sensor then I got different distance to the same object (for example to table plane)? If I use 16x16 ROI settings then distance is correct but if I change ROI to smaller then 16x16 then results is unpredictable for different ROI's and distance varies between 5-40%.
For ROI changing I'm using library source code function: set_custom_roi
Maybe need to do something more if I changing ROI that the distance measurement will be correct?
Here I below I provide the results when I changed the ROI to 4x4 and moved this square in different places in the 16x16 matrix:
81 92 77 64
76 85 60 44 52 77 73 50 57 78 89 73Distance provided in millimeters. For this test I used these settings:
status
=
VL53L1_SetDistanceMode
(
Dev
,
VL53L1_DISTANCEMODE_SHORT
)
;
status
=
VL53L1_SetMeasurementTimingBudgetMicroSeconds
(
Dev
,
200000
)
;
status
=
VL53L1_SetInterMeasurementPeriodMilliSeconds
(
Dev
,
250
)
;
I'm little bit shocked about the results.
I got similar results when used official VL53L1X_Gui software. Please see attached files with 3 different ROI settings (full_roi.jpg, middle_roi.jpg, small_roi.jpg)
Measurements environment is in measurement_setup.jpg photo.
Real distance to object was 6.1cm
The question is why have such bad distance results when changing ROI?
Maybe need to do something more after changing ROI settings to have correct distance measurement?
P.S. for tests I used X-CUBE-53L1A1 + NUCLEO-F401RE
2018-05-11 10:53 AM
In Section 3.6 of the datasheet, it shows a +/- 20mm error range. At short ranges this seems like a huge error, but at the chip's max range of 1.7M for a 4x4, the +/- 2cm doesn't seem like much.
Offset Calibration?
But that doesn't help you.
At your range of 61mm you should have gotten numbers between 41-81.
You got an average range of 70.5, with an excursion of 44 to 92. Spec would allow 50-90, so you are about right there.
You might account for some of the error with an offset calibration. With the offset calibration, your average should approach the actual. Did you do that?
(Offset calibration accounts for the changes the chip goes through when being soldered onto the board.)