DJI 无人机Onboard SDK ROS 功能包环境搭建

ROS功能包名称:dji_sdk

功能包功能:用于DJI 板载SDK的ROS版本

OSDK 是一个用于开发无人机应用程序的开发工具包,基于OSDK 开发的应用程序能够运行在机载计算机上(如Manifold 2),开发者通过调用OSDK 中指定的接口能够获取无人机上的各类数据,经开发者设计的软件逻辑和算法框架,执行相应的计算和处理,生成对应的控制指令控制无人机执行相应的动作,实现如自动化飞行、负载控制和视频图像分析等功能。

本篇博客讲解如何搭建开发环境

开发环境搭建

下载 Onboard-SDK-ROS
git地址:https://github.com/dji-sdk/Onboard-SDK-ROS

下载指定分支命令
git clone -b 分支名+仓库地址

具体指令如下:

git clone -b 3.8 https://github.com/dji-sdk/Onboard-SDK-ROS

在这里插入图片描述
放到ROS的工作空间中,进行编译

catkin_make

编译的时候,会检测依赖库,检测到没有Onboard-SDK的时候会自动下载,这时候会花费些时间
在这里插入图片描述
自动下载完成后,会在功能包里,出现两个文件夹:Onboard-SDK-3.8.1、Onboard-SDK-3.8.1-build
在这里插入图片描述
中间还会安装一些依赖的库,所以会慢些,等到最后报了一个这样的错误:

CMake Error at /home/jk-jone/jone_ws/devel/share/dji_sdk/cmake/dji_sdkConfig.cmake:197 (find_package):
Could not find a package configuration file provided by “nmea_msgs” with
any of the following names:
nmea_msgsConfig.cmake
nmea_msgs-config.cmake
Add the installation prefix of “nmea_msgs” to CMAKE_PREFIX_PATH or set
“nmea_msgs_DIR” to a directory containing one of the above files. If
“nmea_msgs” provides a separate development package or SDK, be sure it has
been installed.
Call Stack (most recent call first):
/opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package)
Onboard-SDK-ROS/dji_sdk_demo/CMakeLists.txt:10 (find_package)

这个好办,就是缺少nmea_msgs包的依赖,下载就行,指令如下:

sudo apt-get install ros-noetic-nmea-msgs

其中的noetic需要根据自己ros的版本进行替换

然后再次编译

编译成功!
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_32761549/article/details/128906310