프로젝트 소개
이것은 ESP32-S3 + SIM7670G 4G 전자 울타리 장치를 위한 원격 모니터링 웹페이지 프로젝트입니다. 웹페이지는 GitHub Pages에 호스팅되어 있으며, 휴대폰에서 4G/5G/WiFi 등 어떤 네트워크에서도 접속하여 사용할 수 있습니다.
주요 기능은 다음과 같습니다: 지도에 장치의 실시간 위치 표시(2분마다 업데이트); 진입 알람 상태를 빨간 배너와 상태 표시등으로 표시; 지도에서 클릭하여 울타리 다각형 그리기 및 원클릭으로 장치에 전송; 수동 좌표 입력으로 울타리 전송 지원; 울타리 삭제 가능; 위성 수와 울타리까지의 거리 표시.
아키텍처상, 휴대폰 브라우저가 GitHub Pages 웹페이지에 접속하여 fetch로 position.json을 읽습니다(이 파일은 GitHub Actions가 2분마다 기록). 그런 다음 바파 클라우드 TCP(bemfa.com:8344)를 통해 cmd=3으로 데이터를 가져오고, 최종적으로 4G를 통해 ESP32-S3 장치에 도달합니다(장치는 30초마다 좌표를 보고). 울타리 명령 전송 경로는: 웹페이지 → 바파 클라우드 HTTP sendMessage → 장치 TCP 수신 → 울타리 업데이트 및 NVS에 저장.
배포 시 BEMFA_UID(바파 클라우드 개인 키)와 BEMFA_TOPIC(주제명 geofence001)을 GitHub Actions Secret으로 설정해야 하며, 웹페이지 index.html 상단의 BEMFA_UID/TOPIC 상수도 실제 값과 일치해야 합니다. 유지보수 측면에서 위치 동기화는 .github/workflows/sync-position.yml이 2분마다 자동으로 장치 좌표를 가져와 position.json에 기록하며, Actions 페이지에서 'Sync device position' 워크플로를 수동으로 실행할 수도 있습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.