FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: SvenJust am 10 Februar 2016, 10:35:37

Titel: Registerkonfiguration HM-LC-SW4-PCB, damit immer nur ein Relais geschlossen ist
Beitrag von: SvenJust am 10 Februar 2016, 10:35:37
Ich nutze einen 4 Kanal Aktor HM-LC-SW4-PCB zum Schalten einer Rollofernbedienung. Die Fernbedienung hat drei Tasten, (Hoch, Stopp, Runter). Channel 1 des Aktors schließt den Taster 1, Channel 2 schließt den Taster 2 und Channel 3 den Taster 3. Die Ansteuerung mit fhem funktioniert, ein set sz_Rollladen_aktor_Sw_01 on-for-timer 4 schließt den Taster 1 für vier Sekunden und das Rollo fährt nach oben. Sw_02 betätigt die Taste Stopp und Sw_03 die Taster Runter.

Auf der Fernbedienung darf immer nur eine Taste gedrückt sein. Werden zwei Befehle von fhem innerhalb der vier Sekunden geschickt, wird teilweise der zweite Befehl vom Rollo nicht erkannt, da noch die erste Taste gedrückt ist.

Ich würde jetzt gerne die Register des HM-LC-SW4-PCB so konfigurieren, dass beim Schließen eines Relais die anderen Relais des Aktors (und damit die Tasten der FB) immer geöffnet werden. Ein Schalten der anderen Relais über fhem ist nicht schnell genug, deshalb suche ich eine Lösung unter Nutzung der Register. Damit muss nur ein fhem Befehl an den Aktor geschickt werden und ein Relais soll für vier Sekunden schließen und alle anderen Relais öffnen.

Kann mir bitte jemand mit der Konfiguration der Register weiter helfen? Danke.

VG
Sven


List sz_Rollladen_aktor_Sw_01 (die Kanäle 2-4 sind entsprechend)
   DEF        1D868101
   NAME       sz_Rollladen_aktor_Sw_01
   NR         216
   NTFY_ORDER 50-sz_Rollladen_aktor_Sw_01
   STATE      off
   TYPE       CUL_HM
   chanNo     01
   device     sz_Rollladen_aktor
   peerList   self01,
   Readings:
     2016-02-10 08:14:12   CommandAccepted yes
     2016-02-10 07:39:25   R-self01-lgActionType jmpToTarget
     2016-02-10 07:39:25   R-self01-lgCtDlyOff geLo
     2016-02-10 07:39:25   R-self01-lgCtDlyOn geLo
     2016-02-10 07:39:25   R-self01-lgCtOff geLo
     2016-02-10 07:39:25   R-self01-lgCtOn geLo
     2016-02-10 07:39:25   R-self01-lgCtValHi 100
     2016-02-10 07:39:25   R-self01-lgCtValLo 50
     2016-02-10 07:39:25   R-self01-lgMultiExec on
     2016-02-10 07:39:25   R-self01-lgOffDly 0 s
     2016-02-10 07:39:25   R-self01-lgOffTime unused
     2016-02-10 07:39:25   R-self01-lgOffTimeMode absolut
     2016-02-10 07:39:25   R-self01-lgOnDly 0 s
     2016-02-10 07:39:25   R-self01-lgOnTime unused
     2016-02-10 07:39:25   R-self01-lgOnTimeMode absolut
     2016-02-10 07:39:25   R-self01-lgSwJtDlyOff off
     2016-02-10 07:39:25   R-self01-lgSwJtDlyOn on
     2016-02-10 07:39:25   R-self01-lgSwJtOff dlyOn
     2016-02-10 07:39:25   R-self01-lgSwJtOn dlyOff
     2016-02-10 07:39:25   R-self01-shActionType jmpToTarget
     2016-02-10 07:39:25   R-self01-shCtDlyOff geLo
     2016-02-10 07:39:25   R-self01-shCtDlyOn geLo
     2016-02-10 07:39:25   R-self01-shCtOff geLo
     2016-02-10 07:39:25   R-self01-shCtOn geLo
     2016-02-10 07:39:25   R-self01-shCtValHi 100
     2016-02-10 07:39:25   R-self01-shCtValLo 50
     2016-02-10 07:39:25   R-self01-shMultiExec off
     2016-02-10 07:39:25   R-self01-shOffDly 0 s
     2016-02-10 07:39:25   R-self01-shOffTime unused
     2016-02-10 07:39:25   R-self01-shOffTimeMode absolut
     2016-02-10 07:39:25   R-self01-shOnDly 0 s
     2016-02-10 07:39:25   R-self01-shOnTime unused
     2016-02-10 07:39:25   R-self01-shOnTimeMode absolut
     2016-02-10 07:39:25   R-self01-shSwJtDlyOff off
     2016-02-10 07:39:25   R-self01-shSwJtDlyOn on
     2016-02-10 07:39:25   R-self01-shSwJtOff dlyOn
     2016-02-10 07:39:25   R-self01-shSwJtOn dlyOff
     2014-12-11 08:26:49   R-sign          off
     2016-02-10 07:39:19   RegL_01.         08:00 00:00
     2016-02-10 07:39:25   RegL_03.self01   02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:01 0B:14 0C:63 82:00 83:00 84:32 85:64 86:00 87:FF 88:00 89:FF 8A:21 8B:14 8C:63 00:00
     2016-02-10 08:14:19   deviceMsg       off (to broadcast)
     2016-02-10 08:14:19   level           0
     2016-02-10 08:14:19   pct             0
     2016-02-10 07:39:20   peerList        self01,
     2016-02-10 08:14:19   recentStateType info
     2016-02-10 08:14:19   state           off
     2016-02-10 08:14:19   timedOn         off
   Helper:
     dlvlCmd    ++A011F141321D86810201000000
     peerIDsRaw ,1D868101,00000000
     Expert:
       def        1
       det        1
       raw        1
       tpl        1
     Role:
       chn        1
     Shadowreg:
     Tmpl:
Attributes:
   expert     251_anything
   model      HM-LC-SW4-PCB
   peerIDs    00000000,1D868101,
   webCmd     statusRequest:toggle:on:off


List vom Device
   CUL1_MSGCNT 154
   CUL1_RAWMSG A0D9E84101D868100000006010000::-85.5:CUL1
   CUL1_RSSI  -85.5
   CUL1_TIME  2016-02-10 08:14:19
   DEF        1D8681
   HMLAN1_MSGCNT 187
   HMLAN1_RAWMSG E1D8681,0000,0E682E58,FF,FFB6,9E84101D868100000006010000
   HMLAN1_RSSI -74
   HMLAN1_TIME 2016-02-10 08:14:19
   IODev      HMLAN1
   LASTInputDev HMLAN1
   MSGCNT     341
   NAME       sz_Rollladen_aktor
   NR         215
   NTFY_ORDER 50-sz_Rollladen_aktor
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 sz_Rollladen_aktor_Sw_01
   channel_02 sz_Rollladen_aktor_Sw_02
   channel_03 sz_Rollladen_aktor_Sw_03
   channel_04 sz_Rollladen_aktor_Sw_04
   lastMsg    No:9E - t:10 s:1D8681 d:000000 06010000
   protCmdDel 10
   protLastRcv 2016-02-10 08:14:19
   protResnd  18 last_at:2016-02-09 20:13:02
   protResndFail 2 last_at:2016-02-09 20:09:48
   protSnd    155 last_at:2016-02-10 08:14:12
   protState  CMDs_done
   rssi_HMLAN1 avg:-67.65 min:-77 max:-62 lst:-69 cnt:73
   rssi_at_CUL1 avg:-85.55 min:-91.5 max:-82.5 lst:-85.5 cnt:154
   rssi_at_HMLAN1 avg:-74.59 min:-89 max:-64 lst:-74 cnt:187
   Readings:
     2016-02-10 07:39:09   CommandAccepted yes
     2014-05-02 16:26:27   D-firmware      1.9
     2014-05-02 16:26:27   D-serialNr      JEQ0569744
     2016-02-10 07:39:18   PairedTo        0xF14132
     2016-02-10 07:39:18   R-intKeyVisib   visib
     2014-12-11 08:26:48   R-pairCentral   0xF14132
     2016-02-10 07:39:18   RegL_00.         02:81 03:00 04:00 05:00 06:00 07:00 08:00 09:00 0A:F1 0B:41 0C:32 00:00
     2016-02-06 10:30:30   level           0
     2016-02-06 10:30:30   pct             0
     2016-02-06 10:30:30   powerOn         2016-02-06 10:30:30
     2016-02-06 10:30:30   recentStateType info
     2014-11-02 19:08:29   sabotageAttack  ErrIoAttack cnt:2
     2015-01-25 14:06:16   sabotageAttackId ErrIoId_F14132 cnt:6
     2015-12-11 21:22:09   sabotageAttack_ErrIoAttack cnt 2
     2016-02-10 08:14:12   state           CMDs_done
     2016-02-06 10:30:30   timedOn         off
   Helper:
     HM_CMDNR   158
     cSnd       11F141321D86810201C800000500,11F141321D86810201C800000500
     mId        002D
     rxType     1
     Expert:
       def        1
       det        1
       raw        1
       tpl        1
     Io:
       newChn     +1D8681,00,00,00
       nextSend   1455088459.77192
       rxt        0
       vccu       vccu
       p:
         1D8681
         00
         00
         00
       prefIO:
         HMLAN1
     Mrssi:
       mNo        9E
       Io:
         CUL1       -85.5
         HMLAN1     -72
     Prt:
       bErr       0
       sProc      0
       Rspwait:
     Q:
       qReqConf
       qReqStat   04
     Role:
       dev        1
       prs        1
     Rssi:
       Hmlan1:
         avg        -67.6575342465754
         cnt        73
         lst        -69
         max        -62
         min        -77
       At_cul1:
         avg        -85.5584415584416
         cnt        154
         lst        -85.5
         max        -82.5
         min        -91.5
       At_hmlan1:
         avg        -74.5935828877006
         cnt        187
         lst        -74
         max        -64
         min        -89
     Shadowreg:
     Tmpl:
Attributes:
   IODev      CUL1
   IOgrp      vccu:HMLAN1
   autoReadReg 8_stateOnly
   expert     251_anything
   firmware   1.9
   model      HM-LC-SW4-PCB
   room       Server
   serialNr   JEQ0569744
   subType    switch
   webCmd     getConfig:clear msgEvents
Titel: Antw:Registerkonfiguration HM-LC-SW4-PCB, damit immer nur ein Relais geschlossen ist
Beitrag von: frank am 10 Februar 2016, 11:19:59
ich würde das mit einem virtuellen button machen, zb ein channel deiner vccu.
diesen peerst du mit den 3 chn des aktors. chn1 konfigurierst du als "treppenhausschalter" mit 4s ontime. und die anderen schalten aus. wenn du chn1 noch eine einschaltverzögerung spendierst, bist du auf der sicheren seite, dass die anderen bereits aus sind, bevor eingeschaltet wird.

zum konfigurieren hat martin zb templates bereitgestellt.
Titel: Antw:Registerkonfiguration HM-LC-SW4-PCB, damit immer nur ein Relais geschlossen ist
Beitrag von: SvenJust am 11 Februar 2016, 20:10:36
Hallo,

die Erläuterungen von frank haben mir den richtigen Weg gezeigt, vielen Dank dafür. Nachfolgend dokumentiere ich kurz mein Vorgehen (für mich und ggfs andere) und die Einstellungen.

Auf der vccu werden drei virtuelle Buttons für die Steuerung der Fernbedienung vorgesehen. Die Namen der Buttons lauten: vccu_Btn3_sz_Rollo_up, vccu_Btn4_sz_Rollo_stop und vccu_Btn5_sz_Rollo_down. Die virtuellen Buttons werden mit den drei Channels des Aktors gepeert.

set vccu_Btn3_sz_Rollo_up peerChan 0 sz_Rollladen_aktor_Sw_01 single set
set vccu_Btn3_sz_Rollo_up peerChan 0 sz_Rollladen_aktor_Sw_02 single set
set vccu_Btn3_sz_Rollo_up peerChan 0 sz_Rollladen_aktor_Sw_03 single set

set vccu_Btn4_sz_Rollo_stop peerChan 0 sz_Rollladen_aktor_Sw_01 single set
set vccu_Btn4_sz_Rollo_stop peerChan 0 sz_Rollladen_aktor_Sw_02 single set
set vccu_Btn4_sz_Rollo_stop peerChan 0 sz_Rollladen_aktor_Sw_03 single set

set vccu_Btn5_sz_Rollo_down peerChan 0 sz_Rollladen_aktor_Sw_01 single set
set vccu_Btn5_sz_Rollo_down peerChan 0 sz_Rollladen_aktor_Sw_02 single set
set vccu_Btn5_sz_Rollo_down peerChan 0 sz_Rollladen_aktor_Sw_03 single set



Dann werden mit HMinfo die bereits definieren Aktionen für die drei Buttons den Aktoren zugewiesen. Die Aktion autoOff schaltet den Aktor für vier Sekunden, SwOff schaltet den Aktor sofort aus.

set hm templateSet sz_Rollladen_aktor_Sw_01 autoOff vccu_Btn3_sz_Rollo_up:short 4
set hm templateSet sz_Rollladen_aktor_Sw_02 SwOff vccu_Btn3_sz_Rollo_up:short
set hm templateSet sz_Rollladen_aktor_Sw_03 SwOff vccu_Btn3_sz_Rollo_up:short

set hm templateSet sz_Rollladen_aktor_Sw_01 SwOff vccu_Btn4_sz_Rollo_stop:short
set hm templateSet sz_Rollladen_aktor_Sw_02 autoOff vccu_Btn4_sz_Rollo_stop:short 4
set hm templateSet sz_Rollladen_aktor_Sw_03 SwOff vccu_Btn4_sz_Rollo_stop:short

set hm templateSet sz_Rollladen_aktor_Sw_01 SwOff vccu_Btn5_sz_Rollo_down:short
set hm templateSet sz_Rollladen_aktor_Sw_02 SwOff vccu_Btn5_sz_Rollo_down:short
set hm templateSet sz_Rollladen_aktor_Sw_03 autoOff vccu_Btn5_sz_Rollo_down:short 4


Mit den folgenden Befehlen kann das Rollo jetzt gefahren werden.
set vccu_Btn3_sz_Rollo_up press
set vccu_Btn4_sz_Rollo_stop press
set vccu_Btn5_sz_Rollo_down press



Hinweise zum Peeren: http://www.fhemwiki.de/wiki/Homematic_Peering_Beispiele
Hinweise zu HMinfo: http://www.fhemwiki.de/wiki/HomeMatic_HMInfo