Índice:

Receba alertas de e-mail do seu sistema de segurança residencial usando o Arduino: 3 etapas
Receba alertas de e-mail do seu sistema de segurança residencial usando o Arduino: 3 etapas

Vídeo: Receba alertas de e-mail do seu sistema de segurança residencial usando o Arduino: 3 etapas

Vídeo: Receba alertas de e-mail do seu sistema de segurança residencial usando o Arduino: 3 etapas
Vídeo: Acidente de trabalho em máquina 2024, Novembro
Anonim
Obtenha alertas de e-mail do seu sistema de segurança residencial usando o Arduino
Obtenha alertas de e-mail do seu sistema de segurança residencial usando o Arduino

Usando o Arduino, podemos facilmente adaptar a funcionalidade básica de e-mail em praticamente qualquer instalação de sistema de segurança existente. Isso é particularmente adequado para sistemas mais antigos que provavelmente já foram desconectados de um serviço de monitoramento e, de outra forma, teriam utilidade limitada. Este NÃO é um substituto para um serviço de monitoramento.

Existem produtos disponíveis comercialmente, como o prevalink, que adicionam comunicação adicional e funcionalidade de controle, mas não são baratos.

Este projeto pode ser concluído por menos de $ 10.

O que você precisa:

  • Arduino - de preferência Uno ou Mega
  • Escudo Ethernet W5100
  • Sistema de segurança - o usado aqui é um DSC Power 832 PC5010, mas praticamente qualquer modelo com um pino programável (ou qualquer pino que tenha uma mudança de estado mensurável) pode ser usado.
  • Manual de instalação e planilhas de programação - você também precisará do código do instalador para fazer as alterações necessárias.
  • Um comprimento de fio de núcleo sólido adequado para conectar aos pinos de cabeçalho do Arduino.
  • Resistor de 10k para puxar o pino de entrada do Arduino para o aterramento.
  • Resistência de 1,5k para limitar a corrente que vai para o lado do LED do optoacoplador. O valor é baseado na tensão de entrada e corrente máxima do optoacoplador.
  • Optoacoplador - Usei um FOD817, mas este é um circuito muito simples com requisitos amplos, então existem literalmente centenas de outros que funcionarão com especificações remotamente semelhantes.
  • Cabo Ethernet.

Etapa 1: programar o sistema de segurança

Programe o Sistema de Segurança
Programe o Sistema de Segurança

Aviso:

  • Acessar o painel de segurança ou fazer alterações na configuração da instalação pode disparar um alerta de violação se você estiver atualmente inscrito em um serviço de monitoramento.
  • Além disso, certifique-se de acompanhar todas as alterações feitas para poder revertê-las mais tarde, se necessário.

O que estamos tentando realizar é ler uma mudança de estado do sistema quando o alarme é disparado. A maioria dos sistemas tem um pino de saída programável que podemos usar para sinalizar o Arduino. Também é possível usar o sinal da sirene (sem ter que fazer nenhuma alteração no sistema), mas serão necessários circuitos adicionais e modificação do código do Arduino - não segui esse caminho porque meu objetivo principal era resolver o problema código, então eu estaria alterando a configuração de qualquer maneira.

Exatamente como programá-lo difere entre os modelos, mas o conceito básico é o mesmo - consulte o manual de instalação do seu sistema para obter detalhes. No sistema DSC, estou usando:

  • Eu defino o pino PGM1 para ativar quando o alarme for disparado. Seção [009], Opção [01].
  • Neste sistema, você também define os atributos de como e em quais condições o pino funciona - Seção [141]:

    • Defina o Atributo 3 como LIGADO para que o pino esteja normalmente aberto e seja comutado para o aterramento quando o alarme for ativado. Sempre tome cuidado para que os pinos de entrada do Arduino não obtenham mais de 5 V (alguns são tolerantes a apenas 3,3 V).
    • Todos os outros atributos são definidos como OFF.

A maioria dos sistemas de segurança tem um modem embutido projetado para se comunicar principalmente com uma estação de monitoramento central através de linhas telefônicas. Se eles não obtiverem o reconhecimento constante de que os dados enviados foram recebidos, um código de problema será exibido. Alguns podem ser configurados para enviar mensagens de pager ou para ligar para uma linha pessoal sem que o sistema procure uma resposta (portanto, não exibindo um código de problema), então se o seu enviar e você tiver um telefone fixo, você pode programá-lo para ligar para seu (s) telefone (s), além de enviar um e-mail em um evento.

Se você não estiver usando um serviço de monitoramento e / ou seu sistema não puder ser programado para chamar um número de telefone normal sem inserir um código de problema, desative o comunicador e o monitor de linha telefônica (tlm) na configuração.

Etapa 2: programar o Arduino

Programa Arduino
Programa Arduino

Primeiro, precisamos nos inscrever em um serviço de onde enviar nosso e-mail.

O serviço que usei é o smtp2go, que é gratuito e funciona com o Arduino - o código-fonte usado aqui é baseado no código de configuração do site deles.

www.smtp2go.com/

Depois de se inscrever, você precisa codificar em base64 o nome de usuário e a senha (encontrados em "Configurações"> "Usuários") para que sejam usados no esboço.

www.base64encode.org/

Código fonte:

github.com/hzmeister/arduino_alarm_email

Configure as seções com // comentários de acordo com seus requisitos.

Faça upload para o Arduino.

Atualizar:

Os e-mails smtp2go acabam indo para a pasta de spam depois de um tempo (mesmo que você os tenha configurado para não). Tentei o temboo, que era mais confiável (já que usa gmail), mas os perfis expiram depois de um mês, então também não é uma opção viável. Eu incluí o código para enviar do gmail com o temboo usando um escudo w5100 se alguém precisar (seu código requer que você use o yun descontinuado e caro).

Esta versão usa o temboo gmailv2, que autentica usando o OAuth mais confiável com token de atualização em oposição à senha do app usada no gmailv1.

Fonte:

github.com/hzmeister/temboo-gmailv2

Eventualmente, decidi usar meu e-mail fornecido pelo provedor de serviços de Internet, que está com a porta 25 aberta. Você pode usar qualquer servidor / porta de e-mail smtp, desde que não exija que a conexão seja criptografada (já que o w5100 não oferece suporte para isso). A vantagem de usar o ISP fornecido é que o Google não o sinaliza como spam. O código do arduino é quase o mesmo do smtp2go, mas com algumas pequenas alterações / atualizações.

Fonte:

github.com/hzmeister/arduino_alarm_emailV2

Etapa 3: instalar o hardware e testar

Instale o Hardware e Teste
Instale o Hardware e Teste
Instale o Hardware e Teste
Instale o Hardware e Teste

Instale a blindagem do w5100 no Arduino e monte-o no gabinete. A fita de velcro funciona bem, pois não é condutiva e é removível.

Usei um fotoacoplador para isolar o sinal de 13.7v pgm1 da entrada do arduino 5v e do aterramento. É um circuito de "optoacoplador não inversor".

Quando o alarme é ativado, pgm1 muda de aberto para terra completando o circuito.

Teste o sistema.

Use o monitor serial no IDE do Arduino para ver o status da saída.

Verifique a pasta de spam se o monitor serial mostra que o e-mail foi enviado com sucesso, mas você não está recebendo na sua caixa de entrada.

Recomendado: