Project

General

Profile

System architecture » History » Version 19

Rafael Bailon-Ruiz, 2020-10-07 16:35

1 4 Rafael Bailon-Ruiz
h1. System architecture
2 1 Rafael Bailon-Ruiz
3 8 Rafael Bailon-Ruiz
CAMS is a software framework for cloud exploration using fleets of UAVs. The system drives a *fleet of UAVs* inside *clouds* acoording to *user's plans* and *collects sensor data*. Afterwards the information is processed by *dedicated atmosphere analysis algorithms* to produce 4D *cloud maps* that are simultaneously *stored in a database* for future use and *shown to operator* through a *graphical user interface*. This graphical user interface also provides operators the means to *manage the fleet of UAVs* .
4 1 Rafael Bailon-Ruiz
5 12 Rafael Bailon-Ruiz
!system_overview.png!
6 1 Rafael Bailon-Ruiz
7
h2. Main features
8
9 19 Rafael Bailon-Ruiz
The goal of this system is to provide an easy to use tool considering the following four design features:
10 1 Rafael Bailon-Ruiz
11 19 Rafael Bailon-Ruiz
* **Monitor data acquisition:**
12
** Interactive predicted 4D cloud maps (3D + time).
13 1 Rafael Bailon-Ruiz
** Various data profiles, including raw data display and vertical atmospheric profiles.
14
15 19 Rafael Bailon-Ruiz
* **Generate flight plans:**
16
** Easy management of the fleet of UAVs to plan cloud exploration missions. Generate complex flight plans based on adaptive cloud exploration trajectory patterns.
17
** Safe operation of the fleet with a dedicated tool for UAV remote pilots to validate generated flight plans.
18 1 Rafael Bailon-Ruiz
19 19 Rafael Bailon-Ruiz
* **Monitoring of the UAV fleet status:**
20
** Display of the UAV position as an overlay of the cloud map.
21
** Status updates for each UAV plan, including current task, flight time, battery voltage and many others.
22 1 Rafael Bailon-Ruiz
23
* **Simulation :**
24 19 Rafael Bailon-Ruiz
** Using the simulation capabilities of the Paparazzi framework and MesoNH atmospheric simulation data, the system can run with a combination of real and simulated components.
25 1 Rafael Bailon-Ruiz
26 9 Rafael Bailon-Ruiz
h2. Modes of operation
27 1 Rafael Bailon-Ruiz
28 17 Rafael Bailon-Ruiz
CAMS designed to work in several [[modes of operation]] fulfilling different user use cases:
29 1 Rafael Bailon-Ruiz
30 12 Rafael Bailon-Ruiz
* Pure simulation
31
* Mixed-reality
32 1 Rafael Bailon-Ruiz
* Field deployment
33 9 Rafael Bailon-Ruiz
* Mission replay
34
35 18 Rafael Bailon-Ruiz
h2. Main components
36 9 Rafael Bailon-Ruiz
37 18 Rafael Bailon-Ruiz
The software is made of several key sub-systems:
38 9 Rafael Bailon-Ruiz
39 18 Rafael Bailon-Ruiz
* **Graphical user interface:** Web-based user interface for the operation of the fleet of UAVs and display of sensor data and cloud maps.
40 9 Rafael Bailon-Ruiz
41 18 Rafael Bailon-Ruiz
* **Paparazzi interface:** The "paparazzi autopilot":http://paparazziuav.org is a _libre_ software and hardware platform for autonomous unmanned aerial vehicles encompassing the flight controller and the ground station. CAMS provides a software interface that takes care of the communication with UAVs and the ground station to receive sensor data and control the fleet.
42 9 Rafael Bailon-Ruiz
43 18 Rafael Bailon-Ruiz
* **Mapping:** 
44 9 Rafael Bailon-Ruiz
** Full dense maps of clouds using sparse data generated by the UAVs, with the help of "Gaussian Process Regression":https://scikit-learn.org/stable/modules/gaussian_process.html (GPR).
45
** Higher level functions to estimate some cloud parameters from a dense map (segmentation, area, border, etc...).
46
** Single map interface, behind which can be a GPR predicted map, or a section of MesoNH data to be used as ground-truth in simulation.
47
48 18 Rafael Bailon-Ruiz
* **MesoNH interface:** Provides functions to read "MesoNH":http://mesonh.aero.obs-mip.fr/mesonh54 atmospheric simulation databases so they can be used to simulate realistic cloud environments for UAV flight and sensor data acquisition. Wind, pressure, liquid water content, and many other variables can be exploited as emulated sensor data.
49 9 Rafael Bailon-Ruiz
50 18 Rafael Bailon-Ruiz
* **Data server:** Aggregates all data coming down from flying or simulated UAVs (or any other source) into a single server instance. Any module which needs data, like the mapping module or the GUI module must require data from the data server.