ForzaETH Race Stack by the D-ITET Center for Project Based Learning (PBL) at ETH Zurich.
Accompanying this repository, a paper titled ForzaETH Race Stack - Scaled Autonomous Head-to-Head Racing on Fully Commercial off-the-Shelf Hardware is available on Journal of Field Robotics, detailing the system's architecture, algorithms, and performance benchmarks.
NOTE: For extensions on said paper, tied to specific publications, please refer to the later paragraph Additional Publications
NOTE: We have a ROS2 version of this stack, check out the other branches of this repo!
We provide an installation guide here.
After installation, the car (or the simulation environment) is ready to be tested. For examples on how to run the different modules on the car, refer to the stack_master
README. As a further example, the time-trials or the head-to-head checklists are a good starting point.
Or check out our video playlist on Youtube:
Note: Click on the thumbnails to watch the videos.
In case you find our package helpful and want to contribute, please either raise an issue or directly make a pull request. To create pull request please follow the guidelines in CONTRIBUTING.
This project would not be possible without the use of multiple great open-sourced code bases as listed below:
- f1tenth_system
- F1TENTH Racecar Simulator
- Veddar VESC Interface
- Cartographer
- Cartographer ROS Integration
- global_racetrajectory_optimization
- RangeLibc
- BayesOpt4ROS
- cpu_monitor
If you found our race stack helpful in your research, we would appreciate if you cite it as follows:
@article{baumann2024forzaeth,
title={ForzaETH Race Stack—Scaled Autonomous Head-to-Head Racing on Fully Commercial Off-the-Shelf Hardware},
author={Baumann, Nicolas and Ghignone, Edoardo and K{\"u}hne, Jonas and Bastuck, Niklas and Becker, Jonathan and Imholz, Nadine and Kr{\"a}nzlin, Tobias and Lim, Tian Yi and L{\"o}tscher, Michael and Schwarzenbach, Luca and others},
journal={Journal of Field Robotics},
year={2024},
publisher={Wiley Online Library}
}
Please refer to the system_identification
README.
Predictive Spliner: Data-Driven Overtaking in Autonomous Racing Using Opponent Trajectory Prediction
Please refer to the predictive-spliner
README.