MRPT/mvsim
Vehicle and mobile robotics simulator. C++ & Python API. Use it as a standalone application or via ROS 1 or ROS 2
解决的问题
MVSim 为移动机器人和多智能体研究提供了一个轻量且逼真的 2.5D 动力学模拟器。它弥补了过于简单的模拟器与计算密集型模拟器之间的差距,允许研究人员在保持动力学和传感器模拟准确性的同时,运行包含多个车辆的大规模实验。
工作原理
该模拟器使用 XML 世界文件进行配置,这意味着用户无需更改源代码即可设置环境和机器人集群。它支持多种车辆动力学模型(差速、Ackermann 和铰接式)并实现了逼真的摩擦模型(Coulomb、Ward-Iagnemma 和 ellipse)。在感知方面,它可以模拟 2D/3D LiDAR、RGB 和 RGBD 摄像头、IMU 以及 GNSS/GPS。
可以通过多种方式运行:
- Standalone: 作为独立应用程序运行。
- ROS 2 Node: 直接集成到 Robot Operating System 2 生态系统中。
- Embedded: 作为 C++ 或 Python 库在自定义应用程序中使用。
- Headless: 在无 GUI 模式下运行,适用于 CI/CD 流水线或 Docker 容器。
适用对象
需要能够与 ROS 2 集成的快速、可配置模拟器的移动机器人、多智能体系统和传感器研究领域的科研人员和开发人员。
亮点
- 多智能体支持:机器人在共享环境中可以通过 LiDAR 感知彼此。
- 多样化的动力学:包括类汽车的 Ackermann 转向和拖车式铰接车辆。
- 全面的传感器套件:模拟 Velodyne 和 Ouster LiDAR 等工业标准硬件。
- 灵活的集成:支持 ROS 2、ZMQ/Protobuf、Python 和 C++ 接口。
- 环境多样性:支持占据网格 (occupancy grids)、高程网格 (elevation meshes) 和自定义 3D 网格。
相关
- 项目
- 项目
- 项目
- 项目
- 项目