系列文章目录

第一章 飞行机器人(一)DJI平台OSDK简介

飞行机器人(一)DJI平台OSDK简介_Techblog of HaoWANG-CSDN博客
DJI OSDK/OSDK-ROS for M600Pro技术文档 Version 2.1.1
https://haowang.blog.csdn.net/article/details/122336345


目录

系列文章目录

1. 机载设备USB2TTL串口接线方法

2. OSDK 源码编译

3. catkin_make编译osdk_ros3.8.1

4. OSDK版本


1. 机载设备USB2TTL串口接线方法

(#更新 2021-12-17 端口配置与硬件连接)

  1. 连接windows电脑usb,进而利用Assistant2 - M来进行执行仿真模拟;
  2. 使用USB-TTL的转接线才能连接到Ubuntu 机载计算设备(Jetson Xavier NX)的USB插口上;

USB2TTL

C. Ubuntu机载设备USB2TTL连接M600Pro A3 Pro飞控串口

查看USB2TTL端口地址:

ls /dev/ttyUSB*

/dev/ttyUSB0,注意:由于jetson xavier xn上位机的USB串口设备不止一个,具体的端口地址 /dev/ttyUSBX必须以具体的物理器件地址编号为准。

修改usb端口方法:

Linux系统固定USB串口设备名称_WCH_TechGroup的博客-CSDN博客_linux串口设备名称

ttyUSB端口永久权限设置:

参考Linux设置串口永久权限_氢键H-H-CSDN博客_linux串口权限永久

  1. 单次获取端口权限

$ sudo chmod 777 /dev/ttyUSB0

  1. 永久获取端口权限

$ ls -l /dev/ttyUSB0

$ whoami

$ sudo usermod -aG dialout {userName}

重启系统,端口永久权限即可生效。

D. WIN连接飞行器平台调参端口,Linux上位机直连飞控通信端口

注意事项:

①最好跑程序的时候就提前将遥控器打开,并拨到F挡位。注意把无人机旋翼收起来(尽管它也飞不起来)

②使用Onboard SDK前,注意将Ubuntu(执行时不需联网,但是下载onboardSDK时需要联网)通过USB-TTL连接A3飞控,遥控器连接手机,手机连网,windows电脑(联网)连接Micro-USB,首次执行Samples时会在软件DJI Assistant2上面要登陆进行激活。

③注意在Windows电脑下打开Assistant2时选择SDK,并勾选启动API控制,波特率调整和上面UserConfig.txt中填写的一致。调完波特率之后需重新启动一下无人机A3飞控。


2. OSDK 源码编译

  1. 编译&安装OSDK 4.1.0版本不兼容 M600

  • 删除旧版本文件

Sudo xargs rm < install_manifest.txt

获取OSDK App

开始使用OSDK - DJI Onboard SDK Documentationhttps://developer.dji.com/cn/onboard-sdk/documentation/quickstart/integrateOSDK.html

  1. 编辑UserConfig.txt


 

3. catkin_make编译osdk_ros3.8.1

dji_sdk_node.launch文件

<launch>
 
    <node pkg="dji_osdk_ros" type="dji_sdk_node" name="dji_sdk" output="screen">
 
    <!-- node parameters -->
 
    <param name="acm_name" type="string" value="/dev/ttyACM0"/>
 
    <param name="serial_name" type="string" value="/dev/ttyUSB0"/>
 
    <param name="baud_rate" type="int" value="921600"/>
 
    <param name="app_id" type="int" value= "12345"/>
 
    <param name="app_version" type="int" value="1"/>
 
    <param name="align_time" type="bool" value="false"/>
 
    <param name="enc_key" type="string" value="abc123"/>
 
    <param name="use_broadcast" type="bool" value="false"/>
 
    <param name="dxc" type="bool" value="false"/>
 
    </node>
 
</launch>
  1. 配置APP id & Key
app_id : 
 
app_key : 
 
device : /dev/ttyUSB0
 
baudrate : 921600
 
acm_port : /dev/ttyACM0

4. OSDK版本

3.9.0版本

OSDK版本-3.8.1

RELEASE NOTEs for OSDK 3.9.0 and OSDK 3.8.1

DOC dji_sdk - ROS Wiki

ENU Doc : Coordinate Systems

原文链接:https://haowang.blog.csdn.net/article/details/122336645