DJI Onboard-SDK-ROS-4.0.1 在妙算2-G上编译运行
编译ROS工程前先按照DJI OSDK4.0.1在妙算2-g上编译运行文章中描述的方法将OSDK-4.0.1编译成功。
Onboard-SDK-ROS-4.0.1 项目地址: https://github.com/dji-sdk/Onboard-SDK-ROS/tree/4.0
妙算2-G操作系统为ubunut16.04,ROS版本为Kinetic
1.安装nema-comms:
使用如下命令安装nema-comms
sudo apt install ros-kinetic-nmea-comms
说明: 在ROS 系统上使用高级视觉功能时,请务必安装nema-comms。
2.编译
在上述项目地址下载项目源码的压缩包,并解压到工作空间中。
在工作空间下用catkin_make
编译
3.运行例程
以fligt_control_node 例程为例
3.1 测试准备
默认情况下,无人机插着USB口是无法起飞的,进入OSDK-4.0.1目录,使用M210ConfigTool工具使能usb-connected-flight:
cd Onboard-SDK-4.0.1/utility/bin/armv8/64-bit
./M210ConfigTool --usb-port /dev/ttyACM0 --config-file UserConfig.txt --usb-connected-flight on
室内测试时,飞机无法定位,使用仿真模式
将尖括号中的内容换成实际的经纬度数值
./M210ConfigTool --usb-port /dev/ttyACM0 --config-file UserConfig.txt --simulation on --latitude <latitude_value> --longitude <longitude_value>
3.2 启动OSDK_ROS节点
修改Onboard-SDK-ROS-4.0.1/launch/
目录下的dji_vehicle_node.launch
文件:
设置acm_name
为/dev/ttyACM0
serial_name
为/dev/ttyTHS2
baud_rate
为无人机串口的波特率
app_id
和enc_key
分别为自己在DJI开发者中心创建的app_id和enc_key
其他项无需修改
注:
不要修改launch文件中节点的name
属性,在OSDK-ROS-4.0.1版本中,节点启动读取参数时使用的是全局参数,命名空间直接写成了vehicle_node
,后续版本可能会改进。
启动OSDK与DJI无人机飞控沟通的主节点 dji_osdk_node
:
cd catkin_ws && source devel/setup.bash
roslaunch dji_osdk_ros dji_vehicle_node.launch
3.3 启动fligt_control_node节点
cd catkin_ws && source devel/setup.bash
rosrun dji_osdk_ros flight_control_node
3.4 若使用3.8.1版本的接口
4.0.1版本取消了订阅话题的接口,这对于直接对M210进行速度控制很不便,所以控制无人机速度的话还是要使用3.8.1版本的接口的。
首先把UserConfig.txt复制到~/.ros
目录下。
- 启动dji_sdk_node
roslaunch dji_osdk_ros dji_sdk_node.launch
- 启动控制节点
启动对应3.8.1版本的控制节点就可以了。
程序中要把#include<dji_sdk/dji_sdk.h>
改为#include<dji_osdk_ros_obsoleted/dji_sdk/dji_sdk.h>
把消息类型中dji_sdk::
改为dji_osdk_ros::
把话题名和消息头文件中dji_sdk/
改为dji_osdk_ros/
DJI Onboard-SDK-ROS-4.0.1 在妙算2-G上编译运行相关推荐
- DJI 无人机 Onboard SDK ROS 功能包demo运行
DJI 无人机 Onboard SDK ROS 功能包demo运行 demo功能 准备测试环境 运行 dji sdk 节点 运行 demo 节点 自动飞行任务 航点自动飞行 兴趣点环绕自动飞行 飞行控 ...
- 搭建DJI 无人机Onboard SDK ROS开发环境及测试
搭建DJI 无人机Onboard SDK ROS开发环境及测试 功能包简介 开发环境搭建 测试功能包 连接设备 启动SDK 功能包简介 ROS功能包名称:dji_sdk 功能包功能:用于DJI 板载S ...
- 大疆无人机二次开发进阶-DJI mobile SDK和DJI onboard SDK联合开发行业应用项目
PS:最近又涉及该项目,增加部分没写内容,记录下详细步骤. 上一篇文章讲到了怎么使用DJI mobile SDK,这次主要讲解DJI mobile SDK和DJI onboard SDK联合开发. a ...
- linux wine运行效率,Wine 3.0让Windows应用在Linux上流畅运行!
[IT168 资讯]就在最近,VirtualBox中对Linux发行版的支持随着Linux内核4.16的发布而变得更好. 但是,如果你希望在Linux系统上运行Windows应用程序呢?为此,Wine ...
- ACE6.2.0在vs2010上编译运行(win7)
官网下载源码 vs2010打开解决方案 VC10.sln 选择ace点生成 dubug版和release版 使用时注意: debug版的应用程序使用dubug版的ace库 release版的使用rel ...
- 大疆经纬M100无人机的组装以及Onboard SDK的安装
前段时间一直在搞在M100上搭载处理器,并且用大疆官方的Onboard SDK来进行开发,所以就记录一下,免得过段时间忘记了.先上一张M100的图(来源于大疆官网): 一.硬件介绍 1.首先介绍大 ...
- 开发自己的DJI四旋翼无人机(A3飞控Onboard SDK和Mobile SDK介绍)
大疆作为无人机行业的佼佼者,其应用范围从户外旅行.拍照到影视拍摄,以及工业运用都有着极高的地位.那么,我们如何仅仅使用大疆的飞控来开发出我们自己的无人机呢? 首先,你需要如下的东西: 以及相应的机架, ...
- Onboard SDK文档
目录 Onboard SDK综述... 1 1. 简介... 1 1.1硬件支持... 1 1.1.1产品类别... 1 1.1.2组成部分... 2 1.1.3支持产品... 3 1 ...
- Onboard SDK的使用
注意事项 在实际测试或执行飞行任务前,先在DJI Assistant 2 中模拟使用DJI OSDK 开发的应用程序. 在使用OSDK 开发应用程序或测试基于OSDK 开发的应用程序时,取下无人机上的 ...
- 大疆无人机M100的onboard sdk开发-激活(QT平台)
1.这篇主要围绕osdk的M100激活进行展开,M100要进行OSDK开发,第一步就是现将设备激活,才能通过SDK对它进行控制: 一.硬件条件: 1.通过usb接口连接dji assistant,视频 ...
最新文章
- Oracle sql语句执行过程图文分析
- 关于mysql行级锁中MVCC的一些理解
- 陈炳藻用计算机研究,计算机闯入“大观园”
- 携程编程大赛 (预赛第二场)第一题【剪刀石头布】
- 【Kafka】kafka Removed ✘✘✘ expired offsets in ✘✘✘ milliseconds.
- 【BZOJ】2599: [IOI2011]Race 点分治
- warpctc error
- mybatis-plus中like的使用说明
- 计算机组成原理计算tag,计算机组成原理计算题
- git回滚到之前代码
- maven 压缩html,YUI Compressor Maven插件压缩 js、css并输出war包
- 卷积、转置卷积、可分离卷积、分组卷积、空洞卷积的理解
- 虚拟机中安装linux系统步骤
- 详解 Benders 分解与一个算例的 python 代码
- 利用httpd服务搭建wordpress、phpmyad及discuz平台
- NUCLEO STM32H743购买和使用说明
- 外汇交易的高风险行为应该如何防范?
- 桌面计算机不显示桌面,电脑不显示桌面怎么办,电脑无法显示桌面
- python百度贴吧图片爬取
- 盛大电子书难逃盛大盒子厄运