FHEM - Hausautomations-Systeme > Homematic

FS20 Dimmer durch HM Dimmer erstezen

(1/2) > >>

DC:
Hallo zusammen,

Derzeit stelle ich von FS20 auf HM um. Mehrere Wandsender kann ich allerdings noch nicht ablösen.

Aktuell: FS20 Wandsender steuert mit einem Kanal einen FS20 Dimmer (Befehl DimUpDown)
Ziel: FS20 Wandsender steuert HM Dimmer HM-LC-Dim1L-PI:
- Taste kurz gedrückt: toggle (leicht über ein notify realisierbar)
- Taste lang gedrückt: HM Dimmer mit FS20 DimUpDown verhalten

Das Problem:
Ich finde in der Doku nur RampOn und RampOff, dafür brauche ich aber 2 Kanäle, wenn ich das richtig verstanden habe.
Auch bei http://www.homematic-inside.de/tecbase/homematic/development/item/experten-modus-verstehen
habe ich nichts gefunden (oder es nicht verstanden)

Was muss ich tun, um das FS20 Verhalten beim HM Dimmer zu bekommen ?

martinp876:
Hallo DC

jetzt kennen ich fs20 nicht und auch nicht das verhalten der Wandsender.
Bei HM schickt ein sender bei langem druck alle ~0.4 sec einen trigger. Wie macht dies FS20? Kommen da regelmaessige trigger, die man umsetzen kann? dann ist es nicht sooo kompliziert.
Lass mal hören

Gruss
Martin

DC:
Bei FS20 gibt es einen Befehl DimUpDown:
Der Aktor merkt sich, in welche Richtung er zuletzt gedimmt hat. Es wird solange gedimmt, bis 100% bzw. 0% erreicht sind, dann wird die Richtung umgeschaltet.

Beispiel: aus, heller, heller, heller, an, dunkler dunkler, dunkler, aus, heller, heller.... usw.

Dadurch kann man mit einer Taste den Dimmer komplett steuern. Der FS20 Sender sendet bei langer Betätigung diesen DimUpDown Befehl. Der Befehl wird alle 1-2 Sekunden wiederholt, solange die Taste gedrückt ist. Bei kurzer Betätigung der Taste wird der Toggle Befehl gesendet. Eigentlich ähnlich wie beim HM Schalter. Der sendet ja auch "Btn_0x Long" und "Btn_0x Short".

Mein Ansatz ist ein Notify:
--- Code: ---# --- FS20 -> HM Notifies ---
define FS2HM_Dimmer.toggle notify FS20_Dimmer.toggle set HM_Dimmer toggle
define FS2HM_Dimmer.dim notify FS20_Dimmer.dimupdown set HM_Dimmer xxxxx
--- Ende Code ---
Die zweite Zeile funktioniert, für die dritte Zeile finde ich den notwendigen Befehl nicht.

martinp876:

--- Zitat ---Bei FS20 gibt es einen Befehl DimUpDown:
Der Aktor merkt sich, in welche Richtung er zuletzt gedimmt hat.Es wird solange gedimmt, bis 100% bzw. 0% erreicht sind, dann wird die Richtung umgeschaltet.
--- Ende Zitat ---

das verstehe ich so nicht. Auch bei FS20 muss der Aktor erfahren, wie lange gedrückt wurde und wann lossgelassen wird.

Ich rede nicht von den FHEM kommandos. Hier kann HM und sicher auch FS20 ein Kommandos gesendet werden das gestlegt - in einem Kommando - auf welchen Level und in welcher Zeit gedimmt werden soll. Das ich aber nicht dein Problem - oder?
Du willst auf einen taster druecken und das licht soll so lange heller oder dunkler werden bis du los laesst.
=> bin ich auf der richtigen Spur?

Einen HM-taster kann man so peeren, dass mit einer Taste hoch oder runter gedimmt werden kann, kein Problem. Aber dein FS20 dimmer kann nicht gepeert werden, das muss ueber FHEM gemacht werden.

ah - da stehts: der FS20 schalter sendet alle 1-2sec. Das ist eine grosse Toleranz.
High level: Du musst also den HM Aktor so einstellen, dass er 2 sec lang in eine Richtung dimmt. Wenn dann das naechste kommando kommt, wieder 2 sec. Wenn nicht ist stop.
Eine kürzere Zeit waere schöner - aber du solltest die maximal erlaubte nehmen.

Du musst einen 'Link' hernehmen, in dem du das Verhalten des Aktors definieren kannst.
a) du erzeugst einen virtuellen Schalter
  - define vb CUL_HM 112233
  - set vb virtual 1 # 1 button sollte reichen
b) du peerst ihn (erzeugst den Link)
  - set vb_Btn1 devicepair 0 <dimmerchannel> set single
c) du programmierst den aktor/channel/link
  set <dimChan> regSet <name> <value>
   
   lgDimStep        |   0 to 100%        

   lgRampOffTime    |   0 to 111600s     schrittdauer
   lgRampOnTime     |   0 to 111600s     schrittdauer
   lgRampSstep      |   0 to 100%        schrittweite je tastendruck/message

d) auslösen kannst du einen schritt dann mit dem Kommando
set vb_Btn1 press short sollte - ohne registeraenerung - die Lampe ein/ausschalten - also toggeln
set vb_Btn1 press long - löst einen dimmstep aus. Sollte zwischen den steps eine zu lange pause sein wird die dimmrichtung geaendert (quasi ein dimm-toggel).
Default dauer zwischen den messages ist 0,4 sec bei HM

Gruss Martin




DC:

--- Zitat ---Du willst auf einen taster druecken und das licht soll so lange heller oder dunkler werden bis du los laesst.
=> bin ich auf der richtigen Spur?

--- Ende Zitat ---

ja


--- Zitat ---ein Kommandos gesendet werden das gestlegt - in einem Kommando - auf welchen Level und in welcher Zeit gedimmt werden soll.
--- Ende Zitat ---

Eben genau das ist nicht der Fall. Es gibt weder einen Level noch eine Zeit ! Der Ziel-Level in dem Moment festgelegt, wo das menschlichen Auge ihn erkennt und der Taster losgelassen wird


--- Zitat ---set vb_Btn1 press short
set vb_Btn1 press long
--- Ende Zitat ---

Verstehe ich das richtig: Virtuellen Sender anlegen, peeren und dann via Notify mit dem FS20 Taster synchronisieren ?

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln