是否可以通过Windows SDK上的红外传感器获取无人机的高度?

时间:2019-06-07 07:29:30

标签: windows dji-sdk

我正在使用 Windows SDK 和Mavic 2 Pro。我想从位于其底部的红外传感器获取无人机的高度。我已经看到,通过方法 getUltrasonicHeightInMeters(),这在 Android SDK 上是可能的。但是,在其Window对应项上找不到类似的方法。

1 个答案:

答案 0 :(得分:0)

在Windows SDK中,它称为海拔高度

请参阅https://developer.dji.com/api-reference/windows-api/Components/FlightControllerHandler.html?search=altitude&i=4&#flightcontrollerhandler_getaltitudeasync_inline

method GetAltitudeAsync
async Task<ResultValue<DoubleMsg?>> GetAltitudeAsync()
Declaration:    DJI.WindowsSDK.Components
Description:
Gets the flight controller's relative altitude of the aircraft relative to take off location, measured by the barometer, in meters.

Return:
async Task<ResultValue<DoubleMsg?>> A Task<ResultValue<DoubleMsg?>> object.

编辑

IR端口未向外部SDK开放,并且DJI没有开放计划将其与下行流视觉数据合并。

走扁平板的一种方法是使用带有扩展卡尔曼滤波器的GPS高度的黄铜保险丝。

如果要避开复杂地形中的障碍物,可以始终使用一些高级方法,例如SVO https://github.com/uzh-rpg/rpg_svo。它仅使用视频流并输出所需的深度。 ETH小组的这项工作值得信赖,并且可以在低海拔到高海拔的室外环境中执行而没有任何问题。

https://www.youtube.com/watch?v=hR8uq1RTUfA

您可以使用普通的摄像机流,例如DJI Wsdk输出。 3D点以相对比例绘制。通过与GPS或baro配合使用,您可以得到接近真实比例的近似值。

enter image description here