As far as I can tell, an ultrasonic rangefinder works by reflecting inaudible soundwaves off of objects and timing their return. But if the object has a flat surface and is angled with respect to the line to the rangefinder, how does it detect that object? Under what circumstances might it give a false distance or otherwise fail to detect the object?
1 Answer
The sound beam is not traveling in a straight line but is leaving the range finder is a multi-lobed pattern.
Of course we are interested in the main lobe. When the sound wave hits an object, it is reflected in various directions. So some of that energy returns to the sensor and triggers it, therefore measuring the distance. Reflection depends on the material and the shape of the object as well as the angle with respect to the centerline of the range finder. As you pointed out, if this angle is large enough the reported distance will be off, as shown in the following figure
Both figures are from the paper "M. Drumheller - Mobile robot localization using sonar (1987)"
-
$\begingroup$ Is there any way to compensate for angle even if it is unknown (e.g. kalman filter)? $\endgroup$– PaulJan 22, 2014 at 14:28
-
$\begingroup$ Kalman filters involve pairing readings from two different sensors together. Used in localization, they pair the reading from GPS with the dead reckoning. The idea is that the relatively large inaccuracy of GPS never grows, but the inaccuracy of dead reckoning is small at first and then grows with things like slippage. In your case, it might be possible to combine the sonar with another distance sensor like an IR range sensor. $\endgroup$ Jan 22, 2014 at 15:11
-
$\begingroup$ My other suggestion would be to measure the angle (shown as beta above) of the main lobe, then use multiple readings in a scan to find the shape of the object you scanned. Be aware that in the small angle of the scan where the centerline and the edgeline of the lobe are roughly equilateral, your scan will give funny results. $\endgroup$ Jan 22, 2014 at 15:12
-
$\begingroup$ @Paul Presumably the signature of the echo will vary so if you have more information you may be able to do better than the diagram above. The diagram seems to assume the simplest range meter that trips on the edge of the echo and does not do any other analysis. $\endgroup$ Jan 23, 2014 at 3:27