FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: klausw am 02 August 2013, 17:55:18

Titel: Dimmer automatisch runterfahren
Beitrag von: klausw am 02 August 2013, 17:55:18
Hallo,

ich habe ein Dummy Device angelegt, bei dem ich Werte zwischen 0 und 100 per Slider einstellen kann.
Jetzt möchte ich über notify -> at nach z.B. 2h vom eingestellten Wert bis auf 0 runterfahren. Allerdings nicht sofort auf 0 sondern "runterdimmen"
Gibt es da bereits eine Funktion, die ich dafür verwenden kann?

Grüße
Klaus
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: TeeVau am 02 August 2013, 18:53:07
Bei FS20, was anderes habe ich nicht, kannst du dem dim Befehl einen 2. Parameter angebe. Der zielwert wird dann in der zielzeit angefahren.
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: justme1968 am 02 August 2013, 19:11:41
bei homematic können die dimmer das auch.

gruss
  andre
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: klausw am 03 August 2013, 19:25:19
lässt sich diese Funktion von FS20 oder Homematic auch für Dummy devices nutzen?
Mein Dimmer ist direkt über I2C am Raspberry angeschlossen und wird derzeit über notify bedient.
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: Puschel74 am 03 August 2013, 19:33:52
Hallo,

was hindert dich daran einen "Pseudo-FS20-Dimmer" zu definieren und diesen auf dein notify los zu lassen?

Du musst ja keinen realen FS20-Dimmer besitzen um die Funktion nutzen zu können aber wenn ein Dummy kein Dimm-in-Zeit x beherrscht ... ;-)

Grüße
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: klausw am 04 August 2013, 23:05:54
Hallo Puschel,

danke für den Tip, scheint aber leider nicht zu funktionieren. Es gibt bei FS20 zwar auch einen DummyDimmer, aber auch bei dem führt beispielsweise der Befehl "set dim1 ramp-off-time 50" nicht dazu, das der state Wert langsam reduziert wird. Stattdessen wird "ramp-off-time 110" als state Wert eingetragen. Also muss ich mir auch in diesem Fall etwas selbst zusammenklöppeln.
Grüße
Klaus

Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: Puschel74 am 05 August 2013, 06:03:37
Hallo,

ZitatEs gibt bei FS20 zwar auch einen DummyDimmer,

Ich hab auch keinen DummyDimmer gemeint sondern einen echten Dimmer ;-)

define Dimmer_nicht_da FS20 <HC> <Adresse>
attr Dimmer_nicht_da model fs20di


Nur um einen Dimmer zu definieren musst du diesen ja nicht zwangsläufig besitzen.
Es geht dir ja nur um die Funktion des Dimmers um diese per notify weiter zu verarbeiten.

Grüße

P.S.: Den Namen kannst du natürlich anpassen :-)
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: klausw am 05 August 2013, 13:43:55
sooo, jetzt habe ich mal den fs20di verwendet. Aber irgendwie stehe ich noch auch dem Schlauch.
Je nachdem welchen Wert ich mit dem Slider auswähle steht in der State Variable dimxx%.
Diesen kann ich per notify auswerten.
In meinem jugendlichen Leichtsinn habe ich vermutet, das wenn ich jetzt z.B. mit "set meinDimmer ramp-off-time 30" dem Dimmer zum runterdimmen animieren will auch diese State Variable runterzählt.
Stattdessen steht aber "ramp-off-time 30" direkt in der State Variable drin.
Ich fürchte, das ich das zeitgesteuerte runterdimmen von Hand im notify programmieren muss, also auch den alten Dimmwert speichern usw.
Oder habe ich irgendwas übersehen?

Grüße
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: justme1968 am 05 August 2013, 13:49:33
ja. ich denke du musst es selber machen.

die ganzen ansätze ein nicht vorhandenes device dafür zu verwenden gehen nicht weil das dimmen tatsächlich von der device firmware gemacht wird und nicht von fhem.

gruss
  andre
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: Puschel74 am 05 August 2013, 17:14:12
Hallo,

Zitatgehen nicht weil das dimmen tatsächlich von der device firmware gemacht wird und nicht von fhem.

Genau das habe ich mir heute auf dem Weg zur Arbeit auch gedacht.

Sorry, aber so klappt das leider natürlich nicht mit dem Dimmer :-(

Grüße
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: klausw am 06 August 2013, 23:59:34
ja, das hatte ich mir dann auch gedacht

Ich baue mir gerade ein eigenes Modul für das I2C DimmIC zusammen.
Allerdings ist mir noch nicht klar, wie ich das mit dem dimmen in einer gewissen Zeit löse.
An sich funktioniert es, aber es blockiert das ganze System, bis der Vorgang abgeschlossen ist.
Wie ich den Prozess forken kann habe ich noch nicht verstanden
Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: justme1968 am 07 August 2013, 00:05:06
warum musst du denn forken? wie schnell soll das runter dimmen den passieren?

wie waere es per timer oder notify in regelmäßigen abständen eine stufe dunkler zu schalten. da sollte nichts blockieren.

gruss
  andre

Titel: Aw: Dimmer automatisch runterfahren
Beitrag von: klausw am 07 August 2013, 00:17:08
Zitatwie schnell soll das runter dimmen den passieren?
Naja, vom Sekundenbereich bis Minuten.
Wenn es um Minuten geht, habe ich den InternalTimer() probiert, aber der war für das runterdimmen in ein paar Sekunden zu langsam. Dann habe ich mal usleep() in einer For-Schleife versucht, aber das blockiert logischerweise, bis die Schleife fertig ist.