avls.crowny.org v2.0 고도화 — W1 코어 엔진 + GPS 시뮬레이터
날짜: 2026-05-02
서비스: avls.crowny.org:9736
개요
AVLS v1.0 → v2.0 고도화 1주차 작업. GPS 시뮬레이터 엔진, 실시간 Leaflet 지도,
운전자 CRUD, 지오펜스 다각형 판정, SSE 스트림을 추가했다.
무엇을 했는지
서버 (server.js)
- GPS 시뮬레이터 엔진: 8대 차량이 부산 실제 좌표 5개 경로(부산시내/금정구/학교통학/해운대/서면)를 3초 간격으로 이동
- SSE 실시간 스트림:
/api/stream — 위치 갱신과 경고가 EventSource로 실시간 전송
- 운전자 CRUD API:
/api/drivers — 운전자 등록/수정/삭제, 차량↔운전자 시냅스 연결
- 지오펜스 다각형:
pointInPolygon 알고리즘 + /api/geofences/polygon API
- 차량 이력 API:
/api/vehicles/:id/track — 시뮬레이터 기반 이동 궤적 조회
- 시뮬레이터 제어 API: start/stop/status/routes
- 대시보드 v2 API:
/api/dashboard/v2 — 통합 KPI (가동률/평균속도/최고속도/평균연료)
UI (web/index.html)
- Leaflet 실시간 지도: CartoDB 다크 타일, 차량 마커 실시간 이동, 지오펜스 시각화
- 시뮬레이터 제어 바: 시작/정지, 틱 수, 차량 수 표시
- 경로 표시: 차량별 이동 궤적 폴리라인 토글
- 운전자 탭: 운전자 목록 + 등록 폼 + 차량 배정
- SSE 연결: 서버 이벤트로 마커 위치 실시간 갱신
한선씨 동반
avls-시뮬레이터.한선 — GPS 시뮬레이터 로직 (셀코어 기반)
avls-지오펜스.한선 — 원형+다각형 지오펜스 판정 로직
관련 파일
/Users/ef/crowny-avls/server.js — 메인 서버 (~1500줄)
/Users/ef/crowny-avls/web/index.html — SPA 대시보드
/Users/ef/crowny-avls/CLAUDE.md — 프로젝트 문서
/Users/ef/crowny-avls/avls-시뮬레이터.한선
/Users/ef/crowny-avls/avls-지오펜스.한선
잔여 이슈
- W2: Leaflet 마커 클릭 → 상세 팝업 강화, 경로 폴리라인 색상 구분
- W3: WebSocket 이진 프로토콜 (SSE → WS 전환), 보고서 PDF 생성
- W4: 운전자 스코어링 알고리즘, 경로 최적화
- W5: 한선씨 네이티브 서버 (hanseonc_high 컴파일)