WWW-POSIM시뮬레이터 문서
문서 메뉴
WWW-POSIM / 시뮬레이터 문서

알아볼 구성 요소 찾기

시뮬레이터는 지도, 경로 계획과 로봇 제어를 함께 사용합니다.

순서대로 따라 하기

  1. 월드를 만들고 구성 요소가 함께 작동하는 모습을 보세요.
  2. 지도와 수심은 지형 안내를 사용하세요.
  3. 내 로봇 명령은 Python 제어 안내를 사용하세요.
  4. 소스 코드는 아래 고급 항목의 공개 라이브러리 링크에서 확인하세요.

고급: 세부 사항과 참고 정보

공개 라이브러리

라이브러리 사용과 구조
POSIM-Terrain Python 지리 표본 추출·육지/해저 자료 선택·메시/SDF 출력·시각 텍스처
POSIM-Routing Python 전역·해안·로컬 경로 계획기, POSIM-Terrain 사용
POSIM-Control Python 운동 정책과 C++ Gazebo 선행/추종 추진 플러그인

POSIM-Terrain

POSIM-Terrain은 지리 좌표로 육지와 해저 형상을 만듭니다. 사용 가능한 고도·수심 자료를 결합합니다. 수치 지형은 메시와 경로 충돌 검사에 사용하고, Sentinel-2 영상은 육지 텍스처에 사용합니다.

설치, 위성 텍스처 준비와 출력 명령은 지형 라이브러리 README를 참고하세요.

POSIM-Routing

POSIM-Routing은 세계 방문 항로와 도착 수역까지의 연결을 계획합니다. 항구 연결에는 OSM 육지 경계를 사용합니다. 해안·로컬 계획기는 수치 지형을 검사해 경로를 선택합니다. 항구 목록의 위치와 실제 도착 수역은 별도 입력입니다.

항로 명령과 계획기 API는 경로 라이브러리 README를 참고하세요. 전역 항로만으로 수심을 확인할 수는 없습니다.

POSIM-Control

POSIM-Control은 Gazebo 차량 모델에 추진력을 가합니다. 선행 차량은 지정된 경유점을 따라가고, 추종 차량은 선행 차량의 실측 위치를 따라갑니다. Python 정책은 실측 운동으로 속도 제한을 정하고 안정성·진행 상태·복구를 판단합니다.

모델 요구 사항, 플러그인 빌드와 제어 토픽은 제어 라이브러리 README를 참고하세요. 네이티브 플러그인은 POSIM 실행 환경의 Gazebo 개발 패키지가 필요합니다.

각 라이브러리에 한국어·영어 사용법, 소스 구조, 설치 명령과 시험이 있습니다. WWW-POSIM은 엔진과 라이브러리의 Git 서브모듈 커밋을 지정합니다. 실행 어댑터가 해당 구현을 가져오며 패키지에도 지정된 소스 패키지를 포함합니다.

git submodule update --init --recursive

웹사이트와 작업공간 서비스가 라이브러리를 연결합니다. 세션 소유권·계정·영상 전달·항해 체크포인트·AIS 표시는 WWW-POSIM에 속합니다.

함께 동작하는 방식

POSIM-Terrain이 지리 지형을 만듭니다. POSIM-Routing은 그 지형으로 경로를 계획하고 검사합니다. POSIM-Control은 승인된 경유점을 따라가도록 제어하고, Gazebo가 물리 운동을 계산합니다. WWW-POSIM은 실측 상태를 확인해 다음 지형·경로·제어 갱신을 조정합니다.

웹 작업공간과 설치형 앱은 같은 커밋의 구현을 사용합니다. POSIM 모델·센서·엔진 설정은 POSIM 라이브러리 안내를 참고하세요.

도시 지형 예제

POSIM-Terrain 예제에 뉴욕·부산·도쿄가 있습니다. 각 지역은 육지와 해저를 함께 포함합니다.

묶음에는 메시·SDF·수치 배열·Sentinel-2 육지 텍스처·출처 기록이 있습니다. 도시별 Gazebo 3D 월드 캡처도 제공합니다. README에서 재생성 방법을 확인할 수 있습니다. 출력 격자 간격은 원자료의 측정 정확도를 높이지 않습니다. 자료의 가정은 지형과 데이터를 참고하세요.