Robotic simulator software comparison (Gazebo,V-rep,etc)

来源:互联网 发布:plc仿真软件安装 编辑:程序博客网 时间:2024/05/22 15:53

  • zhihu

  • Robotics simulator(WIKI)

General information

SoftwareDevelopersDevelopment statusLicense3D rendering enginePhysics engine3D modellerPlatforms supportedActinEnergid TechnologiesActiveProprietaryOpenGLProprietaryProprietaryWindows, macOS, Linux, VxWorks, and RTOS-32. (RTX and QNX Planned)ARSRALActiveBSDVTKODENoneLinux, macOS, WindowsGazeboOpen Source Robotics Foundation(OSRF)[1]ActiveApache 2.0OGREODE/Bullet/Simbody/DARTInternalLinux, macOS, WindowsMORSEAcademic community[2]ActiveBSDBlender game engineBulletBlenderLinux, BSD*, macOSOpenHRPAISTActiveEclipseJava3DODE/InternalInternal[3]Linux, WindowsRoboDKRoboDKActiveProprietaryOpenGLnoneInternalLinux, macOS, Windows, AndroidSimSparkO. Obst et al. (+26)ActiveGNU GPL (v2)InternalODENoneLinux, macOS, WindowsV-RepCoppelia RoboticsActiveProprietary/GNU GPLInternalODE/Bullet/VortexInternalLinux, macOS, WindowsWebotsCyberboticsActiveProprietaryOGREcustom version of ODEInternalLinux, macOS, Windows4DV-Sim4D VirtualizActiveProprietaryOGREPhysXInternalLinuxOpenRAVEOpenRAVE CommunityActiveGNU LGPLCoin3D/OpenSceneGraphODE/BulletInternalLinux, macOS, WindowsSoftwareDevelopersDevelopment statusLicense3D rendering enginePhysics engine3D modellerPlatforms supported

Technical information

SoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotics middleware supportPrimary user interfaceHeadless simulationActinC++SLDPRT,SLDASM,STEP, OBJ, STL, 3DS, Collada, VRML, URDF, XML, ECD, ECP, ECW, ECX, ECZ,Plugins (C++), APIUnknownNoneGUIYes (ActinRT)ARSPythonUnknownPythonUnknownNoneUnknownUnknownGazeboC++SDF[4]/URDF[5]Plugins (C++)C++ROS, Player, Sockets (protobuf messages)GUIYesMORSEPythonUnknownPythonPython[6]Sockets, YARP, ROS, Pocolibs, MOOSCommand-lineYes[7]OpenHRPC++VRMLPlugins (C++), APIC/C++, Python, JavaOpenRTM-aistGUIUnknownRoboDKPythonSTEP, IGES, STL, WRMLPlugins (C++), APIC/C++, Python, MatlabSocketGUIUnknownSimSparkC++, RubyRuby Scene GraphsMods (C++)Network (sexpr)Sockets (sexpr)GUI, SocketsUnknownV-RepLUAOBJ,STL,DXF, 3DS, Collada,[8] URDF[5][9]API, Add-ons, PluginsC/C++, Python, Java, Urbi, Matlab/OctaveSockets, ROSGUIYes[10]WebotsC++WBT, VRML'97Plugins (C++), APIC/C++, Python, Java, MatlabROS, URBI, NaoQIGUIYes[11]4DV-SimC++3DS,OBJ, MeshPlugins (C++), APIFMI/FMU, MatlabROS, Sockets, Plug & Play interfaces[12]GUIYesOpenRAVEC++, PythonXML,VRML,OBJ,ColladaPlugins (C++), APIC/C++, Python, MatlabSockets, ROS, YARPGUI, SocketsYesSoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotic middleware supportPrimary user interfaceHeadless simulation

Infrastructure

Support

SoftwareMailing ListAPI DocumentationPublic Forum/Help SystemUser ManualIssue TrackerWikiActinNoYesNoYes[13]Yes (Internal)NoARSUnknownUnknownUnknownUnknownUnknownUnknownGazeboYes[14]Yes[15]Yes[16]Yes[17]Yes[18]Yes[19]MORSEYes[20]N/ANoYes[21]Yes[22]NoOpenHRPYes[23]Yes[24]NoYes[25]Yes[26]NoRoboDKYes[27]Yes[28]NoYes[29]NoNoSimSparkYes[30]Yes[31]NoYes[32]Yes[33]Yes[34]V-RepNoYes[35]Yes[36]Yes[37]UnknownNoWebotsNoYes[38]Yes[39]Yes[40]Yes[41]Yes[42][better source needed]4DV-SimYes[43]NoYes[44]YesYes[45]NoOpenRAVEYes[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 IntegrationActinUnknownUnknownUnknownUnknownUnknownUnknownUnknownJenkinsARSUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownGazebocppcheckcpplintgtest and qtest46.1%34.3%190.7k60.45kJenkinsMORSEN/ApylintPython unittestsUnknownUnknown31.4k[52]9.0kJenkins, TravisOpenHRPUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownRoboDKUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownSimSparkUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownV-RepUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownWebotsUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown4DV-SimUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownOpenRAVEUnknownUnknownPython noseUnknownUnknownUnknownUnknownJenkins [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 ControlActinYes (Tool Paths)YesYesYesYesARSUnknownNoUnknownNoNoGazeboUnknownNoUnknownNoNoMORSEUnknownNoUnknownNoNoOpenHRPUnknownNoUnknownNoNoRoboDKUnknownNoUnknownYesNoSimSparkUnknownNoUnknownNoNoV-RepUnknownNoUnknownNoNoWebotsUnknownNoUnknownNoNo4DV-SimUnknownNoUnknownNoNoOpenRAVEUnknownNoUnknownNoNoSoftwareCAD 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 avatarsActinYes (Can Include Manipulators)Yes (Can Include Manipulators)Yes (Can Include Manipulators)YesYesYesYesARSUnknownUnknownUnknownUnknownUnknownUnknownUnknownGazeboYesYesYes[54]YesYesYesYesMORSEYesYesPartial[55]Some[56]NoNoYesOpenHRPYesNoNoYesYesYesYesRoboDKNoNoNoYes[57]NoNoNoSimSparkYesNoNoMaybeMaybeYesNoV-RepYesYesNoYesYesYesYesWebotsYesYesYes[58]YesYesYes[59]Yes4DV-SimYesYesNoYesMaybeNoYesOpenRAVEYesUnknownUnknownYesYesYesYesSoftwareUGV (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 chainsActinYesYesMotion ConstraintsYesYesYesARSUnknownUnknown UnknownUnknownUnknownGazeboYesYes UnknownUnknownUnknownMORSEYes[60]YesMORSE actuatorsUnknownUnknownUnknownOpenHRPYesYes UnknownUnknownUnknownRoboDKUnknownUnknown UnknownUnknownUnknownSimSparkYesNoSimSpark effectorsUnknownUnknownUnknownV-RepYesYes UnknownUnknownUnknownWebotsYesYes UnknownUnknownUnknown4DV-SimYesYes UnknownUnknownUnknownOpenRAVEYesYesJoints,Extra ActuatorsYes[61]YesYes[62]SoftwareGeneric kinematic chainsForce-controlled motionFull listCircular kinematic chainsKinematically redundant chainsBifurcated kinematic chains

Supported sensors

SoftwareOdometryIMUCollisionGPSMonocular camerasStereo camerasDepth camerasOmnidirectional cameras2D laser scanners3D laser scannersFull listActinYesYesYesUnknownYesYesYesYesYesYes ARSUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown GazeboYesYesYesYesYesYesYesUnknownYesYes MORSEYesYesYesYesYesUnknownYesUnknownYesYes[63]MORSE sensorsOpenHRPUnknownYes[64]YesUnknownYesUnknownYesUnknownYesYes[65]OpenHRP sensorsRoboDKUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown SimSparkYesYesYes[66]Partial[67]YesPartialUnknownUnknownNoNoSimSpark perceptorsV-RepUnknownYesYesYesYesUnknownYesUnknownYesYes WebotsYesYesYesYesYesYesYesUnknownYesYes 4DV-SimYesYesYesYesYesYesYesYesYesYes OpenRAVEYesYesYesYesYesYesYesUnknownYesYes SoftwareOdometryIMUCollisionGPSMonocular camerasStereo camerasDepth camerasOmnidirectional cameras2D laser scanners3D laser scannersFull 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.

  • ausy.tu-darmstadt.de/up

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

原创粉丝点击