2018 · WET Design · Harvey Mudd capstone

Eight floating robots that dance

A junior capstone with WET Design: build eight wireless floating robots that hold formation while running a synchronized light show.

Fleet 8 autonomous floating robots
Wireless nRF52 BLE, multilink UART
Lighting 4× 3W RGBW LEDs, constant-current
Control PID heading control (magnetometer)
Role Electronics & controls

The problem

A light show on the water only works if every robot is where it should be and every light is as bright as the next. That meant two things had to hold: each robot had to keep its heading on its own, and the LEDs had to stay evenly bright as the batteries drained during a show.

What I did

Constant-current LED driver

Designed, built, and tested a PCB that drives four high-power (3W) RGBW LEDs at constant brightness, no matter the battery voltage. It uses an op-amp and a p-channel MOSFET as a current source, with thermal and current protection on the board.

Closed-loop heading control

Wrote a PID controller in Python so each robot could follow a set heading using its magnetometer. This is what kept the robots in formation instead of drifting.

Helped design a Bluetooth PCB around the nRF52 chip for a multilink UART system, so the robots could be controlled wirelessly.

Outcome

Eight robots that held both their heading and their brightness. The driver kept the lights even as the batteries drained, and the controller kept each robot on its path.