PeraSwarm
3rd Year Project
University of Peradeniya

Drone Swarm
Research Platform

Low-budget platform for drone swarm research and education

Indoor
Localization
Real-Time
Control
Custom
Algorithms
Live
Telemetry
Why This Project

The Problem

Drone swarm research faces significant barriers that limit access for students and researchers.

High Cost Barrier

Drone swarm research typically requires expensive commercial platforms and hardware, putting it out of reach for most academic labs.

Expensive Motion Capture

Commercial motion-capture systems and specialized swarm platforms cost tens of thousands of dollars, limiting access to well-funded institutions.

Limited Programmability

Existing platforms rarely offer the flexibility to define and test custom swarm algorithms without deep embedded programming expertise.

Accessibility Gap

Students and researchers need a low-cost, flexible, programmable platform to conduct meaningful swarm experiments without prohibitive investment.

Our Approach

Proposed Solution

The Drone Swarm Research Platform is a low-budget, programmable testbed that lets students and researchers run custom swarm algorithms on real hardware.

The platform separates high-level intelligence from drone execution. A central PC or server handles all the heavy lifting — localization, swarm state management, algorithm execution, and command generation. The drones act as physical agents, receiving motion commands and sending back telemetry.

This architecture makes the platform easy to extend: you write your swarm algorithm in a familiar language on the server, and the drones execute it in real time.

User-Defined Algorithms

Write and upload your own swarm behavior; the platform executes it on live drones.

Centralized Control Loop

PC/server runs localization, state management, and command scheduling in one loop.

Lightweight Drones

Drones focus on execution — receive commands, fly, send telemetry. No complex onboard logic required.

Web Dashboard

Monitor and control experiments through a browser-based interface — no special software needed.

Affordable Hardware

Built from off-the-shelf components to keep the cost accessible for student labs and small research groups.

System Design

System Architecture

Five interconnected layers form the complete swarm research platform.

Drone Layer

  • Small low-cost drones
  • Receive motion commands from server
  • Send telemetry and health data

Localization Layer

  • Top-mounted overhead cameras
  • Colored LEDs on drones
  • Computes real-time positions

Backend Server

  • Maintains swarm state
  • Runs the control loop
  • Executes user algorithms
  • Generates and sends commands

User Algorithm Module

  • User-defined swarm behavior
  • Input: current swarm state
  • Output: target positions / velocities

Web Dashboard

  • Start / stop experiments
  • Upload or select algorithms
  • View drone positions and telemetry
  • Monitor system state
Communication

Data & Control Flow

End-to-end flow between the web frontend, Python backend, ESP-NOW radio bridge, and the drones.

System data flow diagram showing the computer side (Web Frontend with React and Three.js → HTTP API → Python Backend with Flask, OpenCV, NumPy; 4 USB Cameras → Python Backend; Python Backend → Serial Port → ESP32 Sender) connecting via the ESP-NOW Wireless Protocol to the drone side (ESP32 Receiver → SBUS/UART Commands → Flight Controller running Betaflight)
Indoor Positioning

Localization System

01

Overhead Cameras

Top-mounted cameras provide a bird's-eye view of the entire flight arena with minimal occlusion.

02

Colored LEDs on Drones

Drones carry colored LEDs that are easily detectable by the cameras and distinguishable from one another and from the background.

03

Multi-Camera Fusion

Multiple cameras improve coverage and accuracy through triangulation and cross-validation.

04

Low-Cost Alternative

Achieves indoor positioning without expensive commercial motion-capture systems.

System overview image
Place your diagram at docs/images/localization.png

Platform Internals

Software Platform

Six modules that together form the server-side of the research platform.

Backend Server

Main coordination layer. Orchestrates all other modules and handles communication with drones and the web dashboard.

Swarm State Manager

Stores the latest position and telemetry data for each drone. Provides a unified view of swarm state to all other modules.

Swarm Engine

Runs user-defined swarm algorithms each control-loop tick. Receives current state, produces target positions or velocities.

Command Scheduler

Converts algorithm outputs into drone commands. Handles command timing, sequencing, and priority to ensure safe execution.

Logger

Records drone positions, telemetry, issued commands, and experiment metadata. Data is available for post-experiment analysis.

Web Dashboard

Browser-based interface for monitoring and controlling experiments. No special client software required.

Physical Components

Hardware

Off-the-shelf components chosen for affordability and availability.

Mini Drones

Small, low-cost quad rotors as physical swarm agents

Flight Controller

Onboard controller for stabilization and command execution

ESP32

Wireless bridge — sender on PC and receiver on each drone, linked via ESP-NOW

Overhead Cameras

Top-mounted USB cameras capturing the full flight arena

PC / Server

Runs localization, swarm engine, and dashboard backend

Colored LEDs

Visible-color LEDs on each drone for camera-based position detection

Technologies

Tech Stack

The tools and frameworks that power the platform.

Frontend

React HTML5 CSS3 JavaScript

Backend

Python Node.js WebSocket REST API

Computer Vision

OpenCV NumPy Camera Calibration

Communication

Wi-Fi JSON Messages UDP / TCP

Infrastructure

GitHub GitHub Pages Linux
Goals

Expected Outcomes

What the platform will deliver upon completion.

01

Real-Time Tracking

Live position tracking of multiple drones with low-latency updates to the swarm state manager.

02

Swarm Control Loop

A centralized, deterministic control loop that closes the perception-action cycle for the full swarm.

03

Algorithm Execution

User-defined swarm algorithms run in real time on live drone hardware without modifying firmware.

04

Web Dashboard

A browser-based interface for launching, monitoring, and stopping experiments from any device.

05

Experiment Logging

Structured logs of positions, telemetry, and commands for post-experiment analysis and reproducibility.

06

Accessible Platform

A working testbed built from affordable hardware, usable by student labs and small research groups.

People

Our Team

Department of Computer Engineering, University of Peradeniya · E/21 Batch

Siyumi Herath

Siyumi Herath

E/21/180
e21180@eng.pdn.ac.lk
Ishan Kaushalya

Ishan Kaushalya

E/21/217
e21217@eng.pdn.ac.lk
Lisitha Abeysekara

Lisitha Abeysekara

E/21/009
e21009@eng.pdn.ac.lk
Thinula Gunaratne

Thinula Gunaratne

E/21/156
e21156@eng.pdn.ac.lk
Supervisors

Ms. Yasodha Vimukthi

yasodhav@eng.pdn.ac.lk

Kavindu Methpura

e20254@eng.pdn.ac.lk