FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Skenik am 02 November 2016, 22:48:25

Titel: Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Skenik am 02 November 2016, 22:48:25
Hallo
Ich Habe FHEM auf Raspberry pi3 installiert und bediene erfolgreich ein "Homemetic Funk-Schaltaktor 1-fach"
Würde aber gerne es so einstellen das zwischen 0.00 Uhr und 6.00 Uhr das licht 15 Minuten  nach dem einschalten automatisch ausgeht.
Habe leider bis jetzt nichts gefunden.
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 02 November 2016, 23:23:15
Hi,

dann baust Du ein DOIF zwischen 0 und 6 und reagierst in der Art  <Aktor>.on sleep 900; set $NAME off

Ich habe ein notify mit folgender DEF SW81_._Tor.*:on sleep 1; set $NAME off
Das bewirkt, dass jeder Tastendruck des SW81_._Tor nur eine Sekunde dauert.

Vielleicht hilft das als Idee  8)

Gruß Otto
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: budy am 03 November 2016, 07:00:34
Eigentlich verstehen alle Homematic Schalt-Aktoren die Option on-for-timer... also so etwas in der Art:

set HM_Aktor on-for-timer 900

Wie du das mit der Zeit löst, dafür gibt es auch diverse Möglichkeiten. Man könnte ein Dummy nehmen und dort einen Status mitführen, der angibt, ob es zwischen 00:00 und 06:00 Uhr ist und dann in einem DOIF if einem Notify mit IF prüfen, ob der gesetzt ist.

Wenn du mal den Homematic Aktor mit einem Schalter direkt peeren möchtest, oder den eingebauten Schalter verwenden möchtest, dann wird's ein wenig komplizierter, denn dann musst du die Interna des Aktors entsprechend anpassen. Genaueres dazu steht im HM-Einsteiger Guide.

Gruß,
Stephan
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 03 November 2016, 10:55:06
Zitat von: Skenik am 02 November 2016, 22:48:25
... das licht 15 Minuten  nach dem einschalten automatisch ausgeht.
Ich hatte mich von dieser Aussage leiten lassen, also so in der Art: egal von wo und egal welcher Schalter einer bestimmten "Gruppe" geschaltet wird, er soll nach 15 min ausgehen. Dafür finde ich meinen Ansatz verblüffend einfach  8)
Ansonsten hat buddy natürlich völlig Recht  ;)

Mein notify könnte man mit dem attr disabledforintervals auch noch absolut simpel in der Zeit von 6:00 bis 0:00 Uhr deaktivieren. Beispiel:
Ich habe drei Lichtschalter Licht1 Licht2 und Licht3 define n_AusNach15min notify Licht.*:on sleep 900; set $NAME off
attr n_AusNach15min disabledForIntervals 06:00-00:00

Gruß Otto
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Franz Tenbrock am 03 November 2016, 11:40:19
Frage in dieser Richtung
Ich möchte das der Schaltbefehl verzögert ausgeführt wird und dann aber auch zeitverzögert die Lampe auch noch ausschaltet.
Tastendruck -> Wartezeit 3 Minuten dann Lampe an -> nach 3 weiteren Minuten Lampe aus.

sicher nicht so trivial ?
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 03 November 2016, 11:53:22
Zitat von: Franz Tenbrock am 03 November 2016, 11:40:19
Frage in dieser Richtung
Ich möchte das der Schaltbefehl verzögert ausgeführt wird und dann aber auch zeitverzögert die Lampe auch noch ausschaltet.
Tastendruck -> Wartezeit 3 Minuten dann Lampe an -> nach 3 weiteren Minuten Lampe aus.

sicher nicht so trivial ?
Zumindest nicht spontan trivial für mich  :) Da müsste man in jedem Fall ja nicht beim Aktor sondern beim Taster/Sensor ansetzen - obwohl das dann ja in einer Konfiguration des Aktors mündet. Aber mein Ansatz fragt einfach den Aktor ab und reagiert.

Da müsste man in die Register der HM Aktoren schauen
shOnDly
shOnTime
shOnTimeMode

Ob es damit geht kann ich spontan nicht sagen. Aber klingt danach: OnDly auf 180 setzen, OnTime auf 180 und OnTimeMode auf relativ?

Gruß Otto
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Damian am 03 November 2016, 13:17:23
Zitat von: Franz Tenbrock am 03 November 2016, 11:40:19
Frage in dieser Richtung
Ich möchte das der Schaltbefehl verzögert ausgeführt wird und dann aber auch zeitverzögert die Lampe auch noch ausschaltet.
Tastendruck -> Wartezeit 3 Minuten dann Lampe an -> nach 3 weiteren Minuten Lampe aus.

sicher nicht so trivial ?

doch, z. b. mit DOIF:

define di DOIF ([taster:"on"]) (set lampe on) (set lampe off)

attr di wait 180,180
attr di do always


Gruß

Damian
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Franz Tenbrock am 03 November 2016, 14:30:29
für meinen Anwendungsfall funktioniert es leider nicht,
möchte das hier aber nicht kapern und bitten mir an anderer Stelle zu helfen...

https://forum.fhem.de/index.php/topic,57791.msg509573.html#msg509573

vielleicht ja auch interessant

Es geht um die automatische Belüftung einer Toilette, ein leidiges Thema wenn kein Ventilator gewünscht ist.
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: budy am 03 November 2016, 22:06:36
Zitat von: Franz Tenbrock am 03 November 2016, 11:40:19
Frage in dieser Richtung
Ich möchte das der Schaltbefehl verzögert ausgeführt wird und dann aber auch zeitverzögert die Lampe auch noch ausschaltet.
Tastendruck -> Wartezeit 3 Minuten dann Lampe an -> nach 3 weiteren Minuten Lampe aus.

sicher nicht so trivial ?

Wa? Ist doch eierleicht, würden meine Kids sagen... Der erste Schaltbefehl konfiguriert ein at welches erst in 180s zündet und dann einfach den HM Aktor für 180s aktiviert. Und wenn man es besonders sauber haben will, dann konfiguriert man ein temporäres at, dann gibt's auch nicht immer den Hinweis, dass was zu sichern ist... im  FHEM.

Gruß,
Stephan
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Franz Tenbrock am 03 November 2016, 22:15:00
mit dem doif sehr elegant
finde ich zumindest
und sehr variabel
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Skenik am 06 November 2016, 17:49:54
Hallo
Vielen Dank für schnelle antworten und gute Ratschläge. Da ich echtes Neuling bin fehlt es mir noch schwer die richtige befähle zu schreiben.
Wen ich es richtig verstanden habe soll ich ein Define anlegen der etwa so aussehen muss:
define n_AusNach15min notify LICHT.*:on sleep 900; set $LICHT off
"LICHT" ist die bezeichnung für mein lichtschalter.900 sind die sekunden
Und ein attriebut was die zeitfenster festlegt, eta so:
attr n_AusNach15min disabledForIntervals 06:00-00:00

Das alles im eingabe fenster auf der hauptseite

Danke im vorraus
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: budy am 06 November 2016, 18:35:17
Ähh... wie jetzt? ;) Ich denke, es wäre gut, wenn du nochmal ganz präzise formulierst, was du genau willst und welche Komponenten es gibt. Soweit ich das verstanden hatte, wolltest du:


Punkt 1 hat Otto ja schon durch "disableForIntervall" gelöst. Punk 3 ist ebenfalls gelöst, da HM Aktoren ein "on-for-timer" beherrschen. Fehlt nur noch Punkt 2...

Es sollte also folgendes Kommando in der Eingabezeile von FEHM das Problem lösen, vorrausgesetzt der Schalter heißt S1 und die Lampe heißt L1:

define nachtLicht notify S1:.* sleep 180; set L1 on-for-timer 180

wobei es da natürlich auch auf das Event ankommt, welches das Ereignis auslöst. Ich bin hier auch mal stumpf von einem HM-Device ausgegangen, welches in so einem Fall entweder S1:Short.* oder S1:Long.* senden würde...

Gruß,
Stephan
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Skenik am 06 November 2016, 18:55:46
Hallo
Ich habe einen unterputzschalter ''LICHT'' der eine deckenhalterung einschaltet. Ich hätte gerne das wenn das Licht zwischen 0 Uhr und 6 Uhr eingeschaltet wird dann geht er automatisch nach 15 Minuten aus.
Wie ich schon sagte da ich keine Erfahrung mit programmieren habe Brauche ich ein Rat wie genau das befähl geschrieben wird
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: budy am 06 November 2016, 20:10:54
Ahh... verstehe... du hast einen Unterputz-Aktor von HM so wie diesen: HM-LC-Sw1PBU-FM, korrekt?

Dann hättest du ein kleines Problem, da die Taster immer intern mit dem Aktor direkt gepeert sind.
Das kann man zwar aufheben, aber das dürfte dich als Anfänger - ehrlichgesagt - überfordern und das ist in so einem System keine gute Basis. Außerdem soll doch dann der Schalter bestimmt zu normalen Zeiten auch die Lampe normal schalten, oder?

Das würde bedeuten, dass man über ein at um 00:00 den ganzen Aktor umprogrammieren müsste, damit die "Standard"-Aktion ein on-for-timer auslöst. Das müsste dann um 06:00 Uhr wieder rückgängig gemacht werden.


Gruß,
Stephan

Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 06 November 2016, 20:57:04
Hallo Stephan,

habe ich so nicht verstanden, er hat einfach einen Lichtschalter und er will daraus zeitabhängig einen Treppenhausautomaten machen.

Aber wenn er nicht weiß wie und wo man Befehle eingibt, dann wird es schwierig.

Gruß Otto
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: budy am 06 November 2016, 21:10:08
Moin Otto,

das hatte ich ja erst auch so verstanden, aber in seinem letzten Post es eher so verstanden, dass die Lampenfassung an der Decke "dumm" ist... Von daher auch meine Frage nach dem Schalter-Typ.

@Skenik ein list der Komponente/n würde uns hier sicherlich weiterbringen.

Ich bleibe dabei, das ist ein HM Unterputzaktor mit Taster/Wippe...

Gruß,
Stephan
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 06 November 2016, 21:20:47
Zitat von: budy am 06 November 2016, 21:10:08
aber in seinem letzten Post es eher so verstanden, dass die Lampenfassung an der Decke "dumm" ist... Von daher auch meine Frage nach dem Schalter-Typ.
Ich habe da eher gar nichts verstanden  :o
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Skenik am 06 November 2016, 21:32:08
Das hast du richtig verstanden
Ich habe ein unterputz Taster bzw Wippe  der normale decken Lampe schaltet.
Ich habe ja gesagt das ich Anfänger bin.
Ich Forscher viel zum Thema zu lesen und habe so weit geschaft: fhem Installation auf raspberry pi, Floorplan integriert, lichtschalter integriert, ich bin schmolz auf mich das ich so weit geschafft habe. Habe noch nie in meinen leben etwas programmiert oder ähnliches. Das mit zeitsteuerrung ist die nächste Stufe für für mich um etwas neues ausprobieren.
Danke für die hilfe
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 06 November 2016, 21:42:59
Wenn Dein Schalter LICHT heißt, dann musst Du diese beiden Zeilen nacheinander in die Befehlszeile von FHEM eingeben:
define n_AusNach15min notify LICHT:on sleep 900;; set $NAME off
attr n_AusNach15min disabledForIntervals 06:00-00:00


Wenn Dein Lichschalter aber Willi heißt, dann musst Du LICHT durch Willi ersetzen. Alles klar?

Gruß Otto
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Skenik am 06 November 2016, 21:45:02
Jezt ist alles klar
Ich bedanke mich bei euch für die hilfe und Geduld was ihr mit den Anfänger habt.
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: budy am 06 November 2016, 21:47:28
@Otto +1  ;D

Manchmal denke ich schon zu kompliziert... aber die Sache mit dem notify passt wie die Faust aufs Auge.

Gruß,
Stephan
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 06 November 2016, 21:53:35
Sorry, beim define in der Kommandozeile müssen es zwei ;; sein damit dann ein ; in der DEF steht. Habe das oben geändert!
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Skenik am 08 November 2016, 22:31:45
Hallo Otto
Das erste teil der code funktioniert wie er soll das licht geht nach 15 min aus.
Das zweite (attr n_AusNach15min disabledForIntervals 06:00-00:00) teil hat nur 1 mal funktioniert.
Jezt schaltet sich das licht egal zu welcher zeit nach 15 min aus.
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 08 November 2016, 22:40:49
Sorry, war ein Fehler von mir: disabledForIntervals kann nicht über Mitternacht gehen. Du musst also 06:00-24:00 eingeben.
Siehe commandref (http://fhem.de/commandref_DE.html#disabledForIntervals)

Gruß Otto
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Skenik am 08 November 2016, 22:41:42
Super
Vielen Dank
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Ice81 am 09 Dezember 2016, 13:08:04
Hallo zusammen,
Ich bin auch auf etwas ähnliches auf der Suche, wobei Ich einen kleinen Denkfehler habe.
Ich habe im Hochbett von meiner Tochter einen HM-PB-2-WM55-2 (Funktaster) angebracht, wenn Sie abends mal raus muss, das Licht darüber schalten kann. Leider kommt Sie im Schlaf ab und an gegen den Schalter und das Licht brennt die ganze Nacht.
Hab Ich mir gedacht, über ein Doif einen Timer zu setzen der dann nach 7 Minuten sich wieder abschaltet. Leider ist mir nun aufgefallen, das das Doif pünktlich um 22:00 Uhr für 7 Minuten immer das Licht einschaltet. Das ist nun nicht immer Sinne des Erfinders gewesen.
Mein Definition schaut so aus:
DOIF ([22:00 - 05:00] and [HM_319763] =~ "HM_319763_Btn_02 Short") (set HM_2B8C42 on-for-timer 420) DOELSE (set HM_2B8C42 Aus)

Hätte jemand eine Idee, wie Ich es ändern könnte ? Ich hätte sonst an einen Dummy gedacht.

Lg
Ralf
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Damian am 09 Dezember 2016, 13:52:18
Zitat von: Ice81 am 09 Dezember 2016, 13:08:04
Hallo zusammen,
Ich bin auch auf etwas ähnliches auf der Suche, wobei Ich einen kleinen Denkfehler habe.
Ich habe im Hochbett von meiner Tochter einen HM-PB-2-WM55-2 (Funktaster) angebracht, wenn Sie abends mal raus muss, das Licht darüber schalten kann. Leider kommt Sie im Schlaf ab und an gegen den Schalter und das Licht brennt die ganze Nacht.
Hab Ich mir gedacht, über ein Doif einen Timer zu setzen der dann nach 7 Minuten sich wieder abschaltet. Leider ist mir nun aufgefallen, das das Doif pünktlich um 22:00 Uhr für 7 Minuten immer das Licht einschaltet. Das ist nun nicht immer Sinne des Erfinders gewesen.
Mein Definition schaut so aus:
DOIF ([22:00 - 05:00] and [HM_319763] =~ "HM_319763_Btn_02 Short") (set HM_2B8C42 on-for-timer 420) DOELSE (set HM_2B8C42 Aus)

Hätte jemand eine Idee, wie Ich es ändern könnte ? Ich hätte sonst an einen Dummy gedacht.


Lg
Ralf

Um 22:00 nicht triggern lassen:

DOIF ([?22:00 - 05:00] ...

Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Otto123 am 09 Dezember 2016, 15:12:41
Hallo Ralf,

und mein notify wäre es nicht? Das ist doch eigentlich ein "das Kind hat das Licht vergessen" notify.  8)
define nty_LichAus notify HM_2B8C42:on sleep 420;; set $NAME off
attr nty_LichAus disabledForIntervals 05:00-22:00


Aber mit der Korrektur von Damian geht es auch. ;)

Gruß Otto
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Ice81 am 10 Dezember 2016, 11:56:21
Moin Moin,

das setzten des Fragezeichen hat das Problem gelöst  :D Vielen Vielen Dank Damian.
@Otto, deinen Code werde Ich auch noch testen, evtl. kann Ich diesen für was anderes nutzen.

Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: CoolTux am 10 Dezember 2016, 12:13:49
Noch eine kleine Zwischenidee. Der Taster schaltet doch einen Aktor. Bei mir habe ich im Register vom Aktor es so eingestellt das erstens nur auf ein Long reagiert wird und dann das Licht nach 15m aus geht. Kann mal alles direkt im Aktor machen. Fhem kann ja auch mal ausfallen  ;)
Titel: Antw:Homematic Lichtschalter mit zeitsteuerung
Beitrag von: Ice81 am 11 Dezember 2016, 12:21:06
Hallo, FHEM fällt nie aus (Sonst geht der WAF Faktor bei uns zuhause für Hausautomation ganz tief in den Keller  :) )
Das mit dem Fragzeichen hat mein Problem voll und ganz gelöst, Ich kann meiner 7 jährigen Tochter auch noch nicht bei bringen, wenn Sie im Schlaf gegen den Schalter kommt, diesen länger drücken soll  ;D
Ich habe die Long funktion in der Stube zum Rolladen schließen genommen.