NEWS
Heizkurve visualisieren
-
Hallo zusammen,
ich benutze zur Visualisierung von Messwerten Grafana. Ich habe nun vor, die Heizkurve meiner Gastherme (Wolf, mit Adapter in iobroker eingebunden) zu visualisieren, scheitere aber an Grafana. Es ist ja eben keine Serie an Daten die visualisiert werden sollen, sondern die Verknüpfung aus Normaußentemperatur, max. Vorlauf, Startpunkt Heizkurve etc.
Eine einfache Grafik möchte ich nicht einbinden, sondern am liebsten einen dynamischen Graphen, der sich verändert wenn ich einzelne Werte verändere.
Gibt es dafür evtl eine fertige Lösung? Oder eine Idee, wie ich das in Grafana umsetzen kann? Es müssen auch keine gekrümmten Linien sein, mir würde eine gerade Linie reichen.
Anbei ein Beispiel, falls Heizkurve kein Begriff sein sollte:

Danke für eure Hilfe!
-
Hallo zusammen,
ich benutze zur Visualisierung von Messwerten Grafana. Ich habe nun vor, die Heizkurve meiner Gastherme (Wolf, mit Adapter in iobroker eingebunden) zu visualisieren, scheitere aber an Grafana. Es ist ja eben keine Serie an Daten die visualisiert werden sollen, sondern die Verknüpfung aus Normaußentemperatur, max. Vorlauf, Startpunkt Heizkurve etc.
Eine einfache Grafik möchte ich nicht einbinden, sondern am liebsten einen dynamischen Graphen, der sich verändert wenn ich einzelne Werte verändere.
Gibt es dafür evtl eine fertige Lösung? Oder eine Idee, wie ich das in Grafana umsetzen kann? Es müssen auch keine gekrümmten Linien sein, mir würde eine gerade Linie reichen.
Anbei ein Beispiel, falls Heizkurve kein Begriff sein sollte:

Danke für eure Hilfe!
@loemic Ich komme der Sache näher.
Ich habe das Plugin "Plotly-Panel" installiert: https://grafana.com/grafana/plugins/ae3e-plotly-panel/Konfiguration Layout:
{ "xaxis": { "type": "number", "autorange": "reversed" } }Script:
const xData = Array.from({length:35},(v,i)=>20-i); const paraV = data.series[0].fields[1].values.buffer[0]; const endpunkt = data.series[1].fields[1].values.buffer[0]; const abwRL = data.series[2].fields[1].values.buffer[0]; const rtSoll = paraV; const neigung = (endpunkt-rtSoll) / (rtSoll+15); const niveau = abwRL; const yData = xData.map(x => { const dar = (x - rtSoll); return rtSoll + niveau - neigung * dar * (1.4347 + 0.021 * dar + 247.9 * 10E-6 * Math.exp(dar,2)); } ); var trace = { x: xData, y: yData }; return {data:[trace],layout:{title:'My Chart'}};Die Werte kommen in drei Datenserien rein (exemplarisch eine als Screenshot):

Die Formel stammt von hier: https://www.viessmann-community.com/t5/Gas/Mathematische-Formel-fuer-Vorlauftemperatur-aus-den-vier/m-p/68890#M27556
Bei der Berechnung der Neigung bin ich mir noch nicht gant klar, wie die korrekt sein muss.
Das Ergebnis sieht so aus:

-
@loemic Ich komme der Sache näher.
Ich habe das Plugin "Plotly-Panel" installiert: https://grafana.com/grafana/plugins/ae3e-plotly-panel/Konfiguration Layout:
{ "xaxis": { "type": "number", "autorange": "reversed" } }Script:
const xData = Array.from({length:35},(v,i)=>20-i); const paraV = data.series[0].fields[1].values.buffer[0]; const endpunkt = data.series[1].fields[1].values.buffer[0]; const abwRL = data.series[2].fields[1].values.buffer[0]; const rtSoll = paraV; const neigung = (endpunkt-rtSoll) / (rtSoll+15); const niveau = abwRL; const yData = xData.map(x => { const dar = (x - rtSoll); return rtSoll + niveau - neigung * dar * (1.4347 + 0.021 * dar + 247.9 * 10E-6 * Math.exp(dar,2)); } ); var trace = { x: xData, y: yData }; return {data:[trace],layout:{title:'My Chart'}};Die Werte kommen in drei Datenserien rein (exemplarisch eine als Screenshot):

Die Formel stammt von hier: https://www.viessmann-community.com/t5/Gas/Mathematische-Formel-fuer-Vorlauftemperatur-aus-den-vier/m-p/68890#M27556
Bei der Berechnung der Neigung bin ich mir noch nicht gant klar, wie die korrekt sein muss.
Das Ergebnis sieht so aus:

-
@loemic Ich komme der Sache näher.
Ich habe das Plugin "Plotly-Panel" installiert: https://grafana.com/grafana/plugins/ae3e-plotly-panel/Konfiguration Layout:
{ "xaxis": { "type": "number", "autorange": "reversed" } }Script:
const xData = Array.from({length:35},(v,i)=>20-i); const paraV = data.series[0].fields[1].values.buffer[0]; const endpunkt = data.series[1].fields[1].values.buffer[0]; const abwRL = data.series[2].fields[1].values.buffer[0]; const rtSoll = paraV; const neigung = (endpunkt-rtSoll) / (rtSoll+15); const niveau = abwRL; const yData = xData.map(x => { const dar = (x - rtSoll); return rtSoll + niveau - neigung * dar * (1.4347 + 0.021 * dar + 247.9 * 10E-6 * Math.exp(dar,2)); } ); var trace = { x: xData, y: yData }; return {data:[trace],layout:{title:'My Chart'}};Die Werte kommen in drei Datenserien rein (exemplarisch eine als Screenshot):

Die Formel stammt von hier: https://www.viessmann-community.com/t5/Gas/Mathematische-Formel-fuer-Vorlauftemperatur-aus-den-vier/m-p/68890#M27556
Bei der Berechnung der Neigung bin ich mir noch nicht gant klar, wie die korrekt sein muss.
Das Ergebnis sieht so aus:

@thopark sagte in Heizkurve visualisieren:
Bei der Berechnung der Neigung bin ich mir noch nicht gant klar
Die Steilheit (im Fußpunkt) kann man anhand der Auslegungstemperaturen für die Heizung berechnen:
- ATA - Außentemperatur z.B. -14 °C
- VTA - Vorlauftemperatur z.B. 70 °C
- FP - Fußpunkt meist 20 °C
- HE - Heizflächenexponent z.B. 1,33 (Radiatoren)
Steilheit = (VTA - FP) / ((FP - ATA)^(1/HE))
Steilheit = 3,53 mit den Beispielwerten.Die Vorlauftemperatur(VT) kann man aus der Außentemperatur(AT) und dem Raumtemperatursollwert(RT) errechnen:
VT = RT + Steilheit * (RT - AT)^(1/HE)EDIT: In Javascript:
const ATA = -14; const FP = 20; const VTA = 70; const HE = 1.33; const s = (VTA - FP) / Math.pow(FP - ATA, 1/HE); var AT = 0; var RT = 22; var VT = RT + s * Math.pow(RT - AT, 1/HE); -
Hallo zusammen,
ich benutze zur Visualisierung von Messwerten Grafana. Ich habe nun vor, die Heizkurve meiner Gastherme (Wolf, mit Adapter in iobroker eingebunden) zu visualisieren, scheitere aber an Grafana. Es ist ja eben keine Serie an Daten die visualisiert werden sollen, sondern die Verknüpfung aus Normaußentemperatur, max. Vorlauf, Startpunkt Heizkurve etc.
Eine einfache Grafik möchte ich nicht einbinden, sondern am liebsten einen dynamischen Graphen, der sich verändert wenn ich einzelne Werte verändere.
Gibt es dafür evtl eine fertige Lösung? Oder eine Idee, wie ich das in Grafana umsetzen kann? Es müssen auch keine gekrümmten Linien sein, mir würde eine gerade Linie reichen.
Anbei ein Beispiel, falls Heizkurve kein Begriff sein sollte:

Danke für eure Hilfe!
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden