Skip to content

FlyBytes/ardrone_controller_c

Repository files navigation

ardrone_controller_c

ARDrone controller using c++

无人机控制类

文件列表

  • Ardrone.cpp

无人机的类实现

  • Ardrone.h

无人机的类声明

  • Float2Int_Union

浮点型与整型的联合体

  • Main.cpp

主控制函数

  • MemoryLibrary.h

读二进制信息的函数库(不需要读懂,只要会用即可)

  • NavigationData_Struct.h

导航数据的结构体

功能说明

  1. 能获取无人机导航数据包大小并显示无人机电量
  2. 不能控制无人机飞行,需要另写消息响应函数
  3. 无UI界面

代码测试

  1. 在VS2012中新建控制台程序的空项目
  2. 把所有文件拷贝到工程目录下
  3. 在vs项目中新建现有项
  4. 把主机连接无人机的wifi(非常重要)
  5. 运行程序
  6. 若连接正常,且持续接收显示导航数据包大小,并持续发送唤醒指令,则通过测试;否则不通过。

下一步工作

  1. 调试程序,通过初级测试
  2. 理解代码逻辑与系统工作流程
  3. 增加键盘消息响应模块
  4. 测试基本飞行函数:takeoff,flyUp...等函数
  5. 增加UI模块:显示无人机导航数据
  6. 增加无人机旋转功能,
  7. 测试无人机任意角度飞行,如:实现往东偏南20度飞行等

更新版本

2015.7.8

更新了2个文件:Ardrone.cpp 和 Main.cpp

  1. 排除 last_at_cmd_ 成员变量内存泄露的情况
  2. 增加代码错误报告与错误定位
  3. 增加项目代码注释

2015.7.12

更新了所有文件

  1. 纠正 last_at_cmd_ 成员变量内存泄露的预测,不存在内存泄露
  2. 增加代码错误报告与错误定位
  3. 增加大量的函数注释,增加函数编写解释,引用开发手册的页码
  4. 统一了注释规范,几乎所有函数都有一个统一格式的注释,在main文件中有注释说明
  5. 注释规范如下:
/**
* 复杂函数注释介绍
* (空行)
* @解释:
* @param: 参数1 % 注释
* @param: 参数2 % 注释
* (空行)
* @return: 返回值 % 写出在什么情况下,返回什么值
* @author: 函数作者
* @updated: 修改者1
* @updated: 修改者2
* @update: 最近一次修改时间
**/

About

ARDrone controller using c++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published