DJI OSDK开发实例篇(针对初学者, Linux C++)

本文面向初学者介绍DJI OSDK开发,通过Linux C++进行无人机远程监控的实例。OSDK是Onboard SDK,用于在无人机微型电脑上进行编程,实现对无人机的控制。开发可在任何Linux系统上进行,但最终需要在机载电脑上调试。文中详细阐述了从创建CMake工程,下载并配置OSDK与websocketpp库,到解决编译问题和进行初步开发的步骤。
摘要由CSDN通过智能技术生成

关于大疆OSDK开发前,如何配置,官网或者其它博客都有比较详细的介绍,这里推荐一篇博文:DJI M210 RTK V2 + manifold2 Onboad-SDK开发流程及踩坑合集(一)
结合官网Doc看即可。
我这的目的是让初学者知道何为OSDK开发,然后能迅速进入角色。

  1. 什么是OSDK开发
    OSDK我们知道叫Onboard SDK,这个Onboard 就是搭载在无人机上一台微型电脑,跟普通的电脑基本没差别,就是体积小点,cpu/内存差点等,毕竟的它需要的功能单一,目的就是通过串口和usb口来控制无人机。其实更适合看成一台带SIM卡的平板电脑(SIM卡主要用来提供网络)。Onboard系统一般是ubuntu,OSDK开发其实就是linux上的网络开发,接收远端的命令或者数据,然后调用OSDK来将命令和数据传到无人机,以控制无人机操作。所以实际上的OSDK,就是要在这台微小的机载电脑上编程。

  2. 前期的开发其实可以在任何电脑上进行
    OSDK本身是Linux C++程序,因此,OSDK开发前期是可以在任意linux系统上开发的,同机载电脑上开发一样,它需要下载啥第三方,你就配置好相关第三方lib即可,然后下载OSDK到你的Linux系统上,按照DOC上的提示make && make install,你的代码就可以引用OSDK相关lib与头文件(需要在Cmake中配置好)。
    当然,在其它电脑上开发只能用来编译代码是否有问题,功能部分测试,只能测试与OSDK无法的部分。OSDK相关部分的调式还是需要机载电脑和链接无人机调试。

  3. 实例—无人机远程监控
    条件:监控服务器有固定IP(如果没有固定IP,需通过云转换,这样延迟毕竟大)
    lib:考虑实时性,这里考虑使用websocket,这里使用Linux C++库,websocketpp

  1. 首先新建一个cmake工程:Linux下新建一个目录然后配置好cmake
    2)将大疆OSDK与websocketpp都下载到该目录下,OSDK需要编译安装,注意将OSDK中的CMakeLists.txt中的sample编译部分注释掉,
#if (${CMAKE_SYSTEM_NAME} MATCHES Linux)
#  add_subdirectory(sample/platform/linux)
#endif()

然后对OSDK进行编译安装(参考官方文档)
3)重新配置项目的CMakeLists.txt,将OSDK与websocketpp包含进去。
OSDK部分,参考sample下的CMakeLists.txt修改即可,不过我发现部分link_libraries不起作用,得放到target_link_libraries中:

#link_libraries(dji-lin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值