Einleitung – Nachrichtenprotokoll und Node-Red

In diesem Teil der Dokumentation wird das gewählte Nachrichtenprotokoll und unsere Flows in Node-RED kurz beschrieben. Als Nachrichtenprotokoll haben wir MQTT gewählt, da es laut Vorlesung gut geeignet ist für IoT-Anwendungen, die Echtzeitdaten benötigen. Mit Node-RED können JavaScript-Funktionen in einem Baukastensystem zusammengesetzt werden. Die Universität hat einen MQTT-Broker und einen Node-RED Server, sowie Vorlesungen über diese Inhalte, bereitgestellt, was die Auswahl des Protokolls und des Entwicklungswerkzeuges bekräftigte.

Beschreibung der unterschiedlichen Nodes in Node-RED

1) Tabelle und Graph

Abbildung 1: Nodes der Tabelle und des Graphen

Das abonnierte Topic „tonne/abstand“ erhält den Füllstand in % von dem Mikrokontroller. Diese Füllstand wird dann direkt an einen Graphen (Füllstand) weitergegeben. Bevor der Messwert in die Tabelle (table) eingetragen wird, durchläuft er noch eine Funktion.

1.1) Tabelle

Abbildung 2 – Wertetabelle des Füllstandes

In der Funktion, bei der die Füllstände ankommen, wird ein Datum im CET-Format erstellt. Somit erhält man eine Tabelle, die in den Spalten den Zeitpunkt und den Wert enthält. Weiterhin wird die Anzahl der Messwerte in der Tabelle auf 10 beschränkt, damit die Website übersichtlicher bleibt.

1.2) Graph

Abbildung 3: Liniendiagramm des Füllstandes

Das Liniendiagramm hat auf der x-Achse die Zeitwerte der letzten Woche und auf der y-Achse die Füllstände in % von 0-100.

Mit der Tabelle und dem Liniendiagramm, die vom Discord aus aufgerufen werden können, erhält der Benutzer einen Gesamtüberblick über den Müll in der Tonne.

2) Leeren der Tabelleneinträge

Abbildung 4: Reset-Node

Da es in der Zukunft passieren kann, dass Daten gelöscht werden müssen, haben wir provisorisch eine Node angelegt, die das Löschen aller Tabelleneinträge ermöglicht. Weiterhin wurde die Node auch für das Debuggen benutzt.

3) Leeren der Mülltonne

Abbildung 5: Status-Node

Die Mülltonne muss von außen bestätigt bekommen, dass sie geleert wurde. Dies wird in Node-RED mit einer Node simuliert, die eine 0 an das Topic „tonne/status“ verschickt, sobald diese geleert wurde. Im Rahmen des Smart-City-Projekts wäre dies die Aufgabe der Müllabfuhr. Diese Nodes werden momentan aber nicht im Code benutzt (sind auskommentiert).

No Responses

Leave a Reply

Your email address will not be published. Required fields are marked *