Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
/mvsimPublic

Vehicle and mobile robotics simulator. C++ & Python API. Use it as a standalone application or via ROS 1 or ROS 2

License

NotificationsYou must be signed in to change notification settings

MRPT/mvsim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mvsimDocumentation StatusCI LinuxCI Check clang-format

MultiVehicle simulator (MVSim)

Lightweight, realistic dynamical simulator for 2D ("2.5D") vehicles and robots.It is tailored to analysis of vehicle dynamics, wheel-ground contact forces and accurate simulation of typical robot sensors (e.g. 2D and 3D lidars).

This package includes C++ libraries, standalone applications, and ROS 1 and ROS 2 nodes.

License: 3-clause BSD LicenseCopyright (C) 2014-2024 Jose Luis Blancojlblanco@ual.es (University of Almeria) and collaborators

Please, refer tothe MVSim SoftwareX paper (or theArXiV preprint)for a gentle introduction to the project architecture.If you want to cite MVSim in your work, please use:

@article{blanco2023mvsim,  title = {MultiVehicle Simulator (MVSim): Lightweight dynamics simulator for multiagents and mobile robotics research},  journal = {SoftwareX},  volume = {23},  pages = {101443},  year = {2023},  issn = {2352-7110},  doi = {https://doi.org/10.1016/j.softx.2023.101443},  url = {https://www.sciencedirect.com/science/article/pii/S2352711023001395},  author = {José-Luis Blanco-Claraco and Borys Tymchenko and Francisco José Mañas-Alvarez and Fernando Cañadas-Aránega and Ángel López-Gázquez and José Carlos Moreno}}

ROSCon talk

Spanish talk with English slides and subtitles (slides here):

MvSim ROSCon talk

Installation

Seeinstallation documentation for all the details and options.

The easiest way to install if you already have ROS 1 or ROS 2 is:

sudo apt install ros-$ROS_DISTRO-mvsim

Then jump tonext steps to see how to launch some of the demo worlds.

Demo videos

screenshot-demo

MvSim intro

Build matrix status

DistroBuild devBuild releasesStable version
ROS 1 Noetic (u20.04)Build Statusamd64Build Status
arm64Build Status
armhfBuild Status
Version
ROS 2 Humble (u22.04)Build Statusamd64Build Status
arm64Build Status
Version
ROS 2 Jazzy @ u24.04Build Statusamd64Build Status
arm64Build Status
Version
ROS 2 Rolling (u24.04)Build Statusamd64Build Status
arm64Build Status
Version
EOL distroStable version
ROS 1 Melodic (u18.04)Version
ROS 2 Foxy (u20.04)Version
ROS 2 Iron (u22.04)Version

Docs

If you clone this repository, remember to checkout the git submodules too:

git clone https://github.com/MRPT/mvsim.git --recursive

Launch demos

See more on first stepshere.

Standalone:

mvsim launch mvsim_tutorial/demo_warehouse.world.xmlmvsim launch mvsim_tutorial/demo_2robots.world.xmlmvsim launch mvsim_tutorial/test_mesh.world.xml

ROS 1:

roslaunch mvsim demo_depth_camera.launch

ROS 2:

ros2 launch mvsim demo_warehouse.launch.pyros2 launch mvsim demo_depth_camera.launch.py

Main features

  • Lightweight in memory, CPU and library requirements.
  • Fully configurable via.xml "world" files.
  • Headless mode, suitable for dockerized environments.
  • World maps:
    • Occupancy gridmaps: input as images or MRPT binary maps (from icp-slam, rbpf-slam, etc.)
    • Elevation meshes.
  • Vehicle models:
    • Differential driven (2 & 4 wheel drive).
    • Ackermann steering (kinematic & dynamic steering, different mechanical drive models).
    • Ackermann steering with mechanical differentials of full grade.
  • Sensors:
    • 2D and 3D Lidars: Robots see each other, their own bodies, etc.
    • RGB cameras
    • Depth cameras
  • Interface to vehicles: Custom Python interface, or ROS. Choose among:
    • Raw access to forces and motor torques.
    • Twist commands (using internal controllers).

[8]ページ先頭

©2009-2025 Movatter.jp