有价值的api
在大疆的sdk文档中,存在着巨量与无人机各类任务相关的函数,包括但不限于用于无人机控制的FlightController类,用于向FlightHub上传飞行数据的FlightHub类,以及许多用于传输视频,音频信息,控制云台(Gimbal),获取电池信息(Battery)的类,需要仔细梳理在这个项目中需要用到的功能。
一般来说,消费级别无人机不适合在室内飞行,因为室内环境复杂多变,据离地面较近且有相当大的摔机,伤人可能性。但是本实验必须要在室内环境验证寻径算法的效果,如何精确操控无人机飞行成了最大的问题,毕竟在物理摇杆操控的情况下,人眼可以充当给无人机定位的传感器,但是如果变成完全由程序控制,一旦程序出现失误导致无人机意外加速或者偏离航线,结果将是致命的。
在室内,由于GPS信号较差,无人机会自动进入ATTI模式,也就是所谓的光学定位模式,在这种模式下无人机定位能力逊色于GPS+ATTI,但是也能保证基本稳定的悬停,根据官网参数,悬停范围能稳定在0.5m左右。当然,这种误差来自硬件的壁垒,我们无论如何也没法拆开无人机更换更好的定位系统,只能在此基础上尽量实现精准定位飞行。为此,根据之前思考的结果,这里决定采用无人机的VirtualStickMode,将虚拟摇杆的数据发送给RemoteController再进一步以一定频率发送给无人机,使得无人机按照我们所想的运转。
Product(aircraft)
在无人机控制中,FlightController类是基石,无论执行怎样的操作都需要首先获得一个cont