Seite 1 von 1

Anzeige der Werte

Verfasst: 6. Okt 2023 18:30
von EMaster
Hallo Zusammen,

ich habe mal wieder eine kleine Herausforderung.
Mein ModBus-Zähler liefert mir die Gesamtleistung als Wert in kW/100.
Im Item habe ich nun unter Metadate als Unit kW/100 und als State Description %.1f kW eingetragen.
OH_Item.png
Im UI wird mir der Wert nun korrekt als (Bsp.) 0.3kW angezeigt. Wenn ich auf Analyze klicke, wird mir 300 (entsprechend auch die Skala) und als Einheit kW/100 angezeigt, was eher unschön ist.
OH_Analyze.png
Im HABpanel wird mir stattdessen mit entsprechender Konfiguration 30.00kW angezeigt.
OH_HABP_Konfig.png
Wie schaffe ich es denn, hier einen korrekten Wert in allen Anzeigen hinzubekommen?

Danke

Re: Anzeige der Werte

Verfasst: 6. Okt 2023 19:46
von udo1toni
Es gibt keine Einheit kW/100, wohl aber daW (DekaWatt).

Falls es mit daW nicht direkt funktioniert (daW ist "etwas" exotisch...) kannst Du mit Sicherheit da*W schreiben, das sollte dann auf jeden Fall funktionieren.

Hint: Die unit vom Channel wird auf den gelieferten Wert eingestellt. Die unit in dem Metadaten vom Item selbst stellst Du auf eine sinnvolle Einheit ein, in der der Wert sowohl in Charts (Persistence) als auch beim Unit-Stripping (wenn Du in einer Rule den reinen Zahlenwert haben möchtest) geliefert wird.
Und schließlich setzt Du ebenfalls über die Item Metadaten noch die State Description (und dort das Pattern) um die in der UI angezeigte Einheit zu setzen. Alle drei Einheiten sind voneinander unabhängig, sie müssen nur zur gleichen Messgröße passen (z.B. d°F vom Sensor, K im Item und °C in der UI). Naturgemäß muss die Unit des Channels zur gelieferten Größe passen und darf, einmal korrekt konfiguriert, nicht mehr geändert werden. Genauso darf die Unit des Items auch nicht mehr geändert werden, wenn man sie mal wunschgemäß gesetzt hat, sonst kommt es in Charts zu Sprüngen.
Die State Description kannst Du aber jederzeit nach Belieben anpassen.

Achtung! die State Description wirkt nicht an allen Stellen in der Admin-UI.

Re: Anzeige der Werte

Verfasst: 6. Okt 2023 20:20
von mad-mike
Moin, ich habe die Werte mit Tranform in der Thing datei angepasst:

Code: Alles auswählen

        Thing data PV_total "PV_total"                    [ readStart="2", readValueType="uint16", readTransform="JS:komma.js"]      
in der komma.js ist folgendes Enthalten:

Code: Alles auswählen

(function(i) {
    return parseFloat(i) / 10
})(input)
mein Modbus gelieferten Werte müssen durch 10 geteilt werden...

und die Einheit habe ich im Item eingefügt:

Code: Alles auswählen

Number PV_total "PV total [%.1f W]" <solarplant> (gGrowatt) {channel="modbus:data:tcpBridge:inputPoller2:PV_total:number"}