Índice:

Sistema de segurança de telefone com Arduino: 5 etapas
Sistema de segurança de telefone com Arduino: 5 etapas

Vídeo: Sistema de segurança de telefone com Arduino: 5 etapas

Vídeo: Sistema de segurança de telefone com Arduino: 5 etapas
Vídeo: SISTEMA DE SEGURANÇA DO LOOT | Fizemos uma trava com Arduíno - Episódio 04 2024, Novembro
Anonim
Sistema de segurança de telefone com Arduino
Sistema de segurança de telefone com Arduino

Sua casa ficará desprotegida se você não aplicar este projeto. Este projeto irá ajudá-lo a disparar um alarme via celular quando um intruso entrar em sua casa.

Dessa forma, se você utilizar este projeto, receberá um SMS via celular e poderá manter sua casa protegida em caso de invasões.

Para isso, usaremos a Placa Compatível Arduino com o Módulo SIM800L e Sensor PIR. O sensor PIR será responsável por detectar a presença de um intruso e o SIM800L será responsável por enviar um SMS de alerta para o dono da casa.

Suprimentos

  • Placa compatível com Arduino
  • Sensor PIR
  • Resistor 10kR
  • Jumpers
  • Protoboard
  • Módulo SIM800L

Etapa 1: O Coração do Projeto

O coração do projeto é o módulo SIM800L. Este módulo será capaz de receber comandos do Arduino e enviar SMS para o celular do usuário. Dessa forma, ao receber o alerta, o usuário poderá chamar a polícia ou realizar qualquer outro tipo de ação.

A placa compatível com Arduino será responsável por verificar o estado do sensor e enviará uma mensagem de alerta ao usuário se detectar a presença de um intruso.

Este processo é realizado graças aos comandos de controle entre o Arduino e o Módulo SIM800L. Portanto, a partir disso, iremos apresentá-lo passo a passo para você montar este sistema, deixar sua casa protegida e avisar sempre que algum intruso a invada.

Se você deseja fazer o download da Placa compatível com Arduino, pode acessar este link e obter os arquivos para comprar suas placas no JLCPCB.

Agora, vamos começar!

Etapa 2: O Projeto de Circuito Eletrônico e a Programação

O Projeto Circuito Eletrônico e a Programação
O Projeto Circuito Eletrônico e a Programação
O Projeto Circuito Eletrônico e a Programação
O Projeto Circuito Eletrônico e a Programação

Primeiro, vamos disponibilizar o circuito eletrônico e depois discutiremos o código do projeto passo a passo para você.

#include SoftwareSerial chip (10, 11);

String SeuNumero = "+5585988004783";

# define sensor 12

bool ValorAtual = 0, ValorAnterior = 0;

void setup ()

{Serial.begin (9600); Serial.println ("Inicializando Sistema…"); atraso (5000); chip.begin (9600); atraso (1000);

pinMode (sensor, INPUT); // Configuração do Pino do Sensor como Entrada

}

void loop ()

{// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);

if (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert; ValorAnterior = 1; }

if (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude (); ValorAnterior = 0; }

}

void IntrudeAlert () // Função para enviar mensagem de alerta Umidade Baixa

{chip.println ("AT + CMGF = 1"); atraso (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); atraso (1000); String SMS = "Alerta de intrusão!"; chip.println (SMS); atraso (100); chip.println ((char) 26); atraso (1000); }

void NoMoreIntrude () // Função para enviar mensagem de alerta Umidade Normal

{chip.println ("AT + CMGF = 1"); atraso (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); atraso (1000); String SMS = "Chega de intrusão!"; chip.println (SMS); atraso (100); chip.println ((char) 26); atraso (1000); }

No código mostrado a seguir, declaramos inicialmente a biblioteca de comunicação serial SoftwareSerial.h, conforme mostrado a seguir.

#incluir

Após a definição da biblioteca, foram definidos os pinos de comunicação Tx e Rx. Esses pinos são pinos alternativos e são usados para permitir a comunicação serial em outros pinos do Arduino. A biblioteca SoftwareSerial foi desenvolvida para permitir que você use o software para replicar a funcionalidade

Chip de série de software (10, 11);

Depois disso, o número do celular declarado é mostrado abaixo.

String SeuNumero = "+5585988004783";

O esquema de design eletrônico é simples e fácil de montar. Como você pode ver no circuito, a placa compatível com Arduino é responsável por ler o status do sensor e enviar um SMS para o dono da casa.

A mensagem será enviada se um intruso for detectado dentro da casa. O sensor PIR (infravermelho passivo) é um sensor usado para detectar o movimento do sinal infravermelho. A partir do sinal enviado ao Arduino, o módulo SIM800L enviará uma mensagem ao usuário.

O diodo será usado para fornecer uma queda de tensão para alimentar o módulo SIM800L. Uma vez que o módulo não pode ser alimentado com 5V. Desta forma, uma tensão de 4,3 V chegará para alimentar o seu módulo e garantir que ele funcione com segurança.

Etapa 3: Função Void Setup ()

Na função de configuração vazia, inicializaremos a comunicação serial e configuraremos o pino do sensor como uma entrada. A região do código é apresentada a seguir.

void setup ()

{

Serial.begin (9600); Serial.println ("Inicializando Sistema…"); atraso (5000); chip.begin (9600); atraso (1000); pinMode (sensor, INPUT); // Configuração do Pino do Sensor como Entrada}

Como é possível ver, a comunicação serial dois foi inicializada. O Serial.begin é usado para inicializar o serial nativo do Arduino e o chip.begin é o serial emulado por meio da biblioteca SoftwareSerial. Depois disso, vamos para a função de loop void.

Etapa 4: o projeto e a função de loop de vazio

O Projeto e a Função de Loop de Vazio
O Projeto e a Função de Loop de Vazio
O Projeto e a Função de Loop de Vazio
O Projeto e a Função de Loop de Vazio

Agora, vamos apresentar a principal lógica de programação na função void loop.

void loop () {// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);

if (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert ();

ValorAnterior = 1;

}

if (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude ();

ValorAnterior = 0;

}

}

Primeiro, o sinal do sensor de presença PIR será lido conforme mostrado abaixo.

ValorAtual = digitalRead (sensor);

Após isso, será verificado se o valor na variável ValorAtual é 1 ou 0, conforme mostrado a seguir.

if (ValorAtual == 1 && ValorAnterior == 0) {IntrudeAlert ();

ValorAnterior = 1;

} if (ValorAtual == 0 && ValorAnterior == 0) {NoMoreIntrude ();

ValorAnterior = 0;

}

Caso a variável ValorAtual seja 1 e as variáveis ValorAnterior seja 0, o sensor na verdade está ativado e anteriormente está desativado (ValorAnterior == 0). Desta forma, a função será executada e o usuário receberá a mensagem no seu celular. Depois disso, o valor da variável ValorAnterior será igual a 1.

Desta forma, a variável ValorAnterior será sinalizada que o estado real do sensor está atuado.

Agora, caso o valor da variável ValorAtual seja 0 e o valor da variável ValorAnterior seja igual a 0, o sensor não detecta intrusão e então seu valor é acionado.

Desta forma, o sistema enviará a mensagem para o celular do usuário e atualizará o valor real do sensor para 0. Este valor indicará que o sensor não está atuando no momento.

As mensagens que foram enviadas para o usuário são apresentadas acima.

Agora aprenderemos a trabalhar a função de envio de mensagens para o celular do usuário.

Etapa 5: Funções para enviar mensagens

Neste sistema, existem duas funções. São funções com a mesma estrutura. A diferença entre eles é o nome e a mensagem enviada, mas quando a analisarmos, veremos que são completamente iguais.

A seguir, apresentaremos a estrutura completa das funções e discutiremos o código.

void IntrudeAlert () // Função para enviar mensagem de alerta Umidade Baixa {chip.println ("AT + CMGF = 1"); atraso (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); atraso (1000); String SMS = "Porta aberta!"; chip.println (SMS); atraso (100); chip.println ((char) 26); atraso (1000); }

void NoMoreIntrude () // Função para enviar mensagem de alerta Umidade Normal

{chip.println ("AT + CMGF = 1"); atraso (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); atraso (1000); String SMS = "Porta fechada!"; chip.println (SMS); atraso (100); chip.println ((char) 26); atraso (1000); }

O Módulo SIM800L usa o Comando AT para controlar suas funções. Portanto, através desses comandos, enviaremos a mensagem para o celular do usuário.

O AT + CGMF = 1 é usado para configurar o módulo para funcionar no modo de texto SMS. Após o atraso, o sistema enviará a mensagem para o usuário por meio do seguinte comando.

chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r");

No comando, o módulo SIM800L estará preparado para enviar uma mensagem para o número do celular cadastrado na string SeuNumero. Após isso, o sistema irá carregar a mensagem no string e enviar para o celular do usuário, conforme mostrado abaixo.

String SMS = "Porta fechada!"; chip.println (SMS); atraso (100); chip.println ((char) 26); atraso (1000);

O char (26) é usado para sinalizar o fim da mensagem. Este processo de trabalho é semelhante para duas funções para enviar uma mensagem para o usuário.

Agradecimentos

Agora, agradecemos o apoio da JLCPCB para a realização deste trabalho e, caso tenha interesse, acesse o link a seguir e baixe a Placa Compatível com Arduino.

Recomendado: