Inhaltsverzeichnis:

Erhalten Sie E-Mail-Benachrichtigungen von Ihrem Sicherheitssystem zu Hause mit Arduino - Gunook
Erhalten Sie E-Mail-Benachrichtigungen von Ihrem Sicherheitssystem zu Hause mit Arduino - Gunook

Video: Erhalten Sie E-Mail-Benachrichtigungen von Ihrem Sicherheitssystem zu Hause mit Arduino - Gunook

Video: Erhalten Sie E-Mail-Benachrichtigungen von Ihrem Sicherheitssystem zu Hause mit Arduino - Gunook
Video: ÜBERWACHUNGSKAMERAS: Bitte mache nicht DIESE Fehler! 2024, Dezember
Anonim
Erhalten Sie E-Mail-Benachrichtigungen von Ihrem Sicherheitssystem zu Hause mit Arduino
Erhalten Sie E-Mail-Benachrichtigungen von Ihrem Sicherheitssystem zu Hause mit Arduino

Mit Arduino sind wir leicht in der Lage, grundlegende E-Mail-Funktionen in praktisch jede vorhandene Sicherheitssysteminstallation nachzurüsten. Dies ist besonders für ältere Systeme geeignet, die höchstwahrscheinlich schon lange von einem Überwachungsdienst getrennt sind und ansonsten nur einen begrenzten Nutzen hätten. Dies ist KEIN Ersatz für einen Überwachungsdienst.

Es gibt kommerziell erhältliche Produkte wie envisalink, die zusätzliche Kommunikations- und Steuerungsfunktionen hinzufügen, aber sie sind nicht billig.

Dieses Projekt kann für unter $10 abgeschlossen werden.

Was du brauchst:

  • Arduino - vorzugsweise Uno oder Mega
  • W5100 Ethernet-Abschirmung
  • Sicherheitssystem - Das hier verwendete ist ein DSC Power 832 PC5010, aber so ziemlich jedes Modell mit einem programmierbaren Pin (oder einem beliebigen Pin, der eine messbare Zustandsänderung aufweist) kann verwendet werden.
  • Installationshandbuch und Programmierarbeitsblätter - Sie benötigen auch den Installationscode, um die erforderlichen Änderungen vorzunehmen.
  • Eine Länge von massivem Kerndraht, geeignet zum Anschluss an Arduino-Header-Pins.
  • 10k Widerstand, um den Arduino-Eingangspin auf Masse zu ziehen.
  • 1,5k Widerstand zur Begrenzung des Stroms zur LED-Seite des Optokopplers. Der Wert basiert auf der Eingangsspannung und dem maximalen Strom des Optokopplers.
  • Optokoppler - Ich habe einen FOD817 verwendet, aber dies ist eine sehr einfache Schaltung mit breiten Anforderungen, daher gibt es buchstäblich Hunderte anderer, die mit entfernt ähnlichen Spezifikationen funktionieren.
  • Ethernet Kabel.

Schritt 1: Programmieren Sie das Sicherheitssystem

Programmieren Sie das Sicherheitssystem
Programmieren Sie das Sicherheitssystem

Wort der Vorsicht:

  • Der Zugriff auf das Sicherheitsfenster oder das Vornehmen von Änderungen an der Installationskonfiguration kann eine Manipulationswarnung auslösen, wenn Sie derzeit einen Überwachungsdienst abonniert haben.
  • Achten Sie auch darauf, jede Änderung, die Sie vornehmen, im Auge zu behalten, damit Sie sie später bei Bedarf rückgängig machen können.

Wir versuchen, eine Zustandsänderung aus dem System zu lesen, wenn der Alarm ausgelöst wird. Die meisten Systeme haben einen programmierbaren Ausgangspin, mit dem wir dem Arduino signalisieren können. Es ist auch möglich, das Signal der Sirene zu verwenden (ohne Änderungen am System vornehmen zu müssen), aber es sind zusätzliche Schaltungen und Änderungen des Arduino-Codes erforderlich - ich bin diesen Weg nicht gegangen, weil mein Hauptziel darin bestand, das Problem zu lösen Code, also würde ich die Konfiguration sowieso ändern.

Die genaue Programmierung unterscheidet sich zwischen den Modellen, aber das Grundkonzept ist das gleiche - Einzelheiten finden Sie in der Installationsanleitung Ihres Systems. Im DSC-System verwende ich:

  • Ich habe den PGM1-Pin so eingestellt, dass er aktiviert wird, wenn der Alarm ausgelöst wird. Abschnitt[009], Option[01].
  • In diesem System legen Sie auch die Attribute fest, wie und unter welchen Bedingungen der Pin funktioniert - Abschnitt[141]:

    • Setzen Sie Attribut 3 auf ON, damit der Pin normalerweise offen ist und bei Aktivierung des Alarms auf Masse geschaltet wird. Achten Sie immer darauf, dass die Arduino-Eingangspins nicht mehr als 5 V erhalten (einige sind nur 3,3 V tolerant).
    • Alle anderen Attribute werden auf OFF gesetzt.

Die meisten Sicherheitssysteme verfügen über ein integriertes Modem, das in erster Linie für die Kommunikation mit einer zentralen Überwachungsstation über Telefonleitungen ausgelegt ist. Wenn sie nicht ständig die Bestätigung erhalten, dass die gesendeten Daten empfangen wurden, wird ein Fehlercode angezeigt. Einige können so eingestellt werden, dass sie Pager-Nachrichten senden oder eine persönliche Leitung anrufen, ohne dass das System nach einer Antwort sucht (und daher keinen Fehlercode anzeigt).) zusätzlich zum Senden einer E-Mail in einer Veranstaltung.

Wenn Sie keinen Überwachungsdienst verwenden und/oder Ihr System nicht so programmiert werden kann, dass es eine normale Telefonnummer anruft, ohne einen Fehlercode auszugeben, deaktivieren Sie den Communicator und die Telefonleitungsüberwachung (tlm) in der Konfiguration.

Schritt 2: Arduino programmieren

Arduino programmieren
Arduino programmieren

Zuerst müssen wir uns für einen Dienst anmelden, von dem aus unsere E-Mails gesendet werden.

Der von mir verwendete Dienst ist smtp2go, der kostenlos ist und mit Arduino funktioniert - der hier verwendete Quellcode basiert auf dem Setup-Code von ihrer Website.

www.smtp2go.com/

Nachdem Sie sich angemeldet haben, müssen Sie den Benutzernamen und das Passwort (zu finden in "Einstellungen" > "Benutzer") base64 codieren, damit es in der Skizze verwendet werden kann.

www.base64encode.org/

Quellcode:

github.com/hzmeister/arduino_alarm_email

Konfigurieren Sie die Abschnitte mit //Kommentaren nach Ihren Anforderungen.

Auf Arduino hochladen.

Aktualisieren:

smtp2go-E-Mails landen nach einer Weile im Spam-Ordner (auch wenn Sie dies nicht einstellen). Ich habe temboo ausprobiert, das zuverlässiger war (da es Gmail verwendet), aber Profile laufen nach einem Monat ab, daher ist dies auch keine praktikable Option. Ich habe den Code zum Senden von Google Mail mit temboo mit einem w5100-Schild eingefügt, wenn ihn jemand benötigt (der Code erfordert, dass Sie das eingestellte und teure Yun verwenden).

Diese Version verwendet temboo gmailv2, das sich mit dem zuverlässigeren OAuth mit Aktualisierungstoken authentifiziert, im Gegensatz zum App-Passwort, das in gmailv1 verwendet wird.

Quelle:

github.com/hzmeister/temboo-gmailv2

Schließlich entschied ich mich für die Verwendung meiner vom ISP bereitgestellten E-Mail, bei der Port 25 geöffnet ist. Sie können jeden SMTP-E-Mail-Server/-Port verwenden, solange die Verbindung nicht verschlüsselt werden muss (da der w5100 dies nicht unterstützt). Der Vorteil der Verwendung des bereitgestellten ISP besteht darin, dass Google ihn nicht als Spam markiert. Der Arduino-Code ist fast der gleiche wie bei smtp2go, jedoch mit ein paar kleineren Änderungen/Updates.

Quelle:

github.com/hzmeister/arduino_alarm_emailV2

Schritt 3: Hardware installieren und testen

Hardware installieren und testen
Hardware installieren und testen
Hardware installieren und testen
Hardware installieren und testen

Installieren Sie das w5100-Schild auf dem Arduino und montieren Sie es im Gehäuse. Klettband funktioniert gut, da es nicht leitend und abnehmbar ist.

Ich habe einen Optokoppler verwendet, um das 13,7-V-pgm1-Signal vom 5-V-Arduino-Eingang und der Masse zu isolieren. Es handelt sich um eine Schaltung mit "nicht invertierendem Optokoppler".

Wenn der Alarm aktiviert wird, schaltet pgm1 von offen auf Masse um, wodurch der Stromkreis geschlossen wird.

Testen Sie das System.

Verwenden Sie den seriellen Monitor in der Arduino IDE, um den Ausgabestatus anzuzeigen.

Überprüfen Sie den Spam-Ordner, wenn der serielle Monitor anzeigt, dass die E-Mail erfolgreich gesendet wurde, Sie sie jedoch nicht in Ihrem Posteingang erhalten.

Empfohlen: