Table of Contents
Communication-Control Distributed Simulator (CUSCUS)
(It is "distributed" for real)
TL;DR
By connecting two well-known-in-literature simulation suites (FL-AIR for CONTROL and NS-3 for NETWORKING), we are able to perform real-time accurate simulations of the wireless communication among fleets of UAVs, and analyze the impact of the radio propagation phenomena and packet level simulation on the fleet mobility algorithms.
Standard Introduction
The current merging of networking and control research fields within the scope of robotic applications is creating fascinating research and development opportunities.
However, the tools for a proper and easy management of experiments still lag behind.
Although different solutions have been proposed to simulate and emulate control systems and, more specifically, fleets of Unmanned Aerial Vehicles (UAV), still they do not include an efficient and detailed network-side simulation, which is usually available only on dedicated software.
On the other hand, current advancements in network simulations suites often do not present the possibility to include an accurate description of controlled systems.
In the middle 2010s, integrated solutions of networking and control for fleets of UAVs are still lacking….
UNTIL NOW
What is it?
We fill such gap in the literature by proposing a novel simulation framework for networked control system, called CommUnicationS-Control distribUted Simulator (CUSCUS). Differently from the state of the art, CUSCUS allows simulating both the UAV networking and flight control, via the integration of two existing tools: the Framework Libre AIR (FL-AIR) simulator and the mainstream network simulator NS-3 .
What does it do?
Using FL-AIR, a real-time and fine-grained simulation of the micro-mobility of each UAV can be achieved, including:
- the modeling of virtual sensors/actuators,
- the modeling of the aerial networking a packet-level
- the modeling of formation control algorithms
- the modeling of flight control algorithms
- the PID regulations and the drone stability.
Why the term "Distributed"?
Levaraging the FLAIR part, it is possible to create UAV applications and test them on a simulated control environment before the actual deployment, since the same code can also be plugged in real drones.
In CUSCUS (and FLAIR), each virtual drone application is responsible to simulate its flight model and control and then socket-out the data to a rendering/control room engine.
This means that it is always possible to connect a real drone to the engine and run it alongside its virtual fellows.
To make the simulation even more realistic and make a step towards the usage of fleets of UAVs in Smart city scenarios, we just finished implementating a Scenario Module in both FL-AIR and NS-3.
Through the Scenario Module, it is possible to model realistic 3D environments, importing the scenario maps directly from OpenStreetMaps and taking into account the location of buildings and the street topology.
How does it work?
We have some papers in review, so it is better to keep that for ourselves (for the moment, then it will be public domain, maybe…).
In the meantime, here's a neat video of it:
Highlights
-
Leader-following scenario
-
Formation Maintenance
- WITH SIMULATED BUILDINGS!!!
- TAKEN DIRECTLY FROM OPENSTREETMAPS
- WITH BUILDING COLLISION AVOIDANCE
-
Done using the virtual sensors
-
The leader has a set of pre-defined way-points
-
The followers use a Particle Swarm Optimization-based (PSO) algorithm to keep formation
-
The algorithm needs message exchange to work
- All the networking is simulated at packet level through NS3 in realtime
Where to find it?
Here! on the sister page of this wiki.
Right now YOU, the user, have two possibilities to run CUSCUS.
-
Wait until we prepare an application that will be:
-
If you think that "bells and whistles" are too mainstream, you can try your luck with a set of script that we ourselves leveraged to perform the scientific work. Unfortunately (sic.) here are some of their features:
- Works only under Linux
- Ubuntu…
- Ubuntu 14.04…If you manage to make the scripts work on another distro please let us know
- using
/bin/bash
- using
- Ubuntu 14.04…If you manage to make the scripts work on another distro please let us know
- Ubuntu…
- Needs manual Installation of:
- NS3
- Flair
- It is an adventure!
- To start the adventure follow this link.
- Works only under Linux
Soon to be available on our svn as fast as our papers get through the review process :D.