立项背景和目标:针对复杂的城市及森林场景,实现无人机的自主导航飞行
软件功能和核心功能模块:主要包含通信模块、任务管控模块、定位模块、感知模块、规划控制模块、故障诊断及安全模块等
业务流程和功能路径描述:通过地面指控下达任务,机载端通信模块接收到任务指令后,通过任务管控模块进行简单的拆分并以全局航点的方式发送给规划控制模块,规划控制模块根据全局航点、导航模块提供的定位信息、感知模块提供的局部地图信息,进行精细的规划,控制无人机在低空环境下自主的避障飞行,故障诊断及安全模块实时监控无人机自身的导航状态及硬件信息,保证无人机飞行的安全性。
1、将整个框架划分成模块实现,标准化接口,减少各个模块的耦合性,主要基于ros机器人框架开发
2、主要负责以下模块
通信模块:将组播、串口、单播使用抽象类接口进行封装,将通信与数据解析封装解耦,数据解析封装以插件的形式,支持后续多协议的使用;
规划模块:主要基于开源算法进行修改
任务管控模块:基于C++工程类、多态和委托等特性来实现。
3、遇到的难点:主要是前期架构的设计,主要靠功能架构图及UML类图分析理清楚;其次是通信接口的统一也是其中难点:主要根据业务场景,主要涉及的交互内容进行整理迭代。