Schaltungen

So bauen Sie eine Sensorstation zur Komfortüberwachung: 10 Schritte (mit Bildern)

MIDI-Controller selber bauen (E08) Ultraschall-Sensor HC-SR 04 mit Arduino Tutorial

MIDI-Controller selber bauen (E08) Ultraschall-Sensor HC-SR 04 mit Arduino Tutorial

Inhaltsverzeichnis:

Anonim

Dieses instructable beschreibt den Entwurf und die Konstruktion eines so genannten Komfortüberwachungsstation CoMoS, ein kombiniertes Sensorgerät für Umgebungsbedingungen, das am Lehrstuhl für Bebaute Umwelt der TUK, Technische Universität Kaiserslautern, entwickelt wurde.

CoMoS verwendet einen ESP32-Controller und Sensoren für Lufttemperatur und relative Luftfeuchtigkeit (Si7021), Luftgeschwindigkeit (Windsensor Rev. C von Modern Device) und Globustemperatur (DS18B20 in einer schwarzen Glühbirne), alles in einem kompakten, einfach zu bauenden Gehäuse mit visueller Rückmeldung über eine LED-Anzeige (WS2812B). Darüber hinaus ein Beleuchtungsstärke Sensor (BH1750) ist enthalten, um den lokalen Sehzustand zu analysieren. Alle Sensordaten werden regelmäßig gelesen und über WLAN an einen Datenbankserver gesendet, von wo aus sie zur Überwachung und Steuerung verwendet werden können.

Die Motivation hinter dieser Entwicklung ist es, eine kostengünstige und dennoch sehr leistungsstarke Alternative zu Laborsensorgeräten zu erhalten, die in der Regel über 3000 € kosten. Im Gegensatz dazu verwendet CoMoS Hardware zu einem Gesamtpreis von rund 50 € und kann daher umfassend in (Büro-) Gebäuden eingesetzt werden, um den individuellen thermischen und visuellen Zustand an jedem einzelnen Arbeitsplatz oder Gebäudeteil in Echtzeit zu bestimmen.

Weitere Informationen zu unserer Forschung und der damit verbundenen Arbeit in der Abteilung finden Sie auf der offiziellen Living Lab Smart Office Space-Website oder wenden Sie sich direkt über LinkedIn an den entsprechenden Autor. Die Kontakte aller Autoren sind am Ende dieser Anleitung aufgeführt.

Strukturelle Anmerkung: Diese Anleitung beschreibt die ursprüngliche Einrichtung von CoMoS, enthält jedoch auch Informationen und Anweisungen für ein paar variationen Wir haben vor kurzem entwickelt: Neben dem Originalgehäuse aus Standardteilen gibt es auch ein 3D-gedruckte Option. Und neben dem ursprünglichen Gerät mit Datenbankserver-Verbindung gibt es eine Alternative Standalone-Version Mit SD-Kartenspeicher, integriertem WIFI-Zugangspunkt und einer schicken mobilen App zur Visualisierung der Sensorwerte. Bitte überprüfen Sie die in den entsprechenden Kapiteln und im markierten Optionen Standalone-Option im letzten Kapitel.

Persönliche Anmerkung: Dies ist die erste Anweisung des Autors und deckt ein recht detailliertes und komplexes Setup ab. Bitte zögern Sie nicht, sich über den Kommentarbereich dieser Seite, per E-Mail oder über LinkedIn in Verbindung zu setzen, wenn Details oder Informationen in den einzelnen Schritten fehlen.

Zubehör:

Schritt 1: Hintergrund - thermischer und visueller Komfort

Thermischer und visueller Komfort Gerade in Büro- und Arbeitsplatzumgebungen, aber auch im Wohnbereich, sind Themen immer wichtiger geworden. Die größte Herausforderung in diesem Bereich besteht darin, dass die thermische Wahrnehmung von Personen häufig in weiten Bereichen variiert. Eine Person kann sich unter bestimmten thermischen Bedingungen heiß fühlen, während sich eine andere Person in derselben kalt fühlt. Das liegt daran, dass die individuelle Wärmewahrnehmung wird von vielen Faktoren beeinflusst, einschließlich der physikalischen Faktoren Lufttemperatur, relative Luftfeuchtigkeit, Luftgeschwindigkeit und Strahlungstemperatur der umgebenden Oberflächen. Aber auch Kleidung, Stoffwechselaktivität und ein individueller Aspekt von Alter, Geschlecht, Körpermasse und mehr beeinflussen die thermische Wahrnehmung.

