Skip to content
Vehicle dynamics simulator: ROS node and C++ library
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cfg
docs
externals Revert "box2d: ported to double" Aug 25, 2014
libmvsim
msg
mvsim_app
mvsim_node_src
mvsim_tutorial
.clang-format Applied clang-format as everywhere in MRPT Aug 25, 2017
.gitignore
.travis.sh
.travis.yml use docker in travis Dec 6, 2017
CHANGELOG.rst 0.2.0 Jun 28, 2018
CMakeLists.txt progress porting to latest mrpt 2.0 branch Jan 11, 2018
README.md
package.xml 0.2.0 Jun 28, 2018

README.md

  • Travis CI: Build Status
  • ROS build farm:
    • git master:
      • ROS Kinetic @ u16.04 Xenial Build Status
      • ROS Melodic @ u18.04 Bionic Build Status
    • Last released version:
      • ROS Melodic @ u18.04 Bionic: Build Status
      • ROS Kinetic @ u16.04 Xenial: Build Status

MultiVehicle simulator (libmvsim)

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. laser scanners).

This package includes the C++ library mvsim, a standalone app and a ROS node.

License: GNU General Public License version 3 Copyright (C) 2017 Jose Luis Blanco jlblanco@ual.es (University of Almeria) and collaborators

MvSim intro

Docs

  • The mvsim manual is the main reference document can be found in docs/user_manual.tex.
  • (TO-DO) ROS tutorials (Write me!!)
  • http://wiki.ros.org/mvsim

Main features

  • Lightweight in memory, CPU and library requirements.
  • Fully configurable via .xml "world" files.
  • 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:
    • Laser scanners: Robots see each other, their own bodies, etc.
  • Interface to vehicles: Choose among:
    • Raw access to forces and motor torques.
    • Twist commands (using internal controllers).

Compiling: standalone

Requisites:

  • A decent C++ compiler!
  • CMake >= 3.1
  • MRPT (>=1.5.4 from 1.5 series; or >=2.0.0): In Windows, build from sources or install precompiled binaries.
  • Box2D: Will use an embedded copy if no system version is found.

In Ubuntu, this will install all requirements:

 sudo apt-get install libmrpt-dev libbox2d-dev

ROS: Compiling & usage

  • Install: sudo apt-get install ros-$ROS_DISTRO-mvsim

  • Build: clone to your catkin workspace and build as usual

  • Usage: See docs and tutorials in http://wiki.ros.org/mvsim

Compiling: MOOS / OpenMORA

This package is already included in OpenMORA.

You can’t perform that action at this time.