iOS 杂谈DroneDevAndroid开发经验谈

入门大疆 SDK 开发前,你需要了解这些…

2018-01-07  本文已影响1177人  davidac

SDK(Software Development Kit),即软件开发工具包,用来开发适用于某个产品(比如 DJI Phantom 4)或某个平台(比如 Windows)的软件,通常由产品或平台的厂商提供给开发者使用。在这个工具包里通常包括各种各样的调试工具、API 文档、开发指南和模拟器。

而在大疆 SDK 里(以 Mobile SDK 为例),为开发者提供的工具有:

开发者可以利用这些 SDK 的工具,从无人机的相机、云台、飞控状态信息获取等接口入手,通过大疆提供的代码库向无人机发送多种控制指令,完成特定的飞行任务。

P.S. 对于编程新手来说,可能也会经常听到 API(Application Programming Interface)并想了解其与 SDK 的关系,钟德夫刚好在网络上找到这么一张图,很好地阐释了各个名词之间的关系:

大疆 SDK 的种类

大疆官方提供了移动端、机载端和视觉导航系统的 SDK(Mobile SDK,Onboard SDK 和 Guidance SDK)。

用大疆 SDK 可以做什么?

这取决于官方 SDK 提供的 API 种类,以及开发者的想象力。为了推广其 SDK 项目,大疆过去曾开展过 SDK 开发者大赛和编程马拉松比赛。想了解在这些比赛中开发者利用大疆 SDK 都玩出了什么「花样」,可以通过下方的文章链接进行回顾:

  1. 历届 DJI 开发者大赛优秀作品汇总

另外,App Store 或 Google Play 上也有不少基于大疆 SDK 开发的 app,具体可参考钟德夫之前推荐的部分软件:

  1. 无人机航测用什么软件?这里给大家推荐这 7 款

  2. DroneApps | 姿势可以千变万化,但安全还是第一要义

  3. DroneApps | 让无人机实现空中定点拍摄的 DroneRepeat

  4. 与孩子一起学无人机编程?或许这个工具能帮助到你

需要准备哪些方面的知识(以 Mobile SDK 为例)

不同产品的需求和使用场景会对开发基础有不同的要求,比如在测绘行业的,你需要了解有关 GIS 的知识,需要开发图像识别的,则需要掌握如 OpenCV 等图像处理的算法。这里只针对普遍的情况进行概括:

当一切都准备就绪后,便可以尝试运行 SDK 提供的示例代码了,具体操作流程参见:https://developer.dji.com/cn/mobile-sdk/documentation/quick-start/index.html

小结

由于安全原因,大疆并非完全开源,在涉及到限高、禁飞区等安全问题,开发者还是没法通过 SDK 来突破这些限制的。另外,对比开源飞控(如 Pixhawk),大疆飞行系统更为稳定,也让开发者更为放心地进行开发。

虽然基于大疆(Mobile)SDK 的开发本质上还是写 app,但因其控制的产品需要在半空中移动,对公共安全还是有一定的威胁,所以在真机测试前一定要先在模拟器上多番测试,对程序稳定性有较高的把握后,再找一个空旷少人的地方进行真机测试。

最后,祝大家顺利写出第一个无人机 app 的「Hello World」。

关注公众号 DroneDev
上一篇下一篇

猜你喜欢

热点阅读