HM-ES-PMSw1-Pl "übersieht" Leistungsveränderung

Begonnen von odie13690, 06 Juni 2017, 14:57:47

Vorheriges Thema - Nächstes Thema

odie13690

Hallo zusammen,

mein Schaltaktor scheint den Betrieb eines angeschlossenen Gerätes nicht zuverlässig zu erkennen. Es ist zwar nur ein Leistungsunterschied zwischen 1 W (Standby) und 3,5 W (im Betrieb), aber manchmal erkennt der Aktor/FHEM dies und manchmal eben nicht. Kann das an der geringen Differenz liegen oder gibt es einen anderen Grund?

Kann ich den Schaltaktor dazu bewegen, die aktuelle Leistungsaufnahme in von mir definierten Abständen zu erfassen?

Vielen Dank!

odie13690

frank

wahrscheinlich schlecht konfiguriert im chn2.
was willst du mit definierten abständen erreichen? das geht genaugenommen nicht.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

odie13690

Hallo,

chn2, ist der Verbrauch. Ich erfasse chn3, die Leistung. Habe bei keinem Channel etwas konfiguriert. Was könnte/sollte ich denn konfigurieren?

Ich will nur das angeschlossene Gerät bzw. dessen Funktion überwachen. Wenn die Leistung auf > 3 ansteigt, weiß ich dass es in Betrieb ist/war. Aber wie gesagt, das funktioniert nicht zuverlässig.

odie13690

ph1959de

Zitat von: odie13690 am 07 Juni 2017, 06:49:14
Ich will nur das angeschlossene Gerät bzw. dessen Funktion überwachen. Wenn die Leistung auf > 3 ansteigt, weiß ich dass es in Betrieb ist/war. Aber wie gesagt, das funktioniert nicht zuverlässig.
Wie genau willst Du "überwachen"? Und wie / woran siehst Du, dass es nicht zuverlässig funktioniert?

Welches Attribut / Reading / Internal von Channel3 genau meinst Du, wenn Du von "Leistung auf > 3 ansteigt" sprichst?

Wenn ich bei meinem HM-ES-PMSw1-Pl die Device Details anzeigen lasse, sehe ich, dass Reading State und Internal STATE von Channel 03 und Reading power von Channel 02 gleichzeitig aktualisiert werden und identische Werte enthalten.

Ich habe keine der Threshold-Definitionen verändert.
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

odie13690

Zitat von: ph1959de am 07 Juni 2017, 07:48:07
Wie genau willst Du "überwachen"? Und wie / woran siehst Du, dass es nicht zuverlässig funktioniert?

Das angeschlossene Gerät ist in regelmäßigen Abständen für ca. 40 s in Betrieb (Geräteprogrammierung). Ich gehe davon aus, dass im Betrieb die Leistungsaufnahme gegenüber dem StandBy steigt. Das funktioniert auch gelegentlich, aber nicht immer, wenn das Gerät in Betrieb ist. Manchmal registriert der Aktor eine Leistungsaufnahme auf > 3 W, oft leider aber nicht.
Da ich davon ausgehen kann, dass das Gerät im Betriebszustand immer dieselbe Leistungsaufnahme hat, frage ich mich, warum das der Aktor nur manchmal registriert.

odie13690

frank

Zitat von: odie13690 am 12 Juni 2017, 18:47:17
Das angeschlossene Gerät ist in regelmäßigen Abständen für ca. 40 s in Betrieb (Geräteprogrammierung). Ich gehe davon aus, dass im Betrieb die Leistungsaufnahme gegenüber dem StandBy steigt. Das funktioniert auch gelegentlich, aber nicht immer, wenn das Gerät in Betrieb ist. Manchmal registriert der Aktor eine Leistungsaufnahme auf > 3 W, oft leider aber nicht.
Da ich davon ausgehen kann, dass das Gerät im Betriebszustand immer dieselbe Leistungsaufnahme hat, frage ich mich, warum das der Aktor nur manchmal registriert.

odie13690

Zitat von: frank am 06 Juni 2017, 15:18:29
schlecht konfiguriert im chn2.
nach der beschreibung ist mindestens das register txThrPwr zu hoch eingestellt, so dass nur alle 3 minuten das zyklische messinterval gesendet wird. wenn dann zu diesem zeitpunkt deine last "zufällig" eingeschaltet ist, wird natürlich der entsprechende wert gesendet. ansonsten bleibt es natürlich "unbemerkt". mit txThrPwr stellt man eine leistungsdifferenz ein, ab welcher zusätzliche messages gesendet werden. wenn du hier etwa 2w einstellst, sollte es bei jedem einschalten ebenfalls eine message geben.

bei deiner "kurzen" einschaltdauer würde ich wahrscheinlich auch noch das register averaging verkleinern.
ausserdem würde ich den stromwert zur erkennung nutzen, da hier die differenz zischen ein- und ausschalten grösser sein sollte. dadurch lässt sich dann mit txThrCur die triggerschwelle besser setzen, um störgrössen aus dem weg zu gehen.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

odie13690

#6
Hallo frank,

habe das reading R-txThrLoPwr in channel_02 auf 1 W, R-txThrHiPwr auf 5 W gestellt.

txThrCur und averaging gibt es nicht.

Channel02 hat das folgende List:
Internals:
   CHANGED
   DEF        2DD6A503
   NAME       Futterautomat_Leistung
   NOTIFYDEV  global
   NR         57
   NTFY_ORDER 50-Futterautomat_Leistung
   STATE      0.99
   TYPE       CUL_HM
   chanNo     03
   device     HM_2DD6A5
   Readings:
     2015-04-24 15:53:59   R-cndTxCycAbove off
     2015-04-24 15:53:59   R-cndTxCycBelow off
     2015-04-24 15:53:59   R-cndTxDecAbove 200
     2016-04-05 16:27:34   R-cndTxDecBelow 0
     2015-04-24 15:53:59   R-cndTxFalling  off
     2015-04-24 15:53:59   R-cndTxRising   off
     2015-04-24 15:53:59   R-sign          off
     2015-04-24 15:53:59   R-txThrHiPwr    5 W
     2015-04-24 15:53:59   R-txThrLoPwr    1 W
     2016-10-13 18:01:05   RegL_01.        08:00 22:64 30:06 84:00 85:C8 86:00 87:00 88:00 89:4E 8A:20 8B:00 8C:00 8D:27 8E:10  00:00
     2017-06-14 19:27:26   state           0.99
   Helper:
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Role:
       chn        1
     Tmpl:
Attributes:
   event-on-change-reading .*
   group      x_Aktordetails
   model      HM-ES-PMSw1-Pl
   peerIDs    00000000,


odie13690

martinp876


odie13690

Zitat von: martinp876 am 14 Juni 2017, 21:21:35
wie internals behaupten ist es Channel 3

Oh, ein Verschreiber. Danke für den Hinweis. Ich erkenne nicht ob mir dieser Hinweis weiter hilft.

odie13690

frank

nein, kein verschreiber.
ich habe von registern in chn2 gesprochen.
doch du änderst andere register in chn3, komisch.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

martinp876

nun - evtl schon. Schaue ich die Register druch sehe ich:
Channel 2
list:         register | range              | peer     | description
   1: averaging        |   1 to 16s         |          | averaging period
   1: statusInfoMinDly |   0 to 15.5s       |          | status message min delay special:unused
   1: statusInfoRandom |   0 to 7s          |          | status message random delay
   1: transmitTryMax   |   1 to 10          |          | max message re-transmit
   1: txMinDly         |   0 to 16s         |          | min transmit delay
   1: txThrCur         |   0 to 16000mA     |          | threshold current special:unused
   1: txThrFrq         |   0 to 2.55Hz      |          | threshold frequency special:unused
   1: txThrPwr         | 0.01 to 3680W       |          | threshold power special:unused
   1: txThrVlt         |   0 to 230V        |          | threshold voltage special:unused

Channel 3
list:         register | range              | peer     | description
   1: cndTxCycAbove    |     literal        |          | cyclic trigger if level is above cndTxDecAbove options:on,off
   1: cndTxCycBelow    |     literal        |          | cyclic trigger if level is below cndTxCycBelow options:on,off
   1: cndTxDecAbove    |   0 to 255         |          | level for cndTxCycAbove
   1: cndTxDecBelow    |   0 to 255         |          | level for cndTxCycBelow
   1: cndTxFalling     |     literal        |          | trigger if falling options:on,off
   1: cndTxRising      |     literal        |          | trigger if rising options:on,off
   1: ledOnTime        |   0 to 1.275s      |          | LED ontime
   1: statusInfoMinDly |   0 to 15.5s       |          | status message min delay special:unused
   1: statusInfoRandom |   0 to 7s          |          | status message random delay
   1: transmitTryMax   |   1 to 10          |          | max message re-transmit
   1: transmitTryMax   |   1 to 10          |          | max message re-transmit
   1: txThrHiPwr       |   0 to 3680W       |          | threshold low power
   1: txThrLoPwr       |   0 to 3680W       |          | threshold high power
   4: expectAES        |     literal        | required | expect AES options:on,off
   4: peerNeedsBurst   |     literal        | required | peer expects burst options:on,off


wobei ich mir ansehen würde (untested)
Channel 2
   1: averaging     1 # minimale Periode einstellen
   1: txThrPwr      unused # kein Threshold - evtl viele trigger!!!

Channel 3
   1: cndTxCycAbove    off # kein Zyklischer trigger
   1: cndTxCycBelow    off # kein Zyklischer trigger
   1: cndTxDecAbove    0
   1: cndTxDecBelow    200
   1: cndTxFalling     on  # trigger wenn es runter geht
   1: cndTxRising      on  # trigger wenn es hoch geht
   1: txThrHiPwr       2  #
   1: txThrLoPwr       2  #


odie13690

Zitat von: frank am 15 Juni 2017, 09:02:44
nein, kein verschreiber.
ich habe von registern in chn2 gesprochen.
doch du änderst andere register in chn3, komisch.

Wie hängen denn Veränderungen in chn02 (Verbrauch) mit chn03 (akt. Leistungsaufnahme) zusammen? Ich frage Veränderungen bei chn03 ab. Deshalb habe ich dort Veränderungen vorgenommen. Mir ist nicht klar, wie ich mein Ansinnen über chn02 umsetzten kann.

odie13690

odie13690

Zitat von: martinp876 am 15 Juni 2017, 09:52:18

Dann bitte noch mal für mich zum "mitschreiben" bitte. Habe jetzt Channel 02 angepasst, wobei averaging bereits auf 1 s stand. Bei mir haben die Register auch alle noch ein "R-" davor.

Das aktuelle List von Channel 02
Internals:
   DEF        2DD6A502
   NAME       Futterautomat_Verbrauch
   NOTIFYDEV  global
   NR         56
   NTFY_ORDER 50-Futterautomat_Verbrauch
   STATE      1872.2 W
   TYPE       CUL_HM
   chanNo     02
   device     HM_2DD6A5
   Readings:
     2017-06-15 13:15:31   FutterautomatKosten 0.39
     2016-12-31 23:59:56   Jahr            900
     2017-06-15 13:00:00   LetzteStunde    1871.9
     2017-06-11 23:59:56   LetzteWoche     1787.8
     2017-06-01 00:00:00   LetzterMonat    1526.5
     2017-06-14 23:59:55   LetzterTag      1859.1
     2016-12-31 23:59:56   LetztesJahr     1320.7
     2017-06-01 00:00:00   Monat           205.8
     2015-05-05 17:43:59   R-averaging     1 s
     2015-05-05 17:43:59   R-sign          off
     2015-05-05 17:43:59   R-txMinDly      8 s
     2015-05-05 17:43:59   R-txThrCur      100 mA
     2015-05-05 17:43:59   R-txThrFrq      1 Hz
     2017-06-15 13:10:24   R-txThrPwr      2 W
     2015-05-05 17:43:59   R-txThrVlt      10 V
     2016-10-13 18:01:04   RegL_01.        08:00 7A:01 7B:08 7C:00 7D:27 7E:10  7F:00 80:64 81:00 82:64 83:64 00:00
     2017-06-15 13:00:00   Stunde          1
     2017-06-14 23:59:55   Tag             23.8999999999999
     2017-06-11 23:59:56   Woche           166.6
     2017-06-15 13:15:31   boot            off
     2017-06-15 13:15:31   current         19
     2017-06-15 13:15:31   eState          E: 496 P: 0.97 I: 19 U: 227.1 f: 49.96
     2017-06-15 13:15:31   energy          496
     2017-06-15 13:15:31   energyCalc      1872.2
     2017-05-25 16:47:07   energyOffset    1376.2
     2017-06-15 13:15:31   frequency       49.96
     2017-06-15 13:15:31   power           0.97
     2017-06-15 13:15:31   state           496
     2017-06-15 13:15:31   voltage         227.1
   Helper:
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Role:
       chn        1
     Tmpl:
Attributes:
   event-on-change-reading .*
   group      x_Aktordetails
   model      HM-ES-PMSw1-Pl
   stateFormat energyCalc W
   userReadings FutterautomatKosten { sprintf("%.2f", ReadingsVal("Futterautomat_Verbrauch","energyCalc",0)/1000 * ReadingsVal("du_PreisJeKWh","state",0)) }


odie13690

frank

chn 3-6 sind komparatoren, die entsprechend konfiguriert und gepeert, trigger an einen peer senden können. die einstellungen in diesen channels haben aber keinen einfluss auf die gesendeten messwerte des devices.

chn2 ist der messwert channel. hier kann man quasi die "empfindlichkeit/häufigkeit" der zu sendenden messwerte konfigurieren. alle 5 messwerte werden in diesem channel in jeweils eigenen readings dargestellt. zusätzlich werden 4 von diesen werten in die entsprechenden states von chn 3-6 kopiert.

eigentlich musst du nur das tun, was ich dir bereits empfohlen habe.

edit: mit txMinDly=8s solltest du also ca 8s nach dem einschalten der last eine messwertänderung sehen können. jeweils beim ein- und ausschalten. funktioniert es? wie erwähnt, würde ich den stromwert zum detektieren nutzen.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

odie13690

Zitat von: frank am 15 Juni 2017, 13:51:18
chn 3-6 sind komparatoren, die entsprechend konfiguriert und gepeert, trigger an einen peer senden können. die einstellungen in diesen channels haben aber keinen einfluss auf die gesendeten messwerte des devices.

chn2 ist der messwert channel. hier kann man quasi die "empfindlichkeit/häufigkeit" der zu sendenden messwerte konfigurieren. alle 5 messwerte werden in diesem channel in jeweils eigenen readings dargestellt. zusätzlich werden 4 von diesen werten in die entsprechenden states von chn 3-6 kopiert.

eigentlich musst du nur das tun, was ich dir bereits empfohlen habe.

edit: mit txMinDly=8s solltest du also ca 8s nach dem einschalten der last eine messwertänderung sehen können. jeweils beim ein- und ausschalten. funktioniert es? wie erwähnt, würde ich den stromwert zum detektieren nutzen.

OK, dass man aus einer Antwort soviel lernen kann  :)

Wie aus meinem letzten List für chn02 ersichtlich, habe ich:

R-averaging     1 s
R-txMinDly      8 s
R-txThrPwr      2 W

gesetzt. Leider ohne den gewünschten Erfolg.

An die Überwachuhng des Stromes habe ich auch schon gedacht. Leider lässt sich kein Zusammenhang zwischen Betrieb und StandBy beim Strom erkennen. Das Gerät beginnt täglich um 9 Uhr seinen Betrieb mit einem ersten Zyklus. Der folgende Log-Auszug stellt die Leistungs- und die Stromdaten gegenüber.

Zitat2017-06-11_15:27:06 Futterautomat_Leistung 0.96
2017-06-11_15:27:06 Futterautomat_Leistung 0.96
2017-06-11_15:29:13 Filter_Strom 257
2017-06-11_15:29:21 Filter_Strom 60
2017-06-11_15:29:31 Futterautomat_Leistung 0.98
2017-06-11_15:29:31 Futterautomat_Leistung 0.98
2017-06-11_15:31:42 Futterautomat_Leistung 0.97
2017-06-11_15:31:42 Futterautomat_Leistung 0.97
2017-06-11_15:34:42 Futterautomat_Leistung 0.98
2017-06-11_15:34:42 Futterautomat_Leistung 0.98
2017-06-11_15:38:21 Filter_Strom 258
2017-06-11_15:38:29 Filter_Strom 60
2017-06-11_15:44:19 Futterautomat_Leistung 0.97
2017-06-11_15:44:19 Futterautomat_Leistung 0.97
2017-06-11_15:47:11 Futterautomat_Leistung 3.84
2017-06-11_15:47:11 Futterautomat_Leistung 3.84
2017-06-11_15:47:26 Filter_Strom 209

2017-06-11_15:47:34 Filter_Strom 60
2017-06-11_15:49:49 Futterautomat_Leistung 0.98
2017-06-11_15:49:49 Futterautomat_Leistung 0.98
2017-06-11_15:55:31 Filter_Strom 252
2017-06-11_15:55:39 Filter_Strom 60
2017-06-11_16:04:25 Filter_Strom 246
2017-06-11_16:04:33 Filter_Strom 60
2017-06-11_16:04:49 Futterautomat_Leistung 0.99
2017-06-11_16:04:49 Futterautomat_Leistung 0.99
2017-06-11_16:09:40 Futterautomat_Leistung 0.98
2017-06-11_16:09:40 Futterautomat_Leistung 0.98
2017-06-11_16:14:00 Filter_Strom 261
2017-06-11_16:14:08 Filter_Strom 60

Wie aus dem fett markierten Teil erkennbar, gibt es keinen signifikanten Stromstärkenanstieg, im Vergleich zu den StandBy-Zeiten ober- bzw. unterhalb...

odie13690