注:
此系列文档为DJI 开发者官网补充资料,还在不断更新和完善之中,以便为广大DJI PSDK开发者提供更加完善的参考学习资料,现将部分资料先开放出来。欢迎广大开发者留言建议,我们将积极收集建议,后续将持续完善和更新。
一、初篇
-
本系列教程说明
-
怎么玩SDK
-
-
飞行器基本原理及专业名词介绍
二、DJI SDK基本介绍篇
DJI无人机支持二次开发的SDK分为机载端和地面端SDK,机载端SDK用于在飞行器端二次开发,按功能划分为Onboard SDK和Payload SDK,机载端SDK并非直接在无人机上开发,需要选择对应的硬件平台开发并连接至无人机提供的SDK接口上。移动端SDK用于在遥控器地面端二次开发,主要是Mobile SDK,部分消费机型还支持windows SDK,windows SDK当前官方已处于停更状态,且不支持Matrice系列无人机,二者通过遥控器与飞行器连接。
PSDK 3.0版本中已经将OSDK功能和PSDK功能集成到一个开发包中,但M300上的OSDK功能接口与PSDK功能接口依旧是独立的。PSDK 3.0在M300上进行开发时,开发PSDK功能需要通过skyport/X-PORT连接至M300的PSDK负载接口,开发OSDK功能需要将机载计算机连接至OSDK type C接口,或OSDK拓展转接板接口。为便于区分和理解功能,本篇中出现的OSDK,PSDK均指的是飞机端口以及对应的OSDK功能和PSDK功能。
-
无人机控制权
三、硬件连接篇
本篇主要介绍开发环境的搭建,开发环境的快速搭建通常会基于官方的开发配件,首先会介绍OPSDK会用到的配件,再结合配件搭建开发环境。通过对开发环境的了解,进一步介绍自制硬件部分,通过自制硬件要可以实现设备的生产环境。
考虑到OSDK,PSDK旧版本的硬件连接有些差异,在开发环境搭建中也会有相应的介绍。
行业新机型M30已经发布,适配该机型的PSDK3.1是在PSDK 3.0上进行适配,硬件连接有变动,单独列出M30/T机型硬件部分。
四、PSDK开发包结构篇
本篇中首先我们将了解开发包结构,然后在此结构下让官方的sample运行起来。了解SDK的开发包结构,我们可以明确SDK的功能以及核心代码部分,运行sample可以直观的从代码上了解SDK的功能以及实现参考。此篇将是后续的代码阅读或编写的基础。
PSDK 3.x版本集OSDK,PSDK功能与一体,比OSDK 4.1版本要轻量很多,而且结构更加清晰易懂。OSDK 4.1的代码结构将不再详细讲解,开源部分比PSDK3.0更多,也可以参考自行阅读。新开发PSDK功能的开发者,推荐使用PSDK 3.x之后的新版本进行开发,是官方的主要维护版本,新手初学以及开发之后的维护也会更容易。
-
开发者使用 sample运行
五、功能sample详解篇
本篇章是开发需求过程中关系最为密切的部分,也是开发者关注最多的部分,部分sample功能的实现甚至还可以直接在应用需求中复用,深入了解此部分后将会使得开发工作事半功倍,否则,开发过程中或维护中可能会遇到诸多阻碍。此系列功能sample讲解中,将主要以sample代码跟读为主,通过sample代码的阅读,提炼出lib API,实现逻辑等必要信息,以及API调用的注意事项等。此部分主要是通过sample来了解SDK与飞机的交互过程,比如读取到飞机的视频流、视觉图像仅介绍如何与飞机交互,图像处理等不在此篇介绍。
根据前面篇章的讲解,我们已经详细了解了SDK运行环境的学习,在此功能sample运行中,建议先完成基本环境的配置,然后边运行sample边阅读代码,通过实际操作将更有利于对功能的理解。
-
-
相机功能组件(camera emu)
-
(camera manager)
-
数据传输(data_transmission)
-
SDK 互联互通(MOP channel)
-
遥测数据订阅(fc_subscription)
-
joystick飞行控制(flight_control)
-
云台功能组件(gimbal_emu)
-
云台管理(gimbal_manager)
-
健康管理系统(HMS)
-
实时视频流(liveview)
-
负载协同(payload_collaboration)
-
视觉图像(perception)
-
精准定位(positioning)
-
电源管理(power_management)
-
时间同步(time_sync)
-
固件升级(upgrade)
-
航点任务(waypoint_mission)
-
六、SDK开发功能拓展篇
-
待定
评论
0 条评论
请登录写评论。