목록전체 글 (49)
코딩 일기장
LabTop 프로젝트는 비접촉 스마트카드 기반 근태 관리 및 출입 통제 디바이스로,소속 학부 연구실에서 구성원의 재부재 상태표시를 위해 출입문 옆에 걸어놨던 클립보드를 대체해보고자 개발했던 디바이스이다.24년도에 만들었던 물건인지라 코딩에서 LLM의 입지가 지금보다는 작았던 만큼 손코딩의 비중이 절대적인 편이었는데,그래서인지 더 기억에 남는 프로젝트였던것 같다.기획 단계에서부터 최종 구현까지 살아남은 기능들을 정리해보면 아래와 같다.1. 카드 태그 기반 재실/부재 처리2. 재실/퇴실 처리시 도어락 열림 또는 잠금(마지막 퇴실시에만)3. 관리 페이지를 통한 구성원 프로필 등록/변경/제거와 카드 등록기능4. 출입내역 상세 조회5. 관리자 페이지에서 출퇴근 이벤트 훅을 직접 구현하는 기능을 제공하여 이벤트 발..
오렌지파이 제로에 OpenWrt 이미지를 설치해 보자.그동안 리눅스 기반 장치를 만드는 프로젝트에서는 모두 범용 이미지(라즈비안, 우분투, armbian 등)을 사용했었는데,범용 이미지는 당장 빠르게 시작하기에는 좋지만, OS 레벨의 수정이 잦아질수록 알지 못하는 사전 설치 서비스들 때문에 세팅이 쉽게 꼬이는 어려움이 있었다.그래서 이번에는 다소 험난하겠지만 밑바닥부터 세팅해 보는 경험을 위해 OpenWrt를 사용해 보고자 하였다. 먼저 제조사 제공 OpenWrt 이미지가 있어 설치해 보았다.https://drive.google.com/drive/folders/1LfgBqpa0kbxj1NGg1t4iselso_V5ImWd OpenWRT - Google Drive이 브라우저 버전은 더 이상 지원되지 않습니다..
LTE를 통해 수신되는 셀 브로드캐스트 메시지(재난문자)를 UART LTE 모뎀으로 수신할 수 있도록 준비해 보자.필자는 SIMCom SIM7600G 모델을 사용하였다. 1. 모뎀 연결 및 시리얼 인터페이스 인식모뎀을 보면 PCB에 노출된 UART핀과 USB 인터페이스가 보인다.어느 것을 사용하든 AT 명령으로 모뎀과 통신할 수 있다는 사실은 다르지 않기 때문에 필자는 USB를 통해 연결했다.그렇지만 인터페이스의 단순성이나 편의성 때문에 최종 빌드에는 UART를 사용할 예정이다.$ lsusb...Bus 001 Device 016: ID 1e0e:9001 Qualcomm / Option SimTech, Incorporated...USB로 인식된 것을 확인했다.$ ls /dev/ttyUSB*/dev/ttyU..
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 공식 위키에서 배포되고 있다.아무래도 전세계의 지리정보이다 보니 그 용량이 현재 시점에서..
