Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-13 06:56
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)
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