Hallo,
ich bin einfach zu blöd. Ich probiere gerade meine Wetterdaten zu optimieren und möchte mit Statistics Min/Max abbilden. Aber egal wie ich es anstelle ich bekomme die MIN oder MAX Daten nicht rein.
Hier mal mein Device:
Internals
DEF 1/0/4:dpt9:Luftdruck
DEVNAME WET_LOG_Luftdruck
FIRSTGADNAME Luftdruck
FUUID 61858e1b-f33f-3e4f-59ea-bfb5706a5d564eed
GETSTRING Luftdruck:noArg
IODev KNX
KNX_MSGCNT 83
KNX_RAWMSG C0210ap010046cc3
KNX_TIME 2022-06-08 19:23:37
LASTInputDev KNX
MSGCNT 83
NAME WET_LOG_Luftdruck
NR 325
SETSTRING Luftdruck:slider,-670760,13415,670760
STATE 998.60
TYPE KNX
model dpt9
Dazu die Statistik:
Internals
CFGFN
DEF WET_LOG_Luftdruck Wetter
DEV_REGEXP WET_LOG_Luftdruck
FUUID 62a0f838-f33f-3e4f-89f5-d67bd25f8ad9025d
NAME Statistik_Wetter
NOTIFYDEV global,WET_LOG_Luftdruck
NR 6358
NTFY_ORDER 10-Statistik_Wetter
PREFIX Wetter
STATE Updated stats for: WET_LOG_Luftdruck
TYPE statistics
Dazu haben ich folgende Attribute angelegt.
Attributes
deltaReadings Luftdruck
singularReadings WET_LOG_Luftdruck:Luftdruck:Delta:(Hour|Day)
Scheitert das ganze am GeräteWertRegExp "Luftdruck". ICh habs auch mit dem Standart, zum Beispiel Power probiert. Ohne Erfolg.
Vielleicht kann mir noch einer Helfen.
Gruß
Guten Morgen,
naja, wenn du Min/Max haben willst, solltest du das auch angeben statt dem Delta:
Falsch:
deltaReadings Luftdruck
singularReadings WET_LOG_Luftdruck:Luftdruck:Delta:(Hour|Day)
Richtig:
minAvgMaxReadings Luftdruck
singularReadings WET_LOG_Luftdruck:Luftdruck:(Min|Max):(Hour|Day)
lg, Stefan
PS: Heisst das reading wirklich "Luftdruck"......Standard wäre ja eher "pressure"??
Guten Morgen,
Habe schon alles Probiert. Min Max,.... Leider ohne Erfolg. Reading heißt wirklich Luftdruck bei mir.
Gruß
kannst du bitte mal ein list WET_LOG_Luftdruck posten?
ich vermute dein reading heisst "Luftdruck-get" - das könnte man in der KNX-definition ändern.... so dass es nur "Luftdruck" oder "pressure" oder ... heisst
l.g.erwin
Hallo Erwin
Ja du hast recht. D.h. tatsächlich so. Bin gerade unterwegs kann das nachher noch posten.Wie könnte ich das denn in der KNX Konfiguration ändern? Hatte an den Gedanken gestern schon mal gedacht aber irgendwie wieder verworfen.
Hallo Erwin,
wie besprochen hier mal die Liste;
Internals:
DEF 1/0/4:dpt9:Luftdruck
DEVNAME WET_LOG_Luftdruck
FIRSTGADNAME Luftdruck
FUUID 61858e1b-f33f-3e4f-59ea-bfb5706a5d564eed
GETSTRING Luftdruck:noArg
IODev KNX
KNX_MSGCNT 96
KNX_RAWMSG C0210aw010046ccf
KNX_TIME 2022-06-09 15:29:48
LASTInputDev KNX
MSGCNT 96
NAME WET_LOG_Luftdruck
NR 325
SETSTRING Luftdruck:slider,-670760,13415,670760
STATE 0.00
TYPE KNX
model dpt9
GADDETAILS:
Luftdruck:
CODE 01004
GROUP 1/0/4
MODEL dpt9
NO 1
OPTION
RDNAMEGET Luftdruck-get
RDNAMEPUT Luftdruck-put
RDNAMESET Luftdruck-set
SETLIST :slider,-670760,13415,670760
GADTABLE:
01004 Luftdruck
OLDREADINGS:
READINGS:
2022-06-09 18:59:55 WetterStateDay 0.00: 09:54:59 0.00_Count: 3 0.01: 03:00:00 0.01_Count: 3 0.10: 00:00:00 0.10_Count: 3 1.00: 02:00:00 1.00_Count: 2 1.01: 01:00:00 1.01_Count: 1 10.04: 00:00:00 10.04_Count: 1 10.08: 00:00:00 10.08_Count: 1 100.43: 01:00:00 100.43_Count: 1 100.84: 01:00:00 100.84_Count: 1 1004.34: 00:00:00 1004.34_Count: 1 10043.39: 00:34:54 10043.39_Count: 1 1008.44: 00:00:00 1008.44_Count: 1 10084.35: 00:30:07 10084.35_Count: 1 9.99: 00:00:00 9.99_Count: 1
2022-06-08 23:59:55 WetterStateDayLast 0.00: 00:00:42 0.00_Count: 1 0.10: 00:19:34 0.10_Count: 2 9.99: 00:01:15 9.99_Count: 3 99.94: 01:00:00 99.94_Count: 1 998.60: 00:00:34 998.60_Count: 2 999.42: 00:02:12 999.42_Count: 5 9994.24: 00:57:08 9994.24_Count: 1 99942.40: 00:00:22 99942.40_Count: 1 (since: 2022-06-08_21:38:08)
2022-06-09 18:59:55 WetterStateMonth 0.00: 09:55:41 0.00_Count: 4 0.01: 03:00:00 0.01_Count: 3 0.10: 00:19:34 0.10_Count: 5 1.00: 02:00:00 1.00_Count: 2 1.01: 01:00:00 1.01_Count: 1 10.04: 00:00:00 10.04_Count: 1 10.08: 00:00:00 10.08_Count: 1 100.43: 01:00:00 100.43_Count: 1 100.84: 01:00:00 100.84_Count: 1 1004.34: 00:00:00 1004.34_Count: 1 10043.39: 00:34:54 10043.39_Count: 1 1008.44: 00:00:00 1008.44_Count: 1 10084.35: 00:30:07 10084.35_Count: 1 9.99: 00:01:15 9.99_Count: 3 99.94: 01:00:00 99.94_Count: 1 998.60: 00:00:34 998.60_Count: 2 999.42: 00:02:12 999.42_Count: 5 9994.24: 00:57:08 9994.24_Count: 1 99942.40: 00:00:22 99942.40_Count: 1 (since: 2022-06-08_21:38:08)
2022-06-09 18:59:55 WetterStateYear 0.00: 09:55:41 0.00_Count: 4 0.01: 03:00:00 0.01_Count: 3 0.10: 00:19:34 0.10_Count: 5 1.00: 02:00:00 1.00_Count: 2 1.01: 01:00:00 1.01_Count: 1 10.04: 00:00:00 10.04_Count: 1 10.08: 00:00:00 10.08_Count: 1 100.43: 01:00:00 100.43_Count: 1 100.84: 01:00:00 100.84_Count: 1 1004.34: 00:00:00 1004.34_Count: 1 10043.39: 00:34:54 10043.39_Count: 1 1008.44: 00:00:00 1008.44_Count: 1 10084.35: 00:30:07 10084.35_Count: 1 9.99: 00:01:15 9.99_Count: 3 99.94: 01:00:00 99.94_Count: 1 998.60: 00:00:34 998.60_Count: 2 999.42: 00:02:12 999.42_Count: 5 9994.24: 00:57:08 9994.24_Count: 1 99942.40: 00:00:22 99942.40_Count: 1 (since: 2022-06-08_21:38:08)
2022-06-09 18:59:55 state 0.00
helper:
_98_statistics Statistik_Wetter
Attributes:
alias Luftdruck
event-on-change-reading state
group Wetter
room 806 Wetter
suppressReading IODev|last-sender|Luftdruck-get
userReadings state {sprintf('%.2f',(ReadingsNum($name,'state','')/10))}
Gruß
Hi!
ZitatWie könnte ich das denn in der KNX Konfiguration ändern ?
defmod WET_LOG_Luftdruck KNX 1/0/4:dpt9:Luftdruck:listenonly:nosuffix
deleteattr WET_LOG_Luftdruck suppressReading
deleteattr WET_LOG_Luftdruck userReadings
attr WET_LOG_Luftdruck stateCmd {return sprintf('%.2f',(ReadingsNum($name,'Luftdruck',0)/10))}
attr WET_LOG_Luftdruck event-on-change-reading state,Luftdruck
kurze Erklärung dazu: durch die definition wird nun ein reading 'Luftdruck' erzeugt (ohne '-get' !)
supressreading würde ich vorerst komplett weglassen, bringt nichts ausser Verwirrung! Dass reading last-sender tut nicht weh und ist manchmal hilfreich!
userReading wird 1:1 durch stateCmd ersetzt - ist das wirklich nötig durch 10 zu dividieren, in welcher Einheit kommt den der Luftdruck vom Sensor ?
Dann natürlich in der statistic definition entweder das reading 'state' oder 'Luftdruck' verwenden - (siehe stateCmd EInheit?)
l.g. erwin