Índice:
- Etapa 1: Lista de Material
- Etapa 2: como conectar e programar Node01 e Node02 (estações escravas)
- Etapa 3: como conectar e programar o Node00 (estação mestre)
- Etapa 4: WifiWebServer (NodeMCU na estação mestre)
- Etapa 5: desde o início …
Vídeo: Rede de estações de sensores para controle de iluminação e segurança: 5 etapas (com fotos)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Com esta rede de estações sensoras configurada em modo mestre / escravo, você poderá realizar o controle de iluminação e segurança em sua casa. Essas estações de sensores (Node01, Node02 neste projeto) são conectadas a uma estação mestre (Node00) conectada à sua rede wi-fi local. Instalei o Node01 na minha sala de armazenamento e o Node02 na minha garagem, controlando luzes e movimentos. A estação master está instalada em nossa sala de jantar conectada ao nosso roteador wi-fi. Instalei a campainha na garagem e uma pequena campainha na estação mestre para soar quando um movimento for detectado por alguma estação sensora na rede.
As principais características da rede são:
- É possível configurar uma rede com mais de duas estações sensoras (estações escravas) (Nó01, Nó02, Nó03,….)
- Devido ao uso de transceptores sem fio com antena, a rede é capaz de cobrir uma ampla área
- Você pode controlar toda a rede de um telefone celular
- Envie um e-mail (conta do Gmail) quando um movimento for detectado e o modo de alarme estiver ativado. Então, se você ativar as notificações push do Gmail em seu celular, você saberá quando um movimento for detectado em sua rede
para fins domóticos:
- Acenda as luzes quando um movimento for detectado / acenda sempre as luzes (para toda a rede ou para cada estação escrava)
- Altere o tempo em minutos em que as luzes ficam acesas depois que um movimento foi detectado para cada estação escrava
para fins de segurança:
- Habilite e desabilite o modo de alarme
- Cada estação escrava é capaz de enviar um sinal para uma estação mestre (Node00) quando o modo de alarme é habilitado e um movimento é detectado
- A estação mestre é capaz de ativar uma campainha e enviar um e-mail quando um desses sinais é recebido de qualquer estação escrava e o modo de alarme é habilitado. A estação master (Node00) é conectada à internet por meio de uma conexão wi-fi para controlar todo o sistema por meio de um telefone celular. Ele é configurado como um WifiWebServer
Etapa 1: Lista de Material
A lista de material que usei para construir o Node01 e o Node02 (estações escravas) é a seguinte:
- Placa Mega 2560 R3
- Suporte de plástico para MEGA 2560 R3
- Sensor HC-SR501 PIR
- Suporte de plástico para HC-SR501
- Relé 5V
- Módulo Transceptor Sem Fio 2.4G 1100m NRF24L01 + PA + LNA com Antena LKY67
- Adaptador 8Pin NRF24L01 (para melhorar os recursos do NRF24L01)
- HLK-PM01 AC DC 220V a 5V Mini fonte de alimentação
A lista de material para construir o Node00 (estações mestres) é a seguinte:
- Placa Mega 2560 R3
- Suporte de plástico para MEGA 2560 R3
- Módulo WiFi NodeMCU Lua Amica V2 ESP8266
- Módulo Transceptor Sem Fio 2.4G 1100m NRF24L01 + PA + LNA com Antena LKY67
- Placa adaptadora 5v-3,3v VCC para NRF24L01 (para melhorar os recursos do NRF24L01)
- Adaptador AC-DC, 9V, 1A (2, 1 mm x 5, 5 mm)
Além disso, usei o seguinte material:
- Conectores de PCB de 2 pinos de 5 mm
- Fios de ligação
- Breadboard MB-102 (800 contatos)
- Contatos Mini Solderless Breadboard 170
- Conjunto de leds e resistências
- Placas PCB
- Kit de ferro de solda de estanho
- Pistola de cola
- Metacrilato transparente
- Sino
Etapa 2: como conectar e programar Node01 e Node02 (estações escravas)
Para programar o sketch "SlaveSation.ino", precisei da biblioteca RF24 e da biblioteca RF24 Network.
No fluxograma acima você pode ver a lógica da estação sensora e as mensagens trocadas entre uma estação sensora escrava e a mestre.
Antes de carregar o esboço, você deve configurar o endereço do nó escravo em formato octal
const uint16_t this_node = 01; // Endereço do nosso nó em formato octal (escravo): 01, 02, 03 …
O significado dos leds em cada estação escrava é o seguinte:
- Led azul. Ele ficará ligado enquanto o pino do sensor PIR estiver alto.
- Led verde. Ele estará ligado quando o alarme for conectado.
Etapa 3: como conectar e programar o Node00 (estação mestre)
Na estação Node00 podemos encontrar duas placas diferentes:
- Placa MEGA 2560 R3. Este dispositivo é usado para receber mensagens da estação de escravos quando um movimento é detectado usando comunicação sem fio. Ele ativará uma campainha quando um movimento for detectado e o alarme for conectado. Para parar a campainha basta desconectar o modo de alarme. Além disso, ele envia para a estação de escravos mensagens de NodeMCU para habilitar ou desabilitar a detecção de movimento, para acender sempre as luzes, para apagar sempre as luzes, …
- Placa NodeMCU Lua Amica V2 ESP8266. Ele funciona como um Wifi Web Server para transmitir e receber comandos de um local remoto usando uma página da Web em um telefone celular. Além disso, envia mensagens de e-mail quando um movimento é detectado e o modo de alarme está ativado.
Ambos os dispositivos são programados para se comunicarem em uma configuração Mestre (NodeMCU) / Escravo (MEGA) por meio do protocolo serial síncrono I2C usando a Wire Library. O protocolo I2C envolve o uso de duas linhas para enviar e receber dados: um pino de relógio serial (SCL) e um pino de dados serial (SDA) através do qual os dados são enviados entre os dois dispositivos.
Como você pode ver no desenho, os dois pinos para a comunicação I2C na placa MEGA 2560 R3 são:
- SDA -> pino 20 SDA
- SCL -> pino 21 SCL
e os outros no NodemMCU são:
- SDA -> pino digital 1
- SCL -> pino digital 2
Antes de carregar o esboço para o ESP8266, você deve instalar a placa ESP8266. Para fazer isso, você deve inserir "https://arduino.esp8266.com/stable/package_esp8266com_index.json" em “URLs adicionais do gerenciador de placa” na janela de preferências no IDE do Arduino. Depois disso, você deve abrir o gerenciador de placas e instalar "esp8266"
Eu uso um adaptador de fonte de alimentação externa (9V, 1A) para a placa MEGA 2560 R3 (conector de alimentação DC, 2, 1mm x 5, 5 mm) e eu conecto a placa NodeMCU ao pino 3V3 na placa MEGA.
Etapa 4: WifiWebServer (NodeMCU na estação mestre)
O esboço carregado no NodeMCU (Node00 ou estação mestre) é configurado como um WebServer conectado à sua rede wi-fi doméstica. É possível acessar remotamente se você configurar o encaminhamento de porta em seu roteador.
Antes de carregar o esboço WifiWebServerV3.ino no NodeMCU, você deve fazer o seguinte:
- Atualize a porta que você vai configurar em seu roteador (encaminhamento de porta) para acessar remotamente o NodeMCU
- Atualize o usuário e a senha para acessar sua rede wi-fi doméstica
- Atualize o login e a senha de sua conta do Gmail para enviar e-mails quando um movimento for detectado e o alarme for conectado
- Atualize o endereço de e-mail onde você receberá os e-mails
Para atualizar o usuário, a senha e a porta que o servidor usará para ouvir, você deve pesquisar o seguinte código no esboço WifiWebServerV3.ino e atualizá-lo:
const char * ssid = "*** seu ssid ***";
const char * password = "*** sua senha ***"; Servidor WiFiServer (80);
Para atualizar o endereço de e-mail onde você receberá os e-mails, você deve pesquisar o seguinte código e atualizá-lo:
const char * to_email = "*** endereço de e-mail onde você receberá a mensagem ***";
Para atualizar o usuário e a senha de sua conta do Gmail para receber e-mails, você deve pesquisar o seguinte código no arquivo "Gsender.h" e atualizá-lo:
const char * EMAILBASE64_LOGIN = "*** seu endereço de e-mail codificado em BASE64 ***";
const char * EMAILBASE64_PASSWORD = "*** sua senha codificada em BASE64 ***"; const char * FROM = "*** seu endereço de e-mail ***";
Para codificar ou decodificar dados em BASE64, usei www.base64encode.org
Se precisar de mais informações sobre como enviar e receber e-mails com o ESP8266 há um "Instrutível" sobre ele aqui
Depois de fazer isso, você pode testar a conexão em seu roteador. Se o dispositivo estiver conectado, você deve reservar o endereço IP atribuído a este dispositivo. Além disso, é uma boa ideia falar com seu provedor de Internet para definir um endereço IP estático em seu roteador.
Para acessar a página da web perto do seu roteador wi-fi, basta digitar o endereço IP local atribuído pelo seu roteador seguindo a porta que você está usando em um navegador da web. Por exemplo: 192.168.40.15:800. Se você tentar acessar remotamente, terá que digitar o endereço IP do seu roteador seguindo a porta que está usando, como acima.
A página da web que mostro nas imagens está programada para controlar uma rede com duas estações escravas.
O sistema está configurado inicialmente para controlar no máximo 5 estações escravas, mas você pode modificá-lo. Basta pesquisar o seguinte código em WifiWebServerV3.ino e SlaveStation.ino
#define number_max_slaves 5
A página da web inicialmente é dividida em 4 seções:
- Seção "Estado" onde mostra se o alarme está conectado ou não
- Seção "Contador de alarmes" onde mostra o número de detecção de movimento em cada estação escrava
- Seção "Alarme" onde você pode conectar ou desconectar (CONECTAR ALARME / DESCONECTAR ALARME) o alarme e zerar o contador de alarmes (RESET CONTADORES)
-
Seção "Iluminação" onde você pode controlar as luzes de cada estação escrava. Você pode controlar o seguinte:
- Acenda as luzes em todas as estações escravas / acenda as luzes somente quando um movimento for detectado em todas as estações escravas (REDE SEMPRE LIGADA / REDE QUANDO MOVIMENTO)
- Altere o tempo em minutos em que as luzes estão acesas para cada estação escrava (NODExx ON 1 MINUTE / NODEXX ON 2 MINUTE)
- Acenda as luzes de cada estação escrava (NODExx SEMPRE LIGADO)
- Ligue as luzes para cada estação escrava apenas quando um movimento for detectado (NODExx_MOV)
Você não precisa mudar nada porque vai funcionar independentemente do nome das estações escravas que você configurar. Além disso, ele detectará automaticamente o número de estações escravas conectadas na rede.
Claro, você pode baixar o esboço e modificar facilmente o código necessário para mostrar sua própria página de controle da web.
Etapa 5: desde o início …
Aqui estão as etapas que você deve seguir para construir sua rede:
- Compre todo o material seguindo a lista que apresento na "Etapa 1"
- Conecte os componentes seguindo o desenho que você pode baixar na "Etapa 2" e na "Etapa 3"
- Construa caixas para cada estação escrava e a estação mestre. Eu construí caixas de metacrilato.
-
Configure cada estação escrava:
Baixe e carregue o sketch "SlaveStation.ino" em uma placa MEGA 2560 R3. Você só precisa editar o esboço e atualizar o endereço da estação escrava como você pode ver na "Etapa 2"
-
Configure a estação mestre:
- Baixe e carregue o sketch "SlaveStation.ino" em um MEGA 2560 R3. Você não precisa mudar nada seja qual for o número de nós escravos de sua rede. Inicialmente, o esboço é configurado para no máximo 5 estações escravas.
- Baixe e carregue o esboço "WifiServerV3.ino" no NodeMCU. Você deve atualizar o esboço seguindo as instruções na "Etapa 4"
- Configure seu roteador para acessar remotamente o NodeMCU (encaminhamento de porta, IP estático …)
Recomendado:
Rede de sensores LTE CAT-M1 GSM IoT T - 15 minutos: 5 etapas
Rede de sensores LTE CAT-M1 GSM IoT … T - 15 minutos: Em 08 de abril de 2018, R & D Software Solutions srl [itbrainpower.net] revelou ao público o anúncio do escudo xyz-mIoT por itbrainpower.net - a primeira e mais compacta placa IoT que combina a versatilidade do microcontrole ARM0
Rede de sensores de temperatura: 6 etapas
Rede de sensores de temperatura: Temperatura e umidade são dados vitais em seu laboratório, cozinha, linha de fabricação, escritório, robôs assassinos e até mesmo em sua casa. Se você precisa monitorar vários locais ou salas ou espaços, você precisa de algo que seja confiável, compacto, preciso e af
Eletrônico Todas as estações, todos os feriados, brincos de LED: 8 etapas (com fotos)
Todas as estações, todos os feriados, brincos de LED eletrônicos: OK, então estamos prestes a fazer alguns brincos bem avançados. Este NÃO é um projeto para iniciantes, e eu recomendaria àqueles que querem fazer isso, que comecem com projetos menores e trabalhem suas habilidades até isso. Então, primeiro .. Coisas que vamos precisar. (PARTES) (1) L
Inversor conectado à rede DIY (não alimenta a rede) Alternativa de UPS: 7 etapas (com fotos)
Inversor DIY Grid Tied (não alimenta a rede) Alternativa de UPS: Este é um post de acompanhamento do meu outro Instructable sobre como fazer um inversor de rede que não realimenta a rede, uma vez que agora é sempre possível fazer isso em certas áreas como um projeto DIY e alguns lugares não permitem a alimentação lá g
Estação meteorológica Acurite 5 em 1 usando Raspberry Pi e Weewx (outras estações meteorológicas são compatíveis): 5 etapas (com fotos)
Estação meteorológica Acurite 5 em 1 usando Raspberry Pi e Weewx (outras estações meteorológicas são compatíveis): Quando eu comprei a estação meteorológica Acurite 5 em 1, eu queria poder verificar o tempo em minha casa enquanto estivesse fora. Quando cheguei em casa e configurei, percebi que precisava conectar o monitor a um computador ou comprar seu hub inteligente