diff --git a/app/src/main/java/com/example/medilightv2android/managers/GreenZoneConstants.kt b/app/src/main/java/com/example/medilightv2android/managers/GreenZoneConstants.kt index 2ac64d6..3ee5775 100644 --- a/app/src/main/java/com/example/medilightv2android/managers/GreenZoneConstants.kt +++ b/app/src/main/java/com/example/medilightv2android/managers/GreenZoneConstants.kt @@ -42,12 +42,14 @@ object GreenZoneConstants { // ── Walking detector 임계값 (flowchart 4-2 / 5-2) ───────────────── /** Walking 인정 최소 pitch (deg). |pitch| > 이 값 이라야 walking 후보. */ @Volatile var walkingMinPitchDeg: Float = 45f - /** Walking 시작 — gyro 이동평균 (wmean) 임계 (dps). */ - @Volatile var walkingStartWmean: Float = 4f + /** Walking 시작 — gyro 이동평균 (wmean) 임계 (dps). 실측: stand-up + 자세조정 + * motion 이 5~10 dps 지속 → 임계 15 로 false-trigger 차단. 진짜 보행은 50+ dps. */ + @Volatile var walkingStartWmean: Float = 15f /** Walking 시작 — gyro 이동표준편차 (wstd) 임계 (dps). */ @Volatile var walkingStartWstd: Float = 2f - /** Walking 시작 — 두 임계 모두 만족한 채 지속해야 하는 최소 시간 (ms). */ - @Volatile var walkingStartHoldMs: Long = 1000L + /** Walking 시작 — 두 임계 모두 만족한 채 지속해야 하는 최소 시간 (ms). 실측: stand-up + * motion 이 3-5초 → 6초 로 차단. 실제 보행은 무한 지속이라 6초 이상 자동 만족. */ + @Volatile var walkingStartHoldMs: Long = 6000L /** Walking 유지 — gyro wmean 임계 (dps). 시작보다 낮음. */ @Volatile var walkingKeepWmean: Float = 2f /** Walking 유지 — wmean 임계 미달 후 종료까지 grace 시간 (ms). 미만 지속이 이 값 넘으면 walking 종료. */