This page was machine-translated from English. Report issues.

Como Construir um Monitor de Umidade Inteligente para Casa com Controle Automatizado de Desumidificador

Crie uma solução inteligente para casa que monitora os níveis de umidade interna e controla automaticamente seu desumidificador. Este projeto combina sensores IoT, conectividade em nuvem e integração com casa inteligente para manter a qualidade do ar ideal, prevenir o crescimento de mofo e melhorar a eficiência energética do seu espaço de vida.

Create your own plan

Learn2Vibe AI

Online

AI
What do you want to build?

Resumo Simples

Um monitor de umidade inteligente para casa que controla automaticamente um desumidificador, garantindo qualidade e conforto do ar interno, além de economia de energia.

Documento de Requisitos do Produto (PRD)

Objetivos:

  • Desenvolver um dispositivo inteligente para casa, fácil de usar, para monitorar e controlar a umidade interna
  • Integrar com desumidificadores existentes para controle automatizado
  • Fornecer dados e insights de umidade em tempo real aos usuários
  • Otimizar o uso de energia e melhorar a qualidade do ar interno

Público-alvo:

  • Proprietários de casas preocupados com a qualidade do ar interno
  • Indivíduos tech-savvy interessados em soluções de casa inteligente
  • Pessoas que vivem em climas úmidos ou em espaços propensos à umidade

Recursos-chave:

  1. Monitoramento de umidade em tempo real
  2. Controle automatizado de desumidificador
  3. Aplicativo móvel para monitoramento e controle remotos
  4. Rastreamento e análise de dados históricos
  5. Integração com casa inteligente (ex.: Amazon Alexa, Google Home)
  6. Otimização do uso de energia
  7. Limites de umidade e agendas personalizáveis

Requisitos do Usuário:

  • Processo de configuração e instalação simples
  • Interface do aplicativo móvel intuitiva
  • Conectividade confiável e precisão dos dados
  • Compatibilidade com vários modelos de desumidificador
  • Alertas e notificações personalizáveis
  • Medidas de privacidade e segurança de dados

Fluxos de Usuário

  1. Configuração do Dispositivo:

    • Usuário desembala o dispositivo e baixa o aplicativo móvel
    • O aplicativo guia o usuário pelo processo de conexão do dispositivo à Wi-Fi
    • Usuário configura as configurações e preferências do desumidificador
  2. Monitoramento Diário:

    • Usuário abre o aplicativo para ver os níveis de umidade atuais e tendências
    • O sistema ajusta automaticamente o desumidificador com base nos limites definidos
    • Usuário recebe notificações para mudanças significativas ou problemas
  3. Análise de Dados:

    • Usuário acessa dados históricos de umidade e relatórios de uso de energia
    • O aplicativo fornece insights e recomendações para otimizar as configurações
    • Usuário ajusta as preferências com base em sugestões baseadas em dados

Especificações Técnicas

  • Hardware: PCB personalizada com microcontrolador ESP32, sensor de umidade DHT22
  • Firmware: C++ com framework Arduino
  • Aplicativo Móvel: React Native para compatibilidade multi-plataforma
  • Backend: Node.js com Express.js
  • Banco de Dados: MongoDB para armazenamento escalável de dados
  • Plataforma em Nuvem: AWS IoT Core para gerenciamento de dispositivos e processamento de dados
  • API: API RESTful para comunicação entre aplicativo e backend
  • Autenticação: Autenticação de usuário baseada em JWT
  • Criptografia: SSL/TLS para segurança na transmissão de dados

Endpoints da API

  • POST /api/users/register
  • POST /api/users/login
  • GET /api/devices/{deviceId}/data
  • POST /api/devices/{deviceId}/settings
  • GET /api/users/{userId}/dashboard
  • POST /api/devices/{deviceId}/control
  • GET /api/devices/{deviceId}/history

Esquema do Banco de Dados

Usuários:

  • _id: ObjectId
  • email: String
  • password: String (criptografada)
  • name: String
  • devices: Array de ObjectId

Dispositivos:

  • _id: ObjectId
  • userId: ObjectId
  • name: String
  • model: String
  • settings: Object

Dados de Umidade:

  • _id: ObjectId
  • deviceId: ObjectId
  • timestamp: Date
  • humidity: Number
  • temperature: Number

Estrutura de Arquivos

monitor-umidade-inteligente/ ├── firmware/ │ ├── src/ │ └── platformio.ini ├── aplicativo-movel/ │ ├── src/ │ │ ├── components/ │ │ ├── screens/ │ │ ├── services/ │ │ └── utils/ │ ├── App.js │ └── package.json ├── backend/ │ ├── src/ │ │ ├── controllers/ │ │ ├── models/ │ │ ├── routes/ │ │ └── utils/ │ ├── app.js │ └── package.json ├── funcoes-nuvem/ │ └── index.js ├── docs/ │ ├── especificacao-api.md │ └── manual-usuario.md └── README.md

Plano de Implementação

  1. Configuração do Projeto (1 semana)

    • Configurar os ambientes de desenvolvimento
    • Criar os repositórios do projeto
    • Definir padrões de codificação e práticas de documentação
  2. Desenvolvimento de Hardware (2 semanas)

    • Projetar e prototipar o PCB personalizado
    • Integrar o ESP32 e o sensor DHT22
    • Desenvolver o firmware inicial para funcionalidade básica
  3. Infraestrutura em Nuvem (2 semanas)

    • Configurar o AWS IoT Core
    • Implementar registro e gerenciamento de dispositivos
    • Desenvolver pipelines de ingestão e processamento de dados
  4. Desenvolvimento do Backend (3 semanas)

    • Configurar o servidor Node.js e Express.js
    • Implementar endpoints de API e modelos de banco de dados
    • Desenvolver lógica de autenticação de usuário e gerenciamento de dispositivos
  5. Desenvolvimento do Aplicativo Móvel (4 semanas)

    • Criar a estrutura do aplicativo React Native
    • Implementar a interface do usuário e a navegação
    • Integrar com a API do backend e atualizações de dados em tempo real
  6. Integração e Testes (2 semanas)

    • Integrar todos os componentes (hardware, nuvem, backend, aplicativo móvel)
    • Realizar testes abrangentes do sistema e corrigir bugs
    • Realizar auditorias e otimizações de segurança
  7. Teste Beta e Refinamento (2 semanas)

    • Lançar a versão beta para usuários selecionados
    • Coletar feedback e implementar melhorias
    • Finalizar os recursos e corrigir quaisquer problemas restantes
  8. Documentação e Implantação (1 semana)

    • Concluir o manual do usuário e a documentação da API
    • Preparar para a implantação de produção
    • Planejar a manutenção e o suporte contínuos

Estratégia de Implantação

  1. Produção de Hardware:

    • Finalizar o design do PCB e encomendar uma pequena produção em lote
    • Montar e testar os dispositivos
    • Criar embalagem e guias do usuário
  2. Infraestrutura em Nuvem:

    • Configurar o ambiente de produção da AWS
    • Configurar dimensionamento automático e balanceamento de carga
    • Implementar sistemas de monitoramento e alerta
  3. Implantação do Backend:

    • Implantar a aplicação Node.js no AWS Elastic Beanstalk
    • Configurar o MongoDB Atlas para hospedagem do banco de dados
    • Configurar certificados SSL e configurações de domínio
  4. Lançamento do Aplicativo Móvel:

    • Enviar os aplicativos para a Apple App Store e Google Play Store
    • Preparar para um lançamento gradual para gerenciar a carga inicial de usuários
  5. Integração e Implantação Contínuas (CI/CD):

    • Implementar testes automatizados para todos os componentes
    • Configurar pipelines de CI/CD para atualizações do backend e do aplicativo móvel
  6. Monitoramento e Manutenção:

    • Implementar registro e rastreamento de erros (ex.: Sentry)
    • Configurar monitoramento de desempenho (ex.: New Relic)
    • Estabelecer um cronograma regular de atualizações e manutenção

Justificativa do Design

O projeto combina hardware personalizado com serviços baseados em nuvem para criar uma solução escalável e eficiente para casa inteligente. O microcontrolador ESP32 foi escolhido por seu baixo consumo de energia e recursos Wi-Fi integrados, enquanto o sensor DHT22 fornece leituras precisas de umidade. O React Native permite o desenvolvimento de aplicativos móveis multiplataforma, reduzindo o tempo de lançamento. O backend Node.js com MongoDB oferece flexibilidade para adição de recursos futuros. O AWS IoT Core fornece recursos robustos de gerenciamento de dispositivos e processamento de dados, garantindo confiabilidade e escalabilidade à medida que a base de usuários crescer.