MRPT/mvsim
Vehicle and mobile robotics simulator. C++ & Python API. Use it as a standalone application or via ROS 1 or ROS 2
What it solves
MVSim provides a lightweight yet realistic 2.5D dynamics simulator for mobile robots and multi-agent research. It bridges the gap between overly simple simulators and computationally heavy ones, allowing researchers to run large-scale experiments with multiple vehicles while maintaining accuracy in dynamics and sensor data.
How it works
The simulator uses XML world files for configuration, meaning users can set up environments and robot fleets without changing the source code. It supports various vehicle models including differential drive, Ackermann steering, and articulated vehicles, and implements multiple friction models (such as Coulomb and Ward-Iagnemma) for different terrains. For sensing, it simulates 2D/3D LiDARs, RGB and RGBD cameras, IMUs, and GNSS/GPS.
Who it’s for
It is designed for researchers and developers working on mobile robotics, multi-agent systems, and autonomous vehicle dynamics, particularly those using ROS 2 or seeking a language-agnostic simulation environment.
Highlights
- Multi-Agent Support: Specifically designed for multi-vehicle worlds where robots can sense each other via LiDAR.
- Flexible Integration: Operates as a standalone app, a ROS 2 node, or can be embedded via C++ and Python APIs.
- Diverse Sensor Suite: Includes realistic models for high-end LiDARs (Velodyne, Ouster, Hesai) and depth cameras.
- Headless Mode: Supports execution without a GUI, making it ideal for CI/CD pipelines and Docker containers.
Related
- Project
- Project
- Project
- Project
- Project