General information
Actin | Energid TechnologiesActiveProprietaryOpenGLProprietaryProprietaryWindows, macOS, Linux, VxWorks, and RTOS-32. (RTX and QNX Planned)ARS | RALActiveBSDVTKODENoneLinux, macOS, WindowsGazebo | Open Source Robotics Foundation(OSRF)[1]ActiveApache 2.0OGREODE/Bullet/Simbody/DARTInternalLinux, macOS, WindowsMORSE | Academic community[2]ActiveBSDBlender game engineBulletBlenderLinux, BSD*, macOSOpenHRP | AISTActiveEclipseJava3DODE/InternalInternal[3]Linux, WindowsRoboDK | RoboDKActiveProprietaryOpenGLnoneInternalLinux, macOS, Windows, AndroidSimSparkO. Obst et al. (+26)ActiveGNU GPL (v2)InternalODENoneLinux, macOS, WindowsV-RepCoppelia RoboticsActiveProprietary/GNU GPLInternalODE/Bullet/VortexInternalLinux, macOS, WindowsWebots | CyberboticsActiveProprietaryOGREcustom version of ODEInternalLinux, macOS, Windows4DV-Sim4D VirtualizActiveProprietaryOGREPhysXInternalLinuxOpenRAVEOpenRAVE CommunityActiveGNU LGPLCoin3D/OpenSceneGraphODE/BulletInternalLinux, macOS, WindowsSoftware | Developers | Development status | License | 3D rendering engine | Physics engine | 3D modeller | Platforms supported | Technical information
Actin | C++SLDPRT,SLDASM,STEP, OBJ, STL, 3DS, Collada, VRML, URDF, XML, ECD, ECP, ECW, ECX, ECZ,Plugins (C++), APIUnknownNoneGUIYes (ActinRT)ARS | PythonUnknownPythonUnknownNoneUnknownUnknownGazebo | C++SDF[4]/URDF[5]Plugins (C++)C++ROS, Player, Sockets (protobuf messages)GUIYesMORSE | PythonUnknownPythonPython[6]Sockets, YARP, ROS, Pocolibs, MOOSCommand-lineYes[7]OpenHRP | C++VRMLPlugins (C++), APIC/C++, Python, JavaOpenRTM-aistGUIUnknownRoboDK | PythonSTEP, IGES, STL, WRMLPlugins (C++), APIC/C++, Python, MatlabSocketGUIUnknownSimSpark | C++, RubyRuby Scene GraphsMods (C++)Network (sexpr)Sockets (sexpr)GUI, SocketsUnknownV-Rep | LUAOBJ,STL,DXF, 3DS, Collada,[8] URDF[5][9]API, Add-ons, PluginsC/C++, Python, Java, Urbi, Matlab/OctaveSockets, ROSGUIYes[10]Webots | C++WBT, VRML'97Plugins (C++), APIC/C++, Python, Java, MatlabROS, URBI, NaoQIGUIYes[11]4DV-Sim | C++3DS,OBJ, MeshPlugins (C++), APIFMI/FMU, MatlabROS, Sockets, Plug & Play interfaces[12]GUIYesOpenRAVE | C++, PythonXML,VRML,OBJ,ColladaPlugins (C++), APIC/C++, Python, MatlabSockets, ROS, YARPGUI, SocketsYesSoftware | Main programming language | Formats support | Extensibility | External APIs | Robotic middleware support | Primary user interface | Headless simulation | Infrastructure
Support
Actin | NoYesNoYes[13]Yes (Internal)NoARS | UnknownUnknownUnknownUnknownUnknownUnknownGazebo | Yes[14]Yes[15]Yes[16]Yes[17]Yes[18]Yes[19]MORSE | Yes[20]N/ANoYes[21]Yes[22]NoOpenHRP | Yes[23]Yes[24]NoYes[25]Yes[26]NoRoboDK | Yes[27]Yes[28]NoYes[29]NoNoSimSpark | Yes[30]Yes[31]NoYes[32]Yes[33]Yes[34]V-Rep | NoYes[35]Yes[36]Yes[37]UnknownNoWebots | NoYes[38]Yes[39]Yes[40]Yes[41]Yes[42][better source needed]4DV-Sim | Yes[43]NoYes[44]YesYes[45]NoOpenRAVE | Yes[46]Yes[47]Yes[48]Yes[49]Yes[50]Yes[51]Software | Mailing List | API Documentation | Public Forum/Help System | User Manual | Issue Tracker | Wiki | Code Quality
Actin | UnknownUnknownUnknownUnknownUnknownUnknownUnknownJenkinsARS | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownGazebo | cppcheckcpplintgtest and qtest46.1%34.3%190.7k60.45kJenkinsMORSE | N/ApylintPython unittestsUnknownUnknown31.4k[52]9.0kJenkins, TravisOpenHRP | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownRoboDK | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownSimSpark | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownV-Rep | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownWebots | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown4DV-Sim | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownOpenRAVE | UnknownUnknownPython noseUnknownUnknownUnknownUnknownJenkins [53]Software | Static Code Checker | Style Checker | Test System(s) | Test Function coverage | Test Branch coverage | Lines of Code | Lines of Comments | Continuous Integration | Features
Actin | Yes (Tool Paths)YesYesYesYesARS | UnknownNoUnknownNoNoGazebo | UnknownNoUnknownNoNoMORSE | UnknownNoUnknownNoNoOpenHRP | UnknownNoUnknownNoNoRoboDK | UnknownNoUnknownYesNoSimSpark | UnknownNoUnknownNoNoV-Rep | UnknownNoUnknownNoNoWebots | UnknownNoUnknownNoNo4DV-Sim | UnknownNoUnknownNoNoOpenRAVE | UnknownNoUnknownNoNoSoftware | CAD to Motion | Dynamic Collision Avoidance | Relative End Effectors | Off-line Programming | Real-time Streaming Control | Families of robots
Actin | Yes (Can Include Manipulators)Yes (Can Include Manipulators)Yes (Can Include Manipulators)YesYesYesYesARS | UnknownUnknownUnknownUnknownUnknownUnknownUnknownGazebo | YesYesYes[54]YesYesYesYesMORSE | YesYesPartial[55]Some[56]NoNoYesOpenHRP | YesNoNoYesYesYesYesRoboDK | NoNoNoYes[57]NoNoNoSimSpark | YesNoNoMaybeMaybeYesNoV-Rep | YesYesNoYesYesYesYesWebots | YesYesYes[58]YesYesYes[59]Yes4DV-Sim | YesYesNoYesMaybeNoYesOpenRAVE | YesUnknownUnknownYesYesYesYesSoftware | UGV (ground mobile robot) | UAV (aerial robots) | AUV (underwater robots) | Robotic arms | Robotic hands (grasping simulation) | Humanoid robots | Human avatars | Supported actuators
Actin | YesYesMotion ConstraintsYesYesYesARS | UnknownUnknown UnknownUnknownUnknownGazebo | YesYes UnknownUnknownUnknownMORSE | Yes[60]YesMORSE actuatorsUnknownUnknownUnknownOpenHRP | YesYes UnknownUnknownUnknownRoboDK | UnknownUnknown UnknownUnknownUnknownSimSpark | YesNoSimSpark effectorsUnknownUnknownUnknownV-Rep | YesYes UnknownUnknownUnknownWebots | YesYes UnknownUnknownUnknown4DV-Sim | YesYes UnknownUnknownUnknownOpenRAVE | YesYesJoints,Extra ActuatorsYes[61]YesYes[62]Software | Generic kinematic chains | Force-controlled motion | Full list | Circular kinematic chains | Kinematically redundant chains | Bifurcated kinematic chains | Supported sensors
Actin | YesYesYesUnknownYesYesYesYesYesYes ARS | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown Gazebo | YesYesYesYesYesYesYesUnknownYesYes MORSE | YesYesYesYesYesUnknownYesUnknownYesYes[63]MORSE sensorsOpenHRP | UnknownYes[64]YesUnknownYesUnknownYesUnknownYesYes[65]OpenHRP sensorsRoboDK | UnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown SimSpark | YesYesYes[66]Partial[67]YesPartialUnknownUnknownNoNoSimSpark perceptorsV-Rep | UnknownYesYesYesYesUnknownYesUnknownYesYes Webots | YesYesYesYesYesYesYesUnknownYesYes 4DV-Sim | YesYesYesYesYesYesYesYesYesYes OpenRAVE | YesYesYesYesYesYesYesUnknownYesYes Software | Odometry | IMU | Collision | GPS | Monocular cameras | Stereo cameras | Depth cameras | Omnidirectional cameras | 2D laser scanners | 3D laser scanners | Full list | - Most Advanced Robotics Simulation Software Overview
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.
- http://www.ausy.tu-darmstadt.de/uploads/Site/EditPublication/ivaldi2014simulators.pdf(Tools for simulating humanoid robot dynamics:)
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