跳转至

swarm (Swarm)


swarm 模块提供集群控制接口,包括多机编队、分布式仿真、Crazyflie 适配、MAVLink Shell、ADB 通信等功能,支持大规模无人机集群的协同控制与仿真。


模块功能

功能 说明
多机状态管理 集群中各载具的位姿和状态获取与同步
编队控制 向多架载具发送编队控制指令
分布式仿真 多台计算机分布式集群仿真支持
Crazyflie 支持 Bitcraze Crazyflie 微型无人机的适配接口
MAVLink Shell 飞控命令行 Shell 远程访问
ADB 通信 Android Debug Bridge 设备管理

核心类与接口

类/接口 说明
VehicleApi 集群单机构型管理,支持统一控制接口
DistSim 分布式仿真管理,支持跨计算机集群
Crazyflie Crazyflie 无人机适配接口
CrazySwarm Crazyflie 集群管理
RflyShell 远程 Shell 命令执行
AdbLib ADB 设备管理库
RJ45PX6X 网络接口管理

使用场景

集群编队

  • 多无人机的编队飞行控制
  • 队形变换与重构控制
  • 集群避障与路径规划

分布式仿真

  • 大规模集群的分布式计算
  • 跨地域的多机协同仿真
  • 计算资源的负载均衡

微型无人机

  • Crazyflie 室内集群实验
  • 微型无人机的编队控制
  • 教育与研究的低成本平台

实机部署

  • 真实无人机的集群控制
  • 遥控器与自动控制的切换
  • 集群任务分配与协调

集群控制示例

from RflySimSDK.swarm import VehicleApi

# 创建集群管理实例
swarm = VehicleApi()

# 初始化 5 架无人机
for i in range(1, 6):
    swarm.addVehicle(i)

# 连接所有无人机
swarm.connectAll()

# 编队起飞到 5 米高度
swarm.takeoffAll(5)

# 执行编队飞行(三角形编队)
swarm.formationTriangle(side_length=3)

# 悬停 10 秒
import time
time.sleep(10)

# 编队降落
swarm.landAll()

相关资源


注意:本文档为 swarm 模块的索引页面。各接口的详细 API 说明请参考对应模块的独立文档页面。