Inhaltsverzeichnis:

Home Automation mit Raspberry Pi Matrix Voice und Snips (Teil 2) - Gunook
Home Automation mit Raspberry Pi Matrix Voice und Snips (Teil 2) - Gunook

Video: Home Automation mit Raspberry Pi Matrix Voice und Snips (Teil 2) - Gunook

Video: Home Automation mit Raspberry Pi Matrix Voice und Snips (Teil 2) - Gunook
Video: Raspberry Pi Snips Installation 2024, Dezember
Anonim
Home Automation mit Raspberry Pi Matrix Voice und Snips (Teil 2)
Home Automation mit Raspberry Pi Matrix Voice und Snips (Teil 2)

Update der Hausautomation mit Raspberry Pi Matrix Voice und Snips. In diesem PWM wird zur Steuerung externer LEDs und des Servomotors verwendet

Alle Details in Teil 1

www.instructables.com/id/Controlling-Light…

Schritt 1: Installation von Matrix Core und Matrix HAL auf RPi

1. Fügen Sie das Matrix-Repository und den Schlüssel hinzu.

curl https://apt.matrix.one/doc/apt-key.gpg | sudo apt-key hinzufügen -

echo "deb https://apt.matrix.one/doc/apt-key.gpg $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/matrixlabs.list

Matrix-Repository für Matrix HAL

curl https://apt.matrix.one/doc/apt-key.gpg | sudo apt-key add -echo "deb https://apt.matrix.one/doc/apt-key.gpg $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/matrixlabs.list

sudo apt-get update

sudo apt-get upgrade

2. Installieren Sie die Matrix Core-Pakete.

sudo apt-get install matrixio-malos

sudo neu starten

Installieren Sie die MATRIX HAL-Pakete.

sudo apt-get install matrixio-creator-init libmatrixio-creator-hal libmatrixio-creator-hal-dev

Starte dein Gerät neu.

sudo neu starten

3. So installieren Sie ZeroMQ

echo "deb https://download.opensuse.org/repositories/network…./" | sudo tee /etc/apt/sources.list.d/zeromq.list

wget https://download.opensuse.org/repositories/networ… -O- | sudo apt-key hinzufügen

4. JavaScript-SetupErstelle einen Node-Projektordner im Home-Verzeichnis von RPi

cd ~/mkdir js-matrix-core-app (wie auch immer Sie wollen)

cd js-matrix-core-app

npm init

5. Installieren von npm-Paketen für ZMQ und Protokollpuffer

So installieren Sie die npm-Pakete ZMQ und MATRIX Protocol Buffers. Stellen Sie sicher, dass Sie sich in dem Verzeichnis befinden, das Sie oben erstellt haben (Name, den Sie angeben). Hier habe ich es js-matrix-core-app gegeben. Auf diese Weise können Sie über Node.js mit Matrix Core interagieren.

npm install zeromq --save

npm install matrix-protos --save

Da ich JavaScript verwende, um PWM für externe LEDs zu verwenden, verwende ich die Matrix lite-Bibliothek. Um es zu installieren, verwenden Sie den unten gezeigten Befehl. Stellen Sie sicher, dass Sie sich im selben Verzeichnis befinden, das wir bei der Installation von Matrix Core erstellt haben.

npm install @matrix-io/matrix-lite --save

Schritt 2: Snips-App (Aktualisierung)

Snips-App (aktualisiert)
Snips-App (aktualisiert)
Snips-App (aktualisiert)
Snips-App (aktualisiert)
Snips-App (aktualisiert)
Snips-App (aktualisiert)

1. Erstellen Sie einen neuen Slot und geben Sie ihm einen beliebigen Namen. Hier verwende ich vier Slots

  • Schalter für Ein-, Aus-, Öffnen- und Schließen-Zustand
  • Raum für verschiedene Räume wie Schlafzimmer, Badezimmer etc.
  • Gerät für Geräte wie Licht, Lüfter, Tür etc
  • Helligkeit zum Einstellen der Helligkeit des Lichts in verschiedenen Räumen.

2. Geben Sie dann den Namen des Slot-Typs ein. Hier baue ich einen benutzerdefinierten Slot-Typ.

Raumschlitz

Geben Sie einen beliebigen Namen. Fügen Sie danach die Slot-Werte "Bad", "Schlafzimmer", "Küche" und "Haupthalle" usw. hinzu.

Für Schaltersteckplatz Geben Sie einen beliebigen Namen ein.

Fügen Sie danach die Slot-Werte "on", "off", "open" und "close" hinzu.

Gerätesteckplatz

Geben Sie einen beliebigen Namen. Fügen Sie danach die Slot-Werte "light", "fan" und "door" hinzu.

Helligkeitsschlitz

Geben Sie einen beliebigen Namen. Fügen Sie danach die Slot-Werte 75, 50, 25, 0. hinzu

3. Schließen Sie die App, um dem Trainingsbeispiel mitzuteilen, welcher Slot verwendet wird

  • Doppelklicken Sie auf Aus und Ein und wählen Sie den Steckplatznamen (Schalter).
  • Doppelklicken Sie auf den Raumnamen und wählen Sie den Slot-Namen (Raum).
  • Doppelklicken Sie auf Licht, Lüfter und wählen Sie den Steckplatznamen (Gerät) aus.
  • Doppelklicken Sie auf die Werte (0, 25, 50) und wählen Sie den Slot-Namen (Helligkeit).

Dann speichern Sie es und Sie können es im Fenster rechts auf der Seite testen.

4. Stellen Sie es dann bereit

Schritt 3: Erforderliches Npm-Paket

Zum Senden des E-Mail-Installationsknotenpakets

npm Nodemailer installieren

Npm-Paket für bidirektionale ereignisbasierte Kommunikation

npm install socket.io

Npm-Paket für Express

npm Express installieren

Wenn Sie die Worte hören möchten. Sie können dieses Knotenpaket herunterladen.

npm install sagen

Fügen Sie diese Zeilen im Programm hinzu (Beispiel)

const say = verlangen('sagen')

say.speak('Helligkeit ist auf 75 gesetzt');

Schritt 4: Webseite

Ich habe eine Seite zum Anzeigen der Protokolle (Raum, Geräte, Gerätestatus, Intensitätswert und Datum) und ein Messgerät mit dem aktuellen Intensitätswert erstellt, damit ich weiß, welchen Befehl ich beim Sprechen mit den Snips verwendet habe. Befolgen Sie die unten aufgeführten Schritte, um eine Webseite zu erstellen.

Hinweis - Sie können entweder einen Node-Server oder einen Apache-Server verwenden.

In diesem Projekt verwende ich einen Knotenserver, da der Apache-Server langsam ist und die Daten nicht korrekt aktualisiert werden konnten.

Hinweis - Wenn Sie den in diesem Projekt angegebenen Code verwenden, stellen Sie sicher, dass sich alle Daten im Verzeichnis cd /var/www/html befinden, oder Sie können den Speicherort im Programm ändern.

Zuerst den Apache-Server mit dem Befehl installieren (nicht erforderlich)

sudo apt-get install apache2

Apache-Server ist nicht erforderlich, wenn Sie einen Node-Server oder Node-Server haben Erstellen Sie einen leeren Dateinamen server.js, fügen Sie das im Programmschritt angegebene Programm hinzu und speichern Sie es.

Um den Server auszuführen, verwenden Sie den Befehl

Knotenserver.js

Gehen Sie als nächstes in das Verzeichnis cd /var/www/html und erstellen Sie zwei Ordner

1. Erstellen Sie einen Ordnernamen js mit dem Befehl

mkdir js

cd js // gehe in das Verzeichnis

Erstellen Sie im Verzeichnis /var/www/html/js einen Dateinamen angle.min.js und fügen Sie Daten aus dem Link ein

Erstellen Sie im selben Verzeichnis eine andere Datei namens Gauge.min.js und fügen Sie Daten aus dem Link-Link ein

Erforderliche Dateien

2. Erstellen Sie einen Ordnernamen jsonpage mit dem Befehl

mkdir jsonpage

cd jsonpage

Erstellen Sie im jsonpage-Verzeichnis einen Dateinamen info.js. Mach es leer

Hinweis: - Die Json-Datei wird nach 50 Sprachbefehlen gelöscht

Schritt 5: Anmeldeseite

Um eine Login-Seite zu erstellen, gehen Sie in das Verzeichnis cd /var/www/html und erstellen Sie einen leeren Dateinamen index.html. Unten angegebenes Programm hinzufügen

Schritt 6: Hauptseite

Um eine Hauptseite zu erstellen, gehen Sie in das Verzeichnis cd /var/www/html und erstellen Sie einen leeren Dateinamen HA.html (beliebig). Unten angegebenes Programm hinzufügen

Um Gauge zu erstellen, erstellen Sie einen leeren Dateinamen index.js im Verzeichnis cd /var/www/html. Programm ist unten angegeben.

Schritt 7: Assistent

Assistant.js für die Webseite ist unten angegeben

Sobald Sie mit dem gesamten Setup fertig sind, öffnen Sie die Shell und führen Sie es aus

cd js-matrix-core-app

Knoten-Assistent.js

Öffne eine andere Shell und laufe

cd /var/www/html

Knotenserver.js

Browser öffnen

localhost:8080/index.html

Empfohlen: