The drone

In order to make a light show with drones, several technological challenges need to be met. First, the drones used must fulfill certain criteria such that its shape allows it to follow certain paths. In addition, it is very significant for each drone to know its position. This is followed by a sophisticated control scheme such that the drone can follow specific paths and stay synchronized with the other drones. The lighting element for the show is achieved by adding LED’s to the drone structure. To add a wow factor to the show it is desired that lights complement the background music and the movement of the drone. This demands an algorithm that controls the lights on the drone in a desired manner. A more detailed description of all the necessary aspects is provided below.


The drone
In order to make an interesting show, the drones should be able to quickly move in every direction. Therefore quadcopters are used. Quadcopters are drones equipped with 4 rotors, which make them very agile. The drones used in the show are all Avular Curiosity platforms, which is a drone platform meant for creating new applications with drones. The drone’s dimensions and appearance are shown in the picture. Its encasing is multipurpose: the encasing holds the LEDs and gives some protection to the rotors. In the middle compartment of the drone the processing hardware is situated. For the low level control a cortex-M4 processor is used and the high level control, sensor fusion and LED control is done on a raspberry pi.

Layout of the drone

System layout provides the location of the some of the specific components of the drone.

  1. Protective Shroud.
  2. Camera
  3. Motor and Propellor
  4. Sensor Board
  5. Programming Ports
  6. Data Ports


In order to control a drone, it is essential to know its position. The position estimation for the drones is achieved using ultra-wideband technology. The used system is called Decawave. The system uses  anchors (transmitters) and tags (reflectors). Anchors are fixed on a certain position, while the position of the tag is an unknown variable. The anchors send out a radio-wave signal which is reflected by the tag. The distance between the anchor and the tag can be estimated using the time taken by the incident signal to return to the anchor.

By combining the measurement data of all the anchors an accurate position estimation of the drone can be achieved. In principle, only four anchors are needed to determine a 3D-position, but accuracy of the estimation increases with the number of anchors used . This principle is called triangulation. The picture below, shows the working of the methodology for a 2D case. Each drone is equipped with two tags, this is done in order to obtain the orientation of the drones.


Movement control
In order to make the drones follow their trajectory two types of movement control are applied: feedforward control and feedback control. For the feedforward control Iterative Learning Control is used. This technique makes use of the fact that that the trajectory stays the same. By measuring the error from previous trials, it can learn to fly with increasingly more precision. For the feedback control we use a PID controller. This controller makes use of the current error and adjusts for that.

The leds are around the drone in the encasing. The color of the leds is controlled from the raspberry pi. Every LED can separately be assigned an RGB value, which corresponds to the desired color.

In order to make a coherent show, lights, movement and music need to be synchronized. The design of the show is therefore made using a 3D animation tool from Simulink.  Here you can find an example animation.