DJI M210+Onboard-SDK(OSDK)开发——(四)运行ERROR及解决办法

本系列博客用于记录如何利用DJI M210OSDK进行上位机的算法开发,以及开发过程中遇到的问题。
基础内容来自OSDK的开发官网,同时加入了自己的理解。

ERROR 1: 在运行stereo-vision-single-thread-sample时报错:Failed to open selected camera

可能原因:

图像从DJI无人机到上位机的网络通信不畅通。图像通过白色的USB线传到TX2上,其对应的口一般是 /dev/ttyACM0。首先判断程序是不是找不到这个口:
注意,

检查确认:

ifconfig
在这里插入图片描述
注意到第一个连接enp0s20u1,它代表的是DJI无人机。但是它的IP地址不正确。

解决方法:

创建一个连接,选择DJI设备
在这里插入图片描述
输入Address:192.168.42.3, Netmask:255.255.255.0, Gateway 192.168.42.1
在这里插入图片描述
通过该设置连接即可。

ERROR 2: 运行Linux例程时 Failed to open MAIN_CAMERA

可能原因1:

开启了ROS主节点。不能同时运行ROS节点和Linux例程。

解决办法:

把ROS主节点关掉即可。

ERROR 3: 运行ROS程序时can’t find yaml

原因:在当前路径下找不到m210_stereo_param.yaml文件
解决方法:
  • 对于Linux方式而言,把yaml文件拷到/build/bin下面即可(yaml 在src路径下)。
    然后正常执行。
    ./stereo-vision-depth-perception-sample UserConfig.txt m210_stereo_param.yaml
  • 对于ROS节点而言,不能只给出文件名
    rosrun dji_sdk_demo demo_stereo_depth_perception m210_stereo_param.yaml
    还要给出文件的位置
    rosrun dji_sdk_demo demo_stereo_depth_perception /home/zzy/cy_ws/src/Onboard-SDK-ROS-3.7/dji_sdk_demo/yaml/m210_stereo_param.yaml

ERROR 4: Unable to read from MAIN_CAMERA lost, retry connecting

解决办法:

把遥控器打开。目前只有和主相机相关的例程运行时需要开遥控器。

ERROR 5: 一连TX2,X5S相机就死机(屏幕变灰色)的问题

现象:

Onboard-SDK-ROS-3.8.1,飞机的白色视频线连接TX2后,平板上就无法显示相机图像。此时遥控器仍然可以控制云台转动。

原因1:可能是飞行器固件版本的问题。

可能是飞行器固件版本和Onboard-SDK以及Onboard-SDK-ROS支持的版本不对应,也可能是飞行器固件版本和遥控器固件版本不对应。(参见之前的博客https://mp.csdn.net/mdeditor/88776763#)

原因2:Onboard-SDK-ROS-3.8.1的固有问题,对于M210 V2正常现象。

可能是现在的固件还不是很完善,在和大疆的dev团队交流后,他们说这是正常现象,只要运行例程,就可以通过OSDK订阅得到相机的图像。亲测有效。

ERROR 6: 无人机未激活的问题 NEW_DEVICE_ERROR

##### 现象:

  1. 出现该错误说明您使用的账号与上次飞行器被激活账号信息不同,您需要重新激活飞行器

  2. 您需要在运行sample的时候打开DJI GO或者Pilot,并且将飞行器连接DJI Assistant 2调参软件(请确保DJI GO或Pilot以及DJI Assistant 2已连接上互联网)

  3. 您可能需要尝试多次运行sample,飞行器才会被激活。飞行器被您的账号激活后,您之后的使用不需要再进行激活操作(飞行器不被其他账号重新激活的前提下)。
    (搬运自https://djisdksupport.zendesk.com/hc/zh-cn/articles/360023567413-)

ERROR 7: cannot open device /dev/ttyUSB0

在这里插入图片描述

  1. 核实是否有插入串口设备,对应的设备号是否为ttyUSB0,若不是ttyUSB0您需要在UserConfig.txt进行修改。
  2. 核实是否串口线的TX和RX端接反了。如https://mp.csdn.net/mdeditor/88776561#所述,官网中M210 V2的接线是画错的。因此不妨反过来接试一下。一般串口线上都有指示灯,上电以后红灯亮,如果通了的话蓝灯也会亮。

(搬运自https://djisdksupport.zendesk.com/hc/zh-cn/articles/360023567413-)

ERROR 8: Unable to initialize some vehicle components!

在这里插入图片描述

  1. 说明您在硬件连接以及软件设置上有问题

  2. 检查您是否忘记在DJI Assistant 2中的SDK分页里勾选”使能API控制“

  3. 检查你UserConfig.txt文件中设置的波特率是否和DJI Assistant 2中设置的一样

  4. 检查您的接线是否正确,是否有接线松动或者接反

  5. 是否有其他程序在占用串口

  6. 之前是否忘记执行sudo usermod -a -G dialout $USER 去获取权限

  7. 您的串口或者USB转TTL模块是否支持当前设置的波特率
    (搬运自https://djisdksupport.zendesk.com/hc/zh-cn/articles/360023567413-)

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值