Inhaltsverzeichnis:

RaspberryPi Home Automation mit OpenHAB - Gunook
RaspberryPi Home Automation mit OpenHAB - Gunook

Video: RaspberryPi Home Automation mit OpenHAB - Gunook

Video: RaspberryPi Home Automation mit OpenHAB - Gunook
Video: Home Automation on a Raspberry Pi with OpenHAB (and Arduino Sensors) 2024, November
Anonim
RaspberryPi Home Automation mit OpenHAB
RaspberryPi Home Automation mit OpenHAB

Hausautomation mit Raspberry Pi 3B und OpenHAB. [Optional] Wir werden Google Home (oder Google Assistant) verwenden, um die Sprachsteuerung zu aktivieren.

Schritt 1: Erforderliche Teile

Für dieses Projekt benötigen wir-

HARDWARE

  1. Raspberry Pi (ich habe ein 3B-Board verwendet)
  2. Google Home Mini [Optional] (Sie können auch den Assistenten verwenden!)
  3. Überbrückungsdrähte
  4. Relaismodul

SOFTWARE

  1. OpenHABian Pi [Sie können auch Raspbian OS verwenden]
  2. IFTTT

Schritt 2: Erste Schritte mit Softwareanforderungen

Sie haben zwei der folgenden Möglichkeiten:

  1. Flashen Sie Raspbian und installieren Sie OpenHAB darauf. (Ermüdend und nicht gut)
  2. OpenHABian direkt auf SD-Karte flashen und direkt ausführen (Damn Easy)

Ich habe die zweite Möglichkeit genutzt und OpenHABian auf eine SD-Karte geflasht und in RPi gesteckt. Daher werde ich diese Methode besprechen. Wenn Sie dem ersten folgen möchten, folgen Sie dieser Anleitung, Manuelle Installation.

Befolgen Sie ansonsten die folgenden Schritte:

  • Laden Sie das neueste OpenHABian-System-Image herunter.
  • Flashen Sie es auf eine SD-Karte mit Etcher.io
  • Legen Sie nach erfolgreichem Flashen die SD-Karte in Rpi ein und verbinden Sie ein Ethernet mit dem Rpi. (Sie können auch WLAN verwenden).
  • Starten Sie das Rpi. Sie benötigen keinen Bildschirm und/oder Maus und Tastatur, da SSH und Samba bereits aktiviert sind!
  • Warten Sie 30-45 Minuten, bis OpenHAB die Ersteinrichtung abgeschlossen hat.
  • Gehen Sie danach zu https://openhabianpi:8080 Dies ist die Adresse Ihres Rpi, von der aus Sie darauf zugreifen können.

Das ist alles für den Teil der Erstinstallation.

OpenHAB. konfigurieren

Nachdem OpenHAB die Ersteinrichtung abgeschlossen hat, gehen Sie zu

  • Navigieren Sie dort zu Paper UI.
  • Gehen Sie dort zu Addons>Bindungen. Suchen Sie GPIO in der Suchleiste. Installieren Sie die GPIO-Bindung. Navigieren Sie dann zur Registerkarte MISC und installieren Sie openHAB Cloud Connector.

Schritt 3: Konfigurieren von OpenHAB -Erstellen von Elementen

Jetzt müssen wir über SSH auf unser Rpi zugreifen. Ich werde PuTTY verwenden. Wenn Sie unter MacOS oder Linux arbeiten, können Sie das Terminal verwenden.

SSH über PuTTY-

  • Öffnen Sie PuTTY.
  • Gehen Sie zur Admin-Seite Ihres Routers und finden Sie die IP-Adresse heraus. Es wird OpenHABian heißen.
  • Kopieren Sie die IP-Adresse, fügen Sie sie in PuTTY ein und klicken Sie auf Öffnen.
  • Jetzt müssen Sie sich anmelden -
  • Einloggen als: openhabianPasswort: openhabian
  • Geben Sie nach der Anmeldung die folgenden Befehle ein:
  • $ cd /etc/openhab2$ ls
  • Jetzt werden Ihnen alle verfügbaren Verzeichnisse angezeigt. Wir verwenden - Elemente (um verschiedene Elemente zu erstellen), Regeln (um Sprachbefehle zu aktivieren) und Sitemaps (um eine Sitemap für die Navigation zu erstellen). Wir erstellen eine Sitemap als -home.sitemap. Artikeldatei wäre - home.items. Und die Regeldatei wäre - home.rules.
  • $ sudo nano items/home.items$ Passwort: openhabian
  • Dies würde ein leeres Dokument öffnen. Wir werden hier unsere Artikel erstellen, die wir über Rpi steuern werden. In meinem Fall habe ich 4 Artikel verwendet. Sie können so viele verwenden, wie Sie möchten.

  • //Items File Switch fan "Fan" { gpio="pin:17 activelow:yes initialValue:low" } Switch night_light "Night Lamp" { gpio="pin:27 activelow:yes initialValue:high" } Switch Auspuff "Exhaust Fan " { gpio="pin:23 activelow:yes initialValue:high" } Licht schalten "Light" { gpio="pin:5 activelow:yes initialValue:low" }

    String VoiceCommand

Hier würde ich das Obige mit einem Beispiel erklären - Switch Fan "Fan" { gpio="pin:17 activelow:yes initialValue:low" } Was hier passiert ist wie folgt-

  • Schalter - Dies ist ein Schlüsselwort, das definiert, dass das Element ein Schalter ist.
  • fan (generisch - benennen Sie es, was Sie wollen) - es ist ein benutzerdefinierter Bezeichner zum Benennen verschiedener Elemente, die man steuern möchte.
  • "Fan" (allgemein - benennen Sie es nach Belieben) - Dies ist der Anzeigename, der in der Benutzeroberfläche angezeigt wird.

  • (Symbolname) - Dies ist der Name des Symbols, das zusammen mit dem Namen angezeigt wird.
  • { gpio="pin:17 activelow:yes initialValue:low" } - hier ist gpio das Ding, das OpenHAB mitteilt, dass das Element über gpio verbunden ist. Pin: 17 ist der Pin, an den Sie das Relais anschließen. activelow:ja (oder nein) - Active low bedeutet, dass bei ausgeschaltetem Schalter keine Spannung an den gpio-Pin angelegt wird und wenn der Schalter eingeschaltet ist, wird Spannung angelegt. initialValue:high (or low) - Danach ist initialValue und was dies tut, ist, openhab mitzuteilen, was der Anfangswert des Items während der Initialisierung gesetzt werden soll. Dieser ist auf hoch eingestellt, weil ich möchte, dass der Schalter während der Initialisierung ausgeschaltet ist.
  • String VoiceCommand - Dies ist das Element, das verwendet wird, um andere Elemente mit Sprachbefehlen zu steuern.
  • Sie können mit dieser Syntax so viele Elemente erstellen, wie Sie möchten.
  • type item-name "item-display_name" { gpio="pin:pin-no activelow: (ja oder niedrig) initialValue: (hoch oder niedrig)
  • Drücken Sie danach Strg+X, dann Y und Enter.
  • $ CD..

Schritt 4: Erstellen einer Sitemap

Sitemap würde für die Navigation und Steuerung der Relaisschalter verwendet werden.

  • Da Sie nach Abschluss der obigen Schritte fortfahren, geben Sie terminal. ein
  • $ sudo nano Sitemaps/home.sitemap
  • Diese Datei wäre die Standard-Sitemap für die Navigation. Der obige Befehl öffnet eine leere Datei. Sie müssen eine Sitemap wie folgt erstellen:

Sitemap Startseite Label="Smart Home"

{

Rahmenlabel="Mein Zimmer" {

Artikel wechseln=Lüfter

Gegenstand wechseln=Licht

Artikel wechseln=Auspuff

Artikel wechseln=night_light

}

}

  • sitemap home label="Smart Home (generic use what you want)" - so lautet der Titel der Homepage. Sie können alles verwenden, was Sie wollen.
  • Frame label="My Room (generic use what you want)" - dies ist der Unterabschnitt. Die Überschrift kann beliebig sein.
  • Switch item=fan - dies zusammen mit anderen legt die Elemente fest, die Sie von der Homepage aus sehen und steuern möchten. Sie müssen die von uns erstellten Artikelnamen eingeben. GEBEN SIE NICHT DEN ANZEIGENAMEN DES ARTIKELS EIN.
  • Drücken Sie danach STRG+X, Y und Enter.

Schritt 5: Erstellen einer Regel für VoiceCommand-

Dazu müssen Sie eine einfache Regel erstellen. Ich habe die Referenz aus diesem Handbuch verwendet. Lassen Sie uns also für Sprachbefehle eine grundlegende Regeldatei erstellen-

$ sudo nano rules/home.rules

Dadurch wird eine leere.rules-Datei erstellt.

Hier können Sie auf die Regeldatei zugreifen

Nun, dies ist ein langer Code mit vielen Dateien und Befehlen. Sie müssen jedoch nur Folgendes beachten, um Ihren eigenen Befehlssatz zu erstellen.

  • if (command.contains("Lüfter einschalten") || (command.contains("Lüfter einschalten"))) - hier habe ich zwei Optionen aufgelistet, die ich sagen kann, damit der Befehl funktioniert. Was tatsächlich passiert, ist, wenn ich die reservierte Leitung sage, erkennt OpenHAB sie und prüft, ob die spezifische Regel für die nächsten Schritte ausgeführt wird.
  • fan.sendCommand(ON) - Wenn die obige Bedingung wahr ist, sendet diese Funktion einen Befehl ON an den Artikelventilator. Dies kann nach Ihrer Wahl geändert werden.

Nun, wenn Sie es ohne Probleme hierher geschafft haben, herzlichen Glückwunsch, denn der größte Teil der Arbeit ist getan. Jetzt müssen wir die Benutzeroberfläche einrichten und den Fernzugriff für unser OpenHAB aktivieren.

Schritt 6: BasicUI konfigurieren

Jetzt müssen wir OpenHAB anweisen, die von uns erstellte Sitemap als Standard zu verwenden.

So geht's-

  • Gehe zu
  • Papierbenutzeroberfläche öffnen
  • Konfigurationen > Dienste > Benutzeroberfläche > Grundlegende Benutzeroberfläche konfigurieren
  • Hier können Sie das Design- und Symbolformat usw. auswählen. Die Hauptsache ist, die Standard-Sitemap in Home zu ändern
  • Klicken Sie auf Speichern
  • Sie können es anzeigen, indem Sie auf https://openhabianpi:8080. gehen
  • Klicken Sie auf Basic UI und voila, Sie sehen dort Ihre eigene Sitemap

Schritt 7: Aktivieren des Fernzugriffs

Um den Fernzugriff zu aktivieren, befolgen Sie diese Schritte:

  • Gehe zu
  • Papierbenutzeroberfläche öffnen
  • Konfigurationen > Dienste > IO > OpenHAB Cloud konfigurieren
  • Ändern Sie den Modus in Benachrichtigungen und Fernzugriff, Basis-URL -> https://myopenhab.org/ und anzuzeigende Elemente -> Wählen Sie alle aus
  • Klicken Sie auf Speichern
  • Weiter zu
  • Melden Sie sich mit E-Mail-Adresse und Passwort an.
  • Für openHAB UUID ->
  • $ sudo nano /var/lib/openhab2/uuid
  • Kopieren Sie diese UUID und fügen Sie sie in die UUID-Spalte ein.
  • Für OpenHAB-Geheimnis->
  • $ sudo nano /var/lib/openhab2/openhabcloud/secret
  • Kopieren Sie es und fügen Sie es in die Spalte Geheim ein und klicken Sie auf Anmelden.
  • Nachdem Rpi erfolgreich neu gestartet wurde, sehen Sie den Status als online in
  • Gehe zum Tab "Artikel"
  • Hier sehen Sie alle von Ihnen erstellten Artikel. Wenn Sie nichts sehen, müssen Sie alle diese Elemente mindestens einmal umschalten.

Schritt 8: HARDWARE!!

HARDWARE!!!!
HARDWARE!!!!

Seien Sie sehr vorsichtig, da wir mit 220 V und anderen elektrischen Dingen umgehen würden.

SEI VORSICHTIG

SIE WERDEN DIES AUF EIGENE GEFAHR TUN

Anschließen des Relais an den Raspberry Pi-

Um das Relais mit dem Raspberry Pi zu verbinden, verbinden Sie VCC mit 5V auf Rpi.

  • Verbinden Sie GND am Relais mit GND des Raspberry Pi
  • Als nächstes verbinden Sie IN1, IN2, … mit dem in den home.items zugewiesenen GPIO

Um zu überprüfen, ob alles funktioniert, navigieren Sie zu BasicUI und versuchen Sie, die verschiedenen Elemente aus- und wieder einzuschalten. Sie sollten bei jedem Umschalten ein Klickgeräusch hören.

Zur einfacheren Steuerung Ihres Automatisierungssystems können Sie auch die OpenHAB-App aus dem Play Store herunterladen.

SEIEN SIE VORSICHTIG und GEHEN SIE AUF EIGENE GEFAHR VOR

Jetzt müssen wir die Drähte der Geräte, die Sie automatisieren möchten, an die Relaisschalter anschließen. Schalten Sie Rpi und Main Supply aus, bevor Sie dies tun, um auf der sicheren Seite zu sein.

Stellen Sie nach dem Anschließen der Kabel sicher, dass keine stromführenden Kabel freigelegt sind, die tödlich sein können.

Schalten Sie nun Ihren Rpi wieder ein und geben Sie ihm Zeit zum Booten. Nach dem Booten können Sie Appliances über die Basic UI oder über die mobile App steuern. Wenn Sie keine Sprachautomatisierung wünschen, müssen Sie nicht die Netzschritte befolgen.

Schritt 9: Verbinden mit Google Assistant

Dafür verwenden wir

  • Gehe zu IFTTT.com
  • Erstellen Sie ein Konto, wenn Sie noch keins haben
  • Klicken Sie auf Neues Applet
  • Wählen Sie Dies und wählen Sie Google Assistant und wählen Sie Sagen Sie einen Satz mit einer Textzutat
  • Geben Sie in was möchten Sie sagen ein - Turn $ item-name Ex- Turn $ fan
  • Klicken Sie auf Auslöser erstellen
  • Wählen Sie das aus und wählen Sie OpenHAB. Verknüpfe dein Konto
  • Wählen Sie einen Befehl senden Wählen Sie ein Element als VoiceCommand
  • Befehl zum Senden als - Drehen Sie den {{TextField}}-Elementnamen. Ex- {{TextField}}-Fan werden
  • Aktion erstellen

Geben Sie etwa 10 Sekunden Zeit für die Initialisierung und dann Voila, verwenden Sie den Google-Assistenten, um den Befehl zu senden.

Das ist es. Wenn Sie Zweifel haben oder Fehler auftreten, können Sie gerne einen Kommentar abgeben. Ich werde dir sicher helfen.

Bei Problemen oder Fragen können Sie mich gerne unter [email protected] kontaktieren

Empfohlen: