A ROS 2 and Gazebo simulation platform for developing, evaluating, and generating datasets for autonomous-driving software.
AutoRace provides a controlled, reproducible environment for developing and evaluating autonomous-driving software before real-world testing: a modeled track, a multi-modal sensor suite, physics-based vehicle motion, and ground-truth state.
About this repository. This is an overview of the AutoRace platform, not a code release. It presents the simulator and what it does; recorded datasets and the downstream autonomy work built on it will be published progressively. ⭐ Star or watch the repo to be notified as each part lands.
AutoRace is built for a specific purpose: generating reproducible datasets and evaluating robotics algorithms under known conditions. It is not intended as a general-purpose simulator.
The simulator is a means, not the end. It is the foundation for the datasets and autonomy stack that follow.
It is a self-contained simulation workspace built in ROS 2 (Humble) and Gazebo, designed as the testbed an autonomy stack is measured against: perception, state estimation, sensor fusion, planning, and control can be built and evaluated inside it, against signals that are known exactly.
The platform provides the inputs an algorithm needs, with a clean separation of concerns:
- To-scale environments with real geometry, elevation, and surfaces.
- A synchronized multi-modal sensor suite (LiDAR, cameras, GNSS, and IMU) publishing native ROS 2 data.
- Physically parameterized vehicle motion, with mass and inertia defined for every link and integrated by the physics engine.
- A ground-truth layer for objective, repeatable evaluation and safe failure testing.
- A single source of truth for the robot, structured on ROS 2 standards (REP-105) so it integrates with a downstream stack.
This repository introduces the simulator. The autonomous software framework (perception, localization / sensor fusion, planning, and control) is being built next and evaluated against data generated by this platform.
As the project matures, recorded, ground-truth-labeled datasets will be released here for the robotics community and individual researchers. Access links will be posted in this repository as they become available.
AutoRace is a full vehicle simulation built in ROS 2 and Gazebo. The ego vehicle is a race car instrumented with a complete sensor package, driving a full circuit. This is the foundation the rest of the platform is built on.
The world is modeled to scale, with real track geometry, elevation changes, banking, kerbs, and surface characteristics: the terrain the vehicle and sensors actually interact with, rather than a flat test plane.
The race circuit shown is one environment. Because worlds are standard Gazebo SDF, the platform is not tied to racing: other environments can be built to match a target operating domain.
The vehicle carries a multi-modal sensor suite, live in ROS 2: a 3D LiDAR point cloud (shown in red), surround-view cameras (top strip), GNSS, and IMU. Every stream is time-synchronized and published on native ROS 2 topics, the raw material a perception or sensor-fusion pipeline consumes.
Sensor parameters and mounting geometry are derived from manufacturer specifications rather than generic defaults, and each model documents its datasheet reference and any simulation compromises in-config, so the simulated data reflects the characteristics of the corresponding real hardware.
The vehicle is parameterized from real physical properties defined in the robot description: chassis mass, inertia, aerodynamics (downforce and drag), tire friction, and powertrain limits. Gazebo's physics engine integrates the motion from these parameters, so the car's behavior follows from its physics rather than from scripted or arcade-style movement.
Every link in the model carries a real mass and inertia tensor. Because these are real physical quantities rather than cosmetic values, the resulting motion is suitable for quantitative evaluation.
Because the motion follows from real physical parameters and the ground-truth state is known, edge cases such as off-track excursions or loss of control can be reproduced and observed safely in simulation, before field testing.
The vehicle is defined once as a single source of truth for sensor placement, coordinate frames, and physical properties. Every part of the simulation, and every downstream node, reads from that one description, so nothing can disagree about where a sensor sits or what the car weighs. The frames shown are the standards-compliant (REP-105) coordinate frames the stack builds on.
Each stage builds on the one above it, evaluated in the same simulation environment:
Simulation platform ✓ this repository
│
▼
Ground-truth datasets → released here for the robotics community
│
▼
Autonomy framework → perception · localization / sensor fusion ·
│ planning · control
▼
Reproducible evaluation → benchmarks and results on shared data
- Simulation platform: environments, sensor suite, physics, ground-truth evaluation
- Public release of recorded, ground-truth-labeled datasets
- Autonomy framework built and evaluated on data from this simulator
- Documentation and reproducible evaluation results
Saeed Abdollahi, Robotics Software Engineer.
I work across perception, state estimation, and control (from sensor fusion and SLAM to motion planning) on both legged and wheeled platforms. My focus is where classical model-based methods meet learning-based perception, and on shipping reproducible software that runs reliably on real hardware, not just in simulation.
My experience spans autonomous platooning, legged locomotion for planetary exploration, and aerial perception, across research and industry projects in Europe.
Open to robotics roles across the EU. Based in Bolzano, Italy.
- 📫 Email: saeed.abdollahi.t@gmail.com
- 💼 LinkedIn: saeed-abdollahi
If you are working on autonomous systems and need a simulation platform (environments, sensors, or datasets), I would be glad to connect.








