FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Thoffi1978 am 04 Dezember 2015, 07:22:12

Titel: [gelöst] Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 04 Dezember 2015, 07:22:12
Hallo Liebe Gemeinde.

Ich habe meine Jalousien soweit gut am laufen. Den einen Tag zur ersten, den anderen Tag mal zur zweiten Stunde.
Das funktioniert auch alles gut. Mit einer Autofunktion, kann ich die Steuerung an, aus schalten.
Gibt es aber die Möglichkeit, dass wenn mein Kind "morgen" zur Zweiten muss, ich die Jalousien einmalig zur zweiten Stunde, also 45 min später hochfahren lassen kann? Natürlich soll sich diese Funktion nach Ausführung wieder zurück setzten, damit dann wieder alles Automatisch läuft?

Für Ideen & Vorschläge bin ich dankbar.

Lieben Gruß
Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: AET_FHEM am 04 Dezember 2015, 08:54:39
Hallo,

wie wäre es mit einem dummy "zweite Stunde"
die normale Jalosien steuerung ruft den dummy ab if "zweite Stunde" on dann mach nichts!

ein Notify auf "zweite Stunde" on
--> dieser legt dann ein at (Uhrzeit der zweiten Stunde) an in diesem ist dann inbegriffen das er den dummy "zweite stunde auf off setzt.....
-> ergo wird der befehl nur einmal ausgeführt...

=> hoff(e) hab dich richtig verstanden...

Grüße
_Æ-
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 07 Dezember 2015, 18:06:29
Hallo _Æ-.

Das mit dem Dummy und der Abfrage bekomme ich hin.
define zweite_Stunde dummy
Kannst du mir bei de, Notify helfen.?

Vielen Dank
Hoffi

Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: AET_FHEM am 13 Dezember 2015, 10:41:43
Hallo,

Also du hast ein dummy zweite_Stunde

-> da fällt mir was ein :-) brauchst kein notify auf den dummy zweite_Stunde du kannst ja deine normale Schaltung nehmen und dann
Rollo_hoch_regulär
if (Value("zweite_Stunde") eq "on") {fhem ("define Rollo_zweite_stunde  at 09:00 set rolloHoch;;define ZweiteStunde_zurueck at 09:010 set zweite_Stunde off")}

=> alles nicht getestet aber so in die Richtung würde ich es machen ...
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Muschelpuster am 13 Dezember 2015, 11:18:24
Moin,

Das ist doch wieder ein Fall für DOIF: Wenn Zeit = 1. Stunde und Dummy = off, dann Rollo hoch, sonst wenn Zeit = 2. Stunde und Dummy = on dann Rollo hoch und Dummy aus. Dazu noch ein Feriendummy und die Anweisungen für die Tage zur 2. Stunde und fertig.
Und dann kannst Du noch das hier in Ruhe genießen: http://fhem.de/commandref.html#WeekdayTimer

getimte Grüße
Niels
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: AET_FHEM am 14 Dezember 2015, 06:39:57
Hey,

Ja genau....
oder mit doif nur damit hab ich noch wenig Erfahrung, ich hab das meiste bei mir mit notifi und if!
doif ist natürlich die schönere variante....
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 14 Dezember 2015, 19:49:49
Zitat von: Thoffi1978 am 04 Dezember 2015, 07:22:12
Hallo Liebe Gemeinde.

Ich habe meine Jalousien soweit gut am laufen. Den einen Tag zur ersten, den anderen Tag mal zur zweiten Stunde.
Das funktioniert auch alles gut. Mit einer Autofunktion, kann ich die Steuerung an, aus schalten.
Gibt es aber die Möglichkeit, dass wenn mein Kind "morgen" zur Zweiten muss, ich die Jalousien einmalig zur zweiten Stunde, also 45 min später hochfahren lassen kann? Natürlich soll sich diese Funktion nach Ausführung wieder zurück setzten, damit dann wieder alles Automatisch läuft?

Für Ideen & Vorschläge bin ich dankbar.

Lieben Gruß
Hoffi
Die Infos sind zu allgemein, wie sehen die relevanten Definitionen Deiner Steuerung konkret aus?
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 15 Dezember 2015, 07:49:34
Vielen Dank für die ganzen Antworten.
Bis jetzt sieht meine Schaltung wie folgt aus (Donnerstags ist der spätere Start bereits integriert):


([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] < 200 and [{sunrise("CIVIL",0,"07:00","07:40")}|1235]) (set Jalo_WZ_TV_vorne 50)
DOELSEIF
([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] > 200 and [{sunrise("CIVIL",0,"07:00","07:40")}|1235]) (set Jalo_WZ_TV_vorne on)
DOELSEIF
([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] < 200 and [{sunrise("CIVIL",0,"07:40","08:15")}|4]) (set Jalo_WZ_TV_vorne 50)
DOELSEIF
([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] > 200 and [{sunrise("CIVIL",0,"07:40","08:15")}|4]) (set Jalo_WZ_TV_vorne on)
DOELSEIF
([15:00-22:00] and [Helligkeit:state] < 0.5) (set Jalo_WZ_TV_vorne off)
DOELSE
()

Hier hätte ich nun gerne eine spontane Möglichkeit zu schalten, falls ein Stunde morgens ausfällt.
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 15 Dezember 2015, 10:38:41
Eine Möglichkeit wäre es, die Zeitangaben indirekt zu setzen und im Bedarfsfall um 45 min zu erhöhen, s. http://fhem.de/commandref_DE.html#DOIF_Indirekten_Zeitangaben (http://fhem.de/commandref_DE.html#DOIF_Indirekten_Zeitangaben)
Einen Dummy anlegen
sponti dummy
setList state:0,45
webCmd state

und im DOIF den Bedingungsteil
[{sunrise("CIVIL",0,"07:00","07:40")}|1235]
ergänzen, etwa so
[[({sunrise("CIVIL",0,"07:00","07:40")} + [sponti]*60)]|1235]
und den Befehlsteil so
(set dein Kram, set sponti 0), damit die Zeitverschiebung nur einmalig erfolgt.

Nicht getestet, Syntax unvollständig
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: bugster_de am 15 Dezember 2015, 14:02:31
Hi,

ich habe das bei mir so gelöst:
neben dem Bett liegt eine kleine Intertechno Fernbedienung. Wenn man einmal drückt, dann wird das öffnen der Jalousien um 1h nach hinten geschoben, zweimal drücken sind zwei Stunde, dreimal etc.

Somit ist auch der Fall abgedeckt, dass man morgens aufwacht, sich unwohl fühlt und nicht durch automatische Rolläden geweckt werden will.
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 16 Dezember 2015, 19:31:12
Hallo,
Beim Einfügen von
[[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde]*60)]|1235]

gibt es folgende Fehlermeldung:
di_vorne DOIF: no right bracket: ([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] < 200 and [[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde]*60)]|1235] (set Jalo_WZ_TV_vorne 50)DOELSEIF([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] > 200 and [{sunrise("CIVIL",0,"07:00","07:40")}|1235]) (set Jalo_WZ_TV_vorne on)DOELSEIF([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] < 200 and [{sunrise("CIVIL",0,"07:40","08:15")}|4]) (set Jalo_WZ_TV_vorne 50)DOELSEIF([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] > 200 and [{sunrise("CIVIL",0,"07:40","08:15")}|4]) (set Jalo_WZ_TV_vorne on)DOELSEIF([15:00-22:00] and [Helligkeit:state] < 0.5) (set Jalo_WZ_TV_vorne off)DOELSE()

Könnt Ihr mir beim Syntax helfen.

Danke
Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 16 Dezember 2015, 19:44:18
Ist bei Dir die "codemirror" Erweiterung für den DEF-Editor aktiviert?

Wennn nicht, siehe hier:http://forum.fhem.de/index.php/topic,45373.msg371668.html#msg371668 (http://forum.fhem.de/index.php/topic,45373.msg371668.html#msg371668)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 16 Dezember 2015, 19:59:21
Hallo Elert,
danke für den Hinweis. Klappt gut und hab auch gleich was gefunden.

ich bekomme aber nun folgende Meldung:
di_vorne DOIF: unknown expression format: [({sunrise("CIVIL",0,"07:00","07:40")}+[zweite_Stunde]*60)]

Dank
Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 16 Dezember 2015, 20:19:39
Da hat die Klammerprüfung wohl versagt:
so
[[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde]*60])|1235]

statt
[[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde]*60)]|1235]

Ich hatte gehofft Du findest meinen Fehler ;)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 16 Dezember 2015, 20:50:49
Vielen Dank

der Fehler blieb noch weiterhin, die Klammern im vorderen Teil mußten noch angepasst werden. Jetzt ging es ohne Probleme.

Was bedeutet
[zweite_Stunde]*60
zweite Stunde ist klar. was bedeutet  *60 ?

Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Muschelpuster am 17 Dezember 2015, 06:35:26
Ellert hat es etwas eleganter gelöst wie ich. Du setzt den Dummy zweite_stunde = 1, wenn die Verzögerung gewünscht ist, ansonsten ist zweite_stunde= 0.
Und 0*60=0 sowie 1*60=60. Das zu der Zeit dazu und...

mathematische Grüße
Niels
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: CoolTux am 17 Dezember 2015, 07:29:55
Ich habe da einen anderen Ansatz gewählt. Ich weiß nicht wie alt Dein Kind ist. Meine ist 13, Kids in dem alter haben Handy und/oder Tablet. Da ich Technikrat bin hat meine beides. Sie hat ihre eigene TabletUI womit sie in ihrem Zimmer alles steuern kann. Dazu gehört auch ein Wecker. Und da kommt die Jalosie ins Spiel. Ich verwende Residents, Roomate mit dem entsprechenden Wakup Skripten. Hier lasse ich 2 Minuten nach der Weckzeit die Jalosie hoch fahren. Meine Tochter muß sich nur den Wecker stellen den sie ja eh brauch und gut ist.
Nur so als alternative.



Grüße
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 17 Dezember 2015, 08:52:27
Zitat von: Thoffi1978 am 16 Dezember 2015, 20:50:49
Vielen Dank

der Fehler blieb noch weiterhin, die Klammern im vorderen Teil mußten noch angepasst werden. Jetzt ging es ohne Probleme.

Was bedeutet
[zweite_Stunde]*60
zweite Stunde ist klar. was bedeutet  *60 ?

Hoffi

Du kannst "zweite_stunde" auf einen Wert in Minuten setzen. Die Zeitangabe im DOIF benötigt Sekunden.

Minuten x 60 = Sekunden

In Deinem Fall setzt Du den Dummy auf 45, wenn Du um 1 Schulstunde verzögern möchtest, deshalb
Zitatsponti dummy
setList state:0,45
webCmd state

Du solltest in dem Zweig, wo Du die Zeitverschiebung einbaust auch "zweite_stunde" wieder auf 0 setzen, sonst müsstest Du es jedesmal per Hand zurücksetzen, wie hier schon beschrieben
Zitat(set dein Kram, set sponti 0)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 17 Dezember 2015, 10:28:19
Hallo
@CoolTux. Das mit dem Wecker ist auch eine gute Idee, dazu muss ich mich aber neu einlesen. Wird dann ein schlechtWetterProjekt.

@Ellert. Vielen Dank für die Beschreibung der Funktion. Mir war nur das *60 nicht ganz klar. Nun ist aber alles nachvollziehbar.

Kann ich *00:01:00 anstatt *60 nutzen bei folgendem Code:
([06:50|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)
DOELSEIF
([07:35|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)

Da wird *60 nicht mit wrong timespect nicht erkannt.

Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 17 Dezember 2015, 11:08:56
ZitatKann ich *00:01:00 anstatt *60 nutzen bei folgendem Code:
Code: [Auswählen]

([06:50|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)
DOELSEIF
([07:35|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)

Da wird *60 nicht mit wrong timespect nicht erkannt.
Ich wüsste nicht, wo Du das in dem DOIF eintragen möchtest.

Zitatwrong timespect
Da gibt es wohl noch ein Klammerproblem. Aber die Klammern kosten ja nichts.

Versuch mal
[([{sunrise("CIVIL",0,"07:00","07:40")}] + [zweite_Stunde]*60)|1235]
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 17 Dezember 2015, 12:40:25
Also, ich habe mal in die Commandref gesehen, da gibt es ein Beispiel unter http://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung_mit_Zeitberechnung (http://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung_mit_Zeitberechnung)

define di_light DOIF ([({sunset()}+900+int(rand(600)))])
    (set lamp on)
DOELSEIF ([([23:00]+int(rand(600)))])
    (set lamp off)


dieser Teil
Zitat([({sunset()}+900+int(rand(600)))])
zeigt die richtige Syntax

danach sollte das hier richtig sein
[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde] * 60)|1235]

Mit den Klammern habe ich öfter Probleme, wenn probieren nicht hilft, dann schaue ich auch schon mal in die Commandref, das hat bisher geholfen ;)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 17 Dezember 2015, 18:18:38
Hallo,
in diesem Code habe ich kein Sunset
([06:50|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)
DOELSEIF
([07:35|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)

hier muss das Zeitformat
*60
wohl anders eingetragen werden.?

Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 17 Dezember 2015, 18:42:46
sunset wird in dem Beispielcode verwendet. Du verwendest sunrise. Ich beziehe mich immer noch auf diese Frage:
Zitat von: Thoffi1978 am 16 Dezember 2015, 19:31:12
Hallo,
Beim Einfügen von
[[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde]*60)]|1235]

gibt es folgende Fehlermeldung:
di_vorne DOIF: no right bracket: ([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] < 200 and [[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde]*60)]|1235] (set Jalo_WZ_TV_vorne 50)DOELSEIF([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] > 200 and [{sunrise("CIVIL",0,"07:00","07:40")}|1235]) (set Jalo_WZ_TV_vorne on)DOELSEIF([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] < 200 and [{sunrise("CIVIL",0,"07:40","08:15")}|4]) (set Jalo_WZ_TV_vorne 50)DOELSEIF([SH_Ferientag] eq "0" and [Jalousie_Automatik] eq "Auto" and [Helligkeit:state] > 200 and [{sunrise("CIVIL",0,"07:40","08:15")}|4]) (set Jalo_WZ_TV_vorne on)DOELSEIF([15:00-22:00] and [Helligkeit:state] < 0.5) (set Jalo_WZ_TV_vorne off)DOELSE()

Könnt Ihr mir beim Syntax helfen.

Danke
Hoffi

und das, was dort einzufügen ist.

Der letzte Versuch etwas Fehlerfreies ist dieser Vorschlag:
[({sunrise("CIVIL",0,"07:00","07:40")} + [zweite_Stunde] * 60)|1235]

Hast Du das gemacht und funktioniert alles?

Das hier
ZitatKann ich *00:01:00 anstatt *60 nutzen bei folgendem Code:
Code: [Auswählen]

([06:50|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)
DOELSEIF
([07:35|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)

Da wird *60 nicht mit wrong timespect nicht erkannt.
habe ich nicht verstanden, das hat mich so sehr irritiert, dass ich dachte es gibt noch einen Fehler in dem DOIF, das wir vorher zusammen entwickelt haben.

Gibt es dort noch Fehler? Wenn ja, dann sollten wir diese beseitigen und erst etwas Neues anfangen, wenn der Fehler beseitigt ist.



Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 18 Dezember 2015, 09:20:55
Hallo Ellert,
ich habe heute nun die Funktion getestet. Der Sonnenaufgang war um 7:43Uhr. Die Jalousie blieb unten, scheint also zu funktionieren.
Leider ging die Jalousie nicht hoch... Kann ja auch nicht, da die Jalousie ja nur zwischen 7 und 7:45Uhr hochgehen soll.
Somit konnte ich leider nicht alles testen.

Vielleicht können wir den DOIF der zweiten Jalousie soweit "umbauen" das es mit der Funktioniert.
Das wäre dann dieser Code:
([06:50|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)
DOELSEIF
([07:35|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)

Das ist die Zeit fest definiert und man sollte schnell den Erfolg sehen ohne auf die Sonne zu warten :)

Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 18 Dezember 2015, 11:15:46
ZitatVielleicht können wir den DOIF der zweiten Jalousie soweit "umbauen" das es mit der Funktioniert.

Ich nehme wieder das Beispiel aus der Commandref
define di_light DOIF ([({sunset()}+900+int(rand(600)))])
    (set lamp on)
DOELSEIF ([([23:00]+int(rand(600)))])
    (set lamp off)

da ist das ([([23:00]+int(rand(600)))]) so ähnlich, wie Dein Problem. Es gibt eine feste Zeit [23:00] und es wird etwas dazu gezählt, dies hier +int(rand(600))

Nach dem Beispiel könntest Du Deins umbauen, etwa so:
Zitat([([06:50] + [zweite_Stunde] * 60)|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 12 Januar 2016, 07:43:37
Hallo,
jett, nach den Ferien habe ich wieder Zeit für meine Steuerung.
Bei dem Code:
[([{sunrise("CIVIL",0,"07:00","07:40")}+[zweite_Stunde]*60])|1235]
bekomme ich folgende Fehlermeldung:
PERL WARNING: Argument "*main::60" isn't numeric in addition (+) at (eval 16369) line 1.
und die Jalousie öffnete sich um
Zitat00:00:00 3: CUL_HM set Jalo_WZ_TV_vorne 50

Bei dem 2 Code
[07:35] + [zweite_Stunde] *60)|4]
reagiert die Jalousie gar nicht auf die zweite Stunde

Habr Ihr ein Tipp für mich?

Vielen Dank schon mal
Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 12 Januar 2016, 08:58:47
Zitat[([{sunrise("CIVIL",0,"07:00","07:40")}+[zweite_Stunde]*60])|1235]
Bitte beachten: http://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung_mit_Zeitberechnung
Zitat[07:35] + [zweite_Stunde] *60)|4]
Wie ist das durch die Klammerprüfung des DEF-Editors gerutscht ??? s. http://forum.fhem.de/index.php/topic,45373.msg371668.html#msg371668 (http://forum.fhem.de/index.php/topic,45373.msg371668.html#msg371668)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 17 Januar 2016, 19:50:15
Beim zweiten Code ist mir wohl was beim Kopieren runtergefallen.
der ganze Code lautet wie folgt:


([([06:50] + [zweite_Stunde]*60)|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
DOELSEIF
([([07:35] + [zweite_Stunde]*60)|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 17 Januar 2016, 20:08:53
Zitat von: Thoffi1978 am 17 Januar 2016, 19:50:15
Beim zweiten Code ist mir wohl was beim Kopieren runtergefallen.
der ganze Code lautet wie folgt:


([([06:50] + [zweite_Stunde]*60)|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
DOELSEIF
([([07:35] + [zweite_Stunde]*60)|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)

Sieht aus, als müsste es funktionieren. Wie sehen die Timer aus? Poste mal ein Listing des DOIF.
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 18 Januar 2016, 09:33:44
Hallo Ellert,
anbei die List:
Internals:
   DEF        ([([06:50] + [zweite_Stunde]*60)|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
DOELSEIF
([([07:35] + [zweite_Stunde]*60)|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
   NAME       WZ_Seite_hoch1
   NR         195
   NTFY_ORDER 50-WZ_Seite_hoch1
   STATE      initialize
   TYPE       DOIF
   Readings:
     2016-01-18 03:45:00   Device          SH_Ferientag
     2016-01-18 06:50:00   cmd_event       timer_1
     2016-01-18 06:50:00   cmd_nr          1
     2016-01-18 03:45:00   e_SH_Ferientag_STATE 0
     2016-01-18 06:50:00   state           initialize
     2016-01-18 07:39:48   timer_1_c1      19.01.2016 06:50:00|1235
     2016-01-18 07:39:48   timer_2_c2      19.01.2016 07:35:00|4
   Condition:
     0          DOIF_time_once($hash,$hash->{timer}{0},$wday,"1235") and InternalDoIf('SH_Ferientag','STATE','') eq "0" and InternalDoIf('Jalousie_Automatik','STATE','') eq "Auto"
     1          DOIF_time_once($hash,$hash->{timer}{1},$wday,"4") and InternalDoIf('SH_Ferientag','STATE','') eq "0" and InternalDoIf('Jalousie_Automatik','STATE','') eq "Auto"
   Days:
     0          1235
     1          4
   Devices:
     0           SH_Ferientag
     1           SH_Ferientag
     all         SH_Ferientag
   Do:
     0:
       0          set Jalo_WZ_Seite 50, set zweite_Stunde 0
     1:
       0          set Jalo_WZ_Seite 50, set zweite_Stunde 0
     2:
   Helper:
     globalinit 1
     last_timer 2
     sleeptimer -1
   Internals:
     0           SH_Ferientag:STATE
     1           SH_Ferientag:STATE
     all         SH_Ferientag:STATE
   Itimer:
     all         zweite_Stunde
   Readings:
   Realtime:
     0          06:50:00
     1          07:35:00
   State:
   Time:
     0          ([06:50]+[zweite_Stunde]*60)
     1          ([07:35]+[zweite_Stunde]*60)
   Timecond:
     0          0
     1          1
   Timer:
     0          0
     1          0
   Timerfunc:
   Timers:
     0           0
     1           1
   Trigger:
Attributes:
   do         always
   eventMap   off:Runter on:Hoch
   group      Jalousien_seite
   room       Jalousien,Wohnzimmer
   set        Rollo_Gruppe
   state      initialize
   userattr   room_map set set_map structexclude
   verbose    5


Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 18 Januar 2016, 15:58:51
Zitat19.01.2016 06:50:00|1235
19.01.2016 07:35:00|4

Bei diesen Timern müsste "zweite_Stunde" = 0 sein. Was steht in "zweite_Stunde", wenn Du das
Zitatreagiert die Jalousie gar nicht auf die zweite Stunde
beobachtest?
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 18 Januar 2016, 22:29:19
Halo.
Der Timer ragiert nicht auf die zweit_Stunde.
Es gibt sber eine Fehlermeldung
2016.01.18 22:25:26 1: PERL WARNING: Argument "*main::60" isn't numeric in addition (+) at (eval 17707) line 1./code]

Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 18 Januar 2016, 23:34:56
Zitat von: Thoffi1978 am 17 Januar 2016, 19:50:15
Beim zweiten Code ist mir wohl was beim Kopieren runtergefallen.
der ganze Code lautet wie folgt:


([([06:50] + [zweite_Stunde]*60)|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
DOELSEIF
([([07:35] + [zweite_Stunde]*60)|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)

Was steht in im Dummy "zweite_Stunde", wenn in dem zitierten Code ein Fehler auftritt?
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 19 Januar 2016, 10:01:17
Hallo.
Bei state steht 0 bzw 0,45
[codeternals:
   NAME       zweite_Stunde
   NR         210
   STATE      off
   TYPE       dummy
   Readings:
     2016-01-19 07:40:00   state           0
Attributes:
   eventMap   0,45:on 0:off
   room       Jalousien,Wohnzimmer
   setList    0,45
   webCmd     0,45:0

wenn ich 0.45, mit Punkt, benutze ist es das selbe Ergebnis.

Hoffi
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 19 Januar 2016, 10:57:30
Versuch es mal mit setList state:0,45
webCmd state
und eventMap weglassen.
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Jens_B am 19 Januar 2016, 11:09:50
Man könnte auch alle Rollladen einmalig über die Struktur Funktion Gleichzeitig schalten?


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Jens_B am 19 Januar 2016, 11:09:58
Man könnte auch alle Rollladen einmalig über die Struktur Funktion Gleichzeitig schalten?


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 19 Januar 2016, 16:32:57
Hallo Ellert,

die Verzögerung klappt.
Doch wenn das ganze auf 0 gestellt wird kommt folgender Fehler:
2016.01.19 16:26:18 1: PERL WARNING: Argument "*main::60" isn't numeric in addition (+) at (eval 29797) line 1.


@Jens_B: Inwiefern kann die Jalousie dadurch später geschaltet werden?

Vielen Dank
Hoffi  :)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 19 Januar 2016, 17:03:10
ZitatDoch wenn das ganze auf 0 gestellt wird kommt folgender Fehler:

Mach bitte nochmal ein Listing vom Dummy zweite_Stunde und vom DOIF für den Fehlerfall.
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 19 Januar 2016, 21:16:48
Hallo,
Hier die list vom Dummy

Internals:
   NAME       zweite_Stunde
   NR         210
   STATE      off
   TYPE       dummy
   Readings:
     2016-01-19 21:10:09   state           0
Attributes:
   eventMap   0.45:on 0:off
   room       Jalousien,Wohnzimmer
   setList    state:0,45
   webCmd     state

Und vom Doif
Internals:
   DEF        ([([16:31] + [zweite_Stunde]*60)|1235] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
DOELSEIF
([([07:35] + [zweite_Stunde]*60)|4] and [SH_Ferientag] eq "0" and [?Jalousie_Automatik] eq "Auto") (set Jalo_WZ_Seite 50, set zweite_Stunde 0)
   NAME       WZ_Seite_hoch1
   NR         195
   NTFY_ORDER 50-WZ_Seite_hoch1
   STATE      initialized
   TYPE       DOIF
   Readings:
     2016-01-19 16:29:44   state           initialized
     2016-01-19 21:10:09   timer_1_c1      20.01.2016 16:31:00|1235
     2016-01-19 21:10:09   timer_2_c2      20.01.2016 07:35:00|4
   Condition:
     0          DOIF_time_once($hash,$hash->{timer}{0},$wday,"1235") and InternalDoIf('SH_Ferientag','STATE','') eq "0" and InternalDoIf('Jalousie_Automatik','STATE','') eq "Auto"
     1          DOIF_time_once($hash,$hash->{timer}{1},$wday,"4") and InternalDoIf('SH_Ferientag','STATE','') eq "0" and InternalDoIf('Jalousie_Automatik','STATE','') eq "Auto"
   Days:
     0          1235
     1          4
   Devices:
     0           SH_Ferientag
     1           SH_Ferientag
     all         SH_Ferientag
   Do:
     0:
       0          set Jalo_WZ_Seite 50, set zweite_Stunde 0
     1:
       0          set Jalo_WZ_Seite 50, set zweite_Stunde 0
   Helper:
     globalinit 1
     last_timer 2
     sleeptimer -1
   Internals:
     0           SH_Ferientag:STATE
     1           SH_Ferientag:STATE
     all         SH_Ferientag:STATE
   Itimer:
     all         zweite_Stunde
   Realtime:
     0          16:31:00
     1          07:35:00
   State:
   Time:
     0          ([16:31]+[zweite_Stunde]*60)
     1          ([07:35]+[zweite_Stunde]*60)
   Timecond:
     0          0
     1          1
   Timer:
     0          0
     1          0
   Timerfunc:
   Timers:
     0           0
     1           1
Attributes:
   do         always
   eventMap   off:Runter on:Hoch
   group      Jalousien_seite
   room       Jalousien,Wohnzimmer
   set        Rollo_Gruppe
   state      initialize
   userattr   room_map set set_map structexclude
   verbose    5

Danke schon mal
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Ellert am 20 Januar 2016, 08:48:48
DOIF triggert auf dem Internal STATE des Dummys zweite_Stunde. Wenn Du über eventMap STATE auf on oder off mapst, dann erhältst Du die Fehlermeldung "isn't numeric". Das ist ja auch klar, denn on und off sind keine Zahlen.

Es gibt 2 Möglichkeiten:

1. Du verzichtest auf eventMap.

2. Du versuchst es mit [zweite_Stunde:state] statt [zweite_Stunde], wobei ich mir nicht sicher bin, ob das funktioniert.
Wenn Du eventMap verwenden möchtest, dann so "eventMap 45:on 0:off" und nicht so eventMap   "0.45:on 0:off"

Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Thoffi1978 am 20 Januar 2016, 10:06:14
Hallo Ellert,
vielen lieben Dank für Deine Geduld mit mir.

ich verzichte einfach auf eventMap.

Nun kommt auch keine Fehlermeldung.
klingt auch logisch, dass off und on nicht numerisch sind  ::)

Vielen Dank
Hoffi
Titel: Antw:[gelöst] Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Jens_B am 21 Januar 2016, 08:36:13
ZitatHallo Ellert,

die Verzögerung klappt.
Doch wenn das ganze auf 0 gestellt wird kommt folgender Fehler:
Code: [Auswählen]
2016.01.19 16:26:18 1: PERL WARNING: Argument "*main::60" isn't numeric in addition (+) at (eval 29797) line 1.


@Jens_B: Inwiefern kann die Jalousie dadurch später geschaltet werden?

Vielen Dank
Hoffi  :)

War mein Fehler ich hab beim überfliegen auf dem Handy in der Bahn nicht das Problem erfasst.... vergiss es einfach...:-)
Titel: Antw:Jalosien bei späterem Schulstart spontan schalten?
Beitrag von: Jens_B am 21 Januar 2016, 08:39:06
Zitat von: CoolTux am 17 Dezember 2015, 07:29:55
Ich habe da einen anderen Ansatz gewählt. Ich weiß nicht wie alt Dein Kind ist. Meine ist 13, Kids in dem alter haben Handy und/oder Tablet. Da ich Technikrat bin hat meine beides. Sie hat ihre eigene TabletUI womit sie in ihrem Zimmer alles steuern kann. Dazu gehört auch ein Wecker. Und da kommt die Jalosie ins Spiel. Ich verwende Residents, Roomate mit dem entsprechenden Wakup Skripten. Hier lasse ich 2 Minuten nach der Weckzeit die Jalosie hoch fahren. Meine Tochter muß sich nur den Wecker stellen den sie ja eh brauch und gut ist.
Nur so als alternative.



Grüße

Ohha, dann würde bei meinem 13 Jährigen Sohn aber am Samstag oder Sonntag der Rollladen gar (oder sehr sehr spät) nicht hochgehen ;-)...  Wenn er alles selber steuern könnte ;-)...