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 articlepossibly containsoriginal 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
SoftwareDevelopersDevelopment statusLicense3D rendering enginePhysics engine3D modellerPlatforms supported

Technical information

[edit]
SoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotics middleware supportPrimary user interfaceHeadless simulation
GazeboC++SDF[1]/URDF,[2]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,[3] Plug-In Interface[4]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[5]
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
SoftwareMain programming languageFormats supportExtensibilityExternal APIsRobotic middleware supportPrimary user interfaceHeadless simulation

Infrastructure

[edit]

Support

[edit]
SoftwareMailing listAPI documentationPublic forum, help systemUser manualIssue trackerWikiChat
GazeboYes[6]Yes[7]Yes[8]Yes[9]Yes[10]No
RoboDKYes[11]Yes[12]Yes[13]Yes[14]Yes[15]NoUnknown
SimSparkYes[16]Yes[17]NoYes[18]Yes[19]Yes[20]Unknown
WebotsNoYes[21]Yes[22]Yes[23]Yes[24]Yes[25]Yes[26]
OpenRAVEYes[27]Yes[28]Yes[29]Yes[30]Yes[29]Yes[31]Unknown
CoppeliaSimNoYes[32]Yes[33]Yes[34]Yes[35]UnknownNo
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[36]cpplint[36]gtest and qtest[36]77.0%[36]53.3%[36]320k[36]106k[36]Jenkins[36]
RoboDKUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
SimSparkUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
Webotscppcheck[37]clang-format[38]unit tests[39]100% of API functions[40]master,[41] develop[42]~200k~50kGitHub Actions
OpenRAVEUnknownUnknownPython noseUnknownUnknownUnknownUnknownJenkins[43]
CoppeliaSimUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
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
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[44]Yes[45]Yes[46]Yes[47]Yes[48]Yes[49]Yes[50]
RoboDKNoNoNoYes[51]NoNoNoYes[51]
SimSparkYesNoNoMaybeMaybeYesNo
WebotsYesYesYes[52]YesYesYes[53]YesYes[54]
OpenRAVEYesUnknownUnknownYesYesYesYes
CoppeliaSimYesYesYesYesYesYesYesYes[55]
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[56]YesYes[57]
CoppeliaSimYesYesYesYesYes
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[58]YesYes[59]YesYesYesYes[60]Yes[60]
RoboDKUnknownUnknownUnknownUnknownUnknownYesYesYesYesYes
SimSparkYesYesYes[61]Partial[62]YesPartialUnknownUnknownNoNoSimSpark perceptors
WebotsYesYesYesYesYesYesYesYesYesYesWebots sensors
OpenRAVEYesYesYesYesYesYesYesUnknownYesYes
CoppeliaSimYesYesYesYesYesYesYesYesYesYes
SoftwareOdometryIMUCollisionGPSMonocular camerasStereo camerasDepth camerasOmnidirectional cameras2D laser scanners3D laser scannersFull list

References

[edit]
  1. ^OSRF."SDF".sdformat.org. Retrieved2019-04-27.
  2. ^"urdf - ROS Wiki".wiki.ros.org. Retrieved2017-10-06.
  3. ^"RoboDK API".GitHub. 22 October 2021.
  4. ^"RoboDK Plug-In Interface".GitHub. 16 October 2021.
  5. ^However, requires a connection on an X server for 3D rendering
  6. ^"Gazebo Community". Retrieved2019-04-27.
  7. ^"Gazebo API".Gazebo Community. Retrieved2019-04-27.
  8. ^"Gazebo Answers".Gazebo Community. Retrieved2019-04-27.
  9. ^"Gazebo Tutorials".Gazebo Community. Retrieved2019-04-27.
  10. ^"Gazebo Issue Tracker".Gazebo Community. Retrieved2019-04-27.
  11. ^RoboDK mailing list
  12. ^RoboDK API Documentation
  13. ^RoboDK Forum
  14. ^RoboDK Documentation
  15. ^RoboDK Bug tracker
  16. ^SimSpark mailing lists
  17. ^"SimSpark client protocols". Archived fromthe original on 2016-02-25. Retrieved2015-04-08.
  18. ^"SimSpark user manual (Wiki)". Archived fromthe original on 2015-02-25. Retrieved2015-04-08.
  19. ^SimSpark Tracker
  20. ^SimSpark Wiki[permanent dead link]
  21. ^Webots Reference Manual
  22. ^"Discussions · cyberbotics/Webots".GitHub.
  23. ^Webots User Guide
  24. ^Webots issues on GitHub
  25. ^Webots technical wiki on GitHub
  26. ^Webots Discord channel
  27. ^OpenRAVE mailing list
  28. ^OpenRAVE API
  29. ^abOpenRAVE Issue Tracker
  30. ^OpenRAVE User Guide
  31. ^OpenRAVE Wiki
  32. ^CoppeliaSim API
  33. ^Coppelia Robotics Forum
  34. ^CoppeliaSim User Manual
  35. ^Coppelia Robotics bug reports
  36. ^abcdefghOSRF."Gazebo".gazebosim.org. Retrieved2019-04-27.
  37. ^CppCheck
  38. ^Clang Format
  39. ^Unit tests
  40. ^API tests
  41. ^Webots master
  42. ^Webots develop
  43. ^Source
  44. ^OSRF."Gazebo : Tutorial : Beginner: Model Editor".gazebosim.org. Retrieved2019-04-27.
  45. ^OSRF."Gazebo : Tutorial : Aerodynamics".gazebosim.org. Retrieved2019-04-27.
  46. ^OSRF."Gazebo : Tutorial : Hydrodynamics".gazebosim.org. Retrieved2019-04-27.
  47. ^OSRF."Gazebo : ARIAC".gazebosim.org. Retrieved2019-04-27.
  48. ^OSRF."Gazebo : HAPTIX".gazebosim.org. Retrieved2019-04-27.
  49. ^"DARPA's legacy: Open source simulation for robotics development and testing".Robohub.org. Retrieved2019-04-27.
  50. ^OSRF."Gazebo : Tutorial : Make an animated model (actor)".gazebosim.org. Retrieved2019-04-27.
  51. ^abRoboDK robot library
  52. ^including Salamander robot
  53. ^including Nao, DARwIn-OP, Fujitsu HOAP2, Kondo KHR-2HV, KHR-3, etc.
  54. ^Webots robot models
  55. ^CoppeliaSim main features
  56. ^OpenRAVE Closed chains
  57. ^OpenRAVE Dual-arm example
  58. ^OSRF."Gazebo : Tutorial : Contact Sensor".gazebosim.org. Retrieved2019-04-27.
  59. ^OSRF."Gazebo : Tutorial : Camera Distortion".gazebosim.org. Retrieved2019-04-27.
  60. ^abOSRF."Gazebo : Tutorial : Intermediate: Velodyne".gazebosim.org. Retrieved2019-04-27.
  61. ^Collision detection uses a simplified model
  62. ^Possible, no model for noise
Main articles
Types
Classifications
Locomotion
Navigation andmapping
Research
Companies
Related
Retrieved from "https://en.wikipedia.org/w/index.php?title=Robotics_simulator&oldid=1305275097"
Category:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp