Leeds Formula Student AI - Autonomous Racing

Developing the Brain of an Autonomous Racecar with ROS 2

As a key contributor to the Leeds Gryphon Racing AI team, I dove headfirst into the high-stakes world of autonomous motorsports. Our mission was to develop a robust software stack for the Formula Student AI competition, pushing the boundaries of vehicle perception, planning, and control. The entire system is built upon the Robot Operating System 2 (ROS 2), providing a flexible and powerful framework for our autonomous systems.

My work centered on the core components of the autonomous driving pipeline. This involved designing, implementing, and testing nodes for real-time object detection, sensor fusion, and vehicle simulation. A significant part of my contribution was in the perception system, where we utilized advanced computer vision techniques to accurately detect and classify cones on the racetrack. This is a critical task, as the cones define the drivable path for the vehicle.

Key Technologies and Contributions:

  • ROS 2 Jazzy: Architected and developed modular ROS 2 packages for perception, and control.
  • C++ & Python: Implemented performance-critical nodes in C++ for speed, while leveraging Python for rapid prototyping and non-critical components.
  • Gazebo Simulation: Developed and maintained a high-fidelity simulation environment in Gazebo Harmonic. This allowed for rigorous testing of the entire software stack without the need for a physical car, accelerating development and improving safety.
  • Perception Stack: Worked on integrating YOLO-based object detection models for real-time cone detection from camera feeds. This included preprocessing point cloud data to enhance detection accuracy.
  • System Integration: Ensured seamless communication and data flow between various nodes, from perception to the control system, using ROS 2 topics, services, and actions.
  • Version Control & CI/CD: Utilized Git and GitHub for version control and collaborated with the team to establish continuous integration workflows.

This project was a fantastic opportunity to apply theoretical knowledge to a complex, real-world engineering challenge. The fast-paced environment of competitive motorsports, combined with the technical depth of autonomous systems, made for an incredibly rewarding experience. The collaborative nature of the team and the open-source ethos of the project were instrumental to our success.

You can explore our work and the full software stack on our team's GitHub repository.