Pacsim
A Formula Student Driverless simulator
Install / Use
/learn @PacSim/PacsimREADME

PacSim
PacSim (Planning and Controls Simuluator) is a simulator for Formula Student Driverless competitions originally developed at Elbflorace.
Example of a pipeline running in PacSim with visualizations in Foxglove:

Features
- Closed loop simulation of the autonomous system.
- Simulation of vehicle dynamics
- Simulation of all the relevant sensors (except for raw perception data) for autonomous operation. All sensors simulated are specified by at least their rate, dead time (delay), noise and some sensor-specific additional attributes.
- IMU, wheel speeds, wheel motor torques, steering angle, GNSS
- Mock model of the detected cones by the perception system
- Competition logic
- Track lap times, evaluate penalties and detect DNF
- Create report at the end of the run
- Configurable grip map (different friction coefficients for track segments)
- Additional scripts and tools
- Track editor (track_editor directory)
- Converter from FSSIM sdf to our track format.
Prerequisites
This package is developed and tested on Ubuntu 22.04 with ROS2 Iron.
Install dependencies:
sudo apt install ros-iron-desktop ros-iron-xacro
How to get started
To get started with using PacSim, take a look at the Getting Started README here.
Contributing
Contributions in any form (reports, feedback, requests, submissions) are welcome. Preferably create an Issue or Pull request for that.
The project also has a discord server.
Known issues
- In Foxglove Studio (in contrast to RViz) the mesh of the car is displayed incorrectly using default settings. To fix this go to the left sidebar of the 3d panel -> Scene -> Mesh up axis and select Z-up. Restart to apply the change.
- Currently the track editor can't handle the skidpad and acceleration tracks (lanesFirstWithLastConnected = False) properly.
- Currently there exists no editor and visualization for the grip map.
Acknowledgements
The initial version was developed at Elbflorace by:
- Alexander Phieler (Main development)
- Niklas Leukroth (Track and Config file parser)
- Sergio Antuna (Artwork)
- Tim Hanel (3d car model integration)
Related Skills
node-connect
352.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
111.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
352.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
352.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
