Hallo liebes Forum,
ich habe eine UPXNBOR Steckdose gekauft und über das Tuya-Binding eingebunden. Soweit funktioniert auch alles, nur der Verbrauch wird falsch anzeigt. Anstelle von 125 W bekomme ich 1250 W angezeigt. Wie kann ich in Openhab 5.1.0 den Wert am einfachsten durch 10 dividieren ?
Grüße
Rudi
falscher Verbrauchswert von Steckdose
Moderator: seppy
-
Harka
- Beiträge: 594
- Registriert: 30. Apr 2021 13:13
Re: falscher Verbrauchswert von Steckdose
Moin,
Du kannst über das Profil (ist die Ebene zwischen Channel und Item) noch eine Transformation vornehmen. Das geht mit allen unterstützen Sprachen.
Mit "SCRIPT Rule DSL (v1)" kannst Du unter "Thing zu Item Transformation" und
oder "SCRIPT ECMAScript (ECMAScript 262 Edition 11)" versuchen.
Du kannst über das Profil (ist die Ebene zwischen Channel und Item) noch eine Transformation vornehmen. Das geht mit allen unterstützen Sprachen.
Mit "SCRIPT Rule DSL (v1)" kannst Du unter "Thing zu Item Transformation"
Code: Alles auswählen
|Float.parseFloat(input) * 0.1oder "SCRIPT ECMAScript (ECMAScript 262 Edition 11)"
Code: Alles auswählen
|parseFloat(input)*0.1- udo1toni
- Beiträge: 15656
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: falscher Verbrauchswert von Steckdose
Wie ist das Thing angelegt? Kannst Du in der Konfiguration auf die Channel zugreifen? Wird die Leistung mit Unit übergeben? (direkt in ein Number:Power Item) Falls ja, sollte es ausreichen, als Unit "dW" anzuheben, also Deziwatt, womit das Komma um eine Stelle nach links verschoben wird. Das geht aber nur direkt im Channel, weil es die übergebene Unit betrifft.
openHAB5.1.3 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.6 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte
Hostsystem Proxmox VE 9.1.6 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte
-
ruab01
- Beiträge: 21
- Registriert: 8. Mär 2021 15:48
Re: falscher Verbrauchswert von Steckdose
Hallo,
danke für eure Antworten. Ich habe zuerst beim Item die Unit auf dW geändert, dann wird wieder der gleiche Wert (statt 125 1250) mit dW angezeigt, aber nicht auf W umgerechnet.
Danach habe ich die Variante
"SCRIPT ECMAScript (ECMAScript 262 Edition 11)"
|parseFloat(input)*0.1
beim Thing eingestellt und nun wird der Wert richtig angezeigt.
SG
Rudi
danke für eure Antworten. Ich habe zuerst beim Item die Unit auf dW geändert, dann wird wieder der gleiche Wert (statt 125 1250) mit dW angezeigt, aber nicht auf W umgerechnet.
Danach habe ich die Variante
"SCRIPT ECMAScript (ECMAScript 262 Edition 11)"
|parseFloat(input)*0.1
beim Thing eingestellt und nun wird der Wert richtig angezeigt.
SG
Rudi
- udo1toni
- Beiträge: 15656
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: falscher Verbrauchswert von Steckdose
tldr;ruab01 hat geschrieben: Gestern 22:10 Ich habe zuerst beim Item die Unit auf dW geändert, dann wird wieder der gleiche Wert (statt 125 1250) mit dW angezeigt, aber nicht auf W umgerechnet.
Ich hatte explizit darauf hingewiesen, dass die Unit im Channel gesetzt werden muss
Lange Version:
Unit im Channel -> Bestimmt, in welcher Einheit der Channel die Daten erhält. Muss passend zu den gelieferten Daten eingestellt werden.
Unit im Item -> Bestimmt, in welcher Einheit der Wert im Item gehalten wird. Dies beeinflusst auch, in welcher Einheit der Wert in der Persistence gespeichert wird - deshalb darf diese Unit nur gesetzt werden, wenn es noch keine persistierten Daten gibt.
Unit im Label (bzw. State Description Pattern) -> bestimmt, in welcher Einheit der Wert dargestellt wird. Diese Unit kann beliebig oft geändert werden, da sie nur die Darstellung betrifft.
openHAB5.1.3 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.6 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte
Hostsystem Proxmox VE 9.1.6 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte