<aside> ☑️
Checklist:
EUFS AI Trackdrive simulation (credit: Ignat Georgiev)
<aside> 💡 ADS = Autonomous Driving System
</aside>
The purpose of this guide is to act as a starting point for Bristol FSAI developing our ADS. There are infinitely many ways of tackling this challenge, so to simplify things, we’ll start with a basic ADS design that has been tried-and-tested by EUFS which is also compatible with their simulator, EUFS sim. Credit to Ignat for clearly explaining their ADS in his post. Give it a read if you can.
It is useful to breakdown the challenge of developing the ADS into categories/smaller parts:
There are 4 dynamic events which the vehicle will participate in at the competition (see FSAI Competition Info for more info)
The vehicle follows the following ‘see-think-act’ loop which is categorised into the following components: Perception, SLAM, Nav/Planning, and Control
The ADS will be tested on a simulated vehicle and, eventually, a real one. We will initially focus on the simulation.
Our job is to write ROS packages which we can build and run alongside EUFS sim. These packages will consist of nodes which subscribe and publish to the required topics to get the ADS working.
The design of a ‘basic ADS’ — as described in Ignat’s post — is included below.
In summary, this consists of a perception pipeline to identify cone types and positions, a SLAM pipeline to localise the vehicle using its kinematic and dynamic states, and a Navigation/Planning and Control pipeline to determine the trajectory and commands to steer and move the vehicle autonomously.