"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Use swoole como estrutura de gateway IOT na nuvem para controlador programável por script baseado em ESP6

Use swoole como estrutura de gateway IOT na nuvem para controlador programável por script baseado em ESP6

Publicado em 2024-11-09
Navegar:929

As funções locais do controlador programável por script estão quase concluídas e começam a implementar as funções relacionadas ao controle remoto.

A arquitetura geral do sistema remoto é a seguinte:
Use o SDK do ESP8266 para implementar o servidor tcp e o cliente tcp.
Escreva o código de análise do protocolo http com base no servidor tcp, projete um servidor http simples, lide com a interação de dados com o navegador, incluindo o download da página da web integrada e use a tecnologia ajax para obter o estado e salvar os dados.

Usamos html, js e css para projetar páginas da web e baixá-las e armazená-las no flash do módulo ESP8266, em combinação com o processamento de dados da linguagem c no backend, realizamos a programação de scripts baseada na web, verificação de status , configuração de parâmetros e outras funções;

No lado do servidor em nuvem, um host de servidor em nuvem Linux foi adquirido e o swoole foi escolhido como gateway de comunicação TCP/IP;

Swoole é um mecanismo de comunicação de rede assíncrona PHP para ambientes de produção, permitindo que desenvolvedores PHP escrevam serviços TCP, UDP, Unix Socket, HTTP, WebSocket simultâneos assíncronos de alto desempenho.

Implementar servidor tcp e servidor websocket no framework Swoole, no qual o servidor tcp é usado para conectar o controlador e a nuvem, o cliente tcp do controlador estabelece uma longa conexão TCP com o servidor tcp do servidor em nuvem, para que os dados da internet pode ser enviado ao controlador remotamente através da conexão TCP para obter o controle remoto do controlador;

A página da web remota usa o cliente websocket para estabelecer uma conexão longa com o servidor websocket do Swoole para obter penetração remota entre o servidor em nuvem e a página da web, para que o status do controlador possa ser enviado para a página da web em real hora de exibição;

Os dados entre o servidor websocket e o servidor tcp são compartilhados através da memória, e a ferramenta do PC, a página da web e o controlador têm números exclusivos, e as mensagens de dados entre o host do PC, o controlador e a página da web usam esse número como fonte e endereços de destino, e o servidor tcp e o servidor websocket encaminham as mensagens de dados de acordo com o endereço de destino após recebê-las, de modo a realizar a transmissão de dados no PC. Após receber as mensagens de dados, o servidor tcp e o servidor websocket irão encaminhá-las de acordo com o endereço de destino, de forma a realizar a interconexão de dados entre a ferramenta do PC, a página web e o controlador.

Usando redis como banco de dados de memória, os dados de status do controlador podem ser armazenados temporariamente no banco de dados para realizar funções como alarmes telefônicos anormais, etc., enquanto mysql é usado como banco de dados permanente para armazenar alguns dados de configuração.

Use swoole as the IOT gateway framework in cloud for script programmable controller based on ESP6

Use swoole as the IOT gateway framework in cloud for script programmable controller based on ESP6

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/zhangzhuyue/use-swoole-as-the-iot-gateway-framework-in-cloud-for-script-programmable-controller-based-on-esp8266-c8b? 1 pois Se houver alguma violação, entre em contato com [email protected] para excluí-la.
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3