Automação Residencial Inteligente via App Android e IoT
Componentes e Materiais
- 1x Arduino Yun
- 1x Arduino Mega 2560
- 1x Arduino UNO
- 1x Servo motor
- 2x Display LCD 16x2 (branco sobre azul)
- 1x Teclado numérico
- 1x Buzzer
- 1x Sensor DHT11 Temperatura e Umidade (4 pinos)
- 5x LEDs (genéricos)
- 1x Módulo ventilador
- 1x Chave pushbutton 12mm
- 1x Sensor de chama
- 1x Webcam Logitech C270 HD
- 1x Relé (genérico)
- 1x Lâmpada
- 1x Protoboard (genérica)
- Jumpers (genéricos)
- 1x Cartão SD
- 1x Módulo Bluetooth HC-05
- 1x Leitor RFID (genérico)
Ferramentas Necessárias
- Ferro de solda (genérico)
Aplicativos e Serviços Online
- Blynk
- Temboo
- Arduino IDE
- PuTTY
- Aplicativo "arduino meet robot"
Sobre o Projeto
Vídeo
Antes de prosseguir, assista ao vídeo do projeto para entender o funcionamento e os recursos legais.
Resumo
Nos últimos anos, casas inteligentes tornaram-se tema popular. Muitos propuseram suas arquiteturas, mas a maioria carece de integração entre dispositivos. Segurança também é preocupação. Tecnologias usadas incluem Bluetooth, GSM, Zigbee, cada uma com prós e contras. No meu último ano de engenharia, implementei uma arquitetura integrada monitorada e controlada por app mobile amigável. Todos os sistemas interconectados, com comandos de voz para controle local. Principais recursos:
- Segurança em dois níveis: teclado numérico + RFID impedem acesso de intrusos.
- Upload de foto online em caso de invasão, vigilância por vídeo remota (vídeo em servidor local acessível via navegador).
- Monitoramento do ambiente via sensores (DHT11, chama, MQ3, MQ135) pelo app Android.
- Controle de dispositivos (LEDs, servos) pelo app.
- Agendamento automático baseado nas preferências do usuário pelo app.
- Preparo da casa (aquecedor, cafeteira) baseado nas preferências quando usuário se aproxima.
- Controle por voz humana.
Pré-requisitos
- Familiaridade com programação C
- Familiaridade com Arduino IDE e upload de código
Instruções – Siga Estes Passos
Assista ao vídeo para ver conexões e funcionamento.
Passo 1 – Ligue Todo o Sistema
Faça conexões conforme diagrama de circuito anexo. Muitas conexões, tenha paciência e cuidado. Sugiro construir estrutura tipo casa com papelão para sensação real. Cuidado com sensor PIR de movimento: sensível a mudanças, fixe bem para evitar falsos positivos (porta abrindo inesperadamente).
Conexão RFID:
- MOSI → Pino 51
- MISO → Pino 50
- SCK → Pino 52
- SS/SDA → Pino 9
- RST → Pino 8
Conecte pino 20 do Mega ao pino 2 do Arduino Yun e pino 21 do Mega ao pino 3 do Yun para comunicação I2C.
Passo 2 – Crie Conta Temboo e Configure API Dropbox
Crie conta no Temboo. Registre e-mail, crie primeiro app, salve detalhes (nome do app, chave). Acesse My Account → MANAGE → APPLICATIONS para recuperar ou criar novo.
No lado software, além do Arduino IDE, instale SDK Python do Temboo (link) na raiz do cartão SD (pasta temboo).
Crie conta no Dropbox. Em developers/apps, crie app usando Dropbox API, escolha "Files and datastores". Anote App key e App secret. Defina permissão como "App folder".
Obtenha Token key e Token secret via Temboo: InitializeOAuth (insira App key/secret, gere callback ID e token temporário, confirme no Dropbox) e depois FinalizeOAuth (insira dados anteriores, obtenha Token key/secret finais).
Passo 3 – Instale Drivers no Arduino Yun
Instale PuTTY, conecte via SSH ao IP do Yun (usuário: root, senha padrão: arduino). No terminal do Yun Linux:
opkg updateopkg install kmod-video-uvc(drivers UVC)opkg install python-opensslopkg install fswebcam(software para tirar fotos)
Passo 4 – Vigilância por Vídeo Ao Vivo
Conecte via SSH novamente e instale pacote de streaming:
wget https://www.custommobileapps.com.au/downloads/mjpgstreamer.ipk(se link inválido, pacote está no código do capítulo)opkg install mjpg-streamer.ipk- Inicie streaming:
mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 640x480 -f 25" -o "output_http.so -p 8080 -w /www/webcam" &
Acesse no navegador: https://seuarduinoyunip.local:8080/stream.html
Passo 5 – Configure Conta Twilio para SMS
Cadastre-se em Twilio. Anote Account SID e Auth Token. Compre número grátis e verifique número de destino em "Verified Caller IDs". No Temboo, use SendSMS, insira credenciais Twilio, clique "Run Now", salve perfil. No código do Arduino Yun (linha 208), substitua your_profile_name pelo nome do perfil. Teste no Temboo: não deve dar erro.
Passo 6 – Configure Conta Blynk e App
Baixe app Blynk na Play Store. Crie conta, novo projeto, hardware: Arduino Yun. Auth Token único por projeto (recebe por e-mail). Adicione widgets em 4 abas: Home, HVAC, Monitoring, Control.
Configuração detalhada de cada widget (pinos virtuais V1-V31, ranges, taxas de leitura) está no texto original. Ao final, clique "Run" no app. Pronto! Controle e monitoramento via smartphone Android.
Operações por Controle de Voz
Baixe app AMR_VOICE, configure Bluetooth com HC-05. Grave código "voice control for arduino uno" no Arduino UNO. No app, clique "Connect Robot", emparelhe smartphone com HC-05, pressione ícone de voz e fale comandos do código para ligar/desligar dispositivos.
Dúvidas? Comente. Alguns passos não mostrados em detalhes assumem conhecimentos básicos de Arduino, C e Linux. Pergunte nos comentários se travar.
Nota: Migrei documentos e código para repositório público no GitHub: github.com/akib-islam/.... Baixe código-fonte, esquemáticos e referência de arquitetura. Para contribuir, faça pull request. Issues no repositório.
Cheers!
Código
Baixe o código completo do repositório GitHub. Para adicionar recursos, abra pull request.
Esquemáticos
Baixe os esquemáticos do repositório GitHub.
Processo de manufatura
- Controle Remoto Universal Android com Arduino, 1Sheeld e IR
- Monitor de Frequência Cardíaca IoT em Tempo Real com Arduino e MAX30100
- Controle IoT Remoto de Braço Robótico Personalizado
- Veículo Remoto Controlado por Android com Raspberry Pi e Motor Shield
- Automação Residencial Inteligente e Sistema de Segurança com 1Sheeld
- Controle Suave de Brilho de LED com Bolt IoT e Arduino UNO
- Crie um Medidor IoT Web com Arduino, Yaler e IFTTT
- Sistema Inteligente de Rega de Plantas com Arduino Nano
- Sistema Inteligente de Monitoramento de Plantas com AWS IoT
- Controlador Residencial Arduino com Alexa: Automação Inteligente Simplificada