Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Robotics simulator

From Wikipedia, the free encyclopedia
Simulator to create applications for physical robots
This articlemay containoriginal research. Pleaseimprove it byverifying the claims made and addinginline citations. Statements consisting only of original research should be removed.(August 2014) (Learn how and when to remove this message)

Arobotics simulator is a simulator used to create an application for a physicalrobot without depending on the physical machine, thus saving cost and time. In some case, such applications can be transferred onto a physical robot (or rebuilt) without modification.

The termrobotics simulator can refer to several different robotics simulation applications. For example, inmobile robotics applications,behavior-based robotics simulators allow users to create simple worlds of rigid objects and light sources and to program robots to interact with these worlds. Behavior-based simulation allows for actions that are more biotic in nature when compared to simulators that are more binary, or computational. Also, behavior-based simulators maylearn from mistakes and can demonstrate theanthropomorphic quality of tenacity.

Robologix robotics simulator

One of the most popular applications for robotics simulators is for3D modeling and rendering of a robot and its environment. This type of robotics software has a simulator that is a virtual robot, which can emulate the motion of a physical robot in a real work envelope. Some robotics simulators use aphysics engine for more realistic motion generation of the robot. The use of a robotics simulator to develop a robotics control program is highly recommended regardless of whether a physical robot is available or not. The simulator allows for robotics programs to be conveniently written anddebugged off-line with the final version of the program tested on a physical robot. This applies mainly toindustrial robotic applications, since the success of off-line programming depends on how similar the physical environment of a robot is to a simulated environment.

Sensor-based robot actions are much more difficult to simulate and/or to program off-line, since the robot motion depends on instantaneous sensor readings in the real world.

Features

[edit]

Modern simulators tend to provide the following features:

  • Fast robot prototyping:
    • Using the own simulator as creation tool
    • Using external tools
  • Physics engines for realistic movements: Most simulators useBullet,ODE orPhysX.
  • Realistic 3d rendering: Standard 3d modeling tools or third-party tools can be used to build the environments.
  • Dynamic robot bodies with scripting:C,C++,Perl,Python,Java,URBI, andMATLAB languages used by Webots; C++ used byGazebo.

Simulators

[edit]

Among the newest technologies available today for programming are those which use a virtual simulation. Simulations with the use of virtual models of the working environment and the robots themselves can offer advantages to both the company and programmer. By using a simulation, costs are reduced, and robots can be programmed off-line which eliminates any down-time for an assembly line. Robot actions and assembly parts can be visualized in a three-dimensional virtual environment months before prototypes are even produced. Writing code for a simulation is also easier than writing code for a physical robot. While the move toward virtual simulations for programming robots is a step forward in user interface design, many such applications are only in their infancy.

General information

[edit]
SoftwareDevelopersDevelopment statusLicense3D rendering enginePhysics engine3D modellerPlatforms supported
GazeboOpen Source Robotics Foundation (OSRF)ActiveApache 2.0OGREODE,Bullet,Simbody,DARTInternalLinux, macOS, Windows
RoboDKRoboDKActiveProprietaryOpenGLGravityplug-inInternalLinux, macOS, Windows, Android, iOS, Debian
SimSparkO. Obst et al. (+26)ActiveGNU GPL (v2)InternalODENoneLinux, macOS, Windows
WebotsCyberbotics Ltd.ActiveApache 2.0Internal (WREN)Fork of ODEInternalLinux, macOS, Windows
OpenRAVEOpenRAVE CommunityActiveGNU LGPLCoin3D,OpenSceneGraphODE,BulletInternalLinux, macOS, Windows
CoppeliaSimCoppelia RoboticsActiveDual: commercial,GNU GPLInternalMuJoCo,Bullet,ODE,Vortex,NewtonInternalLinux, macOS, Windows
ENCY Robot[1]ENCY SoftwareActiveProprietaryInternal (proprietary ENCY X platform)[2]Internal (3D modeling)[3]Windows[4]
SoftwareDevelopersDevelopment statusLicense3D rendering enginePhysics engine3D modellerPlatforms supported

Technical information

[edit]
SoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotics middleware supportPrimary user interfaceHeadless simulation
GazeboC++SDF[5]/URDF,[6]OBJ,STL,COLLADAPlug-ins (C++)C++ROS, Player, sockets (protobuf messages)GUIYes
RoboDKPythonSLDPRT,SLDASM,STEP,OBJ,STL,3DS,COLLADA,VRML,Robot Operating SystemURDF,Rhinoceros 3D, ...API,[7] Plug-In Interface[8]Python, C/C++, C#, Matlab, ...SocketGUIYes
SimSparkC++,RubyRuby Scene GraphsMods (C++)Network (sexpr)Sockets (sexpr)GUI, socketsUnknown
WebotsC++WBT,VRML,X3D,3DS,Blender,BVH,COLLADA,FBX,STL,OBJ, URDFAPI, PROTOs, plug-ins (C/C++)C, C++, Python, Java, Matlab, ROSSockets, ROS, NaoQIGUIYes[9]
OpenRAVEC++, PythonXML,VRML,OBJ,COLLADAPlug-ins (C++), APIC/C++, Python, MatlabSockets, ROS, YARPGUI, socketsYes
CoppeliaSimC++, Python,Lua3DS,Blender,COLLADA,STL,OBJ, URDF, SDF, GLTF, XMLPlug-ins (C/C++), embedded scripts (Python, Lua), remote API (C, C++, Python, Java, MATLAB, Octave), add-ons (Python, Lua)C, C++, Python, Java, MATLAB, Octave, ROS, ROS 2.0Sockets, ROS, ROS 2.0,ZeroMQGUIYes
ENCY RobotDelphi, C#, C++[10]IGES, STEP, STL, DXF, VRML, Rhinoceros (3DM), Parasolid (x_t/x_b), SolidWorks (SLDPRT/SLDASM), Solid Edge (PAR/PSM/ASM/PWR), PLY, AMF, JT, PLMXML (and others)[11]

Add-ins: Alibre Design, Autodesk Inventor, IronCAD, CADbro, CAXA 3D, FreeCAD, KeyCreator, Siemens NX, Rhinoceros, SolidCAM, SolidEdge, SOLIDWORKS, SpaceClaim, ZW3D, Onshape[12]

API; scripting[13]C#, Delphi, C++ (CAMIPC / IPC)[14]NoneGUIYes[15]
SoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotic middleware supportPrimary user interfaceHeadless simulation

Infrastructure

[edit]

Support

[edit]
SoftwareMailing listAPI documentationPublic forum, help systemUser manualIssue trackerWikiChat
GazeboYes[16]Yes[17]Yes[18]Yes[19]Yes[20]No
RoboDKYes[21]Yes[22]Yes[23]Yes[24]Yes[25]NoUnknown
SimSparkYes[26]Yes[27]NoYes[28]Yes[29]Yes[30]Unknown
WebotsNoYes[31]Yes[32]Yes[33]Yes[34]Yes[35]Yes[36]
OpenRAVEYes[37]Yes[38]Yes[39]Yes[40]Yes[39]Yes[41]Unknown
CoppeliaSimNoYes[42]Yes[43]Yes[44]Yes[45]UnknownNo
ENCY RobotYes[46]Yes[47]YesYes[48]UnknownNoYes[49]
SoftwareMailing listAPI documentationPublic forum, help systemUser manualIssue trackerWiki

Code quality

[edit]
SoftwareStatic code checkerStyle checkerTest system(s)Test function coverageTest branch coverageLines of codeLines of commentsContinuous integration
Gazebocppcheck[50]cpplint[50]gtest and qtest[50]77.0%[50]53.3%[50]320k[50]106k[50]Jenkins[50]
RoboDKUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
SimSparkUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
Webotscppcheck[51]clang-format[52]unit tests[53]100% of API functions[54]master,[55] develop[56]~200k~50kGitHub Actions
OpenRAVEUnknownUnknownPython noseUnknownUnknownUnknownUnknownJenkins[57]
CoppeliaSimUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
ENCY RobotUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
SoftwareStatic code checkerStyle checkerTest system(s)Test function coverageTest branch coverageLines of codeLines of commentsContinuous integration

Features

[edit]
SoftwareCAD to motionDynamic collision avoidanceRelative end effectorsOff-line programmingReal-time streaming control of hardware
GazeboUnknownYesYesYesYes
RoboDKYesYesYesYesYes
SimSparkUnknownNoUnknownNoNo
WebotsUnknownYesYesYesYes
OpenRAVEUnknownNoUnknownNoNo
CoppeliaSimUnknownYesYesYesYes
ENCY RobotYes[58]Yes[59]Yes (Tool-to-part / part-to-tool)[60]Yes[61]Yes (via ENCY Hyper real-time execution)[62]
SoftwareCAD to motionDynamic collision avoidanceRelative end effectorsOff-line programmingReal-time streaming control

Robot families

[edit]
SoftwareUGV (ground mobile robot)UAV (aerial robots)AUV (underwater robots)Robotic armsRobotic hands (grasping simulation)Humanoid robotsHuman avatarsFull list
GazeboYes[63]Yes[64]Yes[65]Yes[66]Yes[67]Yes[68]Yes[69]
RoboDKNoNoNoYes[70]NoNoNoYes[70]
SimSparkYesNoNoMaybeMaybeYesNo
WebotsYesYesYes[71]YesYesYes[72]YesYes[73]
OpenRAVEYesUnknownUnknownYesYesYesYes
CoppeliaSimYesYesYesYesYesYesYesYes[74]
ENCY RobotNoNoNoYes[75]NoNoNoNo
SoftwareUGV (ground mobile robot)UAV (aerial robots)AUV (underwater robots)Robotic armsRobotic hands (grasping simulation)Humanoid robotsHuman avatarsFull list

Supported actuators

[edit]
SoftwareGeneric kinematic chainsForce-controlled motionFull listCircular kinematic chainsKinematically redundant chainsBifurcated kinematic chains
GazeboYesYesYesYesYes
RoboDKUnknownUnknownUnknownUnknownUnknown
SimSparkYesNoSimSpark effectorsUnknownUnknownUnknown
WebotsYesYesWebots actuatorsYesYesYes
OpenRAVEYesYesJoints,Extra ActuatorsYes[76]YesYes[77]
CoppeliaSimYesYesYesYesYes
ENCY RobotYes[78]NoUnknownYes (redundancy / external axes)[79]Unknown
SoftwareGeneric kinematic chainsForce-controlled motionFull listCircular kinematic chainsKinematically redundant chainsBifurcated kinematic chains

Supported sensors

[edit]
SoftwareOdometryIMUCollisionGPSMonocular camerasStereo camerasDepth camerasOmnidirectional cameras2D laser scanners3D laser scannersFull list
GazeboYesYesYes[80]YesYes[81]YesYesYesYes[82]Yes[82]
RoboDKUnknownUnknownUnknownUnknownUnknownYesYesYesYesYes
SimSparkYesYesYes[83]Partial[84]YesPartialUnknownUnknownNoNoSimSpark perceptors
WebotsYesYesYesYesYesYesYesYesYesYesWebots sensors
OpenRAVEYesYesYesYesYesYesYesUnknownYesYes
CoppeliaSimYesYesYesYesYesYesYesYesYesYes
ENCY RobotUnknownUnknownYes[85]UnknownUnknownUnknownUnknownUnknownUnknownUnknown
SoftwareOdometryIMUCollisionGPSMonocular camerasStereo camerasDepth camerasOmnidirectional cameras2D laser scanners3D laser scannersFull list

References

[edit]
  1. ^"ENCY Robot: Offline robot programming solution".encycam.com. Retrieved2026-01-07.
  2. ^"ENCY: CAD/CAM software for a new generation".encycam.com. Retrieved2026-01-07.
  3. ^"ENCY Robot configurations (2D sketching, 3D modeling)".docs.encycam.com. Retrieved2026-01-07.
  4. ^"Program installation and launch (Windows)".docs.encycam.com. Retrieved2026-01-07.
  5. ^OSRF."SDF".sdformat.org. Retrieved2019-04-27.
  6. ^"urdf - ROS Wiki".wiki.ros.org. Retrieved2017-10-06.
  7. ^"RoboDK API".GitHub. 22 October 2021.
  8. ^"RoboDK Plug-In Interface".GitHub. 16 October 2021.
  9. ^However, requires a connection on an X server for 3D rendering
  10. ^"Supported programming languages (CAMAPI)".docs.encycam.com. Retrieved2026-01-07.
  11. ^"ENCY Robot configurations (CAD imports list)".docs.encycam.com. Retrieved2026-01-07.
  12. ^"Addin's list (ENCY Robot User Manual)".docs.encycam.com. Retrieved2026-01-07.
  13. ^"CAMAPI (SDK/API documentation)".docs.encycam.com. Retrieved2026-01-07.
  14. ^"Interaction with external applications (CAMIPC)".docs.encycam.com. Retrieved2026-01-07.
  15. ^"CAMIPC can open ENCY without any windows".docs.encycam.com. Retrieved2026-01-07.
  16. ^"Gazebo Community". Retrieved2019-04-27.
  17. ^"Gazebo API".Gazebo Community. Retrieved2019-04-27.
  18. ^"Gazebo Answers".Gazebo Community. Retrieved2019-04-27.
  19. ^"Gazebo Tutorials".Gazebo Community. Retrieved2019-04-27.
  20. ^"Gazebo Issue Tracker".Gazebo Community. Retrieved2019-04-27.
  21. ^RoboDK mailing list
  22. ^RoboDK API Documentation
  23. ^RoboDK Forum
  24. ^RoboDK Documentation
  25. ^RoboDK Bug tracker
  26. ^SimSpark mailing lists
  27. ^"SimSpark client protocols". Archived fromthe original on 2016-02-25. Retrieved2015-04-08.
  28. ^"SimSpark user manual (Wiki)". Archived fromthe original on 2015-02-25. Retrieved2015-04-08.
  29. ^SimSpark Tracker
  30. ^SimSpark Wiki[permanent dead link]
  31. ^Webots Reference Manual
  32. ^"Discussions · cyberbotics/Webots".GitHub.
  33. ^Webots User Guide
  34. ^Webots issues on GitHub
  35. ^Webots technical wiki on GitHub
  36. ^Webots Discord channel
  37. ^OpenRAVE mailing list
  38. ^OpenRAVE API
  39. ^abOpenRAVE Issue Tracker
  40. ^OpenRAVE User Guide
  41. ^OpenRAVE Wiki
  42. ^CoppeliaSim API
  43. ^Coppelia Robotics Forum
  44. ^CoppeliaSim User Manual
  45. ^Coppelia Robotics bug reports
  46. ^"Technical support (registration for update notifications)".docs.encycam.com. Retrieved2026-01-07.
  47. ^"CAMAPI documentation".docs.encycam.com. Retrieved2026-01-07.
  48. ^"ENCY Robot User Manual".docs.encycam.com. Retrieved2026-01-07.
  49. ^"Online features: Collaboration / chat".docs.encycam.com. Retrieved2026-01-07.
  50. ^abcdefghOSRF."Gazebo".gazebosim.org. Retrieved2019-04-27.
  51. ^CppCheck
  52. ^Clang Format
  53. ^Unit tests
  54. ^API tests
  55. ^Webots master
  56. ^Webots develop
  57. ^Source
  58. ^"ENCY Robot: toolpath calculation / kinematics / simulation".encycam.com. Retrieved2026-01-07.
  59. ^"ENCY Robot: collision avoidance / collision detection".encycam.com. Retrieved2026-01-07.
  60. ^"ENCY Robot: Tool-to-part and part-to-tool".encycam.com. Retrieved2026-01-07.
  61. ^"ENCY Robot: Offline robot programming solution".encycam.com. Retrieved2026-01-07.
  62. ^"ENCY Hyper: execute on the real robot in Run Mode (real time)".encycam.com. Retrieved2026-01-07.
  63. ^OSRF."Gazebo : Tutorial : Beginner: Model Editor".gazebosim.org. Retrieved2019-04-27.
  64. ^OSRF."Gazebo : Tutorial : Aerodynamics".gazebosim.org. Retrieved2019-04-27.
  65. ^OSRF."Gazebo : Tutorial : Hydrodynamics".gazebosim.org. Retrieved2019-04-27.
  66. ^OSRF."Gazebo : ARIAC".gazebosim.org. Retrieved2019-04-27.
  67. ^OSRF."Gazebo : HAPTIX".gazebosim.org. Retrieved2019-04-27.
  68. ^"DARPA's legacy: Open source simulation for robotics development and testing".Robohub.org. Retrieved2019-04-27.
  69. ^OSRF."Gazebo : Tutorial : Make an animated model (actor)".gazebosim.org. Retrieved2019-04-27.
  70. ^abRoboDK robot library
  71. ^including Salamander robot
  72. ^including Nao, DARwIn-OP, Fujitsu HOAP2, Kondo KHR-2HV, KHR-3, etc.
  73. ^Webots robot models
  74. ^CoppeliaSim main features
  75. ^"ENCY Robot: complete robotic cell simulation".encycam.com. Retrieved2026-01-07.
  76. ^OpenRAVE Closed chains
  77. ^OpenRAVE Dual-arm example
  78. ^"ENCY Robot: robot kinematics management".encycam.com. Retrieved2026-01-07.
  79. ^"ENCY Robot: redundant axes / external axes".encycam.com. Retrieved2026-01-07.
  80. ^OSRF."Gazebo : Tutorial : Contact Sensor".gazebosim.org. Retrieved2019-04-27.
  81. ^OSRF."Gazebo : Tutorial : Camera Distortion".gazebosim.org. Retrieved2019-04-27.
  82. ^abOSRF."Gazebo : Tutorial : Intermediate: Velodyne".gazebosim.org. Retrieved2019-04-27.
  83. ^Collision detection uses a simplified model
  84. ^Possible, no model for noise
  85. ^"ENCY Robot: collision detection".encycam.com. Retrieved2026-01-07.
Main articles
Types
Classifications
Locomotion
Navigation andmapping
Research
Companies
Related
Retrieved from "https://en.wikipedia.org/w/index.php?title=Robotics_simulator&oldid=1332437339"
Category:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp