c++ - 在无 GPS 环境下使用 flightCtrl
问题描述
我正在为 Matrice600Pro 开发 osdk 应用程序。
我想在较差的 GPS 环境下使用 flightCtrl(例如:桥下)
我对此有一些疑问:
- 我可以只使用 HORIZONTAL_ANGLE 或 HORIZONTAL_ANGULAR_RATE 标志进行水平控制吗?这是否意味着我必须根据目标速度和无人机重量来计算无人机角度?(我想以米/秒为单位控制无人机速度)
- 当我编写如下代码时,我的无人机在良好的 GPS 条件下旋转良好,但不在桥下。我只想用这个代码旋转无人机:
uint8_t ctrl_flag = ( Control::VERTICAL_VELOCITY | Control::HORIZONTAL_VELOCITY | Control::YAW_ANGLE | Control::HORIZONTAL_BODY | Control::STABLE_ENABLE);
Control::CtrlData data(ctrl_flag, 0, 0, 0, targetYaw);
gVehicle->control->flightCtrl(data);
是Control::HORIZONTAL_VELOCITY
flag造成的吗?在 gps 条件差的情况下,此代码是否可以与其他标志一起使用?(即:HORIZONTAL_ANGLE)(我现在无法测试)
解决方案
推荐阅读
- sql - 当 Value MINUS Null 时显示 Value 而不是 Null
- java - 使用代码将 Gif 图像保存在图库中?
- javascript - execCommand('insertHTML') 占用了空间
- python - 安装软件包后 Conda 冲突未解决
- c++ - 你能从 `volatile const char*` 构造一个字符串吗?(不使用`const_cast`)
- javascript - Clouse vs Non-Closure Function + `this`?
- javascript - 如何使用 jquery/javascript 限制 ckeditor textarea 中第一个位置的空间
- python - Dockerfile 无法复制 & Docker-compose 卷不与容器同步
- java - 使用 DOMAIN(+ 用户名+密码)身份验证在 Java 中调用 REST 服务 url
- plasticscm - 如何将所有更改从塑料应用到 Git