Oxford racing car platform

We have developed a test-bed for various control algorithms related to low level control of vehicles, as well as trajectory optimization and collision avoidance. Emphasis is given on real-time implementation, while position and velocity information are provided via a camera based system.
Different control algorithms to automatically regulate the position and velocity of the cars have been developed. Current implementation is based on real-time Model Predictive Control (MPC), where a finite horizon optimization program is solved online, determining the optimal sequence of steering command. The first parts of this sequence are implemented, and the horizon is then rolled and the process is repeated. This introduces feedback in the cars driving strategy while allowing trading different objectives and meeting hard constraints like the track boundaries.

The general control architecture underpinning the operation of each car is based on the following sequence of steps:

  1. The camera based vision system captures the cars on the track. To this end, each of them characterised by a unique marker pattern.

  2. The position and velocity of each car is estimated by means of some state estimation algorithm, and is broadcasted to the computer used for control calculation.

  3. The control inputs (e.g., speed commands) are sent via Bluetooth to the embedded board microcontroller of each car, which then drives around the track. 

The developed platform is currently used for a series of student projects, as well as outreach events.