Sobre o projeto
Este é um projeto de página web de monitoramento remoto voltado para o dispositivo de cerca eletrônica ESP32-S3 + SIM7670G 4G. A página é hospedada no GitHub Pages e pode ser aberta pelo celular em qualquer rede (4G/5G/WiFi).
As principais funções incluem: exibir a posição em tempo real do dispositivo no mapa (atualizada a cada 2 minutos); apresentar o status de alarme de entrada na cerca por meio de um banner vermelho e de um indicador luminoso de status; permitir clicar no mapa para desenhar um polígono de cerca e enviá-lo ao dispositivo com um clique; suportar o envio de cercas por inserção manual de coordenadas; permitir limpar a cerca; exibir o número de satélites e a distância até a cerca.
Em termos de arquitetura, o navegador do celular acessa a página no GitHub Pages, lê o position.json por fetch (gravado pelo GitHub Actions a cada 2 minutos) e, em seguida, obtém os dados via TCP da Bemfa Cloud (bemfa.com:8344) com cmd=3, chegando finalmente ao dispositivo ESP32-S3 pela rede 4G (o dispositivo envia as coordenadas a cada 30 segundos). O caminho de envio do comando de cerca é: página web → sendMessage HTTP da Bemfa Cloud → recebimento TCP pelo dispositivo → atualização da cerca e salvamento no NVS.
Para a implantação, é necessário configurar BEMFA_UID (chave privada da Bemfa Cloud) e BEMFA_TOPIC (nome do tópico geofence001) como segredos do GitHub Actions; ao mesmo tempo, as constantes BEMFA_UID / TOPIC no início do arquivo index.html da página devem corresponder aos valores reais. Para manutenção, a sincronização de posição é feita automaticamente pelo arquivo .github/workflows/sync-position.yml, que busca as coordenadas do dispositivo a cada 2 minutos e as grava em position.json; também é possível acionar manualmente o fluxo de trabalho Sync device position na página Actions.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.