Inhaltsverzeichnis:

Smart Office-Sicherheit: 4 Schritte
Smart Office-Sicherheit: 4 Schritte

Video: Smart Office-Sicherheit: 4 Schritte

Video: Smart Office-Sicherheit: 4 Schritte
Video: So löst du deinen Zauberwürfel mit nur 2 Schritten 😍 2024, November
Anonim
Intelligente Office-Sicherheit
Intelligente Office-Sicherheit

In diesem Projekt möchten wir lernen, wie wir AWS und MQTT in unser IoT-Setup implementieren.

Angesichts der Bedrohung durch einen Insider-Angriff zielt diese Anwendung darauf ab, die Büros von Benutzern mit hoher Autorität zu überwachen. Wenn der Benutzer nicht im Büro ist, überwacht diese Anwendung das Büro.

  • Es verfolgt sowohl Temperatur- als auch Feuchtigkeitswerte und zeigt sie in der Webanwendung an
  • Es ermöglicht den Benutzern, die LED ein- und auszuschalten
  • 2 Arten von Alarmmodus

    • Alarm On - Wenn der Alarm eingeschaltet ist, wird die Überprüfung von Temperatur und Luftfeuchtigkeit gestoppt, während die Bewegungssensoren eingeschaltet werden. Wenn sich im Büro etwas bewegt, ertönt der Summer und ein Foto wird aufgenommen und Benutzer können sehen, was erkannt wurde, wenn sie sich nicht in ihrem Büro befinden
    • Alarm aus – Wenn der Alarm ausgeschaltet ist, werden Temperatur und Luftfeuchtigkeit überprüft und die Werte werden in der Webanwendung angezeigt, während die Bewegungssensoren und die Kamera deaktiviert sind
    • In beiden Modi können Benutzer weiterhin die LED-Leuchten steuern.
  • Mit AWS DynamoDB können wir den Bildpfad speichern, damit Benutzer die aufgenommenen Bilder sehen können
  • Außerdem können wir mit AWS eine E-Mail an die Benutzer senden, wenn während ihrer Abwesenheit eine Bewegung erkannt wird.

Lassen Sie uns nun herausfinden, wie wir es schaffen, ein solches System zu implementieren!

Schritt 1: Schritt 1: Hardware-Setup

Schritt 1: Hardware-Setup
Schritt 1: Hardware-Setup
Schritt 1: Hardware-Setup
Schritt 1: Hardware-Setup

Was du brauchst:

  1. 2x Raspberry Pi 3
  2. 2x T-Schuster-Kit
  3. 1x Steckbrett
  4. Verschiedene Überbrückungskabel
  5. Verschiedene Widerstände
  6. 1x LED
  7. 1x DHT11 Temperatur- und Feuchtigkeitssensoren
  8. 1x PIR-Bewegungssensor
  9. 1x Summer

Unser Setup enthält eine LED, die an GPIO 18 angeschlossen ist, damit der Benutzer die Beleuchtung in seinem Büro steuern kann. Für die Erfassung der Temperatur und Luftfeuchtigkeit verwenden wir einen DHT-Sensor, der an GPIO4 angeschlossen ist. Gefolgt von unserem PIR-Bewegungssensor, der mit GPIO 26 verbunden ist, um Eindringlinge im Büro zu erkennen, wenn der Benutzer nicht da ist. Schließlich ertönt der Summer, wenn der Alarm eingeschaltet ist und etwas erkannt wird.

Schritt 2: Schritt 2: Installieren und Ausführen der Voraussetzungen

AWS

Melden Sie sich zuerst bei

1. Klicken Sie nach der Anmeldung im linken Bereich auf Katalog und dann auf AWS Educate Starter Account 75

2. Kopieren Sie die Access Key ID und den Secret Access Key für die spätere Konfiguration im Raspberry Pi.

3. Klicken Sie auf Konsole öffnen

Registrieren Sie Ihren Himbeer-Pi als Sache

1. Durchsuchen Sie AWS IOT

2. Klicken Sie im linken Bereich auf Verwalten und dann auf Dinge

3. Klicken Sie in der rechten Ecke auf Erstellen

4. Wählen Sie Ein einzelnes AWS IOT-Ding registrieren

5. Geben Sie Ihrem Ding einen Namen und klicken Sie auf Weiter

6. Klicken Sie auf Zertifikat erstellen und speichern Sie die 4 generierten Dinge

7. Aktivieren Sie die Root-CA

8. Erstelle eine Richtlinie und hänge sie an dein Ding an

-Geben Sie ihm einen Namen -Aktion:iot.* -Ressource ARN:* -Überprüfen Sie die Dynamodb.-Zulassung

Führen Sie vor allem aws configure aus Verwenden Sie die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel von früher

Nächste, 1. Erstellen Sie eine Datei namens iot-role-trust.json mit folgendem Inhalt

iot-role-trust.json

2. Führen Sie den folgenden Befehl aus: aws iam create-role --role-name my-iot-role --assume-role-policy-document file://iot-role-trust.json

3. Erstellen Sie eine Datei namens iot-policy.json mit folgendem Inhalt

iot-policy.jason

4. Führen Sie den Befehl aus: aws iam put-role-policy --role-name my-iot-role --policy-name iot-policy --policy-document file://iot-policy.json

DynamoDB

1. Erstellen Sie Tabellen in Dynamodb für Bewegungssensor und Temperatur/Feuchtigkeit

2. Erstellen Sie eine Regel für die Bewegungserkennung

Attribut:* Themenfilter: Sensoren/Bewegung

3. Aktion: Wählen Sie eine geteilte Nachricht in mehrere Spalten einer Datenbank

Lambda

1. Erstellen Sie eine Lambda-Funktion mit folgendem Inhalt

Lambda-Funktion

2. Erstellen Sie eine Regel für Lambda

-Attribut:*

-Themenfilter: Sensoren/alle

3. Actions select rufen die Lambda-Funktion auf, die die Nachricht übergibt

4. Lambda erledigt den Rest für dich

SNS

1. Erstellen Sie ein SNS-Thema

2. Geben Sie das Thema und den Anzeigenamen ein

3. Bearbeiten Sie die Themenrichtlinie, damit jeder das Thema veröffentlichen und abonnieren kann

4. Abonnieren Sie das Thema per E-Mail

5. Gehen Sie zurück zur Bewegungserkennungsregel

6. Fügen Sie für diese Regel eine weitere Aktion namens Send amessage als SNS-Push-Benachrichtigung hinzu

7. Das SNS-Ziel ist das Thema, das Sie im Nachrichtenformat RAW erstellt haben

S3

1. Gehe zu S3 und erstelle einen Bucket zum Hochladen von Bildern

Wichtige Dinge zur Installation auf dem Pis

Flask - Sudo Pip Install Flask

Boto - sudo pip install boto

Boto3 - sudo pip install boto3

AWSIoTPythonSDK - sudo pip install AWSIoTPythonSDK

awscli - sudo pip install awscli

paho - sudo pip installieren paho

mqtt - sudo pip install mqtt

Schritt 3: Schritt 3: Secure Office - Skripte

Im Pi des Benutzers haben wir 1 Skript

client.py - Dieses Skript abonniert mehrere Themen wie Sensoren/Temperatur und Sensoren/Feuchtigkeit, um die Temperatur- und Feuchtigkeitswerte abzurufen, die in der Webanwendung angezeigt werden. Es sendet auch den Status der LED, damit der LED-Status serverseitig geändert werden kann

client.py

Im Server-Pi haben wir 1 Skript

server.py - Dieses Skript abonniert das Thema Lichtstatus, damit die LED-Lichter ein- und ausgeschaltet werden können. Gleichzeitig empfängt es Temperatur- und Feuchtigkeitswerte vom Steckbrett und veröffentlicht sie im Thema Sensoren/alle und in der Lambda-Funktion werden die Werte zu 2 verschiedenen Themen veröffentlicht, Sensoren/Temperatur und Sensoren/Feuchtigkeit

server.py

Schritt 4: Schritt 4: Lernerfahrung

Schritt 4: Lernerfahrung
Schritt 4: Lernerfahrung

Bei dieser Aufgabe haben wir uns vielen Herausforderungen gestellt, da dieses Modul für uns noch neu ist. Durch dieses Projekt haben wir jedoch viel gelernt. Sei es IOT von AWS, wir sind stolz darauf, sagen zu können, dass wir wissen, wie man AWS in unser Kern-IoT-Kit integriert und es zu einem fortschrittlicheren System macht.

Empfohlen: