목록2026/07 (5)
0xFF
leaflet.js로 구축한 오프라인 지도에서 대피소 위치를 표시하기 위해 대피소 위치 데이터셋을 찾아야 했다.대피소 이름과 종류, 그리고 위경도가 명시된 전국 대피소 데이터베이스는 쉽게 찾았는데, 문제는 csv로 배포되는 것이 아니라 API를 통해 제공하고 있었다.그래서 스크립트를 사용해 1회 최대요청건수인 1000건 단위로 전국 대피소 정보를 수집하였다.전체 수량은 약 7만 건 정도이고, SHLT_SE_CD 속성으로 대피소 종류(한파쉼터:1,무더위쉼터:2,지진옥외대피장소:3,지진해일긴급대피장소:4)를 구분하고 있다. 수집 기준일: 2026-07-03
며칠간 DMB 재난메시지 수신 시험을 진행해 본 결과 한 가지 알게 된 것이 있다.바로 단방향 방송망의 특성상 수신기가 메시지를 놓치는 경우를 줄이기 위해 같은 메시지를 적어도 100회 이상 반복 전송한다는 것이다.실제로 측정해서 평균을 내본건 아니지만 대략 메시지당 150회 정도로 반복 전송하고 있는 것 같았고, 그 시간이 2분 정도 걸리도록 설계해 둔 것 같은 느낌이었다.실제로 표준 규격서에서도 동일 메시지가 2분 이상 반복 수신되고 있는 게 아니면 해당 메시지를 표시하지 말라고 언급하고 있다.따라서 코드에서도 하나의 재난메시지 조립이 완료되면 메시지 ID와 chrono::steady_clock::now()의 값을 static으로 남겨서 이미 수신 완료처리한 메시지가 무시되도록 처리했었다.그런데 테스..
인터넷 웹페이지에 지도 기능 삽입이 필요한 경우 어떻게 할까?지도를 자체 구현하지 않는 한 구글맵이나 카카오 지도를 활용하면 매우 손쉽게 웹 프론트엔드에 지도를 띄울 수 있다.하지만 내부망(인트라넷) 웹 페이지에 지도를 표시해야 한다면 어떻게 할까?오픈소스 지도인 OpenStreetMap을 이용하는 것이 가장 쉽게 구현 가능한 방법이라고 생각되는데,방법이 매우 간단해서 그 과정을 기록해 보고자 한다. 1. 지도 데이터 다운로드OpenStreetMap(이하 OSM)은 오픈소스 지도 데이터베이스로, 나무위키처럼 누구나 도로와 건물등을 추가하여 프로젝트에 참여할 수 있다.오픈소스이므로 이렇게 완성된 지도 파일 또한 OSM 공식 위키에서 배포되고 있다.아무래도 전세계의 지리정보이다 보니 그 용량이 현재 시점에서..
부품 수가 많아지다 보니 전용 하우징이 필요할 것 같아 퓨전을 사용해서 간단하게 디자인하였다.모델링 전 정리해본 사항들은 아래와 같다.케이스는 상자형(함체)으로 만든다.안테나 커넥터를 상자 위쪽으로 노출해서 안테나 연결이 쉽도록 한다.전원은 시연만 하면 되므로 보조배터리로 충분하고, 따라서 별도 전원포트는 없는 대신 보조배터리 수납공간을 만든다.뚜껑 힌지는 반결합형으로 만들어 탈착이 가능하도록 하기뚜껑과 본체는 스냅핏으로 고정하자(3개 정도)컴퓨터 케이스처럼 보드 뒷면에 선정리가 가능하도록 한다.뚜껑에 LCD 장착하여 가동 상태를 쉽게 확인하고(디버깅용) 간단한 제어가 키보드&마우스 없이도 가능하도록 하기.전면부에는 HDMI 터치 모니터를 장착했다. 해상도는 800x480인데 세로 모드로 회전해서 출력하..
Safecast의 주요 기능 중 하나는 DMB망 기반 재난문자를 BLE 및 와이파이로 중계하는 기능이다.휴대폰 기지국이 동작하지 않는 수준의 재난 발생시, Safecast AP가 DMB를 통해 수신받은 재난메시지를 블루투스 비콘을 이용하여 주변 휴대폰들에게 재전파하고, 이를 수신한 백그라운드 앱이 수신된 메시지를 자동으로 보여줌과 동시에 Safecast AP 연결을 권유하게 하는 것이다.하지만 DMB라고 하면? 누군가는 이미 망한 로스트 테크놀로지가 아니냐고 반문할 수 있지만 놀랍게도 아직 서비스 중이긴 하다. 사실상 개인에게 있어 DMB를 수신할 수 있는 유일한 방법은 차량 인포테인먼트로 그 입지가 쪼그라들긴 했지만 말이다.다만 약간의 문제가 있었던 것은 재난문자방송 관련 법령을 찾아보니 DMB 수신기..