Sensor Magnético com ESP32: Segurança e Automação IoT

Os sensores magnéticos de porta e janela são componentes essenciais📞 Interfone IP com Vídeo Chamada📞 Interfone IP com Vídeo ChamadaDescubra como integrar interfone IP com vídeo chamada utilizando ESP32 para segurança residencial e corporativa, com streaming e criptografia avançada. em sistemas de segurança residencial e comercial. Eles permitem detectar quando uma porta ou janela é aberta, acionando alarmes ou notificações. Neste artigo, vamos explorar em profundidade como integrar esses sensores com o ESP32, criando um sistema eficiente de monitoramento.

Introdução aos Sensores Magnéticos🔗

Os sensores magnéticosSelecionando Componentes de Hardware para o Sistema de Alarme com ESP32Selecionando Componentes de Hardware para o Sistema de Alarme com ESP32Descubra como selecionar os melhores componentes de hardware para criar um sistema de alarme com ESP32. Tutorial prático com dicas de segurança e eficiência., também conhecidos como interruptores magnéticos ou reed switches, consistem em dois componentes principais:

1. Interruptor Magnético (Reed Switch): É um pequeno dispositivo que contém duas lâminas de metal que se aproximam ou se afastam na presença de um campo magnético.

2. Ímã Permanente: Este ímã aciona o interruptor magnético, fechando ou abrindo o circuito conforme a proximidade.

Quando o ímã está próximo ao reed switch, o campo magnético faz com que as lâminas metálicas se aproximem, fechando o circuito. Ao afastar o ímã, o circuito é aberto.

Funcionamento Básico

  • Porta/Janelas Fechadas: O ímã está próximo ao reed switch, circuito fechado.
  • Porta/Janelas Abertas: O ímã se afasta, circuito aberto.

Essa mudança no estado do circuito pode ser facilmente detectada pelo ESP32O que é o ESP32: Introdução e Conceitos BásicosO que é o ESP32: Introdução e Conceitos BásicosDescubra como o ESP32 revoluciona a automação e IoT com dicas práticas e projetos que transformam sua casa conectada. Domine a tecnologia!.

Componentes Necessários🔗

Para este projeto, vamos precisar dos seguintes componentes📜 Quadro Digital com Tela E-Ink de 32 Polegadas📜 Quadro Digital com Tela E-Ink de 32 PolegadasDescubra como combinar eficiência energética, tecnologia E-Ink e ESP32 para criar quadros digitais, dashboards interativos e arte generativa com soluções IoT.:

Montando o Circuito🔗

Antes de começarmos a programar, é importante montar o circuito corretamente.

Conexão do Sensor Magnético

O sensor magnéticoAprimorando o Sistema de Alarme com Sensores AdicionaisAprimorando o Sistema de Alarme com Sensores AdicionaisDescubra como aprimorar sistemas de alarme com ESP32 adicionando sensores como magnéticos, de fumaça, vibração e ultrassônico, garantindo segurança máxima. funciona basicamente como um interruptor. Vamos conectá-lo ao ESP32 da seguinte forma:

1. Terminal 1 do Reed Switch: Conecte ao pino GPIOInteração com GPIOs via Interface Web no ESP32Interação com GPIOs via Interface Web no ESP32Aprenda a configurar e controlar os GPIOs do ESP32 por meio de uma interface web dinâmica realizando automação, monitoramento e interação remota com facilidade. do ESP32 (por exemplo, GPIO 15).

2. Terminal 2 do Reed Switch: Conecte ao GND do ESP32O que é o ESP32: Introdução e Conceitos BásicosO que é o ESP32: Introdução e Conceitos BásicosDescubra como o ESP32 revoluciona a automação e IoT com dicas práticas e projetos que transformam sua casa conectada. Domine a tecnologia!.

3. Resistor Pull-up de 10kΩ: Conecte um lado ao pino GPIOInteração com GPIOs via Interface Web no ESP32Interação com GPIOs via Interface Web no ESP32Aprenda a configurar e controlar os GPIOs do ESP32 por meio de uma interface web dinâmica realizando automação, monitoramento e interação remota com facilidade. (mesmo pino onde o reed switch está conectado) e o outro lado ao VCC (3.3V) do ESP32.

Esquema do Circuito

O resistor pull-up é fundamental para garantir que o pino GPIOInteração com GPIOs via Interface Web no ESP32Interação com GPIOs via Interface Web no ESP32Aprenda a configurar e controlar os GPIOs do ESP32 por meio de uma interface web dinâmica realizando automação, monitoramento e interação remota com facilidade. não fique em estado flutuante quando o circuito está aberto.

Entendendo Resistor Pull-up🔗

Um resistor pull-up é usado para garantir que o pino de entrada tenha um estado definido (alto) quando o interruptor está aberto. Sem ele, o pino poderia captar interferências📡 Drone FPV com Transmissão de Vídeo ao Vivo📡 Drone FPV com Transmissão de Vídeo ao VivoEste tutorial técnico detalha a construção de um drone FPV com transmissão de vídeo, telemetria via MAVLink e otimizações de latência. e apresentar leituras erráticas.

Por que 10kΩ?

O valor de 10kΩ é comumente usado porque fornece uma resistência suficiente para manter o pino em nível alto sem consumir muita correnteDesafios Práticos: Experimentando com Múltiplos LEDsDesafios Práticos: Experimentando com Múltiplos LEDsAprenda a controlar múltiplos LEDs com ESP32 em projetos IoT. Descubra desafios práticos, montagem de circuitos, programação e efeitos visuais incríveis!.

Programando o ESP32🔗

Agora que o circuito está montado, vamos programar o ESP32 para ler o estado do sensorProgramando o ESP32 para Integração de SensoresProgramando o ESP32 para Integração de SensoresAprenda a programar o ESP32 e integrar sensores com técnicas de leitura e controle para projetos de IoT, do hardware ao código. e realizar ações com base nisso.

Configurando o Ambiente

Certifique-se de que você tem o Arduino IDE instalado com as configuraçõesInstalando o Arduino IDE para ESP32 no macOSInstalando o Arduino IDE para ESP32 no macOSAprenda passo a passo a instalar e configurar o Arduino IDE no macOS para programar o ESP32. Siga dicas essenciais para solucionar problemas comuns. para o ESP32.

Código Básico

Vamos começar com um código simples que lê o estado do sensor e imprime no monitor serialConfigurando a Conexão Wi-Fi no ESP32: Guia Passo a PassoConfigurando a Conexão Wi-Fi no ESP32: Guia Passo a PassoAprenda passo a passo a conectar seu ESP32 à rede Wi-Fi com segurança e estabilidade. Descubra dicas práticas e estratégias de otimização..

#define SENSOR_PIN 15
void setup()
{
  Serial.begin(115200);
  pinMode(SENSOR_PIN, INPUT_PULLUP);
}
void loop()
{
  int sensorValue = digitalRead(SENSOR_PIN);
  if (sensorValue == LOW)
  {
    Serial.println("Porta/Janela ABERTA!");
  }
  else
  {
    Serial.println("Porta/Janela FECHADA.");
  }
  delay(1000);
}

Explicação do Código

Notas Importantes

Testando o Sistema🔗

Após carregar o códigoDesafios Práticos: Experimentando com Múltiplos LEDsDesafios Práticos: Experimentando com Múltiplos LEDsAprenda a controlar múltiplos LEDs com ESP32 em projetos IoT. Descubra desafios práticos, montagem de circuitos, programação e efeitos visuais incríveis! no ESP32:

1. Abra o monitor serialConfigurando a Conexão Wi-Fi no ESP32: Guia Passo a PassoConfigurando a Conexão Wi-Fi no ESP32: Guia Passo a PassoAprenda passo a passo a conectar seu ESP32 à rede Wi-Fi com segurança e estabilidade. Descubra dicas práticas e estratégias de otimização..

2. Observe as mensagens ao abrir e fechar a porta ou janela.

3. Certifique-se de que as mensagens correspondem ao estado físico do sensorProgramando o ESP32 para Integração de SensoresProgramando o ESP32 para Integração de SensoresAprenda a programar o ESP32 e integrar sensores com técnicas de leitura e controle para projetos de IoT, do hardware ao código..

Integrando com uma Sirene🔗

Vamos adicionar uma sireneSelecionando Componentes de Hardware para o Sistema de Alarme com ESP32Selecionando Componentes de Hardware para o Sistema de Alarme com ESP32Descubra como selecionar os melhores componentes de hardware para criar um sistema de alarme com ESP32. Tutorial prático com dicas de segurança e eficiência. ao sistema que será acionada quando a porta ou janela for aberta.

Componentes Adicionais

Circuito da Sirene

1. Coletor do Transistor: Conecte ao negativo do buzzer.

2. Emissor do Transistor: Conecte ao GND do ESP32O que é o ESP32: Introdução e Conceitos BásicosO que é o ESP32: Introdução e Conceitos BásicosDescubra como o ESP32 revoluciona a automação e IoT com dicas práticas e projetos que transformam sua casa conectada. Domine a tecnologia!.

3. Base do Transistor: Conecte ao pino GPIOInteração com GPIOs via Interface Web no ESP32Interação com GPIOs via Interface Web no ESP32Aprenda a configurar e controlar os GPIOs do ESP32 por meio de uma interface web dinâmica realizando automação, monitoramento e interação remota com facilidade. definido (por exemplo, GPIO 14) através de um resistor de 1kΩ.

4. Positivo do Buzzer: Conecte ao VCCConectando Sensores de Movimento PIR ao ESP32Conectando Sensores de Movimento PIR ao ESP32Aprenda a integrar sensores PIR com ESP32 neste tutorial completo, explorando montagem, ajustes e programação na Arduino IDE. (5V ou 3.3V, conforme especificação do buzzer).

Código Atualizado

#define SENSOR_PIN 15
#define BUZZER_PIN 14
void setup()
{
  Serial.begin(115200);
  pinMode(SENSOR_PIN, INPUT_PULLUP);
  pinMode(BUZZER_PIN, OUTPUT);
  digitalWrite(BUZZER_PIN, LOW);
}
void loop()
{
  int sensorValue = digitalRead(SENSOR_PIN);
  if (sensorValue == LOW)
  {
    Serial.println("Porta/Janela ABERTA!");
    digitalWrite(BUZZER_PIN, HIGH);
  }
  else
  {
    Serial.println("Porta/Janela FECHADA.");
    digitalWrite(BUZZER_PIN, LOW);
  }
  delay(1000);
}

Explicação Adicional

Enviando Notificações via Wi-Fi🔗

Vamos melhorar nosso sistema para enviar notificações ao smartphone quando a porta ou janela for aberta.

Utilizando o Blynk

O Blynk é uma plataforma que permite controlar e monitorar dispositivos IoTIntegração do ESP32 com Plataformas de Automação Residencial (ex: Home Assistant)Integração do ESP32 com Plataformas de Automação Residencial (ex: Home Assistant)Aprenda a integrar o ESP32 com Home Assistant de forma prática e segura, configurando Wi-Fi, MQTT, sensores e atuadores para uma casa inteligente..

Configurando o Blynk

1. Baixe o aplicativo Blynk no seu smartphone.

2. Crie um novo projeto e anote o Auth TokenSegurança e Autenticação em APPsSegurança e Autenticação em APPsDescubra estratégias essenciais para implementar HTTPS, autenticação JWT e segurança robusta em APPs conectados ao ESP32 para IoT..

3. Adicione um widget de notificação.

Código com Blynk

#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#define SENSOR_PIN 15
#define BUZZER_PIN 14
char auth[] = "SEU_AUTH_TOKEN";
char ssid[] = "SUA_REDE_WIFI";
char pass[] = "SUA_SENHA_WIFI";
void setup()
{
  Serial.begin(115200);
  pinMode(SENSOR_PIN, INPUT_PULLUP);
  pinMode(BUZZER_PIN, OUTPUT);
  digitalWrite(BUZZER_PIN, LOW);
  Blynk.begin(auth, ssid, pass);
}
void loop()
{
  Blynk.run();
  int sensorValue = digitalRead(SENSOR_PIN);
  if (sensorValue == LOW)
  {
    Serial.println("Porta/Janela ABERTA!");
    digitalWrite(BUZZER_PIN, HIGH);
    Blynk.notify("Alerta: Porta/Janela Aberta!");
  }
  else
  {
    Serial.println("Porta/Janela FECHADA.");
    digitalWrite(BUZZER_PIN, LOW);
  }
  delay(1000);
}

Considerações

Segurança na Comunicação🔗

Ao conectar o ESP32 à internet, é importante considerar aspectos de segurançaSegurança em MQTT: Autenticação e Criptografia no ESP32Segurança em MQTT: Autenticação e Criptografia no ESP32Descubra como proteger conexões MQTT em aplicações IoT com ESP32, implementando autenticação e criptografia TLS para segurança máxima. para evitar acessos não autorizados.

Protocolos Seguros

Boas Práticas

Expansão do Sistema🔗

Este sistema pode ser ampliado para monitorar múltiplas portas e janelas.

Múltiplos Sensores

Identificação de Portas/Janelas

Alimentação por Bateria🔗

Para maior confiabilidade, considere alimentar o sistema com baterias e implementar opções de economia de energia📱 Controlador Universal para Experimentos Físicos📱 Controlador Universal para Experimentos FísicosDescubra o controlador ESP32 que revoluciona experimentos físicos integrando sensores, comunicação BLE e processamento em tempo real para educação STEM..

ESP32 em Modo Deep Sleep

O ESP32 pode ser configurado para entrar em modo de baixo consumo🔑 Autenticador Físico 2FA com E-Ink🔑 Autenticador Físico 2FA com E-InkDescubra como os autenticadores físicos com display E-Ink garantem segurança 2FA offline, unindo durabilidade e baixa energia. Inove agora..

Exemplo

if (sensorValue == LOW)
{
  // Ação quando a porta/janela é aberta
}
else
{
  // Coloca o ESP32 em deep sleep
  esp_sleep_enable_ext0_wakeup(GPIO_NUM_15, 0);
  esp_deep_sleep_start();
}

Considerações de Energia

Solução de Problemas🔗

Sensor Não Detecta Mudanças

ESP32 Não Conecta ao Wi-Fi

Conclusão🔗

Integrar sensores magnéticos de porta e janela com o ESP32 é uma maneira eficaz de criar sistemas de segurança🔒 Sistema de Bike Sharing com Trava Eletrônica🔒 Sistema de Bike Sharing com Trava EletrônicaDescubra como implementar um sistema de bike sharing com ESP32, integrando NFC, cobrança automática e recursos de segurança para cidades inteligentes. personalizados. Com a capacidade de enviar notificações em tempo real e acionar alarmes, você pode monitorar seu ambiente de forma confiável. Além disso, a possibilidade de expansão e integração com outros dispositivos IoT abre um leque de oportunidades para projetos futuros.

Próximos Passos🔗

Lembre-se sempre de considerar os aspectos de segurançaSegurança em MQTT: Autenticação e Criptografia no ESP32Segurança em MQTT: Autenticação e Criptografia no ESP32Descubra como proteger conexões MQTT em aplicações IoT com ESP32, implementando autenticação e criptografia TLS para segurança máxima. e privacidade ao desenvolver sistemas conectados à internet. Com planejamento e cuidado, é possível criar soluções robustas e eficientes para diversas necessidades.

Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.

Referências🔗

Compartilhar artigo

Artigos Relacionados