云台管理 

您所在的位置:网站首页 大疆6020电机是怎么记录位置的 云台管理 

云台管理 

2024-07-13 01:56| 来源: 网络整理| 查看: 265

概述

使用OSDK开发的应用程序能够在无人机飞行的过程中,按照指定的逻辑控制云台的角度。

基础概念 云台角度 云台关节与云台关节角

云台的关节如图1.云台关节 所示,云台关节是云台上带动负载设备转动的结构件:云台电机,云台关节角即云台电机转动的角度。本教程使用机体坐标系描述云台的关节角。

图1.云台关节

云台姿态与云台姿态角

云台的姿态如 图2.云台姿态 所示,根据用户的控制指令,云台能够调整姿态;云台姿态角即使用大地坐标系(NED,北东地坐标系)描述云台上负载设备的角度,该角度也称为欧拉角。

图2.云台姿态

云台控制

控制方式

绝对角度控制:使用OSDK 开发的云台根据用户的指令,在规定的时间内,从当前的位置转动到指定的位置。 速度控制:用户可控制使用OSDK 开发的云台的转动速度。

说明

在角度控制模式下,云台转动的时间受云台最大旋转速度和最大加速度限制,实际的转动角度受云台限位角度的限制。 在速度控制模式下,云台根据用户指定的速度转动0.5s,当云台转动到限位角时,将会停止转动。

云台模式:目前OSDK 的云台控制功能仅支持自由模式,在该模式下,当无人机的姿态改变时,云台将不会转动。

云台状态信息

使用OSDK 开发的应用程序能够获取指定云台当前的信息,详细信息请参见OSDK API 文档。

使用云台管理功能 1. 云台控制功能模块初始化

使用“云台控制”功能前,需要调用云台控制功能的类GimbalManagerSyncSample,创建云台控制功能的对象并初始化指定的云台。

GimbalManagerSyncSample *g = new GimbalManagerSyncSample(vehicle);ret = vehicle->gimbalManager->initGimbalModule(PAYLOAD_INDEX_0, "Sample_gimbal_1");if (ret != ErrorCode::SysCommonErr::Success){ DERROR("Init Camera module Sample_gimbal_1 failed."); ErrorCode::printErrorCodeMsg(ret);}ret = vehicle->gimbalManager->initGimbalModule(PAYLOAD_INDEX_1, "Sample_gimbal_2"); 2. 获取云台的状态信息

创建云台控制功能的对象并初始化指定的云台后,即可获取用户指定的云台的信息。

DSTATUS("Current gimbal %d angle (p,r,y) = (%0.2f°, %0.2f°, %0.2f°)", PAYLOAD_INDEX_0, g->getGimbalData(PAYLOAD_INDEX_0).pitch, g->getGimbalData(PAYLOAD_INDEX_0).roll, g->getGimbalData(PAYLOAD_INDEX_0).yaw); 3. 控制云台转动

通过GimbalManagerSyncSample中指定的接口控制云台的姿态。

GimbalModule::Rotation rotation; rotation.roll = 0.0f; rotation.pitch = 25.0f; rotation.yaw = 90.0f; rotation.rotationMode = 0; rotation.time = 0.5; g->rotateSyncSample(PAYLOAD_INDEX_0, rotation); 4. 云台回中

使用OSDK 开发的应用程序支持将云台的俯仰轴和偏航轴转动至中位。

g->resetSyncSample(PAYLOAD_INDEX_0);


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3