0% fanden dieses Dokument nützlich (0 Abstimmungen)
2 Ansichten16 Seiten

Node Red

Die Node-RED Dashboard Schnellstart-Anleitung bietet eine Schritt-für-Schritt-Anleitung zur Erstellung eines einfachen Dashboards, das Zufallszahlen anzeigt. Es werden verschiedene Node-Elemente wie Inject, Function, Chart und Gauge verwendet, um Daten zu generieren und darzustellen. Zudem wird erläutert, wie weitere UI-Elemente hinzugefügt und konfiguriert werden können, um ein umfassendes Dashboard zu erstellen.

Hochgeladen von

Daniel Rink
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen
0% fanden dieses Dokument nützlich (0 Abstimmungen)
2 Ansichten16 Seiten

Node Red

Die Node-RED Dashboard Schnellstart-Anleitung bietet eine Schritt-für-Schritt-Anleitung zur Erstellung eines einfachen Dashboards, das Zufallszahlen anzeigt. Es werden verschiedene Node-Elemente wie Inject, Function, Chart und Gauge verwendet, um Daten zu generieren und darzustellen. Zudem wird erläutert, wie weitere UI-Elemente hinzugefügt und konfiguriert werden können, um ein umfassendes Dashboard zu erstellen.

Hochgeladen von

Daniel Rink
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen

Node-RED dashboard Schnellstart-Anleitung– Erste Schritte

Node-RED dashboard Schnellstart-


Anleitung- Erste Schritte
[Link]

Node-RED ist ein visuelles Verdrahtungstool für das IoT. Ein Projekt der JS Foundation
([Link]
Node-RED ist ein Programmierwerkzeug zur Verbindung von Hardware-Geräten, APIs und Online-
Diensten in neuen und interessanten Methoden.
Es bietet einen browserbasierten Editor, mit dem es einfach ist, Flüsse unter Verwendung
der zahlreichen node in der Palette zu verkabeln, die mit einem einzigen Mausklick zur
Laufzeit bereitgestellt werden können.
Das folgende Beispiel basiert auf dem Tutorial [Link]
dashboard- part2/

Die hier beschriebenen Beispiele sind unter folgendem Link verfügbar:


[Link] [Link]/nodered/nr10/ui

1
Node-RED dashboard Schnellstart-Anleitung– Erste Schritte

1. Erste Schritte durch Erstellen eines ersten Dashboards


In diesem Beispiel werden wir einen einfachen Fluss erstellen, der eine Zufallszahl zwischen 0 und 99
an ein einfaches Diagramm sendet. Dazu benötigen Sie einen Injektionsnode, der alle paar Sekunden
wiederholt ausgelöst wird, einen Funktionsnode, um die Zufallszahl zu erzeugen, und einen der
Node-Red-Dashboard - in diesem Fall den Diagrammnode.

Abb. 1 - Unser erstes Beispiel

Ziehen Sie die folgenden node per Drag & Drop aus der linken Spalte in den Hauptbereich:

• Inject node (aus der Liste der Input node)

• Function node aus der Liste der function node)

• Debug node (aus der Liste der output node)


• Chart node (aus der Liste der dashboard node)

Der "inject"-node ändert den Namen in "timestamp" und der "debug"-node ändert den Namen in
"[Link]". Verbinden Sie die node, indem Sie auf das kleine abgerundete Quadrat jedes node
klicken, um das gleiche Ergebnis wie in Abbildung 1 oben zu erhalten.

Bevor wir uns ansehen, wie der Diagramm node funktioniert, wollen wir den Injektionsnode so
konfigurieren, dass er alle 5 Sekunden einen Zeitstempel sendet, indem wir die Payload auf
Zeitstempel und das repeat auf ein Intervall von 5 Sekunden setzen. Doppelklicken Sie auf den
Zeitstempel- node und stellen Sie die Parameter wie in der Abbildung unten ein.

2
Node-RED dashboard Schnellstart-Anleitung– Erste Schritte

Abb. 2 – inject node bearbeiten

Klicken Sie zur Bestätigung auf die Schaltfläche ‚Done‘. Nach dem Namen des Zeitstempels erscheint
ein kleiner kreisförmiger Pfeil.

Dies wird als ein sich wiederholender Auslöser wirken. Jetzt müssen wir den Funktionsnode so
einrichten, dass er eine Zufallszahl erzeugt - wir werden dazu eine einfache JS-
Mathematikfunktion verwenden:

[Link] = [Link]([Link]()*100);
return msg;

Doppelklicken Sie auf den Funktion node und:

Fügen Sie den Namen "Random number" ein


Kopieren Sie die JS-Mathematikfunktion in der “Function” leeres Feld
Klicken Sie zur Bestätigung auf Fertig

Das Endergebnis ist in Abb. 2 dargestellt. Dadurch wird eine Zufallszahl zwischen 0 ~ 99 erzeugt, die an
den Diagrammnode übergeben wird.

3
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Abb. 3 - function node bearbeiten

Doppelklicken Sie auf den Chart node, um in


die Konfigurationsoptionen einzu-treten.
Stellen Sie die Optionen wie in Abb. 4 ein.

Klicken Sie auf die Schaltfläche


Gruppenfeld, um eine Dashboard-Gruppe
hinzuzufügen und zu konfigurieren (Abb.
5).

Mit der Option Tab können Sie festlegen, auf


welchem Tab der UI-Seite Sie das UI-Element
sehen werden - in diesem Fall unser Diagramm.
Die Standard-Registerkarte ist Home - in diesem
Fall unser Diagramm. Wenn Sie die Bearbeiten-
Schaltfläche rechts neben dem Tab-Feld wählen,
können Sie ein neuer Tab erstellen und dieses
dann auswählen. Wir werden jedoch vorerst die
Standard-Startseite verwenden.

Das Feld Name ist der Standard- node name


des node - standardmäßig ist dies der Name
des Diagramms, aber Sie können ihn nach
Belieben einstellen.

Im Feld Group können Sie 'UI-Elemente'


gruppieren - wir werden Ihnen zeigen, wie das
funktioniert, wenn wir ein weiteres UI-Element
Abb. 4 - chart node Eigenschaften
hinzufügen. Verwenden wir also zunächst
natürlich die Gruppe "Mein erstes
Dashboard[Home]", Sie können jede beliebige
Zeichenfolge verwenden.

5
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Abb. 5 - dashboard group node bearbeiten

Klicken Sie auf die Schaltfläche "Update", um die Einstellungen zu bestätigen und zu den
Eigenschaften des node Editieren des Diagramms zurückzukehren (Abb. 5).

Das X-Achsen-Feld ermöglicht es Ihnen, dem Diagramm mitzuteilen, wie viele Daten es speichern
und anzeigen soll - je länger das "letzte" Feld eingestellt ist, desto mehr Daten werden vom
Diagramm gespeichert und angezeigt. Nehmen wir kurze 5 Minuten, in denen die Daten, die 5
Minuten alt sind, weggeworfen werden.

Zuletzt definiert das Feld Interpolate, wie das Diagramm Werte zwischen tatsächlichen
Datenwerten, die es erhält, interpoliert. Sie können zwischen Linear, Step, B-Spline und
Cardinal wählen - dies sind standard interpolation algorithms.. Wir verwenden den linearen
Standardalgorithmus.

Verbinden Sie diese node miteinander, klicken Sie auf die Schaltfläche 'Deploy' - überprüfen
Sie, ob Ihr Debug- node zufällige Werte anzeigt. Wechseln Sie dann zu Ihrer Standard-
Dashboard-Seite, um die Ergebnisse zu sehen. Standardmäßig sehen Sie Ihre UI unter:

[Link] nodered website}/ui/


Wenn Sie diese Seite besuchen, sehen Sie Ihr erstes Diagramm wie unten dargestellt:

6
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Abb. 6 – Ausgabe-Grafik

2. Andere Elemente in der Benutzeroberfläche hinzufügen

Jetzt werden wir ein Messgerät erstellen, das den zuletzt gesendeten Datenwert anzeigt. Ziehen Sie
einen Gauge- node, der in der Dashboard-Liste der node aus der UI-Palette und verdrahten Sie sie
mit dem Funktionsnode ‚Random number‘. Sie erhalten ein ähnliches Ergebnis wie in Abb. 7

Abb. 7 - Einen neuen Gauge-node hinzufügen

Doppelklicken Sie dann auf den node Guage, um ihn zu öffnen, konfigurieren Sie ihn wie in Abb. 8 und
klicken Sie auf die Schaltfläche Done Taste zum Bestätigen.

7
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Fig. 8 - Gauge node bearbeiten

Wir werden den gleichen Tabulator verwenden, nach Hause, und wir fügen ihn auch der gleichen
Gruppe hinzu - "Mein erstes Dashboard[Home]". In den Feldern Min und Max können Sie die Min-
und Max-Werte einstellen, die das Messgerät anzeigen soll. Stellen Sie sicher, dass der
Maximalwert auf 100 eingestellt ist, was das Maximum ist, das der Zufallszahl-Funktionsnode
erzeugen wird. Sie können auch den Farbverlauf ändern, um verschiedene Farben auf dem Widget
anzuzeigen, aber wir belassen es vorerst bei der Standardeinstellung.

Klicken Sie auf Deploy und gehen Sie dann zu Ihrem Dashboard und Sie werden sehen, dass das
Diagramm und die Messröhre in einer Gruppe angezeigt werden, wobei das Diagramm jetzt die
letzten 5 Minuten der Daten und die Messröhre den neuesten Wert anzeigt.

8
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Fig. 9 - Neue Guage hinzugefügt

Nun fügen wir einige weitere UI- node, einen Schieberegler- node und einen Text- node
hinzu, um die gleichen Daten auf einem Schieberegler und als Textzeichenfolge anzuzeigen.
Ziehen Sie den Schiebereglernode und den Textnode aus der Dashboard-Liste der node (Abb. 10)

Fig. 10 – 2 neue node hinzugefügt (Slider und Text)

9
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte
• Verbinden Sie den Random number node mit den beiden neuen node (Fig. 11).

Abb. 11 - die hinzugefügten node sind jetzt mit dem Zufallszahl-node verbunden.

• Doppelklicken Sie auf den Slider-Node und konfigurieren Sie einen neuen
Gruppennamen. Sie müssen auf das Symbol "Add new UI_group" im Feld Group
klicken und dann auf die Schaltfläche Edit (Abb. 12).

Abb. 12 - Neue ui_group hinzufügen

10
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte
Schreiben Sie einen neuen Gruppennamen, z.B. new_group, und bestätigen Sie. Legen Sie den
Schieberegler new_group für die neuen node (Abb. 13) und den Text (Abb. 14) als Gruppe fest. Klicken
Sie zur Bestätigung auf die Schaltfläche Fertig.

Abb. 13 - neue Gruppenzuordnung (slider node)

Abb. 14 - neue Gruppenzuordnung (text node)

Sie müssen auch den Maximalwert für den Schiebereglernode auf 100 ändern, um die korrekte
Position des Schiebereglers anzuzeigen.

11
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte
Stellen Sie das neue Dashboard bereit. Das Endergebnis sollte wie in Abb. 15 aussehen.

Abb. 15 - dashboard with two new nodes (slider and text) in a new column (new_group)

In der Registerkarte "Dashboard" neben Ihrer Debug-Registerkarte können Sie auch das Thema
und die Reihenfolge der Elemente festlegen. Wenn Sie die Registerkarte "Dashboard" nicht
sehen, klicken Sie auf die Menüschaltfläche in der oberen rechten Ecke und wählen Sie dann
"View" -> "Dashboard". Sie können alle Widgets und Registerkarten in einer Baumstruktur sehen,
und Sie können die Elemente leicht ziehen, um die Reihenfolge zu ändern, in der sie im
Dashboard angezeigt werden (Abb. 16).

Abb. 16 - Registerkarte und Links-Panel


12
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte
Jetzt kann Node-RED für den direkten Anschluss an die Sensoren verwendet werden. Dazu
müssen wir ein wenig einfache Programmierung vornehmen, um eine Verbindung zum
LoRaWAN-Webserver herzustellen. Die Daten von diesem Server werden an den Port 1880
geliefert, auf dem Node-RED läuft.

Hier ist ein Beispielablauf, in dem die Anwendung spezifiziert wird und alle Geräte innerhalb
dieser Anwendung Daten an diese Instanz liefern.

Abb. 17 – Node- Sequenz

Wir werden einige zusätzliche node herunterladen müssen, z.B. mqtt in, json, base 64, von der
Verwaltungspalette -> installieren -> Suche nach den spezifischen Node (z.b co2 monitor).

Abb. 18 – Installieren neuer Node

13
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Mqtt: Der mqtt- node wird wie unten gezeigt bearbeitet. Hier bezeichnet 3 die Anwendungs-ID
für eine bestimmte Klasse von Sensoren. Wir können dies ändern, um Nutzlastdetails von
Sensoren anderer Klassen und Varianten zu erhalten.

Abb. 17 – mqtt node

Der Decode-Node liefert die Daten von den Sensoren und die Informationen von den Debug-
Node. Hier sehen wir die Nutzlastdaten und den Standort, die Gateway-Id und andere wichtiges
Datum. Die erforderlichen Ausgabedaten können korrigiert und nach Wunsch auf Versuch-Fehler-
Basis erreicht werden. Hier können wir die erforderlichen Metriken ändern, indem wir die
Nutzlastdaten verwenden und die Funktion in Node-Red entsprechend ändern.

Abb. 18 - Debug

14
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Dies ist das Armaturenbrett, das aus den von den Bewegungssensoren, Co2- und ERS-Sensor,
gesammelten Daten erstellt wird. Wir haben gerade Details wie Temperatur, Batteriespannung,
relative Luftfeuchtigkeit und CO2-Niveau aufgetragen. Diese Werte variieren bei verschiedenen
Sensoren und müssen aus dem technischen Datenblatt dekodiert werden.

Abb. 19 – UI Dashboard

15
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte

Telegraf plugin für Influxdb: Telegraf ist eine freie Software, die bei Influx erhältlich ist. Sie sammelt
die Daten vom Localhost und veröffentlicht sie auf dem Influx-Server. Dazu muss Telegraf lokal auf
einem Windows-PC installiert werden. Dann ist das Konfigurationsfole von Telegraf wie folgt zu
editieren:

[global_tags][agent]
interval = "10s"
round_interval = true metric_batch_size = 1000
metric_buffer_limit = 10000 collection_jitter = "3s" flush_interval = "10s"
flush_jitter = "5s" precision = "" debug = false
quiet = false
logfile = "/var/log/telegraf/[Link]"
logfile_rotation_interval = "0d"
logfile_rotation_max_size = "1MB"
logfile_rotation_max_archives = 5 hostname = ""
omit_hostname = false# Cloud 2 instance
[[outputs.influxdb_v2]]
urls = ["[Link]
token =
"awWOHzVperz2WG03OjFWeUShcsK6c19IVhYe20c0RnmXL4ygQ4ttNEYlwq_J4PBhqYL_W6YO2ih4Y4n-
IlKIpw=="
organization = "xxxxx"
bucket = "xxxxx"
flush_interval = "30s"# Influx HTTP write listener
[[inputs.influxdb_listener]]
service_address = ":8086" read_timeout = "10s"
write_timeout = "10s" max_body_size = "500MiB" max_line_size = "64KiB" database_tag =
"bucket_name"

Sobald die Autorisierung korrekt ist, können wir die von den Sensoren gesendeten Daten und ihren
Empfang im Influxserver sehen.

Abb. 20 – Influxdb Dashboard

16
Node-RED dashboard Schnellstart-Anleitung– Erste
Schritte
Node-Red Bspl1 Code für datei visualisierung: Ändern Sie bitte die Einstellungen des Mqtt-node
entsprechend. Kopieren Sie den Code und fügen Sie ihn in Importieren aus der Zwischenablage in Node-
Red ein.
[{"id":"c80c37a0.23e0c8","type":"tab","label":"Security","disabled":false,"info":""},{"id":"de7e4732.e99e98","type":"debug","z":"c80c37a0.23e0c8","name":"","active":true,"tosidebar":
true,"console":false,"tostatus":false,"complete":"payload","x":340,"y":60,"wires":[]},{"id":"ab65cbb9.c64d88","type":"inject","z":"c80c37a0.23e0c8","name":"0","topic":"","payload":"",
"payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":400,"y":140,"wires":[["a848dc2f.f209f"]]},{"id":"f17eda1.a208328","type":"inject","z":"c80c37a0.23e0c8
","name":"1","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":640,"y":60,"wires":[["1797c48f.fc13cb"]]},{"id":"34df0b19.201224",
"type":"function","z":"c80c37a0.23e0c8","name":"ploOevent","func":"\nreturn
msg;","outputs":1,"noerr":0,"x":750,"y":140,"wires":[["1797c48f.fc13cb"]]},{"id":"4a6c1032.396bb","type":"base64","z":"c80c37a0.23e0c8","name":"","action":"","property":"payload.d
ata","x":400,"y":420,"wires":[["726366c8.5784b8","a20fd08f.3db64","51d1e354.7979ac","c7f7aa6.8254f58","c911341a.1ad9a8","c54cfecf.2ab1d"]]},{"id":"1797c48f.fc13cb","type":"ui_
template","z":"c80c37a0.23e0c8","group":"","name":"Alarm","order":0,"width":0,"height":0,"format":"<div ng-bind-
html=\"[Link]\"></div>","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":950,"y":220,"wires":[["f97591f.2c97c7"]]},{"id":"a848dc2f.f209f","type":"ui
_button","z":"c80c37a0.23e0c8","name":"Clear
Alarm","group":"1405dd23.343213","order":0,"width":0,"height":0,"passthru":false,"label":"button","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":750
,"y":220,"wires":[["1797c48f.fc13cb"]]},{"id":"3fc597d0.dbce88","type":"function","z":"c80c37a0.23e0c8","name":"ploOEvent","func":"\nreturn
msg;","outputs":1,"noerr":0,"x":750,"y":280,"wires":[["1797c48f.fc13cb"]]},{"id":"726366c8.5784b8","type":"function","z":"c80c37a0.23e0c8","name":"co2","func":"var co2 =
[Link][11]+[Link][12];\[Link] = co2;\nreturn
msg;","outputs":1,"noerr":0,"x":730,"y":340,"wires":[["25c0fa4a.a786c6","736bff66.5e135"]]},{"id":"a20fd08f.3db64","type":"function","z":"c80c37a0.23e0c8","name":"Battery
level","func":"var vbat = [Link][13]*256+[Link][14];\[Link] = vbat;\nreturn
msg;","outputs":1,"noerr":0,"x":760,"y":420,"wires":[["1d1aacd5.3380d3","2ba3b2a9.0e871e","3a6713d4.2798cc"]]},{"id":"f97591f.2c97c7","type":"debug","z":"c80c37a0.23e0c8","na
me":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1180,"y":220,"wires":[]},{"id":"4022f340.828f7c","type":"json","z":"c80c37a0.23e0c8","nam
e":"","property":"payload","action":"","pretty":false,"x":250,"y":240,"wires":[["4a6c1032.396bb"]]},{"id":"736bff66.5e135","type":"ui_chart","z":"c80c37a0.23e0c8","name":"History","g
roup":"1405dd23.343213","order":0,"width":0,"height":0,"label":"CO2 level
History","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":true,"ymin":"","ymax":"","removeOlder":"500","removeOlderPoints":"50","r
emoveOlderUnit":"60","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"x
":1000,"y":280,"wires":[[],[]]},{"id":"25c0fa4a.a786c6","type":"ui_gauge","z":"c80c37a0.23e0c8","name":"C02
level","group":"1405dd23.343213","order":0,"width":0,"height":0,"gtype":"wave","title":"CO2
Level","label":"units","format":"{{value}}","min":0,"max":"2000","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":970,"y":340,"wires":[]},{"id":"1d1aacd5.3380d3","typ
e":"ui_gauge","z":"c80c37a0.23e0c8","name":"Voltage","group":"1405dd23.343213","order":0,"width":0,"height":0,"gtype":"gage","title":"Battery
Level","label":"V","format":"{{value}}","min":0,"max":"3640","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":1160,"y":420,"wires":[]},{"id":"2c8ca448.dfd53c","type":
"mqtt
in","z":"c80c37a0.23e0c8","name":"","topic":"application/3/device/+/rx","qos":"2","broker":"7f8a6d2d.57af34","x":160,"y":180,"wires":[["4022f340.828f7c","de7e4732.e99e98"]]},{"id"
:"51d1e354.7979ac","type":"function","z":"c80c37a0.23e0c8","name":"Temperature","func":"var temp = [Link][1]+[Link][10]\[Link] = temp;\nreturn
msg;","outputs":1,"noerr":0,"x":760,"y":480,"wires":[["e74b3f5.92d41c","f83d7b8a.d20c38"]]},{"id":"e74b3f5.92d41c","type":"ui_gauge","z":"c80c37a0.23e0c8","name":"Degrees","gro
up":"1405dd23.343213","order":0,"width":"0","height":"0","gtype":"gage","title":"Temperature","label":"Degrees","format":"{{
value}}","min":"0","max":"60","colors":["#00b500","#e6e600","#ca3838"],"seg1":"35","seg2":"40","x":1040,"y":500,"wires":[]},{"id":"f3b2f093.94b53","type":"ui_gauge","z":"c80c37a0.
23e0c8","name":"Percentage","group":"1405dd23.343213","order":0,"width":0,"height":0,"gtype":"gage","title":"Relative
Humidity","label":"Percentage","format":"{{value}}","min":0,"max":"100","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":1050,"y":580,"wires":[]},{"id":"c7f7aa6.825
4f58","type":"function","z":"c80c37a0.23e0c8","name":"Humidity","func":"var rh = [Link][3]+ [Link][4];\[Link] = rh;\nreturn
msg;","outputs":1,"noerr":0,"x":770,"y":580,"wires":[["f3b2f093.94b53","fda47e05.4eabb"]]},{"id":"2ba3b2a9.0e871e","type":"ui_worldmap","z":"c80c37a0.23e0c8","group":"1405dd2
3.343213","order":0,"width":0,"height":0,"name":"","lat":"48.5154474","lon":"11.5053212","zoom":"10","layer":"OSM","cluster":"2","maxage":"","usermenu":"show","layers":"show","
panit":"true","panlock":"false","zoomlock":"false","hiderightclick":"false","coords":"deg","showgrid":"true","path":"/worldmap","x":1040,"y":380,"wires":[]},{"id":"3a6713d4.2798cc","t
ype":"ui_chart","z":"c80c37a0.23e0c8","name":"Battery level History","group":"1405dd23.343213","order":0,"width":0,"height":0,"label":"Battery level
History","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":false,"ymin":"","ymax":"","removeOlder":1,"removeOlderPoints":"","remove
OlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#2114be","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"x":10
40,"y":460,"wires":[[],[]]},{"id":"f83d7b8a.d20c38","type":"ui_chart","z":"c80c37a0.23e0c8","name":"Temperature
History","group":"1405dd23.343213","order":0,"width":0,"height":0,"label":"Temperature
History","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":false,"ymin":"","ymax":"","removeOlder":1,"removeOlderPoints":"","remove
OlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"x":10
60,"y":540,"wires":[[],[]]},{"id":"fda47e05.4eabb","type":"ui_chart","z":"c80c37a0.23e0c8","name":"Humidity
History","group":"1405dd23.343213","order":0,"width":0,"height":0,"label":"Humidity
History","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":false,"ymin":"","ymax":"","removeOlder":1,"removeOlderPoints":"","remove
OlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"x":10
40,"y":620,"wires":[[],[]]},{"id":"ef84ffb3.54415","type":"http request","z":"c80c37a0.23e0c8","name":"Post to Influxdb
v2","method":"POST","ret":"txt","url":"[Link]
"z":"c80c37a0.23e0c8","name":"InfluxDB_output","func":"[Link] = {\n 'Authorization':
'awWOHzVperz2WG03OjFWeUShcsK6c19IVhYe20c0RnmXL4ygQ4ttNEYlwq_J4PBhqYL_W6YO2ih4Y4n-IlKIpw=='\n}\nvar co2 = [Link][11]+[Link][12];\nvar vbat =
[Link][13]*256+[Link][14];\nvar temp = [Link][1]*10;\nvar rh = [Link][3]+ [Link][4];\[Link] =
\"sensorData,sensorName=\" +[Link]+ \" co2=\" + co2 + \",vbat=\" + vbat + \",temp=\" + temp + \",rh=\" + rh;\nreturn
msg;","outputs":1,"noerr":0,"x":620,"y":700,"wires":[["ef84ffb3.54415","99df39dd.268db8"]]},{"id":"88527b3e.142288","type":"debug","z":"c80c37a0.23e0c8","name":"","active":true,
"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1090,"y":700,"wires":[]},{"id":"99df39dd.268db8","type":"debug","z":"c80c37a0.23e0c8","name":"","active":t
rue,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":750,"y":760,"wires":[]},{"id":"e15ac5d5.a4d008","type":"debug","z":"c80c37a0.23e0c8","name":"","active":tr
ue,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":370,"y":520,"wires":[]},{"id":"c54cfecf.2ab1d","type":"json","z":"c80c37a0.23e0c8","name":"","property":"
payload","action":"","pretty":false,"x":180,"y":540,"wires":[["e15ac5d5.a4d008"]]},{"id":"1405dd23.343213","type":"ui_group","z":"","name":"home","tab":"c084b69a.f143d8","disp":tr
ue,"width":"6","collapse":false},{"id":"7f8a6d2d.57af34","type":"mqtt-broker","z":"","name":"db4-lora-
appserver","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthRetain":"false","b
irthPayload":"","closeTopic":"","closePayload":"","willTopic":"","willQos":"0","willRetain":"false","willPayload":""},{"id":"c084b69a.f143d8","type":"ui_tab","z":"","name":"Home","icon"
:"dashboard"}]

Bspl2 Join Request Node: Bitte ändern Sie die Anwendungsnummer entsprechend
[{"id":"630e5ef4.c4f7","type":"mqtt
in","z":"b512c254.cf355","name":"","topic":"gateway/+/rx","qos":"2","broker":"c29c8178.64886","x":150,"y":1460,"wires":[["2fb7912.b85986e"]]},{"id":"2fb7
912.b85986e","type":"json","z":"b512c254.cf355","name":"","property":"payload","action":"","pretty":false,"x":290,"y":1460,"wires":[["922397e8.1ade58"]]},
{"id":"922397e8.1ade58","type":"base64","z":"b512c254.cf355","name":"base64","action":"","property":"[Link]","x":420,"y":1460,"wires":[["54
0cd18a.54e19"]]},{"id":"540cd18a.54e19","type":"function","z":"b512c254.cf355","name":"parse Join","func":"gwid = [Link];\nif
(([Link][0]) === 0x00)\n{\n data = [Link];\n deveui = \"\";\n for (i=0; i<8; i++)\n {\n byte = data[9+i];\n
byteString = [Link](16);\n byteString = \"00\".substr(0, 2 - [Link]) + byteString;\n deveui = byteString + deveui;\n }\n [Link]
= {};\n [Link] = gwid;\n [Link] = deveui;\n [Link] = [Link];\n return
msg;\n}","outputs":1,"noerr":0,"x":570,"y":1460,"wires":[["558c7239.359d4c"]]},{"id":"558c7239.359d4c","type":"debug","z":"b512c254.cf355","name":"","ac
tive":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":750,"y":1460,"wires":[]},{"id":"c29c8178.64886","type":"mqtt-
broker","z":"","name":"","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"
","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]

17

Das könnte Ihnen auch gefallen