FHEM - Hausautomations-Systeme > KNX/EIB

[­gelöst] KNX answerReading / listenonly

<< < (12/12)

erwin:
Hi,
...eine Überlegung aus der Design-Sicht:
du schickst jede/viele Änderungen von KNX devices an dein SPS. - mittels notify und zwar den Wert aus state.
Soweit ich eine SPS verstehe, ist das eine state-machine. Soll heissen: Jeder wert der dort mal gespeichert ist, bleibt auch dort!
Daher ist es nicht nötig, wiederholende gleiche werte an die SPS zu schicken.
Konsequenz: event-on-change-reading.
Ändern würde ich in dem Bereich erst wenn du die notifies eingeschränkt hast auf state!
getG1 und state haben immer den gleichen Wert, zumindest bei den definitionen, die ich von dir bisher gesehen habe.
in FHEM-WEB hast du auch ohne events die aktuellen werte in den readings (nach page refresh) !
l.g. erwin

Schneewa:
Hi Erwin

Vielen Dank - Die Readings von der SPS hatte ich schon mit einem event-on-change-reading versehen


--- Code: ---Internals:
   ADDRESS    354
   AREA       db
   DATATYPE   float
   DB         501
   DEF        db 501 354 float
   FUUID      5dc67d80-f33f-70d9-4e5a-7c7c2df1e795bcd6
   IODev      SPS_KNX
   LASTInputDev SPS_KNX
   LENGTH     4
   MSGCNT     16950
   NAME       Strom_L3_SPS
   NR         4198
   SPS_KNX_MSGCNT 16950
   SPS_KNX_TIME 2021-08-16 17:39:47
   STATE      4.143
   TYPE       S7_AWrite
   READINGS:
     2021-08-16 11:05:18   IODev           SPS_KNX
     2021-08-16 17:39:41   state           4.143
   helper:
     bm:
       S7_AWrite_Set:
         cnt        2797
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        16.08. 16:35:26
         max        0.0841071605682373
         tot        76.6443145275116
         mAr:
           HASH(Strom_L3_SPS)
           Strom_L3_SPS
           3.715
Attributes:
   IODev      SPS_KNX
   alias      Strom_L3_SPS
   event-min-interval .*:600
   event-on-change-reading state:0.01
   room       Leistungsmessung

--- Ende Code ---

eine andere Frage:

Ich habe ein Reading indem ich ein Usereading erstellt habe
jetzt muss ich beide aktualisieren, damit das Event gefeuert wird - weiterverarbeitet wird das Userreading - gibt es da eine andere/bessere Lösung

Reading

--- Code: ---Internals:
   ADDRESS    32
   AREA       db
   DATATYPE   float
   DB         526
   DEF        db 526 32 float
   FUUID      5d90471e-f33f-70d9-f0e2-4d915d87e80ecd37
   IODev      SPS_Allgemein
   LASTInputDev SPS_Allgemein
   LENGTH     4
   MSGCNT     27701
   NAME       Aussen_Wind_SPS
   NR         361
   SPS_Allgemein_MSGCNT 27701
   SPS_Allgemein_TIME 2021-08-16 21:47:29
   STATE      2.07999992370605
   TYPE       S7_ARead
   READINGS:
     2021-08-16 11:05:17   IODev           SPS_Allgemein
     2021-08-16 21:47:29   state           2.07999992370605
     2021-08-16 21:47:29   state_Wind      2.08
   helper:
     bm:
       S7_ARead_Attr:
         cnt        5
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        16.08. 17:24:01
         max        4.60147857666016e-05
         tot        0.000130891799926758
         mAr:
           set
           Aussen_Wind_SPS
           event-on-change-reading
           state_Wind.*
Attributes:
   IODev      SPS_Allgemein
   alias      Aussen_Wind_SPS
   event-min-interval .*:600
   event-on-change-reading state:0.01,state_Wind:0.01
   room       Aussen
   userReadings state_Wind {sprintf("%.2f", ReadingsVal($name,"state",0))}

--- Ende Code ---

erwin:
Hi,

wenn das ein KNX device wäre:

--- Code: ---attr <device> stateCmd {sprintf("%.2f", $state)}
--- Ende Code ---
.. aber es ist ja ein SPS device, da musst du in der cmd-ref von S7_... suchen...
l.g. erwin

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln