Werte in Influx werden nicht richtig erkannt

Wenn mehr als ein Gerät an den Raspberry angeschlossen werden sollen. Z.B. ein Regler und ein Wechselrichter oder mehrere Wechselrichter. Das Maximum sind 6 Geräte pro Raspberry Pi.

Moderator: Ulrich

Antworten
me1975
Beiträge: 2
Registriert: Sa 31. Jul 2021, 07:33

Werte in Influx werden nicht richtig erkannt

Beitrag von me1975 »

Hallo erst mal,
hab mir solaranzeige installiert und bin erst mal begeistert wie gut das läuft, leider mit einem Wermutstropfen:
Per MQTT versuche ich die aktuelle Leitung meiner Wärmepumpe darzustellen.
Die Werte kommen in Influx an, könne in Grafana aber nicht richtig ausgewertet werden.
Nach langem suchen habe ich nun die Vermutung (besser Befürchtung), dass die Werte als STRING und nicht als FLOAT in die Datenbank geschrieben werden.
Hier stoße ich nun an meine Grenzen weil ich keine Idee mehr habe wie ich die Werte im richtigen Format in INFLUX bekomme.
Die Daten der Wärmepumpe werden über einen s0 Zähler an meinen Loxone miniserver übergeben und von dort über das MQTT Gateway im Loxberry an das MQTT Topic (zB: solaranzeige/anzeige/1/wpc) geschickt.
Die Daten sind dann auch in Influx zu finden, aber eben als String:
name: MQTT
fieldKey fieldType
-------- ---------
wpc string
wpp string

(WPC ist der Zähler, wpp die leistung)

Hat jemand eine Idee wie ich das lösen kann oder wie ich sonst die Daten der WP in die Datenbank bringe.
Die Daten werden auch von der openwb per MQTT ausgegeben, vielleicht kann ich die Daten ja darüber in Influx bringen.

me1975
Beiträge: 2
Registriert: Sa 31. Jul 2021, 07:33

Re: Werte in Influx werden nicht richtig erkannt

Beitrag von me1975 »

Habe es inzwischen weiter versucht und komme partout nicht weiter.

Da ich dachte, dass Loxone hier im falschen Format ausgibt habe ich nun folgendes konfiguriert:
Den lokale MQTT Broker der Solaranzeige habe ich nun aktiviert.
Dann habe lokal ich eine MQTT Brücke angelegt die mir die gewünschten Topics der Openwb, die die Wärmepumpe betreffen so umwandelt dass Sie von der Solaranzeige erfasst werden.

Aus openWB/SmartHome/Devices/1/Watt wird dadurch solaranzeige/anzeige/1/Watt -> das funktioniert schonmal

Die Werte kommen also nicht mehr aus Loxone sondern aus der openwb

Dann habe ich in Influx die Messdaten zu MQTT gelöscht (drop measurement MQTT) das hat auch funktioniert die Werte waren verschwunden.

Danach hat sich die Datenbank wieder gefüllt, MQTT als measurement taucht wieder auf.

Leider bleibt das Ergebnis das gleiche, über die Abfrage in Influx hat das MQTT wieder den Field Type string und damit kann grafana wohl nichts anfangen.
Hier ein Teil der Ausgabe von show Field Keys:

name: MQTT
fieldKey fieldType
-------- ---------
DailyYieldKwh string
OnCntStandby string
OnCountNor string
RelayStatus string
RunningTimeToday string
Status string
WHImported_temp string
Watt string
Wh string

name: PV
fieldKey fieldType
-------- ---------
Gesamtleistung float
Leistung_Str_1 float
Leistung_Str_2 float
Leistung_Str_3 float
Spannung_Str_1 float
Spannung_Str_2 float
Spannung_Str_3 float
Strom_Str_1 float
Strom_Str_2 float
Strom_Str_3 float

Man sieht, dass bei MQTT alles als string gekennzeichnet ist, die werte aus PV allerdings haben alle den Typ float.

Die Daten die in der Datenbank stehen sehen an sich gut aus:
> select * from MQTT order by time desc limit 10
name: MQTT
time DailyYieldKwh OnCntStandby OnCountNor RelayStatus RunningTimeToday Status WHImported_temp Watt Wh
---- ------------- ------------ ---------- ----------- ---------------- ------ --------------- ---- --
1640683576000000000 15385320000
1640683575000000000 15385320000
1640683574000000000 4273700
1640683573000000000 4273700
1640683561000000000 2.26 0 0 0 0 10 15385305600 1080 4273696
1640683551000000000 15385294800
1640683550000000000 15385294800
1640683549000000000 4273693
1640683548000000000 4273693
1640683538000000000 15385280400



Da ich nun auf 2 verschiedene Arten meine MQTT werte in die Datenbank bringen wollte und jedes Mal die Zahlen nicht als Zahlen gespeichert werden vermute ich, dass ich irgendwo in Solaranzeige einen Fieldtype angeben muss, nur wo?

Benutzeravatar
Ulrich
Administrator
Beiträge: 2990
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 38 Mal
Danksagung erhalten: 193 Mal
Kontaktdaten:

Re: Werte in Influx werden nicht richtig erkannt

Beitrag von Ulrich »

Bei MQTT Daten wird alles als String gesendet und auch so abgespeichert. Du musst also bei der Darstellung in Grafana sagen, um welchen Datentyp es sich handelt. Dazu gibt es aber hier im Forum schon Lösungen. Ich kann dir aus dem Kopf leider nicht sagen, wo die zu finden sind.
--------------------------------------
Ulrich [Admin]

Antworten