Inhaltsverzeichnis:

WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch - Gunook
WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch - Gunook

Video: WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch - Gunook

Video: WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch - Gunook
Video: Smart Home: Das sind die Vorteile | EnBW E-Wissen 2024, November
Anonim
WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch
WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch
WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch
WiFi-Hausautomationssystem mit extrem geringem Stromverbrauch

In diesem Projekt zeigen wir, wie Sie in wenigen Schritten ein einfaches lokales Hausautomationssystem aufbauen können. Wir werden einen Raspberry Pi verwenden, der als zentrales WiFi-Gerät fungiert. Während wir für Endknoten IOT Cricket verwenden werden, um batteriebetriebene WLAN-Geräte herzustellen, z. Temperatursensor und verbinden Sie ihn mit dem RPi, ohne eine einzige Codezeile zu schreiben.

Unser System wird auf dem MQTT-Kommunikationsprotokoll basieren, das in den meisten Heimautomatisierungssystemen weit verbreitet ist. Zur Einrichtung wählen wir Mosquitto MQTT Broker (Server) und installieren ihn auf Raspberry Pi (unserem zentralen Hub).

IOT Cricket bietet auch Unterstützung für HTTP(S)- und MQTT-Protokolle. Wir konfigurieren es so, dass es MQTT verwendet, um direkt mit unserem RPi-MQTT-Broker zu kommunizieren.

Dieses Projekt kann von Machern aller Könnensstufen realisiert werden. Es kann einige grundlegende Lötarbeiten erfordern, erfordert jedoch keine Codierung oder Programmierung. Am Ende dieses Projekts erhalten Sie eine solide Vorstellung davon, wie Sie einfach Ihr eigenes System aufbauen und schnell erweitern können, indem Sie dem System eigene IOT-Endknoten hinzufügen.

Lieferungen:

  • Raspberry Pi (wir haben für dieses Projekt Version 3 verwendet)
  • IOT Cricket WiFi-Modul
  • 2xAAA Batteriehalter
  • 2xAAA-Batterien

Schritt 1: Was ist MQTT?

Das MQTT-Protokoll bietet eine einfache Methode zur Durchführung von Messaging unter Verwendung eines Publish/Subscribe-Modells. Dies macht es für das Internet der Dinge geeignet, wie z. B. Sensoren mit geringem Stromverbrauch oder mobile Geräte wie Telefone, eingebettete Computer oder Mikrocontroller. (Quelle: mosquitto.org)

Wir können so viele Geräte verwenden, wie wir möchten, um Themen zu abonnieren und auf eingehende Nachrichten zu hören. Wenn einige Geräte eine Nachricht zu diesem Thema veröffentlichen, erhalten alle Geräte, die das Thema abonniert haben, diese Nachricht sofort. Das Thema kann eine beliebige Zeichenfolge sein, die normalerweise mit /-Zeichen verkettet ist, um hierarchische Themen erstellen zu können. Die typischste Verwendung von MQTT besteht darin, einen einzigen zentralen Server zu haben, auf dem Geräte Nachrichten abonnieren und veröffentlichen können. Es erleichtert die gesamte Kommunikation zwischen Geräten, die mit diesem Server verbunden sind. In diesem Projekt werden wir RPi als unseren zentralen MQTT-Broker verwenden und alle anderen Geräte werden Nachrichten über diesen Broker senden. Der beste Weg, dies zu lernen, besteht natürlich darin, es selbst zu tun. Es gibt viele Ressourcen im Internet zu MQTT. Für dieses Projekt sollten Sie jedoch mit einer grundlegenden Einführung, die wir oben bereitgestellt haben, einverstanden sein.

Schritt 2: MQTT Broker auf Raspberry Pi installieren

Für dieses Projekt verwenden wir einen Open Source Mosquitto MQTT Broker. Es ist leicht und eignet sich für den Einsatz auf allen Geräten, von Einplatinencomputern mit geringem Stromverbrauch bis hin zu vollständigen Servern.

Bevor wir mit der Installation beginnen, sollten Sie zuerst die Systemkomponenten aktualisieren:

$ sudo apt-get update$ sudo apt-get upgrade

Installieren Sie Mosquitto-Broker. Öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein:

$ sudo apt-get install mosquitto -y

Konfigurieren Sie den Mosquitto-Broker. Konfigurationsdatei bearbeiten:

$ sudo vi /etc/mosquitto/mosquitto.conf

und fügen Sie oben die folgenden Zeilen hinzu:

port 1883allow_anonymous true

Starten Sie RPi neu, um die Änderungen zu übernehmen:

$ sudo Neustart

Das ist es! Unser MQTT-Broker ist jetzt in Betrieb!

HINWEIS: Aus Gründen der Einfachheit dieses Projekts erstellen wir keine Konten. Jeder innerhalb unseres lokalen Netzwerks kann sich also ohne Anmeldeinformationen mit diesem MQTT-Broker verbinden. Wenn Sie die Benutzerauthentifizierung hinzufügen und sicherer machen möchten, gibt es im Internet viele Tutorials dazu.

Jetzt müssen wir nur noch die IP-Adresse abrufen, damit wir Nachrichten von anderen Geräten im Netzwerk an unseren Mosquitto-Broker senden können:

IP-Adresse beschaffen:

$ Hostname -I

Ihre_RPi_IP_Adresse (z. B. 192.168.1.10)

Schritt 3: IOT Cricket über MQTT mit RaspberryPi verbinden

Verbinden Sie IOT Cricket mit RaspberryPi über MQTT
Verbinden Sie IOT Cricket mit RaspberryPi über MQTT
Verbinden Sie IOT Cricket mit RaspberryPi über MQTT
Verbinden Sie IOT Cricket mit RaspberryPi über MQTT

In diesem Projekt verwenden wir das IOT Cricket WiFi-Modul für einen einfachen Sensor, um alle 30 Sekunden eine Temperatur an unser System zu melden. Es wird mit einer Batterie betrieben, sodass wir es überall zu Hause oder im Garten anbringen können. Später können Sie IOT Cricket verwenden, um verschiedene batteriebetriebene Sensoren, Alarme, Tasten, Schalter zu bauen und diese auch sofort mit unserem RPi MQTT-Broker zu verbinden.

Schließen Sie im ersten Schritt die Batterien an Cricket an.

Cricket wird mit einem eingebauten Temperatursensor geliefert. Wir müssen es nur konfigurieren, um den Temperaturwert an unseren MQTT-Broker zu senden, indem wir die RPi-IP-Adresse festlegen. Öffnen Sie dazu das Konfigurationsfenster von Cricket (siehe die Schritte hier) und wenden Sie die folgenden Einstellungen an (wie im Bild unten gezeigt, bitte Passen Sie die IP-Adresse im Feld "url" an Ihr RPi an)

Jetzt können wir den Konfigurationsmodus verlassen. Das Gerät ist bereit! Cricket sendet bereits alle 30 Sekunden Daten an unseren MQTT-Broker.

Schritt 4: MQTT-Nachrichten überprüfen

MQTT-Nachrichten überprüfen
MQTT-Nachrichten überprüfen

Um an unseren MQTT-Broker gesendete Nachrichten anzuzeigen / zu empfangen, können wir verschiedene Tools verwenden.

Am einfachsten ist das Kommandozeilentool mosquitto_sub. Wir können es entweder auf jedem Computer in unserem Netzwerk oder auf unserem RPi mit diesem Befehl installieren:

$ sudo apt-get install mosquitto-clients -y

Jetzt können wir den folgenden Befehl ausführen, um ALLE Themen und Nachrichten abzuhören, die über unseren MQTT-Broker gesendet werden:

$ mosquitto_sub -v -h Ihre_RPi_IP_Adresse -p 1883 -t '#'

…/59A98F494C/device_name MyTemperatureDev/59A98F494C/device_sn 59A98F494C/59A98F494C/hwc_wake_up 3794/59A98F494C/hwc_wifi_enabled 3763/59A98F494C/hwc_message_wake_up 3794/59A98F494C/hwc_wifi_enabled 3763/59A98F494C/hwc_message_wake59

Das Obige ist ein Ausgabebeispiel dafür, was IOT Cricket an unseren Broker sendet. Unter den anderen Daten, die wir sehen können, gibt es eine Temperatur:

/59A98F494C/Temp 26.0

Das Schöne an MQTT ist, dass wir nur Themen abonnieren können, die uns interessieren. Wenn wir nur eine Temperatur erhalten möchten, können wir das Thema /59A98F494C/temp mit dem folgenden Befehl abonnieren:

$ mosquitto_sub -h deine_RPi_IP_Adresse -t '/59A98F494C/temp'

…26.126.527.227.6…

Schritt 5: Zusammenfassung

Zusammenfassung
Zusammenfassung

Wir haben in diesem Projekt eine wesentliche Hardware und Software gezeigt, um mit dem Bau von energieeffizienten Heimautomatisierungssystemen mit geringem Stromverbrauch auf Basis von WiFi zu beginnen. MQTT ist die Essenz, auf der für anspruchsvollere Systeme aufgebaut werden kann.

Das Ökosystem von Software und Diensten, die mit MQTT integriert werden können, ist RIESIG! Es gibt viele großartige Systeme wie Home Assistant, Node RED, Grafana usw., damit Sie eine großartige Benutzererfahrung Ihres eigenen Systems erzielen können. Wir können nicht nur einfache Temperaturausdrucke erstellen, sondern auch großartige Dashboards zur Visualisierung der Daten und zur Verwaltung Ihrer Geräte bereitstellen.

Jetzt, da wir diese grundlegende Systeminfrastruktur eingerichtet haben, sind die Grenzen dessen, was andere WiFi-Geräte wir mit IOT Cricket-Modulen bauen und zu unserem Hausautomationssystem hinzufügen können, grenzenlos.

Danke, dass Sie bis hierher gekommen sind. Wir hoffen, Ihnen hat dieses Tutorial gefallen!

Things On Edge-Team

Schritt 6: Über uns

Things On Edge ist ein Unternehmen mit Sitz in Cambridge, Großbritannien. Wir entwickeln ein Cricket-WLAN-Modul mit extrem niedrigem Batteriestand, damit Sie verschiedene elektronische Geräte buchstäblich in wenigen Minuten mit Smartphones oder anderen Internetdiensten verbinden können. Es erfordert keine Programmierung und Codierung. Es ermöglicht Ihnen, Ihre Geräte über MQTT- und HTTP-APIs in ein riesiges IOT-Ökosystem zu integrieren.

Empfohlen: