Tabla de contenido:

Reciba alertas por correo electrónico desde el sistema de seguridad de su hogar usando Arduino: 3 pasos
Reciba alertas por correo electrónico desde el sistema de seguridad de su hogar usando Arduino: 3 pasos

Video: Reciba alertas por correo electrónico desde el sistema de seguridad de su hogar usando Arduino: 3 pasos

Video: Reciba alertas por correo electrónico desde el sistema de seguridad de su hogar usando Arduino: 3 pasos
Video: 16º ¿Cómo vigilar tu casa desde el celular? || ARDUINO ONLINE 2024, Noviembre
Anonim
Reciba alertas por correo electrónico desde el sistema de seguridad de su hogar usando Arduino
Reciba alertas por correo electrónico desde el sistema de seguridad de su hogar usando Arduino

Con Arduino, podemos adaptar fácilmente la funcionalidad básica del correo electrónico a prácticamente cualquier instalación de sistema de seguridad existente. Esto es particularmente adecuado para sistemas más antiguos que probablemente hayan estado desconectados durante mucho tiempo de un servicio de monitoreo y que, de lo contrario, tendrían una utilidad limitada. Este NO es un reemplazo para un servicio de monitoreo.

Hay productos disponibles comercialmente, como envisalink, que añaden funciones de comunicación y control adicionales, pero no son económicos.

Este proyecto se puede completar por menos de $ 10.

Que necesitas:

  • Arduino - preferiblemente Uno o Mega
  • Blindaje Ethernet W5100
  • Sistema de seguridad: el que se usa aquí es un DSC Power 832 PC5010, pero se puede usar prácticamente cualquier modelo con un pin programable (o cualquier pin que tenga un cambio de estado medible).
  • Manual de instalación y hojas de trabajo de programación: también necesitará el código de instalador para realizar los cambios necesarios.
  • Una longitud de cable de núcleo sólido adecuado para conectarse a los pines del cabezal Arduino.
  • Resistencia de 10k para tirar del pin de entrada arduino a tierra.
  • Resistencia de 1.5k para limitar la corriente que va al lado del LED del optoacoplador. El valor se basa en el voltaje de entrada y la corriente máxima del optoacoplador.
  • Optoacoplador: utilicé un FOD817 pero este es un circuito muy simple con amplios requisitos, por lo que hay literalmente cientos de otros que funcionarán con especificaciones similares de forma remota.
  • Cable de ethernet.

Paso 1: programe el sistema de seguridad

Programar el sistema de seguridad
Programar el sistema de seguridad

Advertencia:

  • Acceder al panel de seguridad o realizar cambios en la configuración de la instalación puede activar una alerta de manipulación si actualmente está suscrito a un servicio de monitoreo.
  • También asegúrese de realizar un seguimiento de cada cambio que realice para poder revertirlo más tarde si es necesario.

Lo que estamos tratando de lograr es leer un cambio de estado del sistema cuando se activa la alarma. La mayoría de los sistemas tienen un pin de salida programable que podemos usar para señalar el Arduino. También es posible usar la señal de la sirena (sin tener que hacer ningún cambio en el sistema) pero se requerirán circuitos adicionales y la modificación del código Arduino; no tomé esta ruta porque mi objetivo principal era resolver el problema código por lo que estaría alterando la configuración de todos modos.

Exactamente cómo programarlo difiere entre modelos, pero el concepto básico es el mismo; consulte el manual de instalación de su sistema para obtener más detalles. En el sistema DSC que estoy usando:

  • Configuré el pin PGM1 para que se active cuando se active la alarma. Sección [009], Opción [01].
  • En este sistema también establece los atributos de cómo y bajo qué condiciones funciona el pin - Sección [141]:

    • Establezca el atributo 3 en ON para que el pin esté normalmente abierto y se cambie a tierra cuando se active la alarma. Siempre tenga cuidado de que los pines de entrada de Arduino no obtengan más de 5v (algunos son solo tolerantes a 3.3v).
    • Todos los demás atributos están desactivados.

La mayoría de los sistemas de seguridad tienen un módem integrado que está diseñado para comunicarse principalmente con una estación central de monitoreo a través de líneas telefónicas. Si no reciben constantemente un reconocimiento de que se reciben los datos que se envían, se mostrará un código de problema. Algunos pueden configurarse para enviar mensajes de buscapersonas o para llamar a una línea personal sin que el sistema busque una respuesta (por lo tanto, no muestre un código de problema), por lo que si el suyo lo hace y tiene un teléfono fijo, puede programarlo para llamar a su teléfono (s) además de enviar un correo electrónico en un evento.

Si no está utilizando un servicio de monitoreo y / o su sistema no puede programarse para llamar a un número de teléfono regular sin generar un código de falla, desactive el comunicador y el monitor de línea telefónica (tlm) en la configuración.

Paso 2: Programa Arduino

Programa Arduino
Programa Arduino

Primero debemos suscribirnos a un servicio desde el que enviar nuestro correo electrónico.

El servicio que utilicé es smtp2go, que es gratuito y funciona con Arduino; el código fuente utilizado aquí se basa en el código de configuración de su sitio.

www.smtp2go.com/

Después de registrarse, debe codificar en base64 el nombre de usuario y la contraseña (que se encuentran en "Configuración"> "Usuarios") para que se pueda usar en el boceto.

www.base64encode.org/

Código fuente:

github.com/hzmeister/arduino_alarm_email

Configure las secciones con // comentarios según sus requisitos.

Sube a Arduino.

Actualizar:

Los correos electrónicos de smtp2go terminan yendo a la carpeta de correo no deseado después de un tiempo (incluso si no los configuraste). Probé temboo, que era más confiable (ya que usa gmail), pero los perfiles caducan después de un mes, por lo que tampoco es una opción viable. Incluí el código para enviar desde gmail con temboo usando un escudo w5100 si alguien lo necesita (su código requiere que uses el yun descontinuado y costoso).

Esta versión usa temboo gmailv2 que se autentica usando el OAuth más confiable con token de actualización en lugar de la contraseña de la aplicación utilizada en gmailv1.

Fuente:

github.com/hzmeister/temboo-gmailv2

Finalmente, me decidí por usar mi correo electrónico provisto por isp que tiene el puerto 25 abierto. Puede usar cualquier servidor / puerto de correo electrónico smtp siempre que no requiera que la conexión esté encriptada (ya que el w5100 no lo admite). El beneficio de usar el ISP proporcionado es que Google no lo marca como spam. El código arduino es casi el mismo que con smtp2go, pero con algunos cambios / actualizaciones menores.

Fuente:

github.com/hzmeister/arduino_alarm_emailV2

Paso 3: Instale el hardware y pruebe

Instalar hardware y probar
Instalar hardware y probar
Instalar hardware y probar
Instalar hardware y probar

Instale el escudo w5100 en el Arduino y móntelo en el gabinete. La cinta de velcro funciona bien ya que no es conductora y se puede quitar.

Usé un fotoacoplador para aislar la señal pgm1 de 13.7v de la entrada y tierra del arduino de 5v. Es un circuito de "optoacoplador no inversor".

Cuando se activa la alarma, pgm1 cambia de abierto a tierra completando el circuito.

Prueba el sistema.

Utilice el monitor en serie en el IDE de Arduino para ver el estado de salida.

Verifique la carpeta de correo no deseado si el monitor serial muestra que el correo electrónico se envió correctamente pero no lo está recibiendo en su bandeja de entrada.

Recomendado: