MD15: actuatorState: obstructed, setpoint >100, roomTemp < 2C

Begonnen von krikan, 01 Mai 2016, 11:51:12

Vorheriges Thema - Nächstes Thema

krikan

Mir sind gestern einige Merkwürdigkeiten bei meinem MD15 aufgefallen, die ich noch nicht einordnen kann:
  • Reading actuatorState ist seit dem 09.03. häufig "obstructed" (mehr als 100x). Laut Anleitung http://www.loxone.com/tl_files/loxone/downloads/datasheets/DE/200067_Funk_Stellantrieb.pdf soll das zugehörige DB2.0 jedoch nicht genutzt werden.
  • Reading setpoint nimmt Werte über 100 an; typischerweise 127 und 133. Wenn ich commandref richtig verstehe, sollte es aber ein Prozentwert sein.
  • Reading roomTemp enthält Werte unter 2°C bei realen Werten von 22°C; typischerweise 1.3 bei setPoint 100 und 1.9 bei setpoint 127
    Zumindest beim letzten Wechsel zwischen setpoint 127 und setpoint 0 habe ich keine Ventilreaktion festgestellt. Auch sonst sind mir/uns keine ungewöhnlichen Ventilbewegungen aufgefallen; haben aber eben nicht darauf geachtet.

    Leider habe ich noch keine Logs mit verbose 5. Die liefere ich nach, sobald ich etwas habe.

    list:
    Internals:
       DEF        01000EFA
       IODev      TCM_ESP3_2
       LASTInputDev TCM_ESP3_2
       MSGCNT     90
       NAME       Stellventil
       NR         209
       NTFY_ORDER 50-Stellventil
       STATE      T: 22.9 SPT: 20.0 SP: 0
       TCM_ESP3_2_DestinationID FFFFFFFF
       TCM_ESP3_2_MSGCNT 90
       TCM_ESP3_2_PacketType 1
       TCM_ESP3_2_RSSI -65
       TCM_ESP3_2_ReceivingQuality excellent
       TCM_ESP3_2_RepeatingCounter 0
       TCM_ESP3_2_SubTelNum 3
       TCM_ESP3_2_TIME 2016-05-01 11:14:39
       TYPE       EnOcean
       Readings:
         2016-05-01 11:14:39   actuatorState   ok
         2016-05-01 11:14:39   battery         ok
         2016-05-01 11:14:39   cover           closed
         2016-05-01 11:14:39   energyInput     disabled
         2016-05-01 11:14:39   energyStorage   empty
         2016-05-01 11:14:39   maintenanceMode off
         2016-05-01 11:14:39   operationMode   setpointTemp
         2016-05-01 11:14:39   pidState        stoped
         2016-05-01 11:14:39   roomTemp        22.9
         2016-05-01 11:14:39   selfCtrl        off
         2016-05-01 11:14:39   setpoint        0
         2016-05-01 11:14:39   setpointTemp    20.0
         2016-04-25 23:58:52   setpointTempSet 20.0
         2016-05-01 11:14:39   state           T: 22.9 SPT: 20.0 SP: 0
         2015-12-27 18:17:28   teach           4BS teach-in accepted EEP A5-20-01 Manufacturer: Kieback + Peter
         2016-02-05 19:04:52   tempSensor      ok
         2016-05-01 11:24:45   temperature     23
         2016-05-01 11:14:39   wakeUpCycle     3600
         2016-05-01 11:14:39   window          closed
       Helper:
         stopped    1
         alarmTimer:
           HASH(0x22c39f0)
           alarm
           no_response_from_actuator
           1
           3
         calcPID:

           HASH(0x22c39f0)
           stop
    Attributes:
       IODev      TCM_ESP3_2
       comMode    biDir
       destinationID unicast
       eep        A5-20-01
       manufID    00A
       pidCtrl    off
       room       EnOcean
       subDef     FFAEEE82
       subType    hvac.01
       summerMode on
       temperatureRefDev BTHR918N
       verbose    5
       webCmd     setpointTemp


    FileLog der letzten merkwürdigen Nachrichten:
    2016-05-01_10:44:37 Stellventil energyInput: disabled
    2016-05-01_10:44:37 Stellventil battery: ok
    2016-05-01_10:44:37 Stellventil energyStorage: empty
    2016-05-01_10:44:37 Stellventil roomTemp: 22.6
    2016-05-01_10:44:37 Stellventil setpoint: 0
    2016-05-01_10:44:37 Stellventil cover: closed
    2016-05-01_10:44:37 Stellventil window: closed
    2016-05-01_10:44:37 Stellventil actuatorState: ok
    2016-05-01_10:44:37 Stellventil selfCtrl: off
    2016-05-01_10:44:37 Stellventil setpointTemp: 20.0
    2016-05-01_10:44:37 Stellventil maintenanceMode: off
    2016-05-01_10:44:37 Stellventil operationMode: setpointTemp
    2016-05-01_10:44:37 Stellventil T: 22.8 SPT: 20.0 SP: 0
    2016-05-01_10:44:37 Stellventil energyInput: enabled
    2016-05-01_10:44:37 Stellventil battery: ok
    2016-05-01_10:44:37 Stellventil energyStorage: charged
    2016-05-01_10:44:37 Stellventil setpoint: 127
    2016-05-01_10:44:37 Stellventil cover: open
    2016-05-01_10:44:37 Stellventil window: closed
    2016-05-01_10:44:37 Stellventil actuatorState: obstructed
    2016-05-01_10:44:37 Stellventil selfCtrl: off
    2016-05-01_10:44:37 Stellventil setpointTemp: 20.0
    2016-05-01_10:44:37 Stellventil maintenanceMode: off
    2016-05-01_10:44:37 Stellventil operationMode: setpointTemp
    2016-05-01_10:44:37 Stellventil T: 22.8 SPT: 20.0 SP: 127
    2016-05-01_11:10:49 Stellventil temperature: 22.9
    2016-05-01_11:14:39 Stellventil energyInput: disabled
    2016-05-01_11:14:39 Stellventil battery: ok
    2016-05-01_11:14:39 Stellventil energyStorage: empty
    2016-05-01_11:14:39 Stellventil roomTemp: 22.9
    2016-05-01_11:14:39 Stellventil setpoint: 0
    2016-05-01_11:14:39 Stellventil cover: closed
    2016-05-01_11:14:39 Stellventil window: closed
    2016-05-01_11:14:39 Stellventil actuatorState: ok
    2016-05-01_11:14:39 Stellventil selfCtrl: off
    2016-05-01_11:14:39 Stellventil setpointTemp: 20.0
    2016-05-01_11:14:39 Stellventil maintenanceMode: off
    2016-05-01_11:14:39 Stellventil operationMode: setpointTemp
    2016-05-01_11:14:39 Stellventil T: 22.9 SPT: 20.0 SP: 0
    2016-05-01_11:24:45 Stellventil temperature: 23


    Bin mir unsicher, ob der Aktor einen Defekt hat oder das Problem irgendwo anders liegt.

    Gruß, Christian

krikan

Um schneller das Problem mit verbose 5 loggen zu können, habe ich gestern nach dem Post
attr Stellventil summerMode off
gesetzt. Danach traten die Probleme nicht mehr auf und ich freute mich schon über die Selbstheilung.

Also heute mittag wieder zurück auf
attr Stellventil summerMode on
gestellt. Direkt nach dem Umstellen wird setPoinSet 100 abgesetzt und der setPoint steht bis jetzt auf 100. Warum erschließst sich mir nicht.

FileLog:
2016-05-02_13:57:35 Stellventil energyInput: disabled
2016-05-02_13:57:35 Stellventil battery: ok
2016-05-02_13:57:35 Stellventil energyStorage: empty
2016-05-02_13:57:35 Stellventil roomTemp: 23.1
2016-05-02_13:57:35 Stellventil setpoint: 0
2016-05-02_13:57:35 Stellventil cover: closed
2016-05-02_13:57:35 Stellventil window: closed
2016-05-02_13:57:35 Stellventil actuatorState: ok
2016-05-02_13:57:35 Stellventil selfCtrl: off
2016-05-02_13:57:35 Stellventil setpointTemp: 20.0
2016-05-02_13:57:35 Stellventil maintenanceMode: off
2016-05-02_13:57:35 Stellventil operationMode: setpointTemp
2016-05-02_13:57:35 Stellventil T: 23.0 SPT: 20.0 SP: 0
2016-05-02_14:04:34 Stellventil temperature: 22.9
2016-05-02_14:07:36 Stellventil setpointSet: 100
2016-05-02_14:07:36 Stellventil energyInput: disabled
2016-05-02_14:07:36 Stellventil battery: ok
2016-05-02_14:07:36 Stellventil energyStorage: empty
2016-05-02_14:07:36 Stellventil roomTemp: 22.9
2016-05-02_14:07:36 Stellventil setpoint: 0
2016-05-02_14:07:36 Stellventil cover: closed
2016-05-02_14:07:36 Stellventil window: closed
2016-05-02_14:07:36 Stellventil actuatorState: ok
2016-05-02_14:07:36 Stellventil selfCtrl: off
2016-05-02_14:07:36 Stellventil maintenanceMode: off
2016-05-02_14:07:36 Stellventil operationMode: summerMode
2016-05-02_14:07:36 Stellventil T: 22.9 SPT: 20.0 SP: 0
2016-05-02_14:33:42 Stellventil temperature: 22.8
2016-05-02_14:38:49 Stellventil setpointSet: 100
2016-05-02_14:38:49 Stellventil energyInput: disabled
2016-05-02_14:38:49 Stellventil battery: ok
2016-05-02_14:38:49 Stellventil energyStorage: empty
2016-05-02_14:38:49 Stellventil roomTemp: 22.9
2016-05-02_14:38:49 Stellventil setpoint: 100
2016-05-02_14:38:49 Stellventil cover: closed
2016-05-02_14:38:49 Stellventil window: closed
2016-05-02_14:38:49 Stellventil actuatorState: ok
2016-05-02_14:38:49 Stellventil selfCtrl: off
2016-05-02_14:38:49 Stellventil maintenanceMode: off
2016-05-02_14:38:49 Stellventil operationMode: summerMode


Zugehörige Logfile-Auszüge:
2016.05.02 13:57:35.544 4: EnOcean Stellventil received PacketType: 1 RORG: A5 DATA: 00109308 SenderID: 01000EFA STATUS: 00
2016.05.02 13:57:35.545 5: EnOcean Stellventil EnOcean_parse SPT: 20.0 SPTS: 20.0
2016.05.02 13:57:35.550 4: EnOcean Stellventil sent PacketType: 1 RORG: A5 DATA: 7F6C0408 SenderID: FFAEEE82 STATUS: 00 ODATA: 0301000EFAFF00
2016.05.02 14:07:36.822 4: EnOcean Stellventil received PacketType: 1 RORG: A5 DATA: 00109208 SenderID: 01000EFA STATUS: 00
2016.05.02 14:07:36.822 5: EnOcean Stellventil EnOcean_parse SPT: 20.0 SPTS: 20.0
2016.05.02 14:07:36.828 4: EnOcean Stellventil sent PacketType: 1 RORG: A5 DATA: 646D0808 SenderID: FFAEEE82 STATUS: 00 ODATA: 0301000EFAFF00
2016.05.02 14:38:49.087 4: EnOcean Stellventil received PacketType: 1 RORG: A5 DATA: 64109208 SenderID: 01000EFA STATUS: 00
2016.05.02 14:38:49.088 5: EnOcean Stellventil EnOcean_parse SPT: 20 SPTS: 20
2016.05.02 14:38:49.096 4: EnOcean Stellventil sent PacketType: 1 RORG: A5 DATA: 646D0808 SenderID: FFAEEE82 STATUS: 00 ODATA: 0301000EFAFF00


Immerhin habe ich bis jetzt keine komplett unrealistischen Werte mehr, aber den setpoint von 100 finde ich seltsam. DB1.2 für Temperatur-Setpoint wird bei den Nachrichten an den Aktor nach summerMode "on" mMn nicht mehr gesetzt, obwohl ich die Betriebsart setpointTemp nicht geändert habe.

Bin ein "wenig" verwirrt und habe gerade keine Ahnung, wo ich ansetzen muss.

Gruß, Christian

klaus.schauer

Ich werde mir die Programmierung für den summerMode = on in aller Ruhe nochmals ansehen.

krikan

Bin absolut unsicher, ob das überhaupt am Modul liegt. Ich suche und berichte weiter; Testproblem ist aber die lange Wartezeit bei summerMode "on".
Habe jetzt "manuell" wieder auf setpointTemp umgeschaltet. Die verschickten und empfangenen Telegramme sind dann mMn vollkommen korrekt:

2016.05.02 20:10:22.329 4: EnOcean Stellventil received PacketType: 1 RORG: A5 DATA: 00109408 SenderID: 01000EFA STATUS: 00
2016.05.02 20:10:22.330 5: EnOcean Stellventil EnOcean_parse SPT: 20.0 SPTS: 20.0
2016.05.02 20:10:22.334 4: EnOcean Stellventil sent PacketType: 1 RORG: A5 DATA: 7F6E0C08 SenderID: FFAEEE82 STATUS: 00 ODATA: 0301000EFAFF00

klaus.schauer

Lt. MD15 Datenblatt wird das Ventil geschlossen, falls auf Sommerbetrieb umgestellt wird. In der neuen Fhem-Logik wird deshalb auch auf "setpoint" umgestellt. Leider bisher nicht auf den Wert "0" sondern "100".

Bitte mit geänderter Entwicklerversion testen.

krikan

summerMode on setzt nun den setpoint 0. Beim Zurückschalten auf summerMode off, wird das Reading operationMode immer wieder mit summerMode aktualisiert, wenn nicht setpoint oder setpointTemp gesetzt werden:

Internals:
   DEF        01000EFA
   IODev      TCM_ESP3_2
   LASTInputDev TCM_ESP3_2
   MSGCNT     4
   NAME       Stellventil
   NR         209
   NTFY_ORDER 50-Stellventil
   STATE      T: 23.5 SPT: 20.0 SP: 0
   TCM_ESP3_2_DestinationID FFFFFFFF
   TCM_ESP3_2_MSGCNT 4
   TCM_ESP3_2_PacketType 1
   TCM_ESP3_2_RSSI -61
   TCM_ESP3_2_ReceivingQuality excellent
   TCM_ESP3_2_RepeatingCounter 0
   TCM_ESP3_2_SubTelNum 1
   TCM_ESP3_2_TIME 2016-05-03 20:24:10
   TYPE       EnOcean
   Readings:
     2016-05-03 20:24:10   actuatorState   ok
     2016-05-03 20:24:10   battery         ok
     2016-05-03 20:24:10   cover           closed
     2016-05-03 20:24:10   energyInput     disabled
     2016-05-03 20:24:10   energyStorage   empty
     2016-05-03 20:24:10   maintenanceMode off
     2016-05-03 20:24:10   operationMode   summerMode
     2016-05-03 20:24:10   pidState        stoped
     2016-05-03 20:24:10   roomTemp        24.2
     2016-05-03 20:24:10   selfCtrl        off
     2016-05-03 20:24:10   setpoint        0
     2016-05-03 20:24:10   setpointSet     0
     2016-05-03 20:24:10   state           T: 23.5 SPT: 20.0 SP: 0
     2015-12-27 18:17:28   teach           4BS teach-in accepted EEP A5-20-01 Manufacturer: Kieback + Peter
     2016-05-03 18:28:52   temperature     23.5
     2016-05-03 20:24:10   wakeUpCycle     601
     2016-05-03 20:24:10   window          closed
   Helper:
     stopped    1
     alarmTimer:
       HASH(0x19d0200)
       alarm
       no_response_from_actuator
       1
       3
     calcPID:

       HASH(0x19d0200)
       stop
Attributes:
   IODev      TCM_ESP3_2
   comMode    biDir
   destinationID unicast
   eep        A5-20-01
   manufID    00A
   pidCtrl    off
   room       EnOcean
   subDef     FFAEEE82
   subType    hvac.01
   summerMode off
   temperatureRefDev BTHR918N
   verbose    5
   webCmd     setpointTemp


ZitatLt. MD15 Datenblatt wird das Ventil geschlossen, falls auf Sommerbetrieb umgestellt wird. In der neuen Fhem-Logik wird deshalb auch auf "setpoint" umgestellt.

Schließt Du dies aus der Aussage:
ZitatWird von einem externen Funkpartner die Statusmeldung "Sommerbetrieb Ein" empfangen, schließt der Kleinstellantrieb das Ventil.

Ich habe meine Bedenken, dass so der Frostschutz quasi ausgeschaltet wird, weil immer ein setpoint von 0 vorgegeben wird. Ob es nicht evtl. ausreicht einfach nur das SommerBit zu setzen, um den Schließeffekt zu erreichen? Ich probiere mal.

krikan

Zitat von: krikan am 03 Mai 2016, 20:44:17
summerMode on setzt nun den setpoint 0.
Gerade noch einmal eingeschaltet und jetzt wird wieder 100 abgesetzt:
2016.05.03 20:54:13.858 4: EnOcean Stellventil received PacketType: 1 RORG: A5 DATA: 00109908 SenderID: 01000EFA STATUS: 00
2016.05.03 20:54:13.859 5: EnOcean Stellventil EnOcean_parse SPT: 20.0 SPTS: 20.0
2016.05.03 20:54:13.867 4: EnOcean Stellventil sent PacketType: 1 RORG: A5 DATA: 64690808 SenderID: FFAEEE82 STATUS: 00 ODATA: 0301000EFAFF00

Denke ich brauche noch ein paar Tage, um das auf einem Testsystem nachzustellen, mich einzudenken und brauchbarere Infos zu liefern.

Mein eigentliches Problem ist bisher übrigens nicht mehr aufgetreten.

klaus.schauer

- setpoint sollte jetzt bei summerMode = on immer auf 0 bleiben
- beim ändern von summerMode auf off sollte jetzt operationMode = setpoint gesetzt werden

krikan

Zitat von: klaus.schauer am 04 Mai 2016, 07:06:36
- setpoint sollte jetzt bei summerMode = on immer auf 0 bleiben
- beim ändern von summerMode auf off sollte jetzt operationMode = setpoint gesetzt werden
Funktioniert. Bisher keine Probleme festgestellt.

Mich wundert ein wenig, dass im summerMode standardmäßig die Temperatur immer mit 10hex an den Aktor geschickt wird. Sollte aber unerheblich sein, da das entsprechende Bit Nutzung von setpoint statt setpointTemp vorgibt.

Bei Nutzung der MD15-Eigenregulierung (pidCtrl=off) ist für mich die Erkenntnis wichtig, dass ich nach Umschaltung summerMode on/off anschließend die setpointTemp neu setzen muss. Ansonsten bleibt der Aktor geschlossen und es wird kalt.


klaus.schauer

#9
Zitat von: krikan am 05 Mai 2016, 14:31:18
Mich wundert ein wenig, dass im summerMode standardmäßig die Temperatur immer mit 10hex an den Aktor geschickt wird. Sollte aber unerheblich sein, da das entsprechende Bit Nutzung von setpoint statt setpointTemp vorgibt.
Welches Datenbyte wird in "summerMode" ständig mit 0x10 gesendet?

Jetzt sollte nach der Rückstellung des "summerMode" wieder der bisherige Betriebszustand (operationMode) automatisch aktiv werden. Ich konnte es aus Zeitgründen selbst noch nicht testen.

krikan

Zitat von: klaus.schauer am 06 Mai 2016, 06:44:38
Welches Datenbyte wird in "summerMode" ständig mit 0x10 gesendet?

Im Log sieht man es unter "sent PacketType". Das ist aber bei summerMode=off:
2016.05.04 14:27:56.292 4: EnOcean Stellventil received PacketType: 1 RORG: A5 DATA: 00109108 SenderID: 01000EFA STATUS: 00
2016.05.04 14:27:56.293 5: EnOcean Stellventil EnOcean_parse SPT: 20 SPTS: 20
2016.05.04 14:27:56.302 4: EnOcean Stellventil sent PacketType: 1 RORG: A5 DATA: 00100008 SenderID: FFAEEE82 STATUS: 00 ODATA: 0301000EFAFF00

DB2 müsste bei den Nachrichten von Controller an Aktor mMn die Raumtemperatur sein. Woher die 0x10 kommt, verstehe ich nicht. Ist aber definitiv nicht  das temperatureRefDev oder eine andere Temperatur im Device.

ZitatJetzt sollte nach der Rückstellung des "summerMode" wieder der bisherige Betriebszustand (operationMode) automatisch aktiv werden. Ich konnte es aus Zeitgründen selbst noch nicht testen.
Danke, probiere ich morgen. Vielleicht ist obiges mit 0x10 dann auch weg.

klaus.schauer

#11
Zitat von: krikan am 06 Mai 2016, 21:29:08
Im Log sieht man es unter "sent PacketType". Das ist aber bei summerMode=off:
2016.05.04 14:27:56.292 4: EnOcean Stellventil received PacketType: 1 RORG: A5 DATA: 00109108 SenderID: 01000EFA STATUS: 00
2016.05.04 14:27:56.293 5: EnOcean Stellventil EnOcean_parse SPT: 20 SPTS: 20
2016.05.04 14:27:56.302 4: EnOcean Stellventil sent PacketType: 1 RORG: A5 DATA: 00100008 SenderID: FFAEEE82 STATUS: 00 ODATA: 0301000EFAFF00

DB2 müsste bei den Nachrichten von Controller an Aktor mMn die Raumtemperatur sein. Woher die 0x10 kommt, verstehe ich nicht. Ist aber definitiv nicht das temperatureRefDev oder eine andere Temperatur im Device.
Ich habe noch eine Stelle gefunden, bei der DB2 vor dem Senden nicht neu gesetzt wurde. Ich hoffe es passt jetzt.

krikan

Alles OK. Läuft bestens. Danke.

ZitatJetzt sollte nach der Rückstellung des "summerMode" wieder der bisherige Betriebszustand (operationMode) automatisch aktiv werden.
Nach summerMode=off wird setpointTemp wiederhergestellt.
Bin aber immer noch unsicher, ob es nicht im Hinblick auf Frostschutz bei pidCtrl=off besser wäre, den operationMode setpointTemp auch beim Einschalten von summerMode=on beizubehalten, statt auf setpoint zu schalten. Konnte aber noch nicht probieren, ob beim Setzen des summerMode-Bits der Aktor automatisch schließt und ein manuelles Setzen des setpoint 0 damit beim MD15 unnötig ist.