Repolode
Zihao-Felix-Zhou

Zihao-Felix-Zhou/UavNetSim

一个基于 Python 的无人机集群通信网络仿真平台,涵盖路由、MAC、物理层、移动与能耗模型。

Star
411
Fork
66
未关闭 Issue
1
最近提交
上个月

这是什么?

UavNetSim 是一个基于 Python 的仿真平台,用于建模无人机之间的通信网络,覆盖网络层、MAC 层、物理层、无人机移动性和能耗模型,底层使用 SimPy 进行离散事件仿真。

平台已实现多种路由协议,包括 DSDV、GRAd、贪心转发、OPAR,以及基于强化学习的 Q-FANET、QMR 等路由。MAC 层支持 CSMA/CA、纯 ALOHA 和 TDMA;移动模型包括 Gauss-Markov、Random Waypoint 和 Random Walk;另有基于虚拟力的拓扑控制和 A* 三维路径规划。运行过程中会统计丢包率、端到端时延、归一化路由开销和吞吐量等指标。

平台便于扩展,用户可以在对应目录中新增移动模型、MAC 或路由协议模块,并安装到无人机节点上。项目还提供网页控制台,用于编译场景和运行仿真。

核心功能

  • 01实现 DSDV、GRAd、贪心转发、OPAR 及基于强化学习的路由协议。
  • 02支持 CSMA/CA、纯 ALOHA 和 TDMA 介质访问控制。
  • 03提供 Gauss-Markov、Random Waypoint、Random Walk 三维移动模型。
  • 04包含虚拟力拓扑控制与 A* 三维路径规划。
  • 05统计丢包率、端到端时延、归一化路由开销和吞吐量等指标。
  • 06支持自定义路由、MAC 和移动模块并接入仿真。

适用场景

  • 在实地部署前研究无人机自组网的路由协议。
  • 在无人机移动场景下比较 CSMA/CA、TDMA 等 MAC 方案。
  • 结合通信模型验证集群运动控制或三维路径规划算法。
  • 通过仿真的无人机网络讲授无线网络相关概念。

快速上手

  1. 1

    克隆仓库

    git clone https://github.com/Zihao-Felix-Zhou/UavNetSim-v1.git
  2. 2

    创建 Python 虚拟环境

    py -3.12 -m venv .venv
  3. 3

    以可编辑模式安装项目

    .\.venv\Scripts\python.exe -m pip install -e .
  4. 4

    按 README 构建网页控制台、编译默认场景,然后启动服务器

使用前须知

  • README 中的命令和安装步骤是针对 Windows PowerShell 编写的。
  • 物理层依赖 NVIDIA Sionna RT,会带来较重的依赖。
  • 构建网页控制台需要 Node.js 18 或更高版本以及 npm。

标签

常见问题

UavNetSim 是什么?
一个基于 Python 的无人机集群通信网络仿真平台,涵盖路由、MAC、物理层、移动与能耗模型。 UavNetSim 是一个基于 Python 的仿真平台,用于建模无人机之间的通信网络,覆盖网络层、MAC 层、物理层、无人机移动性和能耗模型,底层使用 SimPy 进行离散事件仿真。
UavNetSim 可以免费使用吗?用的什么许可证?
UavNetSim 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
UavNetSim 还在维护吗?
半年内有更新。UavNetSim 最近一次提交是在 2026年9月12日。
UavNetSim 适合用来做什么?
在实地部署前研究无人机自组网的路由协议。 在无人机移动场景下比较 CSMA/CA、TDMA 等 MAC 方案。 结合通信模型验证集群运动控制或三维路径规划算法。 通过仿真的无人机网络讲授无线网络相关概念。
UavNetSim 怎么安装和运行?
克隆仓库: git clone https://github.com/Zihao-Felix-Zhou/UavNetSim-v1.git 创建 Python 虚拟环境: py -3.12 -m venv .venv 以可编辑模式安装项目: .\.venv\Scripts\python.exe -m pip install -e . 按 README 构建网页控制台、编译默认场景,然后启动服务器
在哪里获取 UavNetSim?
源代码和安装说明在 GitHub 上:https://github.com/Zihao-Felix-Zhou/UavNetSim

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目