ZeroSim은 Unity 3D 개발 플랫폼과 ROS의 강력함을 결합하여 로봇 시뮬레이션을 위한 엔진입니다. 이 도구는 산업, 농업 등 다양한 환경에서 로봇 팔부터 이동 로봇까지 모든 종류의 공학적 시뮬레이션 개발을 지원합니다. Gazebo와 유사한 기능을 제공하며, PhysX 4.x 기반 동역학 및 고급 3D 렌더링 기술이 통합되어 있습니다.
핵심 포인트
Unity와 ROS를 결합한 로봇 시뮬레이션 엔진입니다.
로봇 팔부터 이동 로봇까지 다양한 공학적 시뮬레이션을 지원합니다.
PhysX 4.x 기반 동역학 및 고급 3D 렌더링 기능을 제공합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Research의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
ZeroSim은 사용하기 쉬운 Unity 3D 개발 플랫폼과 Robotics Operating System (ROS)의 강력함을 기반으로 구축된 로봇 시뮬레이션 엔진입니다. ZeroSim은 창고 및 산업 환경부터 농업 및 실외 환경에 이르기까지, 로봇 팔부터 지상 및 드론 기반 이동 로봇까지 모든 종류의 로봇 공학 및 시뮬레이션을 쉽고 빠르게 개발할 수 있도록 설계되었습니다.
ZeroSim은 FS Studios가 수년 동안 다양한 클라이언트의 모든 종류의 로봇 시뮬레이션 프로젝트(로봇 팔부터 이동 로봇까지)를 신속하게 개발하기 위해 개발한 프로젝트입니다.
저희는 지난 수십 년간 저희를 지원해 주신 로보티스트 및 소프트웨어 엔지니어 커뮤니티를 지원하기 위해 ZeroSim을 오픈 소스로 공개합니다. 현재 활발히 개발 중이며, 모든 기능 요청, 버그 보고서, 풀 리퀘스트(pull request)를 환영합니다.
MoveIt Example
Mobile Robot Example
개요
ZeroSim은 Unity에서 로봇과 환경을 구축하고 ROS와 인터페이스할 수 있도록 다양한 도구를 제공합니다. 저희는 Gazebo가 제공하는 기능 및 ROS 인터페이스와 동일한 기능을 제공하기 위해 노력했습니다. 포함되는 항목들은 다음과 같습니다:
참고: ROS Melodic이 저희가 주로 지원하는 개발 환경이지만, ZeroSim은 Noetic 및 ROS2에서도 실행할 수 있다는 보고가 있습니다.
새로운 Unity 프로젝트 설정하기
Unity Hub에서 Unity 2020.x 이상을 사용하여 새 Unity 프로젝트를 만듭니다.
New Unity Project
Unity Packages를 통해 ZeroSim 추가하기:
중요: 계속하기 전에 시스템에 GIT LFS가 설치되어 있는지 확인하세요!
Unity 메뉴 Window -> Package Manager로 이동합니다.
+ 드롭다운을 선택합니다:
Dropdown
Add Package From Git URL...을 선택하고 [email protected]:fsstudio-team/ZeroSimROSUnity.git을 입력합니다. 이 업데이트에 몇 분이 걸릴 수 있지만, 다음 내용이 표시되는 것을 확인해야 합니다:
ZeroSim Package Installed
Package Manager에서 Samples의 Import 버튼을 선택하여 ZeroSim 샘플을 가져옵니다:
Import ZeroSim Samples
중요 기본 Unity 물리 설정은 많은 시뮬레이션과 잘 작동하지 않습니다. Unity 메뉴 Edit -> Project Settings... -> Physics를 열고 Default Solver Iterations를 30으로, Default Solver Velocity Iterations를 60으로 설정하여 물리 설정을 하는 것이 매우 권장됩니다 (대부분의 시뮬레이션에 필요할 가능성이 높습니다).
Unity Physics Settings
중요 기본 Unity 고정 시간 단계(fixed timestep) 설정은 많은 시뮬레이션과 잘 작동하지 않습니다. Edit -> Project Settings... -> Time에서 Fixed Timestep 설정을 0.005로 설정하는 것이 매우 권장됩니다
Timestep Settings
Linux에서 Unity를 실행하는 경우 OpenGL 사용을 피하고 Vulkan을 사용하는 것이 좋습니다. 그렇지 않으면 이미지 기반 센서가 느리게 작동하거나 아예 작동하지 않을 수 있습니다. Vulkan 사용으로 변경하려면:
Unity 메뉴: Edit -> Project Settings...로 이동합니다:
Linux용 자동 그래픽 API(Auto Graphics API for Linux)의 체크를 해제하고, 그 아래 '리눅스용 그래픽 API(Graphics APIs for Linux)'에서 OpenGL보다 먼저 Vulkan을 설정하세요: