Inhaltsverzeichnis:

Netzwerk von Temperatursensoren - Gunook
Netzwerk von Temperatursensoren - Gunook

Video: Netzwerk von Temperatursensoren - Gunook

Video: Netzwerk von Temperatursensoren - Gunook
Video: ALLNET Temperaturerfassung 2024, November
Anonim
Image
Image

Temperatur und Luftfeuchtigkeit sind wichtige Daten in Ihrem Labor, Ihrer Küche, Ihrer Fertigungsstraße, Ihrem Büro, Ihren Killer-Robotern und sogar Ihrem Zuhause. Wenn Sie mehrere Standorte oder Räume oder Räume überwachen müssen, benötigen Sie etwas, das zuverlässig, kompakt, genau und erschwinglich ist. Sie können teure Sensoren kaufen, aber wenn Sie mehrere Räume überwachen, kann dies Ihre Ausgaben in die Höhe schnellen lassen. Dieses Tutorial zeigt Ihnen, wie Sie diese Sensoren bauen und Ihre Daten überwachen, ohne die Bank zu sprengen.

Dies ist eine perfekte Anwendung für einen Raspberry Pi Zero WH im Wert von 14 US-Dollar, da dieses Gerät kompakt, kostengünstig und leistungsstark ist und über integriertes WLAN verfügt. Die Einrichtung für jeden Sensorknoten kostet ~ 31 US-Dollar zuzüglich Versand, Steuern und Koffer. Sie können jeden der oben genannten Artikel problemlos in großen Mengen erhalten, um die Versandkosten zu minimieren, mit Ausnahme des Raspberry Pi Zero WH, der außerhalb Großbritanniens möglicherweise eine größere Herausforderung darstellt. Sie können keinen Anbieter finden, der es Ihnen erlaubt, mehr als eine Zero nach Raspberry Pi Foundation-Regeln zu kaufen.

Wir verwenden die $14 Zero WH anstelle der $10 Zero W, da die Zero WH den Header vorgelötet hat, was unsere Projektmontage superschnell und einfach macht. Wir verwenden den Temperatur-/Feuchtigkeitssensor DHT22 aufgrund seiner Temperaturgenauigkeit (+/- 0,5 °C), seines Feuchtebereichs (0–100%) und seiner geringen Kosten. Wir wollen auch etwas wirklich einfach zu verdrahten, ohne einen Pull-up-Widerstand hinzufügen zu müssen.

Lieferungen

  • Raspberry Pi Zero WH ($ 14)
  • Micro-SD-Karte ($4)
  • Raspberry Pi-Netzteil ($8)
  • DHT22 Temperatur-/Feuchtigkeitssensor ($5)
  • (Optional) Raspberry Pi Zero W-Gehäuse ($6)

Schritt 1: Montage

Montage
Montage

Der DHT22 hat drei Pins, die Sie an Ihren Pi Zero WH anschließen müssen: 5V, Masse und Daten. Der Power-Pin am DHT22 ist mit „+“oder „5V“beschriftet. Verbinden Sie diese mit Pin 2 (der obere rechte Pin, 5V) des Pi Zero WH. Der Erdungsstift am DHT22 ist mit „-“oder „Gnd“gekennzeichnet. Verbinden Sie diese mit Pin 6 (zwei Pins unter dem 5V-Pin) des Pi Zero WH. Der verbleibende Pin am DHT22 ist der Daten-Pin und wird mit „out“oder „s“oder „data“beschriftet. Verbinden Sie diese mit einem der GPIO-Pins des Zero WH wie GPIO4 (Pin 7). Ihre Verbindungen sollten wie auf dem mitgelieferten Bild aussehen.

Schritt 2: Software-Setup

Sie benötigen einen Monitor und eine Tastatur, um Ihren Pi Zero WH zum ersten Mal einzurichten. Sobald es eingerichtet ist, benötigen Sie weder einen Monitor noch eine Tastatur, wenn Sie es in Ihrem Bereich einsetzen. Wir wollen jeden Knoten so klein und kompakt wie möglich halten.

  1. Sie müssen das standardmäßige Raspbian-Betriebssystem installieren, damit Ihr Pi Zero WH bootet. Sie können den Anweisungen auf der Raspberry Pi-Website folgen, um Ihren Pi Zero WH einzurichten.
  2. Verbinden Sie Ihren Pi Zero WH mit Ihrem WLAN-Netzwerk. Sie können den Anweisungen auf der Raspberry Pi-Website folgen, um Ihren Pi Zero WH mit WLAN zu verbinden.
  3. Installieren Sie das Adafruit DHT Python-Modul auf Ihrem Pi, um das Lesen von DHT22-Sensordaten ganz einfach zu machen. Geben Sie Folgendes in Ihre Eingabeaufforderung ein:

$ sudo pip install Adafruit_DHT

Sie haben jetzt alles, was Sie brauchen, um mit Ihrem Sensor zu kommunizieren. Als Nächstes benötigen Sie ein Ziel für Ihre Sensordaten, damit Sie diese Daten in ein tolles Dashboard oder eine SMS/E-Mail-Benachrichtigung verwandeln können. Wir werden den Initial State für diesen Schritt des Projekts verwenden.

  1. Registrieren Sie sich für ein Konto unter
  2. Installieren Sie das ISStreamer-Modul an Ihrer Eingabeaufforderung:

$ sudo pip install ISStreamer

Schritt 3: Python-Skript

Nachdem unser Betriebssystem zusammen mit unseren beiden Python-Modulen zum Lesen von Sensordaten und zum Senden von Daten an den Initial State installiert ist, können wir unser Python-Skript schreiben. Das folgende Skript erstellt/angehängt an einen Anfangszustandsdaten-Bucket, liest die DHT22-Sensordaten und sendet diese Daten an ein Echtzeit-Dashboard. Sie müssen lediglich die Zeilen 6–11 ändern.

Adafruit_DHT importieren

from ISStreamer. Streamer import Streamer import time # --------- Benutzereinstellungen --------- SENSOR_LOCATION_NAME = "Office" BUCKET_NAME = ":partly_sunny: Room Temperatures" BUCKET_KEY = "rt0129" ACCESS_KEY = "PLATZIEREN SIE IHREN ANFANGSSTATUS-ZUGRIFFSSCHLÜSSEL HIER" MINUTES_BETWEEN_READS = 10 METRIC_UNITS = False # --------------------------------- streamer = Streamer(bucket_name=BUCKET_NAME, Bucket_key=BUCKET_KEY, access_key=ACCESS_KEY) während True: Luftfeuchtigkeit, temp_c = Adafruit_DHT.read_retry(Adafruit_DHT. DHT22, 4) if METRIC_UNITS: streamer.log(SENSOR_LOCATION_NAME + "Temperatur_(C)", sonst: temp_f = format(temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log(SENSOR_LOCATION_NAME + " Temperature(F)", temp_f) Luftfeuchtigkeit = format(humidity, ".2f") streamer.log(SENSOR_LOCATION_NAME + " Feuchtigkeit(%)", Feuchtigkeit) streamer.flush() time.sleep(60*MINUTES_BETWEEN_READS)

  • Zeile 6 - Dieser Wert sollte für jeden Knoten/Temperatursensor eindeutig sein. Dies kann der Raumname Ihres Sensorknotens, der physische Standort, die eindeutige Kennung oder was auch immer sein. Stellen Sie nur sicher, dass es für jeden Knoten eindeutig ist, um sicherzustellen, dass die Daten von diesem Knoten in einen eigenen Datenstrom in Ihrem Dashboard gehen.
  • Zeile 7 - Dies ist der Name des Daten-Buckets. Dies kann jederzeit im Initial State UI geändert werden.
  • Zeile 8 - Dies ist Ihr Bucket-Schlüssel. Es muss für jeden Knoten, der im selben Dashboard angezeigt werden soll, derselbe Bucket-Schlüssel sein.
  • Zeile 9 - Dies ist Ihr Zugangsschlüssel für das Initial State-Konto. Kopieren Sie diesen Schlüssel aus Ihrem Initial State-Konto und fügen Sie ihn ein.
  • Zeile 10 - Dies ist die Zeit zwischen den Sensorauslesungen. Entsprechend ändern.
  • Zeile 11 - Sie können metrische oder imperiale Einheiten angeben.

Nachdem Sie die Zeilen 6–11 in Ihrem Python-Skript auf Ihrem Pi Zero WH festgelegt haben, speichern und beenden Sie den Texteditor. Führen Sie das Skript mit dem folgenden Befehl aus:

$ python tempsensor.py

Wiederholen Sie diese Schritte für jeden Sensorknoten. Solange jeder Knoten Daten mit demselben Zugriffsschlüssel und Bucket-Schlüssel an den Initial State sendet, werden alle Daten in denselben Daten-Bucket übertragen und auf demselben Dashboard angezeigt.

Schritt 4: Dashboard

Armaturenbrett
Armaturenbrett
Armaturenbrett
Armaturenbrett

Gehen Sie zu Ihrem Initial State-Konto, klicken Sie auf den Bucket-Namen in Ihrem Bucket-Regal und sehen Sie sich Ihre Daten in Ihrem Dashboard an. Sie können Ihr Dashboard anpassen und SMS-/E-Mail-Trigger einrichten. Das beiliegende Bild zeigt ein Dashboard mit drei Sensorknoten, die Temperatur und Luftfeuchtigkeit für drei verschiedene Räume erfassen.

Sie können Ihrem Dashboard ein Hintergrundbild hinzufügen.

Schritt 5: Prozess und IP automatisch ausführen und überwachen

Prozess und IP automatisch ausführen und überwachen
Prozess und IP automatisch ausführen und überwachen

Sobald Sie mehrere Knoten bereitgestellt haben, benötigen Sie eine Möglichkeit, jeden Knoten zu überwachen, um sicherzustellen, dass er funktioniert. Sie werden wahrscheinlich jeden Sensorknoten ohne Monitor oder Tastatur/Maus ausführen, um ihn kompakt zu halten. Das bedeutet, dass jeder Knoten automatisch booten und Ihr Skript ausführen soll. Sie können Ihr Initial State-Konto verwenden, um ein praktisches Dashboard für Prozesse/IP-Adressen zu erstellen, wie oben gezeigt. Ein detailliertes Tutorial zum Erstellen dieses Dashboards und zum Einrichten Ihres Pi Zero WH zum automatischen Ausführen Ihres Python-Skripts beim Booten finden Sie hier.

Schritt 6: Fazit

Abschluss
Abschluss

Sobald Sie einen einzelnen Sensorknoten zum Laufen gebracht haben, ist es einfach und relativ kostengünstig, Ihr Setup so oft wie nötig zu duplizieren. Die Verwendung eines Pi Zero WH gibt Ihnen die Flexibilität, andere Aufgaben auszuführen, da er so viel PS hat. Sie können beispielsweise einen der Pi Zero WHs verwenden, um lokale Wetterdaten aus einer Wetter-API abzurufen und zu Ihrem Sensor-Dashboard hinzuzufügen. Wenn Sie sich entscheiden, Ihre Sensorknoten außer Betrieb zu nehmen, können Sie Ihre Pi Zero WHs für andere Projekte wiederverwenden. Diese Flexibilität hilft, Ihre Projektinvestition zukunftssicher zu machen.

Empfohlen: