Skip to content

drypatrick/MW_EiI_208_Trajectory_Planning_and_Tracking

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RC Car Modelling and Trajectory Tracking Control

Here is my attempt to MathWorks' Excellence in Innovation Project 208. This work has been done as part of my MSc in Systems, Control and Signal processing at the University of Southampton

The best race driver is the fastest on track. However, "to finish first you must first finish" (Claude Rouelle). These objectives remain unchanged when dealing with remote control car racing. The objective of a race driver model is therefore to be as fast as possible on track while staying between the track limits.

This dissertation describes the development of a non-linear remote-controlled (RC) car model and its control system in order to test different trajectory optimisation strategies.

This project makes three contributions. Firstly, a high-fidelity non-linear vehicle model has been developed based on a four-wheel vehicle dynamics model and the Dugoff tyre model with adapted parameters to match the size and physics of a 1/10th remote-controlled car. This model provides a fair comparison basis for controller tuning and trajectory optimization.

Secondly, control systems for steering angle and speed have been developed to mimic the behaviour of a race driver. The steering controller is based on the pure pursuit algorithm. Classical control is then used to regulate the car speed to the speed target generated based on a friction circle model. The combination of the steering angle and speed controllers enabled to keep the car on the desired trajectory with a mean accuracy of a dozen of centimetres.

Thirdly, trajectory optimization has been studied. Before starting any trajectory optimization, the track centerline has been tracked to provide a measurement standard (Fig. 1 and Table I).

Fig. 1: Track centerline tracking result. Table I: Track centerline tracking result.

Finding the optimal trajectory can be seen as an optimization problem to solve the compromise between the shortest path (Fig. 2 and Table II) and the minimum curvature path (Fig. 3 and Table III). The resulting optimized trajectory (time optimal compromise) is given in Fig. 4 and Table IV.

Fig. 2: Shortest path tracking result. Table II: Shortest path tracking result.
Fig. 3: Minimum curvature path tracking result. Table III: Minimum curvature path tracking result.
Fig. 4: Offline optimized path tracking result. Table IV: Offline optimized path tracking result.

A further extension of this optimization problem is to propose an online implementation. The tracking of the online optimized path is given in the Fig. 5 and Table V.

Fig. 5: Online optimized path tracking result. Table V: Online optimized path tracking result.

More details are given in my MSc project dissertation.

A possible extension of online trajectory optimization is to add an obstacle avoidance strategy. The Fig. 6 shows the online trajectory optimization with 2 fixed obstacles and a moving one.

Fig. 6: Online optimized path tracking with obstacle avoidance.

A video description of this project can be found on the following link : https://youtu.be/rwvJJa25xms

About

RC Car Modelling and Trajectory Tracking Control

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • MATLAB 100.0%