플래닝 Scene 모니터#
플래닝 Scene#
플래닝 Scene은 로봇 주변 세계의 표현과 로봇 자체의 상태를 저장하는 데 사용되는 객체입니다.
planning_scene
객체의 내부 상태는 일반적으로 스레드 안전한 방식으로 상태를 읽고 쓸 수 있게 해주는 planning_scene_monitor
컴포넌트에 의해 유지됩니다.
월드 지오메트리 모니터#
월드 지오메트리 모니터는 LIDAR나 깊이 카메라와 같은 로봇의 센서와 사용자 입력에서 얻은 정보를 사용하여 월드 지오메트리를 구축합니다.
월드 지오메트리 모니터는 아래에 설명된 occupancy map monitor
를 사용하여 로봇 주변 환경의 3D 표현을 구축하고, 객체 정보를 추가하기 위해 planning_scene
토픽의 정보로 이를 보강합니다.
3D 인식#
MoveIt에서 3D 인식은 occupancy map monitor
에 의해 처리됩니다.
점유 지도 모니터는 위 그림에 표시된 것처럼 플러그인 아키텍처를 사용하여 다양한 종류의 센서 입력을 처리합니다.
특히 MoveIt은 두 가지 유형의 입력을 처리하는 내장 지원을 제공합니다:
포인트 클라우드:
PointCloudOccupancyMapUpdater
플러그인에서 처리합니다.깊이 이미지:
DepthImageOccupancyMapUpdater
플러그인에서 처리합니다.
점유 지도 모니터에 플러그인으로 자신만의 업데이터 유형을 추가할 수 있습니다.
Octomap#
점유 지도 모니터는 Octomap
을 사용하여 환경의 점유 지도를 유지 관리합니다.
Octomap은 실제로 개별 셀에 대한 확률 정보를 인코딩할 수 있지만, 이 정보는 현재 MoveIt에서 사용되지 않습니다.
Octomap은 MoveIt이 사용하는 충돌 감지 라이브러리인 FCL에 직접 전달될 수 있습니다.
깊이 이미지 점유 지도 업데이터는 자체 셀프 필터를 포함합니다. 즉, 깊이 맵에서 로봇의 보이는 부분을 제거합니다. 이 작업을 수행하기 위해 로봇에 대한 현재 정보(로봇 상태)를 사용합니다.