Während die einzelnen Faktoren eine Unsicherheit hinsichtlich der Heiz- und Kühlregelung darstellen, können die physikalischen Faktoren durch Sensoreinrichtungen präzise bestimmt werden. Lufttemperatur, relative Luftfeuchtigkeit, Luftgeschwindigkeit und Kugeltemperatur können gemessen und als direkte Eingabe für die Gebäudesteuerung verwendet werden. Ferner können sie in einem detaillierteren Ansatz als Eingabe verwendet werden, um die sogenannte zu berechnen PMV-Index, wobei PMV für Predicted Mean Vote steht. Es wird beschrieben, wie Personen im Durchschnitt ihre Wärmegefühlswahrscheinlichkeit unter bestimmten Umgebungsbedingungen einschätzen würden. PMV kann Werte von -3 (kalt) bis +3 (heiß) annehmen, wobei 0 ein neutraler Zustand ist.

Warum erwähnen wir das PMV-Ding hier? Nun, denn im Bereich des persönlichen Komforts handelt es sich um einen häufig verwendeten Index, der als Qualitätskriterium für die thermische Situation in einem Gebäude dienen kann. Und mit CoMoS können alle für die PMV-Berechnung erforderlichen Umgebungsparameter gemessen werden.

Wenn Sie interessiert sind, erfahren Sie mehr über den thermischen Komfort, den Zusammenhang zwischen Globus und mittlerer Strahlungstemperatur, den PMV-Index und den implementierenden ASHRAE-Standard unter

Wikipedia: Thermischer Komfort

ISO 7726 Ergonomie der thermischen Umgebung

ASHRAE NPO

Übrigens: Es gibt schon lange existierende, aber auch viele neu entwickelte Gadgets im Bereich personalisierte Umgebung um individuellen thermischen und visuellen Komfort zu bieten. Kleine Desktop-Fans sind ein bekanntes Beispiel. Aber auch Fußwärmer, beheizte und belüftete Stühle oder Bürotrennwände für das Heizen und Kühlen mit IR-Strahlung werden entwickelt oder sind bereits auf dem Markt erhältlich. Alle diese Technologien beeinflussen den lokalen Wärmezustand, zum Beispiel am Arbeitsplatz, und können auch auf der Grundlage lokaler Sensordaten automatisch gesteuert werden, wie in den Bildern dieses Schritts dargestellt.

Weitere Informationen zu den Gadgets des personalisierten Umfelds und den laufenden Forschungsarbeiten finden Sie unter

Living Lab Smart Office: Personalisierte Umgebung

Universität von Kalifornien, Berkeley

ZEN-Bericht über persönliche Heiz- und Kühlgeräte PDF

SBRC University of Wollongong

Schritt 2: Systemschema

Eines der Hauptziele im Entwicklungsprozess war die Erstellung eines kabellos, kompakt, und preiswert Sensoreinrichtung zur Messung der Umgebungsbedingungen in Innenräumen von mindestens zehn einzelnen Arbeitsplätzen in einem bestimmten offenen Büroraum. Daher verwendet die Station einen ESP32-WROOM-32 mit integrierter WiFi-Konnektivität und einer Vielzahl von Anschlussstiften und unterstützten Bustypen für alle Arten von Sensoren. Die Sensorstationen verwenden ein separates IoT-WiFi und senden ihre Datenlesungen über ein PHP-Skript, das auf dem Datenbankserver ausgeführt wird, an eine MariaDB-Datenbank. Optional kann auch eine benutzerfreundliche grafische Ausgabe installiert werden.

Das obige Schema zeigt die Anordnung aller Peripheriekomponenten als Übersicht über den Systemaufbau, wobei sich diese Anweisung auf die Sensorstation selbst konzentriert. Die PHP-Datei und eine Beschreibung der SQL-Verbindung sind natürlich auch später enthalten, um alle notwendigen Informationen zum Erstellen, Verbinden und Verwenden von CoMoS bereitzustellen.

Hinweis: Am Ende dieser Anleitung finden Sie Anweisungen zum Erstellen einer alternativen eigenständigen Version von CoMoS mit SD-Kartenspeicher, internem WiFi-Zugangspunkt und einer Web-App für Mobilgeräte.

Schritt 3: Lieferliste

Elektronik

Sensoren und Regler, wie im Bild gezeigt:

  • ESP32-WROOM-32 Mikrocontroller (espressif.com) A
  • Temperatur- und Feuchtigkeitssensor Si7021 oder GY21 (adafruit.com) B
  • DS18B20 + Temperatursensor (adafruit.com) C
  • Rev. C. Luftgeschwindigkeitssensor (moderndevice.com) D
  • WS2812B 5050 Status-LED (adafruit.com) E
  • BH1750 Beleuchtungsstärkesensor (amazon.de) F

Weitere elektrische Teile:

  • 4,7k Pull-Up-Widerstand (adafruit.com)
  • 0,14 mm² (oder ähnliches) Standardkabel (adafruit.com)
  • 2x Wago Kompaktverbinder (wago.com)
  • Micro USB Kabel (sparkfun.com)


Gehäuseteile
(Detaillierte Informationen zu diesen Teilen und Größen finden Sie im nächsten Schritt. Wenn Sie einen 3D-Drucker zur Verfügung haben, benötigen Sie nur einen Tischtennisball. Überspringen Sie den nächsten Schritt und finden Sie alle Informationen und Dateien zum Drucken in Schritt 5.)

  • Acrylplatte rund 50x4 mm 1
  • Stahlplatte rund 40x10 mm 2
  • Acrylrohr 50x5x140 mm 3
  • Acrylplatte rund 40x5 mm 4
  • Acrylröhre 12x2x50 mm 5
  • Tischtennisball 6


Verschiedenes

  • Weißer Farbspray
  • Schwarz mattes Farbspray
  • Etwas Klebeband
  • Ein wenig Isolierwolle, ein Wattepad oder ähnliches


Werkzeuge

  • Bohrmaschine
  • 8 mm Stahlbohrer
  • 6 mm Holz- / Kunststoffbohrer
  • 12 mm Holz- / Kunststoffbohrer
  • Dünne Handsäge
  • Sandpapier
  • Drahtschneider
  • Abisolierzange
  • Lötkolben und Zinn
  • Kraftkleber oder Heißklebepistole


Software und Bibliotheken
(Die Zahlen geben die Bibliotheksversionen an, mit denen wir die Hardware verwendet und getestet haben. Neuere Bibliotheken sollten ebenfalls funktionieren, es traten jedoch gelegentlich Probleme auf, wenn wir verschiedene / neuere Versionen ausprobierten.)

  • Arduino IDE (1.8.5)
  • ESP32 Core-Bibliothek
  • BH1750FVI-Bibliothek
  • Bibliothek Adafruit_Si7021 (1.0.1)
  • Adafruit_NeoPixel-Bibliothek (1.1.6)
  • DallasTemperature-Bibliothek (3.7.9)
  • OneWire-Bibliothek (2.3.3)

Schritt 4: Design und Konstruktion des Gehäuses - Option 1

Das Design von CoMoS zeichnet sich durch ein schlankes, vertikales Gehäuse aus, bei dem die meisten Sensoren im oberen Bereich und nur der Temperatur- und Feuchtigkeitssensor im unteren Bereich montiert sind. Das Sensorpositionen und Anordnungen folgen spezifischen Anforderungen der gemessenen Variablen:

  • Der Si7021 Temperatur- und Feuchtigkeitssensor Wird außerhalb des Gehäuses in der Nähe seines Bodens montiert, um eine freie Luftzirkulation um den Sensor zu ermöglichen und den Einfluss der vom Mikrocontroller im Inneren des Gehäuses erzeugten Abwärme zu minimieren.
  • Das BH1750 Beleuchtungsstärke-Sensor Wird auf der flachen Oberseite des Gehäuses montiert, um die Beleuchtung auf einer horizontalen Fläche zu messen, wie dies nach den gängigen Normen für die Arbeitsplatzbeleuchtung erforderlich ist.
  • Die Rev. C Windsensor befindet sich ebenfalls oben im Gehäuse, wobei die Elektronik im Gehäuse verborgen ist. Die Zinken, auf denen sich das eigentliche thermische Anemometer und der Temperatursensor befinden, sind jedoch der umgebenden Luft ausgesetzt.
  • Der DS18B20 Temperatursensor befindet sich ganz oben auf der Station in einem schwarz lackierten Tischtennisball. Die Position oben ist notwendig, um die Sichtfaktoren und damit den Strahlungseinfluss der Sensorstation selbst auf die Globustemperaturmessung zu minimieren.

Zusätzliche Quellen zur mittleren Strahlungstemperatur und zur Verwendung von schwarzen Tischtennisbällen als Globustemperatursensoren sind:

Wang, Shang und Li, Yuguo. (2015). Eignung von Acryl- und Kupferkugelthermometern für tägliche Außeneinstellungen. Bauen und Umwelt. 89. 10.1016 / j.buildenv.2015.03.002.

de Lieber Richard. (1987). Ping-Pong-Kugelthermometer für die mittlere Strahlungstemperatur. H & Eng.,. 60. 10-12.

Das Gehäuse ist einfach aufgebaut, um den Fertigungsaufwand so gering wie möglich zu halten. Es kann leicht sein gebaut aus Standardteilen und Komponenten mit nur wenigen einfachen Werkzeugen und Fähigkeiten. OderFür diejenigen, die das Glück haben, einen 3D-Drucker zur Verfügung zu haben, können alle Gehäuseteile verwendet werden 3D gedruckt auch. Der Rest dieses Schritts kann übersprungen werden, um den Fall auszudrucken. Alle erforderlichen Dateien und Anweisungen finden Sie im nächsten Schritt.

Für die Konstruktion aus NormteilenFür die meisten von ihnen werden passende Maße gewählt:

  • Das Hauptkörper ist ein Acrylrohr (PMMA) mit einem Außendurchmesser von 50 mm, einer Wandstärke von 5 mm und einer Höhe von 140 mm.
  • Das BodenplatteAls Lichtleiter für die Status-LED dient eine Acrylrundplatte mit 50 mm Durchmesser und 4 mm Dicke.
  • EIN Stahl rund mit einem Durchmesser von 40 mm und einer Dicke von 10 mm wird als Gewicht auf die Bodenplatte montiert und in das untere Ende des Hauptkörperrohrs eingesetzt, um ein Umkippen der Station zu verhindern und die Bodenplatte an Ort und Stelle zu halten.
  • Das Deckplatte Passt auch in das Hauptrohr. Es besteht aus PMMA und hat einen Durchmesser von 40 mm und eine Dicke von 5 mm.
  • Endlich, das oberes Steigrohr ist ebenfalls PMMA mit einem Außendurchmesser von 10 mm, einer Wandstärke von 2 mm und einer Länge von 50 mm.

Der Herstellungs- und Montageprozess ist, beginnend mit einigen, einfach Löcher bohren. Die Stahlrunde benötigt ein durchgehendes Loch von 8 mm, um die LED und die Kabel zu befestigen. Das Hauptrohr benötigt ca. 6 mm Löcher als Kabeldurchführung für die USB- und Sensorkabel sowie als Belüftungslöcher. Die Anzahl und Position der Löcher kann nach Ihren Wünschen variiert werden. Die Entwickler haben die Wahl zwischen sechs Löchern auf der Rückseite, in der Nähe von oben und unten, und zwei Löchern auf der Vorderseite, eines oben und eines unten, als Referenz.

Die obere Platte ist das schwierigste Teil. Für die Montage des oberen Steigrohrs ist ein zentriertes, gerades und durchgehendes 12-mm-Ganzes erforderlich, ein weiteres nicht zentriertes 6-mm-Loch für das Beleuchtungsstärkensensorkabel und ein dünner Schlitz mit einer Breite von ca. 1,5 mm und einer Länge von 18 mm für den Wind Sensor. Siehe die Bilder als Referenz. Und schließlich benötigt der Tischtennisball auch ein 6-mm-Ganzes, um den Globus-Temperatursensor und das Kabel zu montieren.

Im nächsten Schritt sollten alle PMMA-Teile außer der Bodenplatte sein sprühlackiertist die Referenz weiß. Der Tischtennisball muss mattschwarz lackiert sein, um die geschätzten thermischen und optischen Eigenschaften zu ermitteln.

Die Stahlrunde ist geklebt zentriert und flach zur Bodenplatte. Das obere Steigrohr wird in das 12 mm Loch der oberen Platte eingeklebt. Der Tischtennisball wird auf das obere Ende des Steigrohrs geklebt, wobei sein Loch mit der inneren Öffnung des Steigrohrs übereinstimmt, sodass der Temperatursensor und das Kabel anschließend durch das Steigrohr in den Ball eingeführt werden können.

Nach diesem Schritt können alle Teile des Gehäuses zusammengesetzt werden. Wenn einige zu fest sitzen, schleifen Sie sie etwas ab, wenn sie zu locker sind, fügen Sie eine dünne Schicht Klebeband hinzu.

Schritt 5: Design und Konstruktion des Gehäuses - Option 2

Während Option 1 der Erstellung des CoMoS-Falls noch immer schnell und einfach ist, lässt sich a 3D Drucker die Arbeit zu erledigen könnte noch einfacher sein. Auch bei dieser Option ist das Gehäuse in drei Teile unterteilt: Oberteil, Gehäusekörper und Unterteil, um eine einfache Verkabelung und Montage zu ermöglichen, wie im nächsten Schritt beschrieben.

Die Dateien und weitere Informationen zu den Druckereinstellungen finden Sie bei Thingiverse:

CoMoS-Dateien auf Thingiverse

Befolgen Sie die Gebrauchsanweisung weißes Filament Für die Ober- und Gehäusekörperteile wird dringend empfohlen. Dies verhindert, dass sich das Gehäuse im Sonnenlicht zu schnell erwärmt, und vermeidet falsche Messungen. Tdurchsichtiges Filament sollte für das Unterteil verwendet werden, damit die LED-Anzeige leuchtet.

Eine andere Variante von Option 1 ist, dass die Metallrunde fehlt.Um ein Umkippen von CoMoS zu verhindern, sollten alle Arten von Gewichten wie Lagerkugeln oder eine Reihe von Metallscheiben in / auf das transparente Unterteil gelegt werden. Es ist mit einer Kante versehen, um etwas Gewicht aufzunehmen und zu halten. Alternativ kann CoMoS mit doppelseitigem Klebeband an den Installationsort geklebt werden.

Hinweis: Der Thingiverse-Ordner enthält Dateien für eine Micro-SD-Kartenleserhülle, die in die CoMoS-Hülle eingehängt werden kann. Dieser Fall ist optional und Teil der Standalone-Version, die im letzten Schritt dieser Anleitung beschrieben wurde.

Schritt 6: Verdrahtung und Montage

Das ESP, die Sensoren, die LED und das USB-Kabel sind gelötet und gemäß der in den Bildern dieses Schritts gezeigten schematischen Schaltung angeschlossen. Das PIN-Vergabe passend zu dem später beschriebenen Beispielcode ist:

  • 14 - Brücke zurücksetzen (DE) - grau
  • 17 - WS2811 (LED) - grün
  • 18 - Pullup Widerstand für DS18B20 +
  • 19 - DS18B20 + (One Wire) - lila
  • 21 - BH1750 & SI7021 (SDA) - blau
  • 22 - BH1750 & SI7021 (SCL) - gelb
  • 25 - BH1750 (V-in) - braun
  • 26 - SI7021 (V-in) - braun
  • 27 - DS18B20 + (V-in) - braun
  • 34 - Windsensor (TMP) - Cyan
  • 35 - Windsensor (RV) - orange
  • VIN - USB-Kabel (+ 5V) - rot
  • GND - USB-Kabel (GND) - schwarz

Die Sensoren Si7021, BH1750 und DS18B20 + werden über einen IO-Pin des ESP32 mit Strom versorgt. Dies ist möglich, weil die maximale Stromaufnahme des ESP unter der maximalen Stromaufnahme pro Pin liegt und erforderlich ist, um die Sensoren zurücksetzen zu können, indem die Stromversorgung bei Kommunikationsfehlern des Sensors unterbrochen wird. Weitere Informationen finden Sie im ESP-Code und in den Kommentaren.

Die Sensoren Si7021 und BH1750 sind die gleichen wie die USB-Kabel, sollten mit den Kabeln verlötet werden, die bereits durch die dafür vorgesehenen Gehäuselöcher geführt wurden, um die Montage im nächsten Schritt zu ermöglichen. WAGO-Kompaktspleißverbinder dienen zum Anschluss von Geräten an die Stromversorgung über das USB-Kabel. Alle werden mit 5 V DC über USB versorgt, was mit dem Logikpegel des ESP32 bei 3,3 V funktioniert. Optional können die Datenpins des Micro-USB-Kabels wieder mit dem Micro-USB-Stecker verbunden und mit dem Micro-USB des ESP verbunden werden Buchse, als Stromeingang und Datenverbindung zum Übertragen des Codes zum ESP32 bei geschlossenem Gehäuse. Andernfalls wird bei Anschluss wie in der Abbildung gezeigt ein weiteres intaktes Micro-USB-Kabel benötigt, um den Code vor dem Zusammenbau des Gehäuses zunächst an das ESP zu übertragen.

Das Si7021 Temperaturfühler wird auf die Rückseite des Gehäuses geklebt, dicht am Boden. Es ist sehr wichtig, diesen Sensor nahe am Boden anzubringen, um falsche Temperaturwerte zu vermeiden, die durch Hitze im Gehäuse verursacht werden. Weitere Informationen zu diesem Problem finden Sie unter Schritt "Epilog". Das BH1750 Beleuchtungsstärkesensor wird auf die Deckplatte geklebt und die Windsensor wird eingesetzt und auf der gegenüberliegenden Seite am Schlitz montiert. Wenn es zu locker sitzt, hilft ein kleines Stück Klebeband um den mittleren Teil des Sensors, um ihn in Position zu halten. Das DS18B20 Temperaturfühler wird durch die obere Steigleitung in den Tischtennisball eingeführt, wobei sich die endgültige Position in der Mitte des Balls befindet. Die Innenseite des oberen Steigrohrs ist mit Isolierwolle gefüllt, und die untere Öffnung ist mit Klebeband oder Heißkleber versiegelt, um eine leitende oder konvektive Wärmeübertragung auf den Globus zu verhindern. Das LED wird in das runde Loch aus Stahl eingesetzt, das nach unten zeigt, um die Bodenplatte zu beleuchten.

Alle Drähte, die Spleißverbinder und das ESP32 befinden sich im Hauptgehäuse, und alle Gehäuseteile werden in der Endmontage zusammengefügt.

Schritt 7: Software - ESP-, PHP- und MariaDB-Konfiguration

Der ESP32 Mikrocontroller kann sein programmiert mit dem Arduino IDE und die ESP32 Core-Bibliothek von Espressif. Es stehen online zahlreiche Lernprogramme zur Einrichtung der IDE für die ESP32-Kompatibilität zur Verfügung, z. B. hier.

Einmal eingerichtet, die beigefügte Code wird auf den ESP32 übertragen. Es wird durchgehend kommentiert, um das Verständnis zu erleichtern. Einige wichtige Funktionen sind jedoch:

  • Es hat ein "Benutzer Konfiguration"Abschnitt am Anfang, in dem einzelne Variablen eingerichtet werden müssen, wie z WiFi ID und Passwort, IP des Datenbankservers und gewünschte Datenablesung und Sendezeit. Es enthält auch eine Variable für die "Windstillstandsanpassung", mit der die Windstillstandsanzeige bei instabiler Stromversorgung auf 0 gesetzt werden kann.
  • Der Code enthält durchschnittlich Kalibrierungsfaktoren ermittelt von den Autoren aus der Kalibrierung von zehn vorhandenen Sensorstationen. Weitere Informationen und mögliche individuelle Anpassungen finden Sie unter Epilog-Schritt.
  • Verschiedene Fehlerbehandlungen sind in mehreren Abschnitten des Codes enthalten. Insbesondere eine effektive Erkennung und Behandlung von Buskommunikationsfehlern, die häufig bei ESP32-Steuerungen auftreten. Weitere Informationen finden Sie unter Epilog-Schritt.
  • Es hat eine LED-Farbausgabe um den aktuellen Zustand der Sensorstation und eventuelle Fehler anzuzeigen. Weitere Informationen finden Sie im Schritt Ergebnisse.

Der Anhang PHP-Datei muss installiert und im Root-Ordner des Datenbankservers unter serverIP / sensor.php verfügbar sein. Der PHP-Dateiname und der Inhalt der Datenverarbeitung müssen mit dem Aufruffunktionscode des ESP übereinstimmen und auf der anderen Seite mit dem Aufbau der Datenbanktabelle, um die Speicherung der Datenlesungen zu ermöglichen. Die angehängten Beispielcodes stimmen überein. Wenn Sie jedoch einige Variablen ändern, müssen diese systemweit geändert werden. Die PHP-Datei enthält zu Beginn einen Anpassungsabschnitt, in dem insbesondere individuelle Anpassungen an die Umgebung des Systems vorgenommen werden Datenbank-Benutzername und Passwortund der Datenbankname.

Eine MariaDB oder SQL Datenbank wird auf demselben Server eingerichtet, entsprechend der Tabelleneinstellung, die im Code der Sensorstation und im PHP-Skript verwendet wird. Im Beispielcode lautet der Name der MariaDB-Datenbank "sensorstation" mit einer Tabelle namens "data", die 13 Spalten für UTCDate, ID, UID, Temp, Hum, Globus, Vel, VelMin, VelMax, MRT, Illum, IllumMin enthält. und IllumMax.

Optional kann auf dem Server eine Grafana Analytics- und Monitoring-Plattform zur direkten Datenbankvisualisierung installiert werden. Dies ist kein wesentliches Merkmal dieser Entwicklung, daher wird es in dieser Anleitung nicht weiter beschrieben.

Schritt 8: Ergebnisse - Daten lesen und verifizieren

Nach Abschluss aller Verkabelungs-, Montage-, Programmierungs- und Umgebungseinstellungen sendet die Sensorstation regelmäßig Daten an die Datenbank. Während des Betriebs mehrere Betriebszustände werden durch den Boden angezeigt LED Farbe:

  • Während des Startvorgangs leuchtet die LED gelb, um die anstehende Verbindung zu WiFi anzuzeigen.
  • Wenn und solange eine Verbindung besteht, leuchtet die Anzeige blau.
  • Die Sensorstation führt Sensormessungen durch und sendet diese regelmäßig an den Server. Jede erfolgreiche Übertragung wird durch einen grünen Lichtimpuls von 600 ms angezeigt.
  • Im Fehlerfall färbt sich die Anzeige je nach Fehlertyp rot, lila oder gelblich. Nach einer bestimmten Zeit oder Anzahl von Fehlern setzt die Sensorstation alle Sensoren zurück und startet automatisch neu, was wiederum durch ein gelbes Licht beim Booten angezeigt wird. Weitere Informationen zu den Anzeigefarben finden Sie im ESP32-Code und in den Kommentaren.

Nach diesem letzten Schritt läuft die Sensorstation und arbeitet kontinuierlich. In den zuvor genannten Living Lab Smart Office-Räumen ist bisher ein Netzwerk von 10 Sensorstationen installiert und in Betrieb.

Schritt 9: Alternative: Standalone-Version

Die Entwicklung von CoMoS geht weiter und das erste Ergebnis dieses laufenden Prozesses ist a Standalone-Version. Diese Version von CoMoS benötigt keinen Datenbankserver und kein WLAN, um Umgebungsdaten zu überwachen und aufzuzeichnen.

Das neue Schlüsselfunktionen sind:

  • Die Daten werden auf einer internen Micro-SD-Karte im Excel-freundlichen CSV-Format gespeichert.
  • Integrierter WiFi Access Point für den Zugriff auf CoMoS von jedem mobilen Gerät.
  • Webbasierte App (interner Webserver auf ESP32, keine Internetverbindung erforderlich) für Live-Daten, Einstellungen und Speicherzugriff mit direktem Dateidownload von der SD-Karte (siehe Abbildung und Screenshots im Anhang zu diesem Schritt).

Dies ersetzt die WLAN- und Datenbankverbindung, während alle anderen Funktionen, einschließlich der Kalibrierung, sowie alle Konstruktionen und Konstruktionen von der Originalversion unberührt bleiben. Trotzdem ist das eigenständige CoMoS erfordert Erfahrung und weiteres Wissen Informationen zum Zugriff auf das interne Dateiverwaltungssystem "SPIFFS" des ESP32 und ein wenig Kenntnis von HTML, CSS und Javascript, um die Funktionsweise der Web-App zu verstehen. Es braucht auch ein paar mehr / verschiedene Bibliotheken, um zu arbeiten.

Bitte überprüfen Sie den Arduino-Code in der angehängten Zip-Datei auf erforderliche Bibliotheken und die folgenden Referenzen, um weitere Informationen zum Programmieren und Hochladen in das SPIFFS-Dateisystem zu erhalten:

SPIFFS-Bibliothek von espressif

SPIFFS-Datei-Uploader von me-no-dev

ESP32WebServer-Bibliothek von Pedroalbuquerque

Diese neue Version würde eine völlig neue Anleitung ermöglichen, die in Zukunft veröffentlicht werden könnte. Aber vorerst besonders für erfahrenere BenutzerWir möchten nicht die Gelegenheit verpassen, die grundlegenden Informationen und Dateien, die Sie zum Einrichten benötigen, mit anderen zu teilen.

Schnelle Schritte zum Erstellen eines eigenständigen CoMoS:

  • Erstellen Sie einen Fall gemäß dem vorherigen Schritt. Optional kann eine zusätzliche Hülle für den Micro-SC-Kartenleser in 3D gedruckt werden, die an der CoMoS-Hülle angebracht werden soll. Wenn Sie keinen 3D-Drucker zur Verfügung haben, kann der Kartenleser auch problemlos im CoMoS-Hauptgehäuse untergebracht werden.
  • Verdrahten Sie alle Sensoren wie zuvor beschrieben, aber installieren und verdrahten Sie zusätzlich einen Micro-SD-Kartenleser (amazon.com) und eine DS3231-Echtzeituhr (adafruit.com), wie im diesem Schritt beigefügten Verdrahtungsschema angegeben. Hinweis: Die Pins für den Pull-Up-Widerstand und den OneWire unterscheiden sich vom ursprünglichen Verdrahtungsschema!
  • Überprüfen Sie den Arduino-Code und passen Sie die WLAN-Zugangspunktvariablen "ssid_AP" und "password_AP" an Ihre persönlichen Vorlieben an. Wenn nicht angepasst, lautet die Standard-SSID "CoMoS_AP" und das Kennwort "12345678".

  • Legen Sie eine Micro-SD-Karte ein, laden Sie den Code hoch, laden Sie den Inhalt des Ordners "data" mithilfe des SPIFFS-Datei-Uploaders auf den ESP32 hoch und verbinden Sie ein mobiles Gerät mit dem WLAN-Zugangspunkt.

  • Navigieren Sie in Ihrem mobilen Browser zu "192.168.4.1" und genießen Sie!

Die App Alles basiert auf HTML, CSS und Javascript. Es ist lokal, keine Internetverbindung ist beteiligt oder erforderlich. Es verfügt über ein In-App-Menü für den Zugriff auf eine Einrichtungsseite und eine Speicherseite. Auf der Einrichtungsseite, können Sie die wichtigsten Einstellungen wie lokales Datum und Uhrzeit, Sensormessintervall usw. anpassen. Alle Einstellungen werden dauerhaft im internen Speicher des ESP32 gespeichert und beim nächsten Start wiederhergestellt. Auf der SpeicherseiteEine Liste der Dateien auf der SD-Karte ist verfügbar. Durch Klicken auf einen Dateinamen wird die CSV-Datei direkt auf das Mobilgerät heruntergeladen.

Diese Systemkonfiguration ermöglicht die individuelle und Fernüberwachung der Umgebungsbedingungen in Innenräumen. Alle Sensorwerte werden regelmäßig auf der SD-Karte gespeichert. Für jeden neuen Tag werden neue Dateien erstellt. Dies ermöglicht einen kontinuierlichen Betrieb über Wochen oder Monate ohne Zugang oder Wartung. Wie bereits erwähnt, ist dies immer noch eine laufende Forschung und Entwicklung. Wenn Sie an weiteren Details oder Unterstützung interessiert sind, zögern Sie bitte nicht, den entsprechenden Autor über die Kommentare oder direkt über LinkedIn zu kontaktieren.

Schritt 10: Epilog - Bekannte Probleme und Ausblick

Die in dieser Anleitung beschriebene Sensorstation ist das Ergebnis einer langen und kontinuierlichen Forschung. Ziel ist es, ein zuverlässiges, präzises und dennoch kostengünstiges Sensorsystem für die Umgebungsbedingungen in Innenräumen zu schaffen. Dies hielt und hält einige ernsthafte Herausforderungen bereit, von denen die sichersten hier erwähnt werden sollten:

Sensorgenauigkeit und Kalibrierung

Die in diesem Projekt verwendeten Sensoren bieten alle eine relativ hohe Genauigkeit bei geringen oder moderaten Kosten. Die meisten sind mit einer internen Rauschunterdrückung und einer digitalen Busschnittstelle für die Kommunikation ausgestattet, wodurch die Notwendigkeit einer Kalibrierung oder Pegelanpassung verringert wird. Da die Sensoren in oder an einem Gehäuse mit bestimmten Merkmalen installiert sind, wurde von den Autoren eine Kalibrierung der gesamten Sensorstation durchgeführt, wie in den beigefügten Abbildungen kurz dargestellt. Insgesamt zehn gleich gebaute Sensorstationen wurden unter definierten Umgebungsbedingungen getestet und mit einem professionellen Raumklimasensor TESTO 480 verglichen. Aus diesen Läufen wurden die im Beispielcode enthaltenen Kalibrierungsfaktoren bestimmt. Sie ermöglichen eine einfache Kompensation des Einflusses von Gehäuse und Elektronik auf die einzelnen Sensoren. Um die höchste Genauigkeit zu erreichen, wird eine individuelle Kalibrierung für jede Sensorstation empfohlen. Die Kalibrierung dieses Systems ist neben der in diesem Lehrbuch beschriebenen Entwicklung und Konstruktion ein zweiter Forschungsschwerpunkt der Autoren. Es wird in einer weiteren, zusammenhängenden Publikation besprochen, die sich noch in der Begutachtung befindet und hier verlinkt wird, sobald sie online geht. Weitere Informationen zu diesem Thema finden Sie auf der Website der Autoren.

ESP32-Betriebsstabilität

Nicht alle in diesem Code verwendeten Arduino-basierten Sensorbibliotheken sind vollständig mit der ESP32-Karte kompatibel. Dieses Problem wurde an vielen Stellen im Internet ausführlich diskutiert, insbesondere im Hinblick auf die Stabilität der I2C- und OneWire-Kommunikation. In dieser Entwicklung wird eine neue, kombinierte Fehlererkennung und -behandlung durchgeführt, die darauf basiert, die Sensoren direkt über die E / A-Pins des ESP32 mit Strom zu versorgen, damit die Stromversorgung für Rücksetzzwecke unterbrochen werden kann. Aus heutiger Sicht wurde diese Lösung nicht vorgestellt oder wird nicht umfassend diskutiert. Es wurde aus der Not geboren, läuft aber bis heute für Betriebsperioden von mehreren Monaten und darüber hinaus reibungslos. Dennoch ist es immer noch ein Forschungsthema.

Ausblick

Zusammen mit dieser Anleitung werden von den Autoren weitere schriftliche Veröffentlichungen und Konferenzpräsentationen durchgeführt, um die Entwicklung zu verbreiten und eine breite und Open-Source-Anwendung zu ermöglichen. In der Zwischenzeit wird die Forschung fortgesetzt, um die Sensorstation weiter zu verbessern, insbesondere in Bezug auf das Systemdesign und die Herstellbarkeit sowie die Systemkalibrierung und -verifizierung. Diese Anleitung könnte über wichtige zukünftige Entwicklungen aktualisiert werden. Für aktuelle Informationen besuchen Sie bitte die Website des Autors oder kontaktieren Sie den Autor direkt über LinkedIn:

Korrespondierender Autor: Mathias Kimmling

Zweiter Autor: Konrad Lauenroth

Forschungsmentorin: Prof. Sabine Hoffmann

Zweiter Preis im
Erstmaliger Autor