详见[https://github.com/jiushuokj/uav_doc]
- 使用大疆4.16.1版本的SDK
- 本app基于大疆官方的MediaManagerDemo来构建
- 主要实现了:
- 基于Mqtt来实现以一定频率发送无人机的状态信息,接受外部发送的指令(详情见协议,代码MyMqttService.java)
- 使用dji-sdk的MediaManager来实现在航点任务结束并且降落后将本次任务拍摄的多媒体文件下载到本地(MainActivity.java中downloadRelatedMedia()方法)
- 在多媒体文件下载到本地后,使用FtpClient将这些多媒体文件上传到Ftp服务器(FTPClientFunctions.java和MainActivity.java中uploadFileToFtpServer()方法)
- 使用高德地图来实时展示无人机(MainActitity.java中的mFlightController.setStateCallback())和遥控器的当前位置
- 在无人机移动时能够显示其移动轨迹(MainActivity.java中startRecordingTrace())
- 使用dji-sdk的航点任务Api来实现本地的航点任务的功能(MainActivity.java中loadWaypointMission())
- 接受到航点任务的mqtt指令后,将其在地图上显示(MainActivity.java中setWaypointDataCallback())
- 根据DJI-Pilot的设置页面来实现自己的设置页面(使用ViewPager实现,具体的每个Fragment详见包settingpanel.fragment中的类)
- 实现相机的Zoom in/out功能部件(ZoomView.java)
- 下载代码
- 使用andriod stadio 进行编译
- 将APP在DJI 遥控器上部署
- 启动APP,填写大疆无人机用户名密码登录
- 该APP运行于大疆遥控器,通过网络方式接入服务器。支持WIFI和USB接入
- WIFI接入,设置WIFI热点,APP和服务器均接入统一WIFI局域网,APP设置服务器地址
- USB接入,USB线连接大疆遥控器和计算机,在遥控器上设置USB工作在充电模式,同时启动USB网络共享。此时遥控器地址为192.168.43.129 服务器地址为192.168.43.XXX(可用ipconfig查看)。在APP配置相关地址即可。