LightWriting using CrazySwarm


Description:

Light drawing is a technique in the field of photography in which a long exposure photograph of a moving light source is used to create different results. This project utilizes a swarm of quadcopters as the moving light source to write text. Our method involves two steps: breaking the characters into small segments, and combining them to form large ones based on the number of available quadcopters and the exposure time limit of the camera.

Robot Design and Architecture:

The quadcopter used was Crazyflie 2.0 which is a nano-quadcopter measuring 92 millimeters between diagonally opposite motor shafts and weighs 27 grams with a battery. The payload of motion-capture markers and an LED light expansion board brings the Crazyflie’s mass to 33 grams.
Crazyswarm architecture is used. The quadcopters are tracked by VICON motion capture system using passive spherical markers. Majority of the flight computation is done onboard. The base station sends complete trajectory description to the vehicle in the form of polynomials. For external feedback, the base station broadcasts vehicle poses using three radios operating on separate channels. To reduce the effect of packet drop on stability, the motion capture measurements and IMU are fused on board in an Extended Kalman Filter (EKF).

Trajectory Generation:

To generalize the algorithm for any text and font, the generation of trajectory is done from an image of the text in the required font. The font is skeletonized, segmented into smaller parts. These parts are then combined to form longer, more suitable paths for the quadcopters.

Results:

The swarm was simulated in python with matplotlib as visualizer. Various texts and fonts were tested in simulation before testing the same on hardware.

Photos