Beispiel: Loxone mit node-red auf rPi 3, influxDB und grafana (Visu)
Einklappen
X
-
Mit welchen Queries macht ihr denn die Statistiken? Da die Infos per Stream-In ja nur bei Änderung reinkommen habe ich teilweise sehr große Abstände zwischen den Daten. Z.B bei Sonnenschein früh um 6 eine 1 und erst abends um 20 Uhr eine 0. Wie bekomme ich das vernünftig in Grafana visualisiert? Mit fill(previous) hab ich leider keinen Erfolg.... -
-
Ich habe es mit einem Trigger in Verbindung mit einer Funktion, welche die Daten speichert, geloest.Kommentar
-
Noch frage
1. bei Node "Temperature" sind "Room" / "Category" leer , muss ich etwas auswahlen oder kann es auch so sein?
2. im "funktion" if (msg.room == "Outside") {
area = "Outside";
room = "";
} else {
area = "OG";
---
"room" muss genau so sein wie im "loxone" eingestelt? -
Richtig, msg.room ist der Name des Raums wie in der Loxone Config.
Wichtig ist, dass du bei dem loxone-stream-in Node auch die richtige Kategorie auswählst in welcher die Temperaturwerte angezeigt werden (in meinem Fall haben alle Temperaturfühler die Kategorie "Temperature"). Die Auswahl für den Raum hhabe ich leer gelassen, um alle Räume abzufragen.
Die Temperaturfühler müssen in der Visualisierung sichtbar sein. Ich habe bisher noch keinen Weg gefunden, wie es auch ohne funktioniert (eventuell geht das über die Berechtigungen).
Ich habe für meine beiden Stockwerke getrennte Miniserver und habe daher jeweils zweimal die Blöcke zum Abfragen der Temperaturen von allen Räumen. Den Daten weise ich dann noch einen "area" Tag in der InfluxDB zu wodurch ich zwischen EG, OG und Außenbereich unterscheiden kann.
Um zu verstehen, was der loxone-stream-in Node zurückgibt, kannst du sie auch direkt mit dem debug Node verbinden. Dann siehst du im Debug Tab rechts in Node-RED die Ausgabe.Zuletzt geändert von Programie; 04.01.2019, 05:51.
-
Hallo zusammen
Ich bin heute auf dieses Thema aufmerksam geworden. Ist ein sehr interessantes Thema, und vielen Dank allen, die hier so viel investiert haben! Genial!
Eigentlich wollte ich ja nur die Legionellen-Schaltung meines Boilers optimieren. Da ich per PV Überschuss den Boiler erwärme ist es oft nicht nötig, dass jede Woche noch einmal mit Nachtstrom der Boiler erhitzt wird... nach der erfolglosen Suche nach einem Gleitenden Maximal Wert Baustein in der Loxone Config oder ähnlichem, dachte ich es ist eh interessant die Boilertemperatur und andere Kennzahlen in eine DB zu speichern und auswertbar zu machen. Daher bin ich dann über viele Umwege hier gelandet.
Und ich habe soeben mein erster Flow zusammen gestückelt und in Grafana ein Dashboard der Boilertemperatur hingekriegt *hurra* - und das auf dem Raspbi obwohl ich ein totaler Microsoft Dude bin...
Das macht nun aber Lust auf mehr! PV Leistung, Überschuss etc... cool!
Eine Frage noch: in Grafana hab ich mal die Default Werte stehen gelassen bei der Definition der Metrics. Was ich mich sehr frage ist im SELECT das mean(). Scheinbar muss man eine Aggregation auswählen, ansonsten gehts nicht. Aber was wählt man da am besten, wenn man eigentlich einfach die Werte 1:1 aus der DB visualisieren will, ohne Durchschnitt oder so?
1 BildKommentar
-
Hi mpeyer ,
ich nehme bei meinen Visualisierungen bisher immer die Einträge "mean()" und darunter "Group By" raus. Einfach drauf klicken und "remove" auswählen.
Sollte für eine 1-zu-1 Darstellung meistens ausreichen.
Passt das?
GrüßeLoxone-Installation mit mehreren Extensions, Dimmer-Extension, DMX, 1-Wire (alles aktuell noch im Auslieferungszustand);
FritzBox, Netgear Plus Switch mit mehreren VLANs, Intel NUC mit VMWare ESXi 6.5 (pfSense, Loxberry, Kleinkram)Kommentar
-
Hi mpeyer ,
ich nehme bei meinen Visualisierungen bisher immer die Einträge "mean()" und darunter "Group By" raus. Einfach drauf klicken und "remove" auswählen.
Sollte für eine 1-zu-1 Darstellung meistens ausreichen.
Passt das?
Grüße
Ich habe das nun kurz getestet - einmal mit mean() und Group By und einmal mit 1-zu-1 Darstellung.
Siehe Anhang - oben 1-zu-1 Darstellung, unten mit mean(). Wenn man rein zoomt und die letzten 3 Stunden anschaut, sieht man kein Unterschied. Aber wenn man dann raus zoomt und man sagen wir mal horizontal viele Messpunkte auf kleiner Breite hat, so zeigt sich der Unterschied. Mir gefällt die Variante mit mean() viel besser - ich belass es also dabei.
Gruss
Marc1 BildKommentar
-
Hallo zusammen,
wie bekomme ich denn die Temperaturdaten in die influxdb? Mein Aufbau ist auf einer Synology folgendermaßen:
Docker mit Node-Red
Docker mit Influxdb
Docker mit grafana
Ich möchte nun die Temperatur von meiner Wärmepumpe, in influxdb schreiben. Aber irgendwie stehe ich auf dem Schlauch.
Aussentemperatur kommt mit folgenden Payload:
Aufbau sieht so aus:
Was muss ich denn nun in meassurement-Feld der influxdb eingaben?
Wenn ich etwas in Measurement eintrage, dann steht das wortwörtlich in der influxdb. Geht mir hier vielleicht noch etwas ab, oder muss die Temperaturwerte irgendwie aufbereiten?
Wäre für jede Hilfe dankbar!
Zuletzt geändert von telefonjoker; 16.09.2018, 16:17.Miniserver V2 14 RC, 5 x Extensions, 1 x Dimmer Ext., 1 x 1Wire Ext., 1 x DMX Ext, 1 x Air Ext., 1 x Tree Ext, 1 x Modbus Ext. 1x IO Ext.
Mobotix T24, 2 x Raspberry Pi 2, Youless Energiemonitor, Loxberry,
2 x Grundfoss Magma Umwälzpumpen mit 0-10V Anschluss und Modbus.
Bartl Wärmepumpe mit TEM-Steuerung und EBUS-Protokoll. EBUS-KopplerKommentar
-
Hi telefonjoker ,
willst Du nur einen einzigen Wert in die Datenbank schreiben?
Dann sende diesen Wert direkt als payload in den Influx-Node. Steht auch recht gut beschrieben in der Hilfe zum Node selbst.
Falls Du mehr als einen einzelnen Wert übermitteln willst, dann musst Du die Werte als Objekt mit mehreren Unterwerten (Properties) übergeben.
Das "Measurement" verstehe ich als Tabelle innerhalb der jeweiligen Datenbank, in welche Du Deine Werte ablegt. Die steht dann in der Tat genau mit den Namen dort. Die eigentlichen Werte sind dann in der Tabelle zu finden.
Ist das so verständlich für Dich?
--------------------------------------
Nachdem ich jetzt zum zweiten Mal Deine Nachricht gelesen habe, erscheint mir Dein Ansatz eigentlich recht sinnvoll und sollte nach meiner Ansicht auch funktionieren? Offenbar kommt ja auch was in Deiner Influx-DB an, sonst hättest Du ja die Measurements nicht gefunden. Was stehen denn da für Werte drin?
--------------------------------------
GrüßeZuletzt geändert von Riesenschnabel; 16.09.2018, 21:59.Loxone-Installation mit mehreren Extensions, Dimmer-Extension, DMX, 1-Wire (alles aktuell noch im Auslieferungszustand);
FritzBox, Netgear Plus Switch mit mehreren VLANs, Intel NUC mit VMWare ESXi 6.5 (pfSense, Loxberry, Kleinkram)Kommentar
-
Denkt bitte dran, dass die Werte in der Influx im richtigen Datentyp vorliegen müssen. Einen String kann man nicht visualisieren.
Man erkennt das im Debug-Node daran, dass Zahlen (Float, Integer) blau geschrieben sind. Mit einem function-node oder mit https://flows.nodered.org/node/node-...ntrib-simplejs kann man einen eventuellen String einfach konvertieren.Zuletzt geändert von pmayer; 23.09.2018, 00:38.Kommentar
-
Programie habe die Funktionen wie von dir unter #33.2 gepostet verwendet. Funktioniert wunderbar und kommt in influx an. Nun aber die Frage zu Grafana. Muss man da nun alle Räume einzeln hinzufügen mit WHERE Klauseln auf die Tags wie ich das beispielsweise für drei Räume im Screenshot gemacht habe? Oder gibts da noch eine einfachere / elegantere Variante?1 BildKommentar
-
Hallo zusammen
Haben den Beitrag entdeckt und bin nun ebenfalls ein wenig am Testen mit der Kombination node-red, influxDB und grafana.
Im node-red verwende ich den Baustein "control in" um die Werte auszulesen.
Für den Test verwende ich nun folgende zwei Komponenten:
- Temp. Sensor eines Touch Tasters
- aktueller Verbrauch vom ModBus
Mir ist nun aufgefallen, dass node-red immer nur die Änderungen an influxDB sendet.
Beim Verbrauch über den ModBus sind das nun 10s Intervalle.
Ist diese hohe anzahl an Änderungen ein Problem für den Miniserver?
Die SD Karte wird ja nicht belastet, jedoch allenfalls der Prozessor oder der Arbeitsspeicher?
Ist diese Auslesung vom Miniserver unproblematisch oder gäbe es eine bessere Lösung?
Ist es allenfalls möglich dies Auslesezeit zu ändern?Kommentar
-
Alle 10 Sekunden ist überhaupt kein Problem. Du kannst es auch auf jede Sekunde stellen.Node-RED mit influxDB und Grafana - z.B. Statistiken auslagern:
https://www.loxforum.com/forum/germa...d-grafana-visu
Mit Loxone einen Windows-PC steuern:
https://www.loxforum.com/forum/faqs-...indows-steuernKommentar
-
Danke für die Info, hätte gedacht, dass die Abfragen Loxone belastet.
Die Zeit der Abfragen verstelle ich in der Lox Config? Bei node-red kann ja nichts verstellt werden.
Wo speichert Ihr eure Daten auf dem Raspberry? Macht es sinn die Daten auf ein USB-Stick zu speichern um die SD des Raspberry zu schonen?Kommentar
-
Gibt es eine Möglichkeit Grafana ohne root Rechte zu installieren?
Habe einen Server bei All-Inkl und da habe ich keine root Rechte.
Danke für eine Info.FG
Lightpicture
Nur ein Netzwerkkabel ist richtiges WLANKommentar
-
Kannst du docker container starten?
Verusch doch mal dies - http://docs.grafana.org/installation/docker/Node-RED mit influxDB und Grafana - z.B. Statistiken auslagern:
https://www.loxforum.com/forum/germa...d-grafana-visu
Mit Loxone einen Windows-PC steuern:
https://www.loxforum.com/forum/faqs-...indows-steuernKommentar
Kommentar