브라우저 릴리스: 2026년 8월 26일 · 소스 압축파일 및 본 릴리스 노트 공개: 2026년 8월 31일.
No-Spray Guard는 기록 또는 시뮬레이션 드론 분무 이벤트를 검토하는 브라우저 전용 규칙감사 시뮬레이터입니다. v0.1.0은 사용자가 제공한 CSV 값을 화면에 공개된 편집 가능한 검토 프로파일과 비교하고, 발견사항을 원래 CSV 행과 연결합니다. 이 워크플로의 처리는 브라우저 내부에서 이루어집니다.
도구명은 검토 목적을 표현할 뿐 비행 중 작동하는 가드 기능을 뜻하지 않습니다. 법적 지오펜스를 계산하거나 비행안전 경로를 만들거나 실시간 위치를 감시하지 않습니다. 기체·펌프·밸브·페이로드·약제 시스템 또는 구동기에 명령을 보내지도 않습니다. 출력의 block은 로컬 규칙에서 정한 대기열 심각도입니다. 실제 분무를 물리적으로 차단하거나 운항 승인 여부를 판정하지 않습니다.
입력계약과 검토 프로파일
필수 CSV 헤더는 다음과 같습니다.
timestamp,latitude,longitude,altitude_m,groundspeed_mps,spray_on,flow_rate_ml_min,geofence_distance_m
timestamp는 날짜·시간으로 해석 가능해야 합니다. 위도·경도는 통상적인 수치 범위 안에 있어야 합니다. 고도·지상속도·유량·제공 경계거리는 유한한 0 이상의 숫자여야 합니다. spray_on은 true, false, 1, 0, yes, no, on, off를 받습니다. 유효하지 않은 행은 원본 행 번호, 원문과 제외 사유를 가진 제외 행으로 출력에 남습니다.
화면에서 조정할 수 있는 프로파일은 다섯 값으로 구성됩니다.
| 프로파일 필드 | v0.1.0 기본값 | 이 릴리스에서의 의미 |
|---|---|---|
| 최소 경계거리 | 10 m | 제공된 geofence_distance_m과 비교 |
| 최소 고도 | 2 m | 검토 고도범위의 하한 |
| 최대 고도 | 6 m | 검토 고도범위의 상한 |
| 최대 지상속도 | 3 m/s | 분무 활성 상태의 검토 임계값 |
| 최소 활성유량 | 1 ml/min | 상태·유량 정합 임계값 |
이는 합성 시연용 기본값입니다. 법정 완충거리, 농학 권고, 제조사 한계, 현장 규칙 또는 인증기준이 아닙니다. 프로파일은 음수와 유한하지 않은 값을 허용하지 않으며 최소 고도가 최대 고도보다 큰 설정도 거부합니다.
v0.1.0의 네 가지 규칙
감사는 네 조건을 명시적으로 평가합니다. 분무 활성 행의 경계거리가 설정값보다 작으면 exclusion-boundary 발견사항을 block 심각도로 만듭니다. 활성 행의 고도가 설정범위 밖이면 altitude-envelope, 지상속도가 설정값보다 크면 speed-envelope 검토사항을 만듭니다. 기록된 분무 상태와 최소 유량 조건이 충돌하면 state-flow-consistency 검토사항을 만듭니다.
각 발견사항에는 규칙 ID, 심각도, 원본 행, 시각, 관측값, 기대조건과 메시지가 들어갑니다. 요약은 유효·제외 행, 확인한 규칙, 영향·통과 행, 차단·검토·전체 발견 수를 셉니다. 한 행에 여러 발견사항이 생길 수 있으므로 전체 발견 수와 영향 행 수는 다를 수 있습니다.
geofence_distance_m은 사용자 또는 시뮬레이터가 미리 계산해 제공해야 합니다. No-Spray Guard는 폴리곤을 읽거나 좌표계를 선택하거나 실제 이격거리를 측정하거나 법적으로 적용되는 경계를 결정하지 않습니다. 고도·속도·상태·유량 규칙도 제공값만 비교하며 센서 교정이나 기록 진위를 확인하지 않습니다.
합성 샘플
내장 sample-no-spray-events.csv는 2026-08-26 시각의 합성 이벤트 10개로 구성됩니다. 기본 프로파일에서 참조 구현은 유효 행 10개, 제외 행 0개, 통과 행 4개, 영향 행 6개, 차단 발견 1개, 검토 발견 5개, 전체 발견 6개를 반환합니다. 이 수치는 내장 입력에 대한 결정론적 동작을 확인할 뿐 현장 성능지표가 아닙니다.
샘플에는 임계값을 넘는 속도, 상·하한 밖 고도, 검토값 미만의 제공 경계거리, 분무 꺼짐 상태의 보고 유량과 분무 켜짐 상태의 0 유량을 의도적으로 넣었습니다. 실제 비행로그, 처리 기록, 고객 결과, 기체시험 또는 규정 위반의 증거가 아닙니다.
브라우저 워크플로와 내보내기
공개 페이지는 합성 샘플을 자동으로 불러옵니다. 사용자는 다섯 프로파일 값을 바꾸고 로컬 CSV를 선택하며 원본 행 연결 대기열을 확인하고 샘플을 초기화한 뒤 JSON 감사를 내려받을 수 있습니다. 내보내기에는 도구 버전, 원본 파일명, 생성시각, 범위, 프로파일, 파싱 이벤트, 제외 행, 발견사항과 요약이 포함됩니다.
내보낸 파일은 전자서명, 위변조 방지, 접근통제 또는 권위 있는 기록시스템 연결을 제공하지 않습니다. 로컬 입력·출력을 어떻게 분류·보존·검토·보호할지는 사용자가 결정해야 합니다.
Apache-2.0 소스 패키지 경계
버전 고정 소스 압축파일을 내려받을 수 있습니다. open-source/no-spray-guard의 UAMKT 작성 패키지는 Apache License 2.0에 따라 배포합니다. TypeScript 파서·프로파일 검증·규칙 엔진·요약을 담은 src/index.ts, 합성 입력 examples/sample-no-spray-events.csv, 계약과 안전 경계를 설명하는 README.md, 상위 프로젝트 참조와 라이선스 정보를 담은 THIRD_PARTY_NOTICES.md, 라이선스 본문 LICENSE, 패키지 메타데이터 package.json으로 구성됩니다.
웹사이트 연결부와 인터페이스는 src/lib/noSprayGuard.ts와 src/components/build/NoSprayGuardQA.tsx에서 관리합니다. 패키지에는 ArduPilot, PX4, QGroundControl, MAVSDK 또는 OpenDroneMap 소스 코드를 복사해 넣지 않았습니다. 해당 프로젝트에 대한 참조는 제휴·보증·인증 또는 시험된 상호운용성을 뜻하지 않습니다.
릴리스 한계와 책임 있는 평가
v0.1.0에는 실시간 텔레메트리 연결, 폴리곤 엔진, 기체·페이로드 제어, 법규 데이터베이스, 약제 라벨 파서, 교정 확인, 사용자 신원검증 또는 운항 승인 워크플로가 없습니다. 제공값으로부터 계산을 반복할 수 있지만 이것이 값의 완전성·진위·측정 정확성 또는 법적 관련성을 입증하지는 않습니다.
합성 샘플이나 적절하게 관리된 과거 데이터로 평가해야 합니다. 프로파일과 제외 행을 확인하고 대표 발견사항을 원본 CSV에서 직접 재현하며 geofence_distance_m 제공 주체를 기록해야 합니다. 실제 운용 전에는 책임 운용자가 장비 지침, 현장 허가, 환경통제, 적용 항공·약제 규칙과 적절한 전문검토를 별도로 확인해야 합니다.
허용되는 주장은 좁습니다. No-Spray Guard는 사용자가 제공한 이벤트 값과 선택한 선별 임계값을 원본 행이 연결된 발견 대기열로 바꿉니다. 분무를 차단하거나 안전·현장성능·법적 준수를 입증하지 않습니다.