Inhoudsopgave:

Domotica met Raspberry Pi Matrix Voice en Snips (deel 2) - Ajarnpa
Domotica met Raspberry Pi Matrix Voice en Snips (deel 2) - Ajarnpa

Video: Domotica met Raspberry Pi Matrix Voice en Snips (deel 2) - Ajarnpa

Video: Domotica met Raspberry Pi Matrix Voice en Snips (deel 2) - Ajarnpa
Video: I built a smarter smart home 2024, November
Anonim
Domotica met Raspberry Pi Matrix Voice en Snips (deel 2)
Domotica met Raspberry Pi Matrix Voice en Snips (deel 2)

Update van domotica met Raspberry Pi Matrix Voice en Snips. Hierin wordt PWM gebruikt voor het aansturen van externe LED's en servomotor

Alle details gegeven in deel 1

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

Stap 1: Matrix Core & Matrix HAL-installatie op RPi

1. Voeg de Matrix-repository en -sleutel toe.

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

Matrix-opslagplaats voor 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. Installeer de Matrix Core-pakketten.

sudo apt-get install matrixio-malos

sudo reboot

Installeer de MATRIX HAL-pakketten.

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

Start uw apparaat opnieuw op.

sudo reboot

3. Om ZeroMQ te installeren

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 add

4. JavaScript setupMaak een node-projectmap in de homedirectory van RPi

cd ~/mkdir js-matrix-core-app (welke naam je maar wilt)

cd js-matrix-core-app

npm init

5. Installeren van npm-pakketten voor ZMQ en protocolbuffers

Om de ZMQ- en MATRIX-protocolbuffers npm-pakketten te installeren. Zorg ervoor dat u zich in de map bevindt die u hierboven hebt gemaakt (naam die u opgeeft). Hier heb ik het js-matrix-core-app gegeven. Hierdoor kunt u communiceren met Matrix Core via Node.js.

npm install zeromq --save

npm matrix-protos installeren --save

Omdat ik JavaScript gebruik, dus om PWM te gebruiken voor externe LED's, gebruik ik de Matrix Lite-bibliotheek. Om het te installeren, gebruikt u de onderstaande opdracht om ervoor te zorgen dat u zich in dezelfde map bevindt die we hebben gemaakt tijdens het installeren van Matrix core.

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

Stap 2: Snips-app (update)

Snips-app (update)
Snips-app (update)
Snips-app (update)
Snips-app (update)
Snips-app (update)
Snips-app (update)

1. Maak een nieuwe slots en geef het een naam wat je maar wilt. Hier gebruik ik vier slots

  • schakelaar voor aan, uit, open en dicht staat
  • ruimte voor verschillende kamers zoals slaapkamer, badkamer enz
  • apparaat voor apparaten zoals licht, ventilator, deur etc
  • helderheid voor het instellen van de helderheid van het licht in verschillende kamers.

2. Geef vervolgens de naam van het slottype op. Hier ben ik een aangepast slottype aan het bouwen.

kamerslot

Geef elke naam wat je wilt. Voeg daarna de slotwaarden "badkamer", "slaapkamer", "keuken" en "grote hal" enz. toe.

Voor switch slot Geef elke naam wat je maar wilt.

Voeg daarna slotwaarden "on", "off", "open" en "close" toe.

Apparaatsleuf

Geef elke naam wat je wilt. Voeg daarna de slotwaarden "light", "fan" en "door" toe.

helderheidssleuf

Geef elke naam wat je wilt. Voeg daarna slotwaarden toe 75, 50, 25, 0

3. Sluit de app om het trainingsvoorbeeld te vertellen welk slot wordt gebruikt

  • Dubbelklik op Uit en Aan en selecteer slotnaam (schakelaar).
  • Dubbelklik op kamernaam en selecteer slotnaam (kamer).
  • Dubbelklik op licht, ventilator en selecteer slotnaam (apparaat).
  • Dubbelklik op waarden (0, 25, 50) en selecteer slotnaam (helderheid).

Sla het vervolgens op en u kunt het testen in het venster aan de rechterkant van de pagina.

4. Implementeer het dan

Stap 3: Vereist Npm-pakket

Voor het verzenden van een e-mailinstallatieknooppuntpakket

npm installeer nodemailer

Npm-pakket voor bidirectionele, op gebeurtenissen gebaseerde communicatie

npm installeren socket.io

Npm-pakket voor express

npm install express

Als je de woorden wilt horen. U kunt dit knooppuntpakket downloaden.

npm installeren zeg

Voeg deze regels toe aan het programma (voorbeeld)

const zeggen = vereisen ('zeg')

say.speak('Helderheid is ingesteld op 75');

Stap 4: webpagina

Ik heb een pagina gemaakt voor het weergeven van de logs (kamer, apparaten, apparaatstatus, intensiteitswaarde en datum) en een meter met de huidige intensiteitswaarde, zodat ik kan weten welk commando ik heb gebruikt terwijl ik met de knipsels praat. Volg de onderstaande stappen voor het maken van een webpagina.

Opmerking - U kunt een Node-server of een Apache-server gebruiken.

In dit project gebruik ik de node-server omdat de Apache-server traag is en de gegevens niet correct konden worden bijgewerkt.

Opmerking - Als u de code gebruikt die in dit project wordt gegeven, zorg er dan voor dat alle gegevens in de map cd /var/www/html staan of u kunt de locatie in het programma wijzigen.

Ten eerste om de Apache-server te installeren met behulp van de opdracht (niet vereist)

sudo apt-get install apache2

Apache-server is niet vereist als u een node-server of Node-server hebt. Maak een lege bestandsnaam server.js, voeg het programma toe dat in de programmastap is opgegeven en sla het op.

Gebruik de opdracht om de server uit te voeren:

node server.js

Ga vervolgens naar de map cd /var/www/html en maak twee mappen aan

1. Maak een mapnaam js met command

mkdir js

cd js // ga naar de map

Maak in de map /var/www/html/js een bestandsnaam angular.min.js en plak de gegevens van de link

Maak in dezelfde map een andere bestandsnaam gauge.min.js en plak de gegevens van de koppelingslink

Vereiste bestanden

2. Maak een mapnaam jsonpage met command

mkdir jsonpage

cd jsonpagina

Maak in de jsonpage-directory een bestandsnaam info.js. Maak het leeg

Opmerking: - Json-bestand wordt gewist na 50 spraakopdrachten

Stap 5: Inlogpagina

Ga voor het maken van een loginpagina naar de directory cd /var/www/html en maak een lege bestandsnaam index.html aan. Voeg het onderstaande programma toe

Stap 6: Hoofdpagina

Om de hoofdpagina te maken, ga naar de map cd /var/www/html en maak een lege bestandsnaam HA.html (any). Voeg het onderstaande programma toe

Maak voor het maken van gauge een lege bestandsnaam index.js in de map cd /var/www/html. Programma wordt hieronder gegeven.

Stap 7: Assistent

assistant.js voor webpagina wordt hieronder gegeven:

Eenmaal klaar met alle instellingen. Open vervolgens shell en voer uit

cd js-matrix-core-app

node assistant.js

Open een andere shell en ren

cd /var/www/html

node server.js

Open browser

localhost:8080/index.html

Aanbevolen: