General information

SoftwareDevelopersDevelopment statusLicense3D rendering enginePhysics engine3D modellerPlatforms supported
ActinEnergid TechnologiesActive ProprietaryOpenGL Proprietary ProprietaryWindows, macOS, Linux, VxWorks, and RTOS-32. (RTX and QNX Planned)
ARSRALActive BSDVTKODENoneLinux, macOS, Windows
GazeboOpen Source Robotics Foundation(OSRF)[1]Active Apache 2.0OGREODE/Bullet/Simbody/DARTInternalLinux, macOS, Windows
MORSEAcademic community[2]Active BSDBlender game engineBulletBlenderLinux, BSD*, macOS
OpenHRPAISTActiveEclipseJava3DODE/InternalInternal[3]Linux, Windows
RoboDKRoboDKActive ProprietaryOpenGLnoneInternalLinux, macOS, Windows, Android
SimSparkO. Obst et al. (+26)ActiveGNU GPL (v2)InternalODENoneLinux, macOS, Windows
V-RepCoppelia RoboticsActive Proprietary/GNU GPLInternalODE/Bullet/VortexInternalLinux, macOS, Windows
WebotsCyberboticsActive ProprietaryOGREcustom version of ODEInternalLinux, macOS, Windows
4DV-Sim4D VirtualizActive ProprietaryOGREPhysXInternalLinux
OpenRAVEOpenRAVE CommunityActiveGNU LGPLCoin3D/OpenSceneGraphODE/BulletInternalLinux, macOS, Windows
SoftwareDevelopersDevelopment statusLicense3D rendering enginePhysics engine3D modellerPlatforms supported

Technical information

SoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotics middleware supportPrimary user interfaceHeadless simulation
ActinC++SLDPRT,SLDASM, STEP, OBJ, STL, 3DS, Collada, VRML, URDF, XML, ECD, ECP, ECW, ECX, ECZ,Plugins (C++), API UnknownNoneGUI Yes (ActinRT)
ARSPython UnknownPython UnknownNone Unknown Unknown
GazeboC++SDF[4]/URDF[5]Plugins (C++)C++ROS, Player, Sockets (protobuf messages)GUI Yes
MORSEPython UnknownPythonPython[6]Sockets, YARP, ROS, Pocolibs, MOOSCommand-line Yes[7]
OpenHRPC++VRMLPlugins (C++), APIC/C++, Python, JavaOpenRTM-aistGUI Unknown
RoboDKPythonSTEP, IGES, STL, WRMLPlugins (C++), APIC/C++, Python, MatlabSocketGUI Unknown
SimSparkC++, RubyRuby Scene GraphsMods (C++)Network (sexpr)Sockets (sexpr)GUI, Sockets Unknown
V-RepLUAOBJ,STL, DXF, 3DS, Collada,[8] URDF[5][9]API, Add-ons, PluginsC/C++, Python, Java, Urbi, Matlab/OctaveSockets, ROSGUI Yes[10]
WebotsC++WBT, VRML'97Plugins (C++), APIC/C++, Python, Java, MatlabROS, URBI, NaoQIGUI Yes[11]
4DV-SimC++3DS,OBJ, MeshPlugins (C++), APIFMI/FMU, MatlabROS, Sockets, Plug & Play interfaces[12]GUI Yes
OpenRAVEC++, PythonXML,VRML,OBJ, ColladaPlugins (C++), APIC/C++, Python, MatlabSockets, ROS, YARPGUI, Sockets Yes
SoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotic middleware supportPrimary user interfaceHeadless simulation

Infrastructure

Support
SoftwareMailing ListAPI DocumentationPublic Forum/Help SystemUser ManualIssue TrackerWiki
Actin No Yes No Yes[13] Yes (Internal) No
ARS Unknown Unknown Unknown Unknown Unknown Unknown
Gazebo Yes[14] Yes[15] Yes[16] Yes[17] Yes[18] Yes[19]
MORSE Yes[20] N/A No Yes[21] Yes[22] No
OpenHRP Yes[23] Yes[24] No Yes[25] Yes[26] No
RoboDK Yes[27] Yes[28] No Yes[29] No No
SimSpark Yes[30] Yes[31] No Yes[32] Yes[33] Yes[34]
V-Rep No Yes[35] Yes[36] Yes[37] Unknown No
Webots No Yes[38] Yes[39] Yes[40] Yes[41] Yes[42][better source needed]
4DV-Sim Yes[43] No Yes[44] Yes Yes[45] No
OpenRAVE Yes[46] Yes[47] Yes[48] Yes[49] Yes[50] Yes[51]
SoftwareMailing ListAPI DocumentationPublic Forum/Help SystemUser ManualIssue TrackerWiki
Code Quality
SoftwareStatic Code CheckerStyle CheckerTest System(s)Test Function coverageTest Branch coverageLines of CodeLines of CommentsContinuous Integration
Actin Unknown Unknown Unknown Unknown Unknown Unknown UnknownJenkins
ARS Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Gazebocppcheckcpplintgtest and qtest46.1%34.3%190.7k60.45kJenkins
MORSE N/ApylintPython unittests Unknown Unknown31.4k[52]9.0kJenkins, Travis
OpenHRP Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
RoboDK Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
SimSpark Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
V-Rep Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Webots Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
4DV-Sim Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
OpenRAVE Unknown UnknownPython nose Unknown Unknown Unknown UnknownJenkins [53]
SoftwareStatic Code CheckerStyle CheckerTest System(s)Test Function coverageTest Branch coverageLines of CodeLines of CommentsContinuous Integration

Features

SoftwareCAD to MotionDynamic Collision AvoidanceRelative End EffectorsOff-Line ProgrammingReal-Time Streaming Control
Actin Yes (Tool Paths) Yes Yes Yes Yes
ARS Unknown No Unknown No No
Gazebo Unknown No Unknown No No
MORSE Unknown No Unknown No No
OpenHRP Unknown No Unknown No No
RoboDK Unknown No Unknown Yes No
SimSpark Unknown No Unknown No No
V-Rep Unknown No Unknown No No
Webots Unknown No Unknown No No
4DV-Sim Unknown No Unknown No No
OpenRAVE Unknown No Unknown No No
SoftwareCAD to MotionDynamic Collision AvoidanceRelative End EffectorsOff-line ProgrammingReal-time Streaming Control
Families of robots
SoftwareUGV (ground mobile robot)UAV (aerial robots)AUV (underwater robots)Robotic armsRobotic hands (grasping simulation)Humanoid robotsHuman avatars
Actin Yes (Can Include Manipulators) Yes (Can Include Manipulators) Yes (Can Include Manipulators) Yes Yes Yes Yes
ARS Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Gazebo Yes Yes Yes[54] Yes Yes Yes Yes
MORSE Yes Yes Partial[55] Some[56] No No Yes
OpenHRP Yes No No Yes Yes Yes Yes
RoboDK No No No Yes[57] No No No
SimSpark Yes No No Maybe Maybe Yes No
V-Rep Yes Yes No Yes Yes Yes Yes
Webots Yes Yes Yes[58] Yes Yes Yes[59] Yes
4DV-Sim Yes Yes No Yes Maybe No Yes
OpenRAVE Yes Unknown Unknown Yes Yes Yes Yes
SoftwareUGV (ground mobile robot)UAV (aerial robots)AUV (underwater robots)Robotic armsRobotic hands (grasping simulation)Humanoid robotsHuman avatars
Supported actuators
SoftwareGeneric kinematic chainsForce-controlled motionFull listCircular kinematic chainsKinematically redundant chainsBifurcated kinematic chains
Actin Yes YesMotion Constraints Yes Yes Yes
ARS Unknown Unknown  Unknown Unknown Unknown
Gazebo Yes Yes  Unknown Unknown Unknown
MORSE Yes[60] YesMORSE actuators Unknown Unknown Unknown
OpenHRP Yes Yes  Unknown Unknown Unknown
RoboDK Unknown Unknown  Unknown Unknown Unknown
SimSpark Yes NoSimSpark effectors Unknown Unknown Unknown
V-Rep Yes Yes  Unknown Unknown Unknown
Webots Yes Yes  Unknown Unknown Unknown
4DV-Sim Yes Yes  Unknown Unknown Unknown
OpenRAVE Yes YesJoints,Extra Actuators Yes[61] Yes Yes[62]
SoftwareGeneric kinematic chainsForce-controlled motionFull listCircular kinematic chainsKinematically redundant chainsBifurcated kinematic chains
Supported sensors
SoftwareOdometryIMUCollisionGPSMonocular camerasStereo camerasDepth camerasOmnidirectional cameras2D laser scanners3D laser scannersFull list
Actin Yes Yes Yes Unknown Yes Yes Yes Yes Yes Yes 
ARS Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown 
Gazebo Yes Yes Yes Yes Yes Yes Yes Unknown Yes Yes 
MORSE Yes Yes Yes Yes Yes Unknown Yes Unknown Yes Yes[63]MORSE sensors
OpenHRP Unknown Yes[64] Yes Unknown Yes Unknown Yes Unknown Yes Yes[65]OpenHRP sensors
RoboDK Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown 
SimSpark Yes Yes Yes[66] Partial[67] Yes Partial Unknown Unknown No NoSimSpark perceptors
V-Rep Unknown Yes Yes Yes Yes Unknown Yes Unknown Yes Yes 
Webots Yes Yes Yes Yes Yes Yes Yes Unknown Yes Yes 
4DV-Sim Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes 
OpenRAVE Yes Yes Yes Yes Yes Yes Yes Unknown Yes Yes 
SoftwareOdometryIMUCollisionGPSMonocular camerasStereo camerasDepth camerasOmnidirectional cameras2D laser scanners3D laser scannersFull list

Benefits of simulation

  • Reduce costs involved in robot production;
  • Diagnose source code that controls a particular resource or a mix of resources;
  • Simulate various alternatives without involving physical costs;
  • Robot or components can be tested before implementation;
  • Simulation can be done in stages, beneficial for complex projects;
  • Demonstration of a system to determine if is viable or not;
  • Compatibility with a wide range of programming languages;
  • Shorter delivery times.

Disadvantages of simulation

  • An application can simulate just what it is programmed to simulate – it will not simulate internal or external factors which are overlooked in the development phase;
  • A robot can encounter many more scenarios in the real world than there can be simulated.

Abstract
— The number of tools for dynamics simulation has
grown substantially in the last few years. Humanoid robots,
in particular, make extensive use of such tools for a variety
of applications, from simulating contacts to planning complex
motions. It is necessary for the humanoid robotics community
to have a systematic evaluation to assist in choosing which
of the available tools is best for their research. This paper
surveys the state of the art in dynamics simulation and
reports on the analysis of an online survey about the use
of dynamics simulation in the robotics research community.
The major requirements for robotics researchers are better
physics engines and open-source software. Despite the numerous
tools, there is not a general-purpose simulator which dominates
the others in terms of performance or application. However,
for humanoid robotics, Gazebo emerges as the best choice
among the open-source projects, while V-Rep is the prefered
commercial simulator. The survey report has been instrumental
for choosing Gazebo as the base for the new simulator for the iCub humanoid robot

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