Table des matières:

Recevez des alertes par e-mail de votre système de sécurité domestique à l'aide d'Arduino : 3 étapes
Recevez des alertes par e-mail de votre système de sécurité domestique à l'aide d'Arduino : 3 étapes

Vidéo: Recevez des alertes par e-mail de votre système de sécurité domestique à l'aide d'Arduino : 3 étapes

Vidéo: Recevez des alertes par e-mail de votre système de sécurité domestique à l'aide d'Arduino : 3 étapes
Vidéo: Créer une alarme domestique en quelques minutes avec l'Arduino 2024, Novembre
Anonim
Recevez des alertes par e-mail de votre système de sécurité domestique à l'aide d'Arduino
Recevez des alertes par e-mail de votre système de sécurité domestique à l'aide d'Arduino

En utilisant Arduino, nous sommes facilement en mesure d'adapter la fonctionnalité de messagerie de base à pratiquement n'importe quelle installation de système de sécurité existante. Ceci est particulièrement adapté aux systèmes plus anciens qui ont très probablement été déconnectés depuis longtemps d'un service de surveillance et auraient autrement une utilité limitée. Ce n'est PAS un remplacement pour un service de surveillance.

Il existe des produits disponibles dans le commerce, comme envisalink, qui ajoutent des fonctionnalités de communication et de contrôle supplémentaires, mais ils ne sont pas bon marché.

Ce projet peut être réalisé pour moins de 10 $.

De quoi as-tu besoin:

  • Arduino - de préférence Uno ou Mega
  • Blindage Ethernet W5100
  • Système de sécurité - Celui utilisé ici est un DSC Power 832 PC5010 mais à peu près n'importe quel modèle avec une broche programmable (ou n'importe quelle broche qui a un changement d'état mesurable) peut être utilisé.
  • Manuel d'installation et fiches de programmation - vous aurez également besoin du code installateur pour effectuer les modifications nécessaires.
  • Une longueur de fil à âme solide adaptée pour se connecter aux broches d'en-tête Arduino.
  • Résistance de 10k pour tirer la broche d'entrée arduino à la terre.
  • Résistance de 1,5 k pour limiter le courant allant du côté LED de l'optocoupleur. La valeur est basée sur la tension d'entrée et le courant maximum de l'optocoupleur.
  • Optocoupleur - J'ai utilisé un FOD817 mais il s'agit d'un circuit très simple avec de larges exigences, il y en a donc littéralement des centaines d'autres qui fonctionneront avec des spécifications à distance similaires.
  • Câble Ethernet.

Étape 1: programmer le système de sécurité

Programmer le système de sécurité
Programmer le système de sécurité

Mot d'avertissement:

  • L'accès au panneau de sécurité ou la modification de la configuration de l'installation peut déclencher une alerte de sabotage si vous êtes actuellement abonné à un service de surveillance.
  • Assurez-vous également de garder une trace de chaque modification que vous apportez afin de pouvoir l'annuler plus tard si nécessaire.

Ce que nous essayons d'accomplir est de lire un changement d'état du système lorsque l'alarme est déclenchée. La plupart des systèmes ont une broche de sortie programmable que nous pouvons utiliser pour signaler l'Arduino. Il est également possible d'utiliser le signal de la sirène (sans avoir à apporter de modifications au système) mais des circuits supplémentaires et une modification du code Arduino seront nécessaires - je n'ai pas suivi cette voie car mon objectif principal était de résoudre le problème code donc je modifierais la configuration de toute façon.

La manière exacte de le programmer diffère selon les modèles, mais le concept de base est le même - reportez-vous au manuel d'installation de votre système pour plus de détails. Dans le système DSC que j'utilise:

  • J'ai configuré la broche PGM1 pour qu'elle s'active lorsque l'alarme est déclenchée. Section[009], Option[01].
  • Dans ce système, vous définissez également les attributs de comment et dans quelles conditions la broche fonctionne - Section [141]:

    • Réglez l'attribut 3 sur ON pour que la broche soit normalement ouverte et qu'elle soit mise à la terre lorsque l'alarme est activée. Veillez toujours à ce que les broches d'entrée Arduino ne dépassent pas 5 V (certaines ne tolèrent que 3,3 V).
    • Tous les autres attributs sont définis sur OFF.

La plupart des systèmes de sécurité ont un modem intégré conçu pour communiquer principalement avec une station de surveillance centrale via des lignes téléphoniques. S'ils ne reçoivent pas constamment l'accusé de réception des données envoyées, un code de panne s'affichera. Certains peuvent être configurés pour envoyer des messages de téléavertisseur ou pour appeler une ligne personnelle sans que le système recherche une réponse (donc n'affiche pas de code d'anomalie).) en plus d'envoyer un e-mail lors d'un événement.

Si vous n'utilisez pas de service de surveillance et/ou que votre système ne peut pas être programmé pour appeler un numéro de téléphone ordinaire sans lancer un code de panne, désactivez le communicateur et le moniteur de ligne téléphonique (tlm) dans la configuration.

Étape 2: programmer Arduino

Programme Arduino
Programme Arduino

Nous devons d'abord nous inscrire à un service à partir duquel envoyer notre courrier électronique.

Le service que j'ai utilisé est smtp2go qui est gratuit et fonctionne avec Arduino - le code source utilisé ici est basé sur le code de configuration de leur site.

www.smtp2go.com/

Après vous être inscrit, vous devez encoder en base64 le nom d'utilisateur et le mot de passe (trouvés dans "Paramètres" > "Utilisateurs") pour qu'ils soient utilisés dans le croquis.

www.base64encode.org/

Code source:

github.com/hzmeister/arduino_alarm_email

Configurez les sections avec //commentaires à vos besoins.

Téléchargez sur Arduino.

Mettre à jour:

Les e-mails smtp2go finissent par aller dans le dossier spam après un certain temps (même si vous ne les avez pas configurés). J'ai essayé temboo qui était plus fiable (puisqu'il utilise gmail), mais les profils expirent après un mois, ce n'est donc pas une option viable non plus. J'ai inclus le code pour envoyer depuis gmail avec temboo en utilisant un bouclier w5100 si quelqu'un en a besoin (leur code vous oblige à utiliser le yun abandonné et coûteux).

Cette version utilise temboo gmailv2 qui s'authentifie à l'aide du jeton d'actualisation OAuth plus fiable, par opposition au mot de passe de l'application utilisé dans gmailv1.

La source:

github.com/hzmeister/temboo-gmailv2

Finalement, j'ai opté pour l'utilisation de l'e-mail fourni par mon fournisseur d'accès Internet qui a le port 25 ouvert. Vous pouvez utiliser n'importe quel serveur/port de messagerie smtp tant qu'il ne nécessite pas que la connexion soit cryptée (puisque le w5100 ne le prend pas en charge). L'avantage d'utiliser le fournisseur d'accès Internet est que Google ne le signale pas comme spam. Le code arduino est presque le même qu'avec smtp2go, mais avec quelques modifications/mises à jour mineures.

La source:

github.com/hzmeister/arduino_alarm_emailV2

Étape 3: Installer le matériel et tester

Installer le matériel et tester
Installer le matériel et tester
Installer le matériel et tester
Installer le matériel et tester

Installez le shield w5100 sur l'Arduino et montez-le dans le boîtier. La bande Velcro fonctionne bien car elle est non conductrice et amovible.

J'ai utilisé un photocoupleur pour isoler le signal 13,7v pgm1 de l'entrée et de la masse de l'arduino 5v. C'est un circuit "optocoupleur non inverseur".

Lorsque l'alarme est activée, pgm1 passe d'ouvert à la terre complétant le circuit.

Testez le système.

Utilisez le moniteur série dans l'IDE Arduino pour voir l'état de la sortie.

Vérifiez le dossier spam si le moniteur série indique que l'e-mail a été envoyé avec succès mais que vous ne le recevez pas dans votre boîte de réception.

Conseillé: