Fields2Cover/Fields2Cover
Robust and efficient coverage paths for autonomous agricultural vehicles. A modular and extensible Coverage Path Planning library
解决的问题
Fields2Cover 旨在解决自主农业车辆的覆盖路径规划(CPP)问题。它确保车辆能够覆盖田地的每个部分,同时最小化效率损失,并确保路径在机器人物理约束下实际可行驶。
工作原理
该库使用模块化流程,将田地定义和车辆规格转换为完整路径。此过程包含多个可互换的模块:
- 边界路径生成:创建田地的边界路径。
- 条带生成:确定车辆必须遵循的平行线(条带)。
- 路线规划:使用 OR-tools 或经典模式(蛇形、螺旋形、牛耕形)等工具,优化条带的访问顺序。
- 路径规划:生成最终可行驶路径,包括使用 Dubins 和 Reeds-Shepp 曲线实现的运动学可行转弯。
通过梯形分解和牛耕形分解处理复杂、非凸的田地和障碍物。
适用对象
主要面向从事自主农业设备和农业机器人研究与开发的研究人员和开发者,提供一个标准化框架,用于实现和比较不同的覆盖路径规划算法。
特色亮点
- 模块化架构:从边界路径到路径规划的所有步骤均为可互换模块。
- 运动学可行性:使用 Dubins 和 Reeds-Shepp 曲线,确保转弯在车辆物理上可行。
- 多语言支持:使用 C++17 编写,并提供 Python 绑定以方便使用。
- 复杂田地处理:通过几何分解支持非凸田地和障碍物。
- ROS 2 集成:通过 opennav_coverage 服务器与 ROS 2 兼容。
相关
- 项目
- 项目
- 项目
- 项目
- 项目