Files
pbl02/sample/DRON/README.md
T
2026-10-06 13:24:08 +09:00

2.9 KiB

🚀 드론 5대 군집 편대 비행 시뮬레이터 (5-Drone Swarm Formation Simulator)

Three.js 3D 그래픽 엔진과 Python 백엔드(Starlette + Uvicorn + WebSockets)를 연동하여 **드론 5대(리더 1대 + 윙맨 4대)**의 군집 편대 비행을 마우스로 실시간 조종하고 관제할 수 있는 고성능 시뮬레이터입니다.


🌟 드론 5대 군집 구성

콜사인 명칭 색상 역할
ALPHA-01 VIPER-01 Cyan (#00f0ff) 편대장 / 리더 드론 (마우스 목표 추종)
ALPHA-02 GHOST-02 Pink (#ff0055) 윙맨 1 (우측 내측 Starboard Inner)
ALPHA-03 PHANTOM-03 Green (#00ff88) 윙맨 2 (좌측 내측 Port Inner)
ALPHA-04 SPECTER-04 Amber (#ffb700) 윙맨 3 (우측 외측 Starboard Outer)
ALPHA-05 SHADOW-05 Purple (#b026ff) 윙맨 4 (좌측 외측 Port Outer)

📐 5대 군집 편대 모드 (Swarm Formation Modes)

  1. V 편대 (V-Formation): 리더를 정점으로 4대의 윙맨이 좌우 대칭 V자 대형 유지
  2. 다이아몬드 (Diamond / Arrowhead): 리더(선두), 좌/우익, 중앙 후방, 후미 고공 경계 대형
  3. 횡대 일렬 (Line Abreast / Side-by-Side): 5대의 드론이 좌우로 넓게 일렬 횡대 대형 유지
  4. 종대 직렬 (Column / Tandem / Trail): 5대의 드론이 리더 뒤로 일렬 종대 추종
  5. 군집 선회 (Swarm Orbit): 4대의 윙맨이 리더 주위를 90도 간격으로 3D 나선 회전 선회
  6. 사선 편대 (Echelon Right): 우측 45도 대각선 사선 대형

🎮 실행 및 조종 방법

로컬 환경 실행

# sample/DRON 디렉토리에서 실행
.\run.bat

또는

python app.py

브라우저에서 http://127.0.0.1:8000 접속

☁️ Google Colab 환경 실행

  1. drone_simulation_colab.ipynb 파일을 Google Colab에 업로드합니다.
  2. 1단계 ~ 3단계 셀을 순서대로 실행합니다.
  3. 3단계 실행 시 출력되는 Cloudflare 터널 링크를 클릭하면 별도 포트포워딩 없이 브라우저에서 3D 시뮬레이터가 실행됩니다.

조종 키

  • 마우스 클릭 / 드래그: 3D 공간 상에서 리더 드론의 목표 비행 위치 지정 (나머지 4대의 윙맨이 편대를 유지하며 자동 추종)
  • 마우스 휠 / W, S 키: 군집 비행 고도(Altitude) 상승 / 하강
  • 숫자키 1 ~ 4: 카메라 모드 전환 (1: 군집 궤도뷰, 2: 리더 추적뷰, 3: FPV 조종석, 4: 편대 프로필)
  • M 키: 드론 엔진 사운드 On/Off
  • Space 키: 착륙 패드 중앙으로 위치 초기화