Inhaltsverzeichnis:

Raspberry Pi - Smart Office - Gunook
Raspberry Pi - Smart Office - Gunook

Video: Raspberry Pi - Smart Office - Gunook

Video: Raspberry Pi - Smart Office - Gunook
Video: Smart Office Automation using Raspberry Pi 2024, November
Anonim
Raspberry Pi - Smart Office
Raspberry Pi - Smart Office

Worum geht es in der Bewerbung?

OfficeHelperBOT ist eine Anwendung, die auf eine intelligente Büroumgebung ausgerichtet ist. 2 Raspberry Pi 3 Model B wäre dafür eingerichtet.

Raspberry Pi 1 wäre die Hauptmaschine, die alle Werte von den Sensoren aufnimmt, die Daten über MQTT veröffentlicht, Daten in einer Cloud-Datenbank speichert, die wir DynamoDB verwenden, und den Webportalserver betreibt.

An der Tür würde Raspberry Pi 2 zum Einsatz kommen. Es würde erfordern, dass der Mitarbeiter seine Identität überprüft, bevor er Zugang zum Büro erhält. Dazu gibt es zwei Methoden, die über eine PIN-Code-Sequenz und eine QR-Code-Verifizierung erfolgen. In den Fällen, in denen die Verifizierung missbraucht werden könnte, würden wir ein Bild von demjenigen machen, der die Verifizierung fehlgeschlagen hat, und das Bild der Person im AWS S3-Bucket speichern.

Eine Webseite könnte DHT, Licht, bewegungserkannte Fotos und Videos des Büros anzeigen. Die Webseite könnte auch die Bürobeleuchtung steuern und auch einen Live-Stream von CCTV des Büros anzeigen.

Es würde auch einen Telegram-Bot geben, der es ermöglicht, die LED-Leuchten im Büro zu steuern, den Wert von Sensorwerten wie die Temperatur zu überprüfen und es den Mitarbeitern auch ermöglicht, ihr QR-Code-Bild abzurufen, wenn sie ihr QR-Code-Bild verlieren oder ihre PIN vergessen haben durch Anfordern und Abrufen ihres QR-Code-Bildes von AWS S3 Bucket.

Schritt 1: Schauen wir uns die Übersicht an

Schauen wir uns die Übersicht an!
Schauen wir uns die Übersicht an!
Schauen wir uns die Übersicht an!
Schauen wir uns die Übersicht an!
Schauen wir uns die Übersicht an!
Schauen wir uns die Übersicht an!

Systemarchitekturdiagramm

Wie die Maschinen miteinander kommunizieren

Hardware-Ergebnis

Schaut euch an, wie die beiden Raspberry Pi am Ende aussehen würden

Internetportal

Zeigen Sie das Webportal an, das mit Python über Flask. erstellt wurde

Telegramm Bot

Den von uns erstellten Bot finden

Liveübertragung

1 der PiCam als CCTV verwenden und Live-Filmmaterial streamen

Hardware-Anforderung

  • 2x Himbeer-Pi
  • 2x GPIO-Platine
  • 1x LDR
  • 1x DHT11
  • 1x Bewegungssensor
  • 4x LED
  • 7x Knopf
  • 2x Summer
  • 2x LCD-Anzeige
  • 1x Webcam

Schritt 2: Einrichten für Raspberry Pi 1 (Office)

  1. Erstellen Sie einen Ordner zum Speichern Ihres HTML-Codes namens templates
  2. Erstellen Sie einen Ordner zum Speichern Ihrer CSS-/Javascript-Dateien namens static
  3. Erstellen Sie einen Ordner zum Speichern Ihrer Kameradateien namens Kamera mit 3 Unterordnern capture_photos, motion_photos, motion_videos

mkdir ~/ca2

mkdir ~/ca2/vorlagen

mkdir ~/ca2/static

mkdir ~/ca2/statisch/kamera

mkdir ~/ca2/static/camera/capture_photos

mkdir ~/ca2/static/camera/motion_photos

mkdir ~/ca2/static/camera/motion_Videos

Schritt 3: Einrichten für Raspberry Pi 2 (Tür)

  1. Erstellen Sie einen Ordner zum Speichern Ihrer Dateien namens Tür
  2. Erstellen Sie einen Ordner zum Speichern Ihrer QR-Code-Bilder namens qr_code

mkdir ~/door

mkdir ~/door/qr_code

Schritt 4: Telegramm-Bot einrichten

Telegramm-Bot einrichten
Telegramm-Bot einrichten
Telegramm-Bot einrichten
Telegramm-Bot einrichten
Telegramm-Bot einrichten
Telegramm-Bot einrichten
Telegramm-Bot einrichten
Telegramm-Bot einrichten
  1. Telegramm öffnen
  2. "BotVater" finden
  3. Geben Sie "/start" ein
  4. Geben Sie "/newbot" ein
  5. Folgen Sie den Anweisungen, Name für Bot, Benutzername für Bot, notieren Sie das Bot-Authentifizierungstoken

Schritt 5: DynamoDB einrichten

DynamoDB einrichten
DynamoDB einrichten
DynamoDB einrichten
DynamoDB einrichten
DynamoDB einrichten
DynamoDB einrichten
  1. Registrieren Sie sich für AWS
  2. DynamoDB in AWS Service durchsuchen
  3. Klicken Sie auf "Tabelle erstellen"
  4. Geben Sie den Tabellennamen ein
  5. Legen Sie den Partitionsschlüssel als 'id' (String) fest und fügen Sie den Sortierschlüssel als 'datetime' (String) hinzu.
  6. Mach es für die 4 Tische, dht, Lichter, Galerie, Mitarbeiter

Vorschau der 4 Tabellen

Schritt 6: AWS S3-Bucket einrichten

AWS S3-Bucket einrichten
AWS S3-Bucket einrichten
AWS S3-Bucket einrichten
AWS S3-Bucket einrichten
AWS S3-Bucket einrichten
AWS S3-Bucket einrichten
  1. Suche nach AWS S3
  2. Klicken Sie auf "Bucket erstellen"
  3. Befolgen Sie die Regeln, um den Eimer zu benennen
  4. Folgen Sie Screenshots
  5. Bucket erstellen

Wie kann ich überhaupt in den S3-Bucket hochladen?

Wir haben kein Admin-Portal, daher importieren wir das QR-Code-Bild manuell über die grafische AWS-Benutzeroberfläche. Folgen Sie den Screenshots, um den Bucket zu erstellen. Der Codeausschnitt ist die Logik, die zum Hochladen des Bildes in den S3-Bucket erforderlich ist

Schritt 7: Einrichten von AWS SNS

  1. Nach AWS SNS suchen
  2. Themen-Tag folgen
  3. Neues Thema erstellen
  4. Themennamen und Anzeigenamen festlegen
  5. Bearbeiten Sie die Richtlinie, damit jeder veröffentlichen kann
  6. Abonnieren Sie das erstellte Thema
  7. Legen Sie E-Mail im Endpunktfeld fest, um E-Mails zu erhalten, wenn der Wert einen bestimmten Wert erreicht

Schritt 8: Erstellen einer Regel

  1. Klicken Sie auf "Regel erstellen"
  2. Name und kurze Beschreibung schreiben
  3. Wählen Sie die neueste SQL-Version, um die gesamte MQTT-Nachricht zu senden
  4. Die Regel-Engine verwendet den Themenfilter, um zu bestimmen, welche Regeln ausgelöst werden, wenn eine MQTT-Nachricht empfangen wird
  5. Klicken Sie auf "Aktion hinzufügen"
  6. Wählen Sie das Senden einer Nachricht per SNS-Push-Benachrichtigung

Schritt 9: Webinterface erstellen

Erstellen Sie diese neuen HTML-Dateien namens

  • Kopf
  • Anmeldung
  • Protokolle
  • dht
  • hell
  • Galerie
  • Bewegung
  • LED

Kopieren Sie die Google Drive-Datei und fügen Sie sie in den entsprechenden HTML-Code ein.

drive.google.com/file/d/1zd-x21G7P5JeZyPGZp1mdUJsfjoclYJ_/view?usp=sharing

Schritt 10: Hauptskripte

Es gibt 3 Hauptskripte

  • server.py - Erstellen Sie ein Webportal
  • working.py - Logik für Raspberry Pi 1 (Office)
  • door.py Logik für Raspberry Pi 2 (Tür)

Wir führen einfach alle 3 Codes aus, um das gewünschte Ergebnis zu erhalten

Wir können es von Google Drive unter der Main.zip abrufen

drive.google.com/open?id=1xZRjqvFi7Ntna9_KzLzhroyEs8Wryp7g

Empfohlen: