로봇 시뮬레이터

Robotics simulator

로봇 시뮬레이터는 실제 기계에 의존하지 않고 물리적 로봇용 애플리케이션을 만들기 위해 사용되는 시뮬레이터로, 비용과 시간을 절약합니다.경우에 따라 이러한 애플리케이션은 수정 없이 물리적 로봇으로 전송(또는 재구성)될 수 있습니다.

로봇 시뮬레이터라는 용어는 몇 가지 다른 로봇 시뮬레이션 애플리케이션을 나타낼 수 있습니다.예를 들어, 모바일 로봇 애플리케이션에서는 행동 기반 로봇 시뮬레이터를 통해 사용자가 단단한 물체와 광원으로 이루어진 단순한 세계를 만들고 로봇이 이러한 세계와 상호 작용하도록 프로그래밍할 수 있습니다.행동 기반 시뮬레이션을 통해 2진수 또는 계산적인 시뮬레이터에 비해 본질적으로 더 생물학적인 액션을 수행할 수 있습니다.또한 행동 기반 시뮬레이터는 실수로부터 "학습"할 수 있으며, 의인화된 끈기의 품질을 보여줄 수 있다.

Robologix 로봇 시뮬레이터.

로봇 시뮬레이터의 가장 인기 있는 응용 프로그램 중 하나는 로봇과 로봇 환경의 3D 모델링 및 렌더링입니다.이런 종류의 로봇 소프트웨어는 실제 작업 봉투에 실제 로봇의 움직임을 모방할 수 있는 가상 로봇인 시뮬레이터를 가지고 있다.일부 로봇 시뮬레이터는 로봇의 보다 사실적인 모션 생성을 위해 물리 엔진을 사용합니다.로봇 제어 프로그램 개발을 위해 실제 로봇의 사용 가능 여부와 관계없이 로봇 시뮬레이터를 사용하는 것이 좋습니다.시뮬레이터는 실제 로봇에서 테스트된 최종 버전의 프로그램을 오프라인에서 편리하게 작성하고 디버깅할 수 있게 해준다.오프라인 프로그래밍의 성공 여부는 로봇의 실제 환경이 시뮬레이션 환경과 얼마나 유사한지에 달려 있기 때문에 이는 주로 산업용 로봇 애플리케이션에만 적용됩니다.

센서 기반 로봇 동작은 실제 환경에서 순간 센서 판독치에 따라 달라지기 때문에 시뮬레이션 및/또는 오프라인 프로그래밍이 훨씬 더 어렵습니다.

특징들

최신 시뮬레이터는 다음과 같은 기능을 제공하는 경향이 있습니다.

  • 빠른 로봇 프로토타이핑
    • 자체 시뮬레이터를 제작 도구로 사용.
    • 외부 도구 사용.
  • 사실적인 움직임을 위한 물리 엔진.대부분의 시뮬레이터는 Bullet, ODE 또는 PhysX사용합니다.
  • 사실적인 3D 렌더링.표준 3D 모델링 도구 또는 타사 도구를 사용하여 환경을 구축할 수 있습니다.
  • 스크립팅 기능이 있는 동적 로봇 본체. 사이트에서 사용되는 C, C++, Perl, Python, Java, URBI, MATLAB 언어, Gazebo에서 사용되는 Python.

시뮬레이터

오늘날 프로그래밍에 사용할 수 있는 최신 기술로는 가상 시뮬레이션을 사용하는 기술이 있습니다.작업 환경과 로봇 자체의 가상 모델을 사용한 시뮬레이션은 회사와 프로그래머 모두에게 이점을 제공할 수 있습니다.시뮬레이션을 사용함으로써 비용을 절감하고 로봇을 오프라인으로 프로그래밍할 수 있어 조립 라인의 다운타임을 없앨 수 있습니다.로봇 동작 및 조립 부품은 프로토타입을 제작하기 몇 개월 전에 3차원 가상 환경에서 시각화할 수 있습니다.시뮬레이션을 위한 코드를 작성하는 것도 물리적 로봇용 코드를 작성하는 것보다 쉽습니다.로봇 프로그래밍을 위한 가상 시뮬레이션으로의 이동은 사용자 인터페이스 설계의 한 걸음 진전이지만, 그러한 어플리케이션의 상당수는 아직 걸음마 단계일 뿐입니다.

일반 정보

소프트웨어 개발자 개발현황 면허증. 3D 렌더링 엔진 물리 엔진 3D 모델러 지원되는 플랫폼
가제보 오픈 소스 로보틱스 재단(OSRF) 유지보수 (EOL 2025) 아파치 2.0 오그레 ODE/Bullet/Simbody/DART 내부의 Linux, macOS, Windows
점화 가제보 오픈 소스 로보틱스 재단(OSRF) 활동적인 아파치 2.0 OGRE, OGRE 2, Nvidia OptiX 다트 내부의 Linux, macOS, Windows
로보도케이 로보도케이 활동적인 독자 사양 오픈GL Gravity 플러그인 내부의 Linux, macOS, Windows, Android, iOS, Debian
심스파크 O. 장애물 등(+26) 활동적인 GNU GPL(v2) 내부의 ODE 없음. Linux, macOS, Windows
웹 사이트 사이버보틱스 활동적인 아파치 2.0 내부(WREN) ODE의 포크 내부의 Linux, macOS, Windows
오픈RAVE OpenRAVE 커뮤니티 활동적인 GNU LGPL 코인3D/OpenSceneGraph ODE/불렛 내부의 Linux, macOS, Windows
코펠리아심 코펠리아 로보틱스 활동적인 듀얼: 상용/GNU GPL 내부의 Bullet / ODE / Vortex / Newton Game Dynamics 내부의 Linux, macOS, Windows
소프트웨어 개발자 개발현황 면허증. 3D 렌더링 엔진 물리 엔진 3D 모델러 지원되는 플랫폼

기술 정보

소프트웨어 주 프로그래밍 언어 포맷 지원 확장성 외부 API 로보틱스 미들웨어 지원 프라이머리 사용자 인터페이스 헤드리스 시뮬레이션
가제보 C++ SDF[1]/URDF,[2] OBJ, STL, Collada 플러그인(C++) C++ ROS, 플레이어, 소켓(프로토부프 메시지) GUI 네.
로보도케이 파이썬 SLDPRT, SLDASM, STEP, OBJ, STL, 3DS, Collada, VRML, URDF, Rhinoceros_3D, ... API,[3] 플러그인 인터페이스[4] Python, C/C++, C#, Matlab, ... 소켓 GUI 불명
심스파크 C++, 루비 루비 장면 그래프 모듈(C++) 네트워크(sexpr) 소켓(sexpr) GUI, 소켓 불명
웹 사이트 C++ WBT, VRML, X3D, 3DS, 블렌더, BVH, Collada, FBX, STL, OBJ, URDF API, PROTO, 플러그인(C/C++) C, C++, Python, Java, Matlab, ROS 소켓, ROS, NaoQI GUI 네, 그렇습니다[5].
오픈RAVE C++, Python XML, VRML, OBJ, Collada 플러그인(C++), API C/C++, Python, Matlab 소켓, ROS, YARP GUI, 소켓 네.
코펠리아심 C++, Python, Lua 3DS, Blender, Collada, STL, OBJ, URDF, SDF, GLTF, XML 플러그인(C/C++), 임베디드 스크립트(Python, Lua), 리모트 API(C, C++, Python, Java, MATLAB, Octab), 애드온(Python, Lua) C, C++, Python, Java, MATLAB, Octab, ROS, ROS 2.0 소켓, ROS, ROS 2.0, ZeroMQ GUI 네.
소프트웨어 주 프로그래밍 언어 포맷 지원 확장성 외부 API 로보틱 미들웨어 지원 프라이머리 사용자 인터페이스 헤드리스 시뮬레이션

사회 기반 시설

지지하다

소프트웨어 메일링 리스트 API 매뉴얼 공개 포럼/도움말 시스템 사용자 매뉴얼 이슈 트래커 위키 채팅
가제보 네, 그렇습니다[6]. 네, 그렇습니다[7]. 네, 그렇습니다[8]. 네, 그렇습니다[9]. 네, 그렇습니다[10]. 아니요.
로보도케이 네, 그렇습니다[11]. 네, 그렇습니다[12]. 네, 그렇습니다[13]. 네, 그렇습니다[14]. 네, 그렇습니다[15]. 아니요. 불명
심스파크 네, 그렇습니다[16]. 네, 그렇습니다[17]. 아니요. 네, 그렇습니다[18]. 네, 그렇습니다[19]. 네, 그렇습니다[20]. 불명
웹 사이트 아니요. 네, 그렇습니다[21]. 아니요. 네, 그렇습니다[22]. 네, 그렇습니다[23]. 네, 그렇습니다[24]. 네, 그렇습니다[25].
오픈RAVE 네, 그렇습니다[26]. 네, 그렇습니다[27]. 네, 그렇습니다[28]. 네, 그렇습니다[29]. 네, 그렇습니다[28]. 네, 그렇습니다[30]. 불명
코펠리아심 아니요. 네, 그렇습니다[31]. 네, 그렇습니다[32]. 네, 그렇습니다[33]. 네, 그렇습니다[34]. 불명 아니요.
소프트웨어 메일링 리스트 API 매뉴얼 공개 포럼/도움말 시스템 사용자 매뉴얼 이슈 트래커 위키

코드 품질

소프트웨어 정적 코드 검사기 스타일 체커 테스트 시스템 테스트 기능 범위 테스트 브런치 범위 코드 행 코멘트 행 지속적인 통합
가제보 cppcheck[35] cpplint[35] gtest 및 qtest[35] 77.0%[35] 53.3%[35] 32만[35] 106k[35] 젠킨스[35]
로보도케이 불명 불명 불명 불명 불명 불명 불명 불명
심스파크 불명 불명 불명 불명 불명 불명 불명 불명
웹 사이트 cppcheck[36] 쨍그랑[37] 하는 형식 유닛[38] 테스트 API[39] 함수의 100% 마스터,[40] 개발[41] 최대 20만 최대 50,000 Travis,[42] AppVeyor,[43] GitGuardian,[44] GitHub Actions
오픈RAVE 불명 불명 비단뱀코 불명 불명 불명 불명 젠킨스[45]
코펠리아심 불명 불명 불명 불명 불명 불명 불명 불명
소프트웨어 정적 코드 검사기 스타일 체커 테스트 시스템 테스트 기능 범위 테스트 브런치 범위 코드 행 코멘트 행 지속적인 통합

특징들

소프트웨어 CAD에서 모션으로 동적 충돌 회피 상대 엔드 이펙터 오프라인 프로그래밍 하드웨어 실시간 스트리밍 제어
가제보 불명 네. 네. 네. 네.
로보도케이 네. 네. 네. 네. 네.
심스파크 불명 아니요. 불명 아니요. 아니요.
웹 사이트 불명 네. 네. 네. 네.
오픈RAVE 불명 아니요. 불명 아니요. 아니요.
코펠리아심 불명 네. 네. 네. 네.
소프트웨어 CAD에서 모션으로 동적 충돌 회피 상대 엔드 이펙터 오프라인 프로그래밍 실시간 스트리밍 제어

로봇 패밀리

소프트웨어 UGV(지상 이동 로봇) UAV(에어로봇) AUV(수중로봇) 로봇 팔 로봇 손(손잡기 시뮬레이션) 휴머노이드 로봇 인간 아바타 풀리스트
가제보 네, 그렇습니다[46]. 네, 그렇습니다[47]. 네, 그렇습니다[48]. 네, 그렇습니다[49]. 네, 그렇습니다[50]. 네, 그렇습니다[51]. 네, 그렇습니다[52].
로보도케이 아니요. 아니요. 아니요. 네, 그렇습니다[53]. 아니요. 아니요. 아니요. 네, 그렇습니다[53].
심스파크 네. 아니요. 아니요. 아마도요. 아마도요. 네. 아니요.
웹 사이트 네. 네. 네, 그렇습니다[54]. 네. 네. 네, 그렇습니다[55]. 네. 네, 그렇습니다[56].
오픈RAVE 네. 불명 불명 네. 네. 네. 네.
코펠리아심 네. 네. 네. 네. 네. 네. 네. 네, 그렇습니다[57].
소프트웨어 UGV(지상 이동 로봇) UAV(에어로봇) AUV(수중로봇) 로봇 팔 로봇 손(손잡기 시뮬레이션) 휴머노이드 로봇 인간 아바타 풀리스트

지원되는 액추에이터

소프트웨어 범용 키네마틱 체인 힘 제어 운동 풀리스트 원형 운동 사슬 운동학적으로 용장 체인 분기 운동학적 사슬
가제보 네. 네. 네. 네. 네.
로보도케이 불명 불명 불명 불명 불명
심스파크 네. 아니요. SimSpark 이펙터 불명 불명 불명
웹 사이트 네. 네. 웨봇 액추에이터 네. 네. 네.
오픈RAVE 네. 네. 조인트, 추가 액추에이터 네, 그렇습니다[58]. 네. 네, 그렇습니다[59].
코펠리아심 네. 네. 네. 네. 네.
소프트웨어 범용 키네마틱 체인 힘 제어 운동 풀리스트 원형 운동 사슬 운동학적으로 용장 체인 분기 운동학적 사슬

지원되는 센서

소프트웨어 주행 기록계 IMU 충돌 GPS 단안 카메라 스테레오 카메라 깊이 카메라 전방향 카메라 2D 레이저 스캐너 3D 레이저 스캐너 풀리스트
가제보 네. 네. 네, 그렇습니다[60]. 네. 네, 그렇습니다[61]. 네. 네. 네. 네, 그렇습니다[62]. 네, 그렇습니다[62].
로보도케이 불명 불명 불명 불명 불명 네. 네. 네. 네. 네.
심스파크 네. 네. 네, 그렇습니다[63]. 부분적[64] 네. 부분적 불명 불명 아니요. 아니요. SimSpark 인식기
웹 사이트 네. 네. 네. 네. 네. 네. 네. 네. 네. 네. 웹 사이트 센서
오픈RAVE 네. 네. 네. 네. 네. 네. 네. 불명 네. 네.
코펠리아심 네. 네. 네. 네. 네. 네. 네. 네. 네. 네.
소프트웨어 주행 기록계 IMU 충돌 GPS 단안 카메라 스테레오 카메라 깊이 카메라 전방향 카메라 2D 레이저 스캐너 3D 레이저 스캐너 풀리스트

레퍼런스

  1. ^ OSRF. "SDF". sdformat.org. Retrieved 2019-04-27.
  2. ^ "urdf - ROS Wiki". wiki.ros.org. Retrieved 2017-10-06.
  3. ^ "RoboDK API". 22 October 2021.
  4. ^ "RoboDK Plug-In Interface". 16 October 2021.
  5. ^ 단, 3D 렌더링을 위해서는 X서버에 접속해야 합니다.
  6. ^ "Gazebo Community". Retrieved 2019-04-27.
  7. ^ "Gazebo API". Gazebo Community. Retrieved 2019-04-27.
  8. ^ "Gazebo Answers". Gazebo Community. Retrieved 2019-04-27.
  9. ^ "Gazebo Tutorials". Gazebo Community. Retrieved 2019-04-27.
  10. ^ "Gazebo Issue Tracker". Gazebo Community. Retrieved 2019-04-27.
  11. ^ RoboDK 메일링 리스트
  12. ^ RoboDK API 문서
  13. ^ RoboDK 포럼
  14. ^ RoboDK 매뉴얼
  15. ^ RoboDK 버그 트래커
  16. ^ SimSpark 메일링 리스트
  17. ^ SimSpark 클라이언트 프로토콜
  18. ^ SimSpark 사용자 설명서(Wiki)
  19. ^ SimSpark 트래커
  20. ^ SimSpark Wiki
  21. ^ 웹 사이트 레퍼런스 매뉴얼
  22. ^ 웹 사이트 사용자 가이드
  23. ^ GitHub 웹 사이트 문제
  24. ^ GitHub 기술 Wiki 웹 사이트
  25. ^ Webots 불일치 채널
  26. ^ OpenRAVE 메일링 리스트
  27. ^ OpenRAVE API
  28. ^ a b OpenRAVE 문제 추적기
  29. ^ OpenRAVE 사용자 가이드
  30. ^ OpenRAVE Wiki
  31. ^ CoppeliaSim API
  32. ^ 코펠리아 로보틱스 포럼
  33. ^ CoppeliaSim 사용자 매뉴얼
  34. ^ Coppelia Robotics 버그 리포트
  35. ^ a b c d e f g h OSRF. "Gazebo". gazebosim.org. Retrieved 2019-04-27.
  36. ^ Cpp Check(Cpp Check(확인)
  37. ^ 쨍그랑 형식
  38. ^ 유닛 테스트
  39. ^ API 테스트
  40. ^ 웹 사이트 마스터
  41. ^ 웹 사이트 개발
  42. ^ 원천
  43. ^ 원천
  44. ^ 원천
  45. ^ 원천
  46. ^ OSRF. "Gazebo : Tutorial : Beginner: Model Editor". gazebosim.org. Retrieved 2019-04-27.
  47. ^ OSRF. "Gazebo : Tutorial : Aerodynamics". gazebosim.org. Retrieved 2019-04-27.
  48. ^ OSRF. "Gazebo : Tutorial : Hydrodynamics". gazebosim.org. Retrieved 2019-04-27.
  49. ^ OSRF. "Gazebo : ARIAC". gazebosim.org. Retrieved 2019-04-27.
  50. ^ OSRF. "Gazebo : HAPTIX". gazebosim.org. Retrieved 2019-04-27.
  51. ^ "DARPA's legacy: Open source simulation for robotics development and testing Robohub". robohub.org. Retrieved 2019-04-27.
  52. ^ OSRF. "Gazebo : Tutorial : Make an animated model (actor)". gazebosim.org. Retrieved 2019-04-27.
  53. ^ a b RoboDK 로봇 라이브러리
  54. ^ Salamander 로봇 포함
  55. ^ Nao, DARwIn-OP, 후지쯔 HOAP2, Kondo KHR-2HV, KHR-3 등이 포함됩니다.
  56. ^ 웹 사이트 로봇 모델
  57. ^ Coppelia Sim의 주요 기능
  58. ^ OpenRAVE 클로즈드 체인
  59. ^ OpenRAVE 듀얼 암 예시
  60. ^ OSRF. "Gazebo : Tutorial : Contact Sensor". gazebosim.org. Retrieved 2019-04-27.
  61. ^ OSRF. "Gazebo : Tutorial : Camera Distortion". gazebosim.org. Retrieved 2019-04-27.
  62. ^ a b OSRF. "Gazebo : Tutorial : Intermediate: Velodyne". gazebosim.org. Retrieved 2019-04-27.
  63. ^ 충돌 감지 기능은 단순화된 모델을 사용합니다.
  64. ^ 가능, 노이즈 모델 없음

외부 링크