O acesso ao dispositivo usa o servidor de mensagens EMQX, criptografia e autenticação; o back-end usa Spring boot; o terminal móvel usa Uniapp; Pi, etc.; o diagrama da arquitetura do sistema é o seguinte;
Monitoramento do sistema: logs de operação, logs de login, logs do sistema, usuários online, monitoramento de serviços, monitoramento de pool de conexões, monitoramento de cache, etc.
Gerenciamento de produtos: produtos, modelos de produtos, categorias de produtos, firmware de produtos, códigos de autorização de dispositivos, etc.
Gerenciamento de dispositivos: controle, agrupamento, tempo, logs, estatísticas, posicionamento, compartilhamento, configuração, desabilitação, atualização OTA, registro automático, modo sombra, monitoramento em tempo real, autenticação de criptografia, etc.
Gerenciamento EMQ: cliente Mqtt, ouvinte, tópico de mensagem, assinatura de mensagem, gerenciamento de plug-in, mecanismo de regras, recursos
SDK de hardware: suporta conexões WIFI e MQTT, resposta de modelo de objeto, monitoramento em tempo real, relatórios regulares de dados de monitoramento, criptografia AES, tempo NTP, etc.
Gerenciamento de modelo de objeto: atributos (status do dispositivo e dados de monitoramento), funções (execução de tarefas específicas), eventos (o dispositivo reporta proativamente à nuvem)
Outras funções: multilocação, estatísticas, informações de notícias, notificações e anúncios, suporte para banco de dados de série temporal TDengine
Planeje desenvolver e melhorar funções: alarmes de dispositivos, ligação de cena, conexão nuvem-nuvem com alto-falantes inteligentes, configuração de rede de dispositivos, login de terceiros, login por SMS, personalização da interface do APP, processamento de fluxo de vídeo, etc.
Tecnologias relacionadas: Spring boot, MyBatis, Spring Security, Jwt, Mysql, Redis, TDengine, EMQX, Mqtt, etc.
Ferramentas de desenvolvimento: IDEA
Lado da web
Tecnologias relacionadas: ES6, Vue, Vuex, Vue-router, Vue-cli, Axios, Element-ui, etc.
Ferramentas de desenvolvimento: Visual Studio Code
Terminal móvel (Android / Ios / miniaplicativo WeChat / H5)
Tecnologias relacionadas: uniapp, uView, uChart
Ferramentas de desenvolvimento: HBuilder
Lado de hardware
Tecnologias relacionadas: ESP-IDF, Arduino, FreeRTOS, etc.
Ferramentas de desenvolvimento: Visual Studio Code e Arduino
Autenticação de criptografia (recomendado)
Autenticação simples
Outros métodos de autenticação suportados pelo EMQX
2. Interação do dispositivo
Tópicos Mqtt relacionados ao modelo de publicação, informações do dispositivo e sincronização de relógio
Tópicos Mqtt relacionados ao modelo de assinatura, atualização de dispositivo e sincronização de relógio
O projeto fornece um exemplo de SDK, utilizando o chip ESP8266 e desenvolvido com base em Arduino. (A gravação do dispositivo usa um módulo de porta serial, como Ch340, que vem com a maioria das placas de desenvolvimento) O diagrama de fiação é o seguinte