2023 年 9 月到 2025 年 3 月期间,我跟随课题组参与了国家重点研发计划项目:空地异构平台协同的室内导航与侦测。
我在其中主要完成了两个方面的工作:
- 规划模块下的自主状态机定义与开发;
- 局部地图构建与全局路径生成。
规划模块的自主状态机定义与开发
规划模块下主要包含几个关键的状态:起飞、路径规划、航迹执行、返航。我在这一部分的工作便是定义这些关键状态以及对应的切换逻辑。
由于规划模块运行的过程中,与环境探索、地图构建等内容均有关联,为了实现持续的状态跟踪与切换,使用了基于 ROS 的时间回调函数以持续执行状态机。
无人机在接收到探索模块发回的局部目标点后,状态机自主切换到路径规划模块,通过前端的路径生成以及后端的航迹优化,获得一条平滑、可执行的无人机航迹,并交由控制器执行;此时,状态机自主切换到航迹执行模块。在航迹执行的过程中,无人机不断感知周围环境,探索模块解算获得仍需探索的目标点。通过不断循环与控制,实现无人机自主导航与控制流程,并最终完成位置区域的探索与点云地图构建。
局部地图构建与全局路径生成
无人机感知环境的设备,我们选用了 Livox 的 MID360,可以快速获得周围的点云数据。在读取环境点云信息后,经过降采样与栅格化构建局部栅格地图,能够实现对周围地图障碍信息的快速读取与判断。
在构建的局部栅格地图的基础上,不断更新地图信息,进而可以获得全局栅格地图信息,并作为最终点云配准和拼接的先验地图。考虑到前后段计算资源分配不均,后端的优化实时性不足,成为制约路径规划模块时间的主要因素。在前段的路径生成部分,我选用了基于 Kinodynamic Astar 算法的路径生成算法,通过考虑无人机的三价质点模型,预先实现轨迹对于速度、加速度的约束,以此降低后端航迹优化的计算压力。