NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
-
Also erst mal Visualisierung Bar Gauge und dann 4 Queries:
Jahr
from(bucket: "ioBroker") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Regen_Jahr" and r._field == "value" )
Monat
from(bucket: "ioBroker") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Regen_Monat" and r._field == "value" )
Woche
from(bucket: "ioBroker") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Regen_Woche" and r._field == "value" )
Tag
from(bucket: "ioBroker") |> range(start: v.timeRangeStart, stop:v.timeRangeStop) |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Regen_Tag" and r._field == "value" )
Und dann die settings & Overrides:
Die Max Werte mußt du halt so wählen damit es dann auch passt, z.B. beim Jahr hab ich 900 als max Wert genommen, das kann natürlich abhängig von deiner Region, wie oft und wieviel es da regnet, auch zu hoch sein. Ich habe noch kein ganzes Jahr gelogged, deshalb hab ich es mal auf 900 gesetzt.
-
@tritor sagte in [Linux Shell-Skript] WLAN-Wetterstation:
na dann stellen sich folgende Fragen:
- deine Datensource (Bucket) heisst: iobroker (hast du zumindest geändert)
- deine WetterstionsDPs sind alle unter 0_userdata.0 oder sind die unter javascript.0.Wetterstation....
- die Datenpunkte sind bei dir genauso vorhanden
Sonst kann ich es mir nicht erklären, wo es sonst noch haken könnte.
Ja, alles unter 0_userdata.0, DP vorhanden und auch befüllt. Aber ohne die ....__10min funktioniert es.
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@Nashra
Du hast wahrscheinlich keine Daten im Bucket. Wenn es relativ Windstill ist oder sich die Richtung im 10 Minutenraster nicht ändert, steht kaum was in der DB.
Entweder musst du beim loggen bspw. jede Stunde mal das schreiben eines Wertes erzwingen, oder die aktuellen Werte nutzen (also nicht den 10 Minuten Durchschnitt):from(bucket: "${DatenBucket}") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung" or r._measurement == "0_userdata.0.Wetterstation.Wind") |> filter(fn: (r) => r._field == "value") |> pivot(rowKey:["_time"], columnKey: ["_measurement"], valueColumn: "_value") |> filter(fn: (r) => exists r["0_userdata.0.Wetterstation.Windrichtung"] and exists r["0_userdata.0.Wetterstation.Wind"]) |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung": "wind_direction", "0_userdata.0.Wetterstation.Wind": "wind_speed"}) |> map(fn: (r) => ({ r with direction: r.wind_direction})) |> map(fn: (r) => ({ r with speed: r.wind_speed})) |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
Moin, die ..._10min rausgenommen und läuft. Obwohl Daten ohne Ende in den Datenpunkten.
Schau mir das am Wochenende mal genau an, da habe ich mehr Zeit. -
@nashra Kommt halt auf beide DPs an. Bei mir sah bspw. gestern die 10 Min Windrichtung so aus (also bis kurz vor Mitternacht ein einziger Wert; ich erzwinge hier kein zusätzliches schreiben):
Man muss für die Anzeige nicht unbedingt den 10 Minutenwert nehmen, sondern erhöht einfach bei der Abfrage #10 das aggregieren auf 10 Minuten, hat den gleichen Effekt, umgeht aber das Problem zu wenig Werte zu haben.
aggregateWindow(every: 10m0s, fn: first, column: "direction", createEmpty: true)
-
@chris76e
Du musst im Plugin noch auf "km/h" umstellen, denn der gelieferte Wert ist nicht "m/s"btw: das "unschöne" Datenpunktwirrwarr bei der Temperatur kannst du umgehen:
Zeile #5 einfügen (value natürlich anpassen ) :|> set(key: "_field", value: "Aussen")
Dann in den Optionen eintragen:${__field.name}
(sind wirklich zwei Unterstriche)
Dann noch bei den "Overrides" eintragen:${__field.name}
und die neue Datenquelle auswählen.
Sollte die noch nicht in der Liste auftauchen, Panel speichern, schließen und Panel erneut zum editieren öffnen, dann sollte es nun auch in der Liste auftauchen. -
@tritor sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Regen_Woche
Danke, hat funktioniert
Danke für die Hinweise, ist geändert
-
Bekommt man das neue Windrose Panel auch mit InfluxQL zum Laufen? Bei mir wird nichts angezeigt.
Hier steht:
Habe meine beiden Datenreihen wind_speed und wind_direction genannt. -
hier wie mein komplettes Grafana Dashboard aussieht:
-
@tritor Hallo Gernot,
ich fange gerade an mich mit Grafana zu beschäftigen. Könntest du die Datei für dein Dashboard hier posten?Vielen Dank
Martin
-
-
Das ist der inhalt von deinem json
{ "error": { "message": "Datasource 000000001 was not found" } }
da fehlt wohl was
-
@chris76e
udpate im obigen post -
Danke
-
@tritor
Danke. -
@rushmed sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bekommt man das neue Windrose Panel auch mit InfluxQL zum Laufen?
Ich würde sagen ja, denn die Datenbank (und Abfragesprache) ist irrelevant. Im Beispiel nutzen sie auch SQL.
Hast du beim Query mal geschaut ob da dann auch wirklich Daten kommen und die Überschrift wie gefordert "wind_..." heißt? Nicht das der Datenpunkt dann tatsächlich xyz.0.Wetterstation.wind_xxx lautet. -
@sborg Ich weiß nicht wos klemmt. Vll. kannste mal nen Blick auf meine Einstellungen werfen?
-
@rushmed Ich sehe da auch nichts verdächtiges und sieht soweit gut aus.
Ich weiß nicht wie Grafana den Alias handelt. Beim Query zeigt er zwar korrekt den Alias an, aber wie handelt er das intern?
Beim Plugin sprechen sie von einer Variablen. Nicht das er zwar den Alias anzeigt, aber ihn dann gar nicht benutzt und es intern weiter 0_userdata/javascript.x.Wetterstation.wind... lautet.Hast du auf dem ioB-Rechner temporär noch Ressourcen frei?
Dann lege doch mal spaßeshalber noch eine neue InfluxDB-Instanz an und logge dort die Windgeschwindigkeit und -richtung, nutze aber beim loggen die Alias-Funktion der Influx-Instanz als wind_... und nimm dann die beiden mal als Datenquelle für das Windrose-Plugin.
-
@sborg Danke für die Antwort. Ich habs mit zwei entsprechend benannten Alias Datenpunkten probiert. Hat leider nicht geklappt. Ist aber nich so wichtig, Das alte Windrose Panel funzt ja noch.
-
@rushmed Schade, aber nur Versuch macht Kluch