FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: superverbleit am 26 April 2021, 22:32:53

Titel: Readings manipulieren mit userReadings
Beitrag von: superverbleit am 26 April 2021, 22:32:53
Hallo Zusammen,

ich bekomme von einem Aktor (KNX) Analogwerte, die einem Wasserdruck, bzw. einer Höhe (Pegel entsprechen).
Jetzt habe ich mich eine Weile im Inet eingelesen und mich mit dem Attribute userReadings befasst.

Was ich will, sind die Werte (0..255), die vom KNX Aktor kommen mit 1.5686275 zu multiplizieren, dann erhalte ich den Wasserpegel in cm.
Diesen will ich per webCmd anzeigen lassen.
Ist das mit userReadings der richtige Ansatz?

Wert in cm ist völlig ausreichend, Nachkomma kann also ignoriert werden.

Mein Ansatz:

attr Aussenbereich.Wasserpegel.Zisterne userReadings Zisternenpegel {ReadingsVal("Aussenbereich.Wasserpegel.Zisterne","Ist-Pegel",0)*1.5686275 ." cm"}


Weitere Infos:

Readings
Ist-Pegel-get 168 2021-04-26 22:28:37
Zisternenpegel 0 cm 2021-04-26 22:28:37
last-sender 1/1/47 2021-04-26 22:28:37
state 168 2021-04-26 22:28:37

Ich bekomme leider immer 0, richtiges Ergebnis wäre 168*1,5686275 = 263cm

Kann mir hier jemand weiterhelfen?
Danke schon mal.

Gruß
Titel: Antw:Readings manipulieren mit userReadings
Beitrag von: Otto123 am 26 April 2021, 22:35:51
Hi,

einfach Schreibfehler?
attr Aussenbereich.Wasserpegel.Zisterne userReadings Zisternenpegel:Ist-Pegel-get:.* {ReadingsNum($name,"Ist-Pegel-get",0)*1.5686275 ." cm"}

Gruß Otto
Titel: Antw:Readings manipulieren mit userReadings
Beitrag von: superverbleit am 27 April 2021, 11:47:53
Hey,

vielen Dank.
Funktioniert. Hab es jetzt noch mit sprintf auf 2 Nachkommastellen umformatiert.

attr Aussenbereich.Wasserpegel.Zisterne userReadings Zisternenpegel:Ist-Pegel-get:.* {sprintf("%.2f cm",ReadingsNum($name,"Ist-Pegel-get",0)*1.5686275)}.

Hat mir noch jemand einen Tipp, wie ich das userReading Zisternenpegel per webCmd ausgeben kann.
Titel: Antw:Readings manipulieren mit userReadings
Beitrag von: Otto123 am 27 April 2021, 11:51:58
Zitatwie ich das userReading Zisternenpegel per webCmd ausgeben kann.
Ich versuche mal den Sinn dahinter zu erraten: Du meinst stateFormat?
Also im einfachsten Fall:
attr Aussenbereich.Wasserpegel.Zisterne stateFormat Zisternenpegel
Titel: Antw:Readings manipulieren mit userReadings
Beitrag von: superverbleit am 27 April 2021, 13:04:35
Cool, genau das, was ich gesucht habe. :)
Vielen vielen Dank.