Control Systems: Ball on Plate
This was a two-person school project in 2017/18.
We designed a 3D-printed platform that can be tilted around two axes by servo motors. We designed custom control electronics that would register the position of a metal ball on the platform and control the servo motors in order to balance the ball on it. The position of the ball is detected with a resistive touch panel on the platform. We were also experimenting with a camera-based system.
Our control board contains a 24-bit ADC and a 8-bit PIC microcontroller. In software, the feedback controller consists of two superimposed PID-controllers, that act on position and velocity of the ball.
We developed a PC utility that allowed to get real-time data from the system and change control parameters on-the-fly.
Our control software also allowed for pre-defined ball paths: