Keeping altitude by measuring height through vegetation

Hi guys,
I’m working on a hexacopter equipped with magnetometers resp. metal detectors to find metals under the ground surface. Due to the short range of those sensors the drone should fly in a low and steady altitude measured from the actual ground not grass or any other vegetation. I haven’t made any experiences with appropriate sensors such as lidar yet. So I’m not sure how or even if it’s feasible. But maybe some of you did and you could share thoughts or ideas for my problem?


I would expect that light based range sensors will detect the vegetation.
Perhaps you’ll have more luck with a radar based system, such as the uLanding. But you’ll have to do some research about whether your vegetation is transparent to the relevant frequencies, or try it out.

Thanks for your response. I asked the people from ulanding, their sensors are adjusted to detect the vegetation. Fair enough. It makes more sense for collision avoidance. I’ll have to do some more research here.

Anyway, I got more into lidar sensors. In principle, they get several reflections from surfaces in various height. They are using this for height mapping. If I am using an appropriate sensor which gives out these different heights, assuming it is able to differentiate between ground surface and vegetation. Is there a way to adjust some settings in pixhawk to specifically measure the ground surface?

I don’t think so. If you have a sensor that can be configured in some special way, you’ll have to write a driver for it.

Just throwing it out there… but wouldn’t it be more practical to use an all-terrain rover and mount existing metal detector devices and technologies?

Interesting concept though…

Good luck.


All sensors (Lidar, Radar, Sonar, infrared) measuring downward will be subject to foliage reflection, so they can not be used. You should try externa reference system like RTK

Ok guys, thanks for your feedback so far.

@rollys they would be easier and probably cheaper to build but drones could be much faster in the process, if done right. Also if I have muddy surfaces I won’t get stuck with drones.

@Pauli_Isoaho How would you measure the distance to the actual ground though? With RTK only you measure the vertical distance to the sea level.

You need to get tarrain map with altitudes and use that with RTK, but of course you need to have obstacel avoidance with this solution