智慧农牧渔 · 无人机集群

基于 MoonBit 的轻量级无人机集群任务规划、协同控制与评估算法库
面向农田巡检、农药喷洒、牧场巡查、水域监测等真实场景

MoonBit22/22 测试通过11,292 行代码

✨ 核心功能

🧭 A* 路径规划

网格地图最短路径搜索,支持障碍物避让和曼哈顿启发式

🎛️ PID 控制器

完整 P/I/D 三环调节,支持积分钳位和 dt 参数

🚁 集群评估

集群中心、分散度、方向一致性、任务进度四维指标

📡 确定性仿真

多无人机状态管理、时间步进、事件日志,可复现仿真

🌾 农牧渔插件

农田建模、喷洒辅助、覆盖分析、天气/地理围栏判断

🧪 单元测试

30+ 测试用例覆盖核心算法,全部通过

代码

🏗️ 分层架构

⑥ 监测评估层telemetry · sensor · event_log · swarm
⑤ 规划执行层path_planning · route · coverage · spray
④ 任务系统层mission · scheduler · command · control
③ 无人机与机队层drone · fleet · battery · payload · maintenance
② 环境建模层field · weather · obstacle · geofence
① 算法基础层vector · matrix · geometry · pid · astar · utils
# 1. 创建项目
		moon new my_agri_project
		cd my_agri_project

		# 2. 添加 AgriDroneSwarm 库
		moon add liushiman1222/AgriDroneSwarm

		# 3. 在 main.mbt 中使用
		import { Vector3D, PID, Point, a_star } from "liushiman1222/AgriDroneSwarm"

		fn main {
			let v = Vector3D::new(1.0, 2.0, 3.0)
			println("向量长度: \{v.length()}")
		}

		# 4. 运行
		moon run .
		

或者克隆完整项目

git clone https://gitlink.org.cn/lsm1222/AgriDroneSwarm.git
cd AgriDroneSwarm
moon test          # 运行所有测试
moon build         # 构建项目