Skip to content
Arthurmaffre34 edited this page Mar 28, 2023 · 10 revisions

RMBP wiki

This is a repo of the company RMBP, it aims to provide a sound solution for open spaces with drones in swarm. This project is presented as an onion, there are several software layers to enable drone operations.

Summary of main sub-projects

I invite you to look at the main sub-projects in this summary

  • Quadcopter simulator (contains the main plans of the hardware and the necessary software of the quadcopter)
  • Phoenix (contains the software necessary to train the stabilization model of the drone)

Short explanation of how the project works:

First, the stabilization is performed using flight data that are collected with an inertial unit. The inertial unit is an accelerometer and a gyroscope. They only give information about the acceleration of the quadcopter.

As you may have learned in school physics, acceleration is the derivative of velocity with respect to time. And the velocity is itself the derivative of the position with respect to time. So you have to integrate the acceleration vector twice over time to get the position vector. So we have an acceleration vector, a velocity vector and a position vector. We have to double the number of vectors because we have to take into account the rotation vectors

The flight information is processed by a convolution model also called artificial neural network. These are processed in an A2C model which allows the primary stabilization of the drone.

The output layer has 4 values, these contain variables that can go from 0 to 1 and represent the percentage of power of each of the 4 motors. A variable of 0.55 represents an activation of 55% of the motor.

To represent the objective of the neural network, we need to conceptualize a 3 dimensional space. In the middle of this space we have to represent a point which is the fixed point in the space where the drone must stabilize. The goal of the algorithm is to decrease the distance to this point as quickly as possible. Then to direct the point we only have to artificially move the imaginary point away from the drone to make it move in space.

Quadcopter simulator

Quadcopter simulator is a simulator running on Unity. In order to communicate with it we use a TCP bridge.