大疆社区

标题: OSDK常见问题汇总(持续更新) [打印本页]

作者: DJI-DEV    时间: 2021-2-23
标题: OSDK常见问题汇总(持续更新)
本帖最后由 DJI-DEV 于 2021-4-7 15:16 编辑

高级视觉相关
1. OSDK 4.0.1依赖的FFMPEG 版本?
OSDK 及demo依赖的ffmpeg版本为:2.8.15
注:OSDK的ffmpeg使用实际用于demo进行显示和使用,因ffmpeg不同版本使用的解码API变动,版本不一样可能导致编译不过,如有能力可以直接修改demo中的解码部分,不影响OSDK底层库的使用。

2. OSDK是否支持更改或设置视频流分辨率?
当前OSDK不支持更改或设置获取视频流的分辨率,OSDK获取到的视频分辨率根据
相机类型是固定的
X5S X7 Z30 是720p
H20/H20T 是1080p

3. H20系列相机如何通过OSDK更改获取的视频流来源?
H20系列相机的视频流来源有广角、变焦、红外,可以通过 changeH264source 来进行设置

4. OSDK获取H20视频是否支持OSDK和RC不同数据源?
不支持,当使用OSDK changeH64source API时,遥控器获取到的视频流会随之改变

5. ROS 平台尝试读取/dji_osdk_ros/fpv_camera_images的数据时,没有得到相应的数据输出,如何排查?
OSDK linux/ROS 获取视频流是通过USB链路进行数据传输,排查步骤:
1、检查ACM设备是否成功识别(双A-USB连接飞机和机载计算机)
2、ifconfig 检查本地端是否给ACM设备分配IP (M210:192.168.42.3,M300:192.168.44.3)
3、ping飞机端IP(M210:192.168.42.2,M300:192.168.44.2)
ping通之后,再测试视频流。

6. XT2/XT S的热成像数据是否支持通过OSDK获取?
OSDK高级视觉功能仅支持获取视频流图像,不支持获取具体温度数据。

7. M300主节点中/dji_osdk_ros/stereo_240p_down_front_images无数据
该TOPIC用于M210系列无人机获取视觉图像信息,M300 ROS 暂缺少该部分demo,可以参考Linux demo及调用接口进行操作:
https://github.com/dji-sdk/Onboa ... new_sample/main.cpp


飞行控制相关
1. flightctrl API设置YAWAngle参考的坐标系
flightctrl API设置YAWAngle时只能使用大地坐标系。


2. OSDK中有没有直接停机的接口,就是直接让电机停止转动?
OSDK提供紧急停止电机API:killSwitch
紧急制动API:emergencyBrake
区别:emergencyBrake结果为悬停,killSwitch为主动关机坠机。(开发测试时建议在模拟器中充分模拟)
参考代码文件: dji_control.hpp


相机云台相关

1. OSDK如何获取云台相机设备型号?
M300支持的相机类型可以通过以下API获取:
std::string getCameraVersion(PayloadIndexType index);
获取相机名为:
H20,Z30,XT2

2. OSDK4.0.1中,有切换遥控器中广角、红外、变焦相机画面的API吗?
OSDK 4.0.1中提供beta版本API:LiveViewErrCode changeH264Source(LiveViewCameraPosition pos, LiveViewCameraSource source);


3.OSDK 能获取到拍照的照片到机载计算机吗?
OSDK 4.x版本搭配M300,支持获取相机中的照片或文件信息,推荐使用OSDK4.1及以上版本

飞行任务相关
1. 航点任务设置trace_mode = TRACE_COORDINATED时报错是什么原因?
OSDK航点任务trace_mode = TRACE_COORDINATED时,需要对应
设置damping值,该值最小值为0.2


2.为什么OSDK控制飞行航点任务上传报错超出距离限制?
1、OSDK控制飞行,起飞时检查遥控器和APP连接,若未连接遥控器
和APP起飞,将有半径50m,高30m的飞行区域限制。超过该距离将悬停
,航点任务超出该范围,上传任务点时将报错。
2、飞机起飞检测后,飞机重启起飞时需重新检查
3、A3/N3无此限制,M600/M210/M300有此限制


3. 为什么waypoint v2执行航点动作乱序?
waypoint v2功能建议使用4.1及以上版本,单个航点有多个actions时,不要设置协调转弯模式,否则可能出现航点动作乱序。


4. OSDK 3.9中如何设置航点动作?
可以通过设置WayPointSettings的 commandList 和 commandParameter 实现航点动作,其中 commandList 代表航点动作的列表

OSDK 3.9代码中缺少该部分注释说明,OSDK 4.x版本中已经添加,参考如下:
typedef enum WaypointActionTypeFormat
{
  WP_ACTION_STAY                 = 0,  /*!< no action.uint of action parameter:ms*/
  WP_ACTION_SIMPLE_SHOT          = 1,  /*!< take picture action.action parameters Action parameter have no effect.limit time:6s*/
  WP_ACTION_VIDEO_START          = 2,  /*!< start take video action.action parameters Action parameter have no effect.limit time:6s*/
  WP_ACTION_VIDEO_STOP           = 3,  /*!< stop video action.action parameters Action parameter have no effect.limit time:6s*/
  WP_ACTION_CRAFT_YAW            = 4,  /*!< craft control yaw action.uint of action parameter:degree. range:-180 ~ 180*/
  WP_ACTION_GIMBAL_PITCH         = 5,  /*!< gimbal control pitch action.uint of action parameter:degree. range:-90 ~ 0*/
} WaypointActionTypeFormat;








作者: sunransd    时间: 2021-4-15
老师,您好,请问OSDK-ROS支持在执行前一个命令的过程中中断进行下一个命令,比如在执行由四个航点构成的航线的过程中,在无人机往第三个航点飞行前进的时候,可以发送一个命令使无人机返航或降落吗
作者: JQG    时间: 2022-7-13
sunransd2021-4-15 16:53
老师,您好,请问OSDK-ROS支持在执行前一个命令的过程中中断进行下一个命令,比如在执行由四个航点构成的航线的过程中,在无人机往第三个航点飞行前进的时候,可以发送一个命令使无人机返航或降落吗
可以的正常降落和返航就行
作者: 仓鼠拒绝在南京贴地飞行    时间: 9-19 18:57
请问下可以通过nvidia的开发套件来调用M300搭配的H20T相机吗?包括拉流,控制等等




欢迎光临 大疆社区 (https://bbs.dji.com/) Powered by Discuz! X3.2