Projetos

Sistema De Alarme Com Sensor Magnético MC-38

Eletrogate 14 de outubro de 2021

Introdução

No cenário atual em que vivemos, sempre estamos expostos a perigos, logo a busca por sistemas de segurança sempre irá existir. Nesse post iremos abordar a base de um sistema de segurança simples, mas com a possibilidade de diversos upgrades.
A base do projeto consiste em acionar o sistema de segurança por meio de um botão “secreto”, possibilitando a identificação de algo fora do padrão definido por meio de um sensor magnético. Após o sensor identificar essa anomalia no padrão de funcionamento definido, o sistema enviará um sinal que permite o acionamento de diversas cargas. Nesse projeto utilizaremos um buzzer e uma lâmpada de emergência, mas nada impede o acionamento de uma tranca elétrica ou outros dispositivos eletromecânicos. Para estar realizando o desligamento do sistema em qualquer caso, deve-se pressionar novamente o botão escondido e, além das funções citadas, o projeto também contará com um LCD para nos informar se o alarme foi ativado ou desativado.


Sensor Magnético MC-38

O funcionamento do sensor magnético MC-38, como já descrito em seu próprio nome, usa os conceitos do magnetismo para comutar seu circuito interno, permitindo o envio de um sinal para o microcontrolador. Podemos dizer que seu funcionamento se assemelha com um botão comum: de um lado existe um contado aberto (um reed switch, como já apresentamos aqui), e do outro lado do sensor existe um ímã. O reed switch possui contatos metálicos que, ao se aproximarem do imã, são atraídos por seu campo magnético e, consequentemente comutando seus contatos. Você pode conferir esse processo na ilustração abaixo:


Materiais Necessários para o Projeto Sistema De Alarme Com Sensor Magnético MC-38

Para esse projeto, você precisará de:


Diagrama

Na imagem a seguir você pode conferir o diagrama com todas as ligações necessárias para a montagem do circuito:


Descrição da Montagem

Primeiramente, vamos conectar o display LCD ao Arduino. Utilize como base a tabela abaixo:

Pinagem do Display LCD

Após fazer todas conexões  necessárias, iremos fazer as demais conexões de acordo com as seguintes tabelas.

Após analisar o circuito acima juntamente com as tabelas, podemos começar a montagem do  circuito. É importante lembrar que todo circuito deve primeiro montado para depois ser energizado.


Código

O código completo para esse projeto se encontra abaixo, basta carregá-lo em seu Arduino.

#include <LiquidCrystal.h>           // biblioteca do lcd
LiquidCrystal lcd(8, 9, 10, 11, 12, 13);         // pinos do lcd 
// nomeando os pinos do arduino 
int lampada = 3; 
int buzzer =4 ;
int sensor = 2;
int chave = 7;
int ledativo = 5;
int ledesativado = 6;
//variáveis 
int adiciona = 0;
int Vsensor = 0;
int Vchave = 0;
void setup(){
 Serial.begin(9600);// iniciando o serial 
 lcd.begin(16,2);// iniciando o lcd
 lcd.setCursor(1, 0);//iniciando o cursor na coluna 1 e linha 0
 lcd.print("inicializando");// escrevendo no lcd
 lcd.setCursor(5, 1);
 lcd.print("sistema");
 delay(3000);
 lcd.clear();// limpado o lcd
 pinMode(lampada, OUTPUT);// definindo lâmpada como saída 
 pinMode(buzzer, OUTPUT);// definindo buzzer como saída 
 pinMode(sensor, INPUT);// definindo sensor como entrada 
 pinMode(chave, INPUT);// definindo chave como entrada 

 digitalWrite(lampada, LOW);// iniciando lâmpada e buzzer desligados 
 digitalWrite(buzzer, LOW);
}
void loop(){ 
 Vchave = digitalRead(chave);        // fazendo a leitura da chave e armazenado na variável.
 Vsensor = digitalRead(sensor);      // fazendo a leitura do sensor e armazenado na variável.
 if(adiciona == 2){         // se variável adiciona for igual a dois, muda ela para zero 
 delay(100);
 adiciona = 0;
} 

 if(Vchave == 1){           //se a chave for igual a 1 adiciona 1 na variável adiciona 
  delay(350);
  adiciona++; 
 }

 if(adiciona == 1){          //se a variável adiciona for igual a 1 
  lcd.setCursor(5, 0);
  lcd.print("alarme");        // mostra no lcd alarme ativado 
  lcd.setCursor(0, 1);
  lcd.print(" ativado ");
  digitalWrite(ledativo,HIGH);        // liga o ledativado 
  digitalWrite(ledesativado,LOW);     //desliga o ledesativado 
  delay(50);
  if(Vsensor == 1){                  //se a variável do sensor for igual a 1
   digitalWrite(lampada, HIGH);       // liga lâmpada 
   digitalWrite(buzzer, HIGH);        //liga buzzer 
   delay(100);
  } 
 }
 if(adiciona == 2){                 //se a variável adiciona for igual a 2
  digitalWrite(lampada, LOW);        //desliga lâmpada 
  digitalWrite(buzzer, LOW);         //desliga lâmpada 
  lcd.clear();                       //limpa lcd
  lcd.setCursor(5, 0);
  lcd.print("alarme");               //escreve alarme ativado 
  lcd.setCursor(3, 1);
  lcd.print("desativado");
  digitalWrite(ledesativado,HIGH);         //liga ledesativado
  digitalWrite(ledativo,LOW);              // desliga ledativado 
  delay(100);
 }

 Serial.println(adiciona);//mostra o valor da variável no monitor serial 
}

A biblioteca do LCD é encontrada na própria IDE do Arduino. Basta procurar por LiquidCrystal.


Considerações Finais

Concluímos aqui mais um projeto que serve de base para diversos outros projetos, como cofres ou até mesmo compor sistemas mais avançados, como uma central de alarme capaz de enviar um SMS sempre que for disparado, através da implementação de um módulo GSM. Você pode utilizar a base apresentada aqui e implementar novas funcionalidades conforme sua necessidade, basta utilizar sua imaginação!

Se ficou alguma dúvida, deixe nos comentários e se você fez algum projeto com base nesse tutorial, tire uma foto e marque a gente no Instagram. Estamos curiosos para ver os projetos que nossos leitores desenvolvem!

Um forte abraço e até a próxima!

Tenha a Metodologia Eletrogate na sua Escola! Conheça nosso Programa de Robótica Educacional.


Sobre o Autor


João Vitor
@v_ribeiro_v

Sou uma pessoa extremamente curiosa, acredito que viver é muito mais do que simplesmente aceitar as coisas com elas são. Por isso iniciei meus estudos nessa área de eletrônica para ir mais a fundo nesse mundo de tecnologia que nos consome cada dia mais.


Eletrogate

14 de outubro de 2021

A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

Conheça a Metodologia Eletrogate e Lecione um Curso de Robótica nas Escolas da sua Região!

Eletrogate Robô

Cadastre-se e fique por
dentro de novidades!