SAFEXIT
2026.08 · 학술제 2등 · 시각장애인 실내 화재 대피 내비게이션 · 4인 팀 · 실내 측위 담당
화재 대피 안내 서비스는 대부분 "사용자가 현재 위치를 입력한다"는 전제에서 출발합니다. 시각장애인에게 그 전제는 성립하지 않습니다. 그래서 이 프로젝트에서 제가 풀어야 했던 건 경로 탐색이 아니라, 위치를 묻지 않고 알아내는 일이었습니다. 4인 팀에서 실내 측위, 판단 계층, 관제, 도면 데이터를 맡았습니다.
왜 Wi-Fi가 아니라 BLE + 지자기인가
- 측위 방식 5가지를 비교했습니다. Wi-Fi RTT는 정확도(1~2m)가 가장 높지만 AP가 유선 전원이라, 화재로 정전되면 측위가 통째로 멈춥니다. UWB는 앵커가 비싸고 지원하는 폰이 적습니다
- 기준은 가장 정확한 방식이 아니라, 정전에도 살아 있고 지금 있는 기기로 돌아가는 방식이었습니다. 필요한 안내는 "3.2m 앞"이 아니라 "302호 앞"입니다
- BLE는 서 있어도 1~2초 만에 확정되지만 앵커가 움직일 수 있습니다. 지자기는 몇 걸음 걸어야 확정되지만, 자기장을 휘게 하는 철골·배관은 움직이지 않습니다. 약점이 반대라 서로를 메웁니다
이미 있는 고정 기기 40대 찾기
- 건물에는 공유기·프린터·전자칠판처럼 BLE 신호를 내는 기기가 많습니다. 5시간 동안 건물을 돌며 스캔해, 벽에 고정된 것만 골라냈습니다
- 주소 수명: 폰·워치는 약 15분마다 주소를 바꿉니다. 12분 넘게 같은 주소인 기기만 남겼습니다
- 재회: 한 바퀴 돌아 같은 자리를 지날 때 같은 ID로 다시 들리면 고정 설비로 봤습니다
- 동행: 층을 도는 내내 끊김 없이 들린 기기는 나와 함께 움직인 기기라서 뺐습니다
- 처음엔 5분만 스캔했다가 107개 중 80개가 "고정"으로 나왔습니다. 문턱값이 아니라 스캔 길이가 문제였습니다
스스로 위치를 고쳐 나가는 판단 계층
- 위치를 하나만 들고 있으면 틀렸을 때 돌아올 수 없어서, 후보를 여러 개 두고 가중치를 줍니다. 걸음이 후보를 전진시키고, 비콘이 확실히 잡히면 누적 오차를 0으로 되돌리고, 지자기가 맞지 않는 후보를 감점합니다
- "4걸음 걸었는데 20걸음 떨어진 곳의 신호"는 바로 믿지 않고 후보로만 둡니다. 진짜라면 다음 스캔에서도 들어와 결국 이깁니다
- 가장 경계한 건 틀렸는데 자신 있는 상태입니다. 확신이 없으면 안내를 멈추고 도움을 요청합니다
- 측위 계층은 현재 시각을 인자로 받습니다. 테스트가 시간을 감아 가며 히스테리시스와 감쇠를 검증할 수 있게 하려는 것이고, 회귀 테스트 471개가 통과합니다
한 번 걸으면 끝나는 답사
- 지점마다 10초씩 서서 기록하면 42지점에 한 시간이 넘고, 그것도 기기 한 대분입니다
- 사람은 출발과 도착만 탭합니다. 그 사이 길은 도면 그래프가 알고, 길 위 어디쯤인지는 걸음 수 비율로 정합니다. 120걸음 중 30번째는 보폭과 상관없이 25% 지점입니다
- 지점을 가르지 못하는 신호(대비 6dB 미만, 표본 3개 미만)는 버립니다. 쓸 수 없는 데이터를 쌓으면 나중에 왜 틀리는지조차 알 수 없게 됩니다
도면과 대피 로직
- 추정 축척이던 도면을 건축 실측 치수로 다시 만들었습니다(8개 층). 외벽을 뚫고 나가던 좌표 부호 오류는 생성 시점 assert로 잡습니다
- 층 비상구 도착은 완료가 아닙니다. 계단으로 1층까지 내려가 건물 밖으로 나가야 대피 완료입니다
- 경사지 건물이라 지상 출구가 두 곳이어서, 위층 사용자는 옥상 쪽이 더 짧은 경우가 있어 층별로 목적지를 나눴습니다
