smart_grasping_sandbox
이곳은 Shadow's Smart Grasping System을 위한 공개 시뮬레이션 샌드박스입니다. 저희는 자율적인 피킹 및 배치(pick and place) 문제에서 다양한 과제를 테스트할 수 있도록 단순화된 시뮬레이션 환경을 제공하는 것을 목표로 합니다.
이 스택에는 다음 내용들이 포함되어 있습니다:
- doc: 추가 문서
- fh_description: 로봇의 urdf 설명서
- smart_grasp_moveit_config: 모션 플래닝(motion planning)을 위한 MoveIt! 설정 파일
- smart_grasping_sandbox: 메인 진입점이며, 런치 파일과 주요 python 파일을 포함합니다.
Smart Grasping Sandbox screenshot
시작하기 (Getting started)
가장 빠르게 시작하는 방법은 Docker를 사용하는 것입니다. 아직 사용하지 않았다면 Docker 웹사이트로 이동하여 안내에 따라 진행하십시오. 설치가 완료되면 미리 빌드된 Docker 컨테이너를 실행하기만 하면 됩니다(자동으로 다운로드됩니다):
docker run -it --name sgs -p 8080:8080 -p 8888:8888 -p 8181:8181 -p 7681:7681 shadowrobot/smart_grasping_sandbox
그런 다음 로컬 브라우저에서 localhost:8080에 연결하여 시뮬레이션을 확인하고, localhost:8888에 연결하여 자유롭게 만져볼 수 있는 ipython 노트북에 접속할 수 있습니다. ipython 노트북의 비밀번호는 shadow입니다.
ipython notebook에는 샌드박스 사용 예시가 담겨 있어 시작하는 데 도움을 줍니다. SmartGrasper 헬퍼 라이브러리에서 어떤 함수들이 사용 가능한지 확인하려면 python에서 다음 코드를 실행할 수 있습니다:
from smart_grasping_sandbox.smart_grasper import SmartGrasper
help(SmartGrasper)
컨테이너 재시작 (Restarting the container)
다음에 이 컨테이너를 다시 시작하려면 다음을 실행하기만 하면 됩니다:
docker start sgs
그리고 다시 localhost:8080와 localhost:8888에 연결할 수 있습니다.
만약 시작 시 다음 오류가 발생하면:
[Err] [RenderEngine.cc:734] Can't open display: :1.0
카메라 토픽(camera topics)이 발행되지 않습니다. 이 오류는 X 서버 프로세스가 불안정하게 종료되어 발생합니다. 이를 해결하려면 호스트에서 다음 명령을 실행하세요:
그런 다음 실행합니다:
마지막으로 컨테이너를 다시 시작합니다.
고급 사용법
더 고급 사용자들을 위해 Cloud9IDE 에디터도 localhost:8181에서 사용할 수 있습니다.