Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Moderator: Co-Administratoren
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Das hätte ich auch gedacht. Aber mit der Zeile, genauso wie oben reinkopiert, kommt bei mir dieses Ergebnis:
So richtig kappiere ich es ja auch nicht...
-
- Beiträge: 13
- Registriert: 26.12.2018, 10:14
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Hi zusammen,
erstmal danke für das tolle Skript, es könnte bei mir sehr viel Anwendung finden und in einem von drei Anwendungsfällen (Rollladensteuerung) funktioniert es bereits, bei den Lampen habe ich etwas Probleme:
Problem 1
Ich habe eine Beleuchtung (via Osram Lightify), die möchte ich 15 Minuten vor Sonnenuntergang bis 60 Minuten nach Sonnenaufgang anschalten, ansonsten soll sie aus sein. Mein Problem: das Programm schaltet einfach nicht ein.. Was mache ich falsch?
Problem 2
Die Weihnachtsbeleuchtung soll (via Osram Lightfiy Plugs) kurz nach Sonnenuntergang bis 22:30 angeschaltet sein und dann morgens wieder ab 5:30 bis nach Sonnenaufgang. Das funktioniert komischerweise nur sehr sporadisch, d.h. es geht an (abends) aber um 22:30 meistens nicht aus. Wo liegt da mein Denkfehler?
erstmal danke für das tolle Skript, es könnte bei mir sehr viel Anwendung finden und in einem von drei Anwendungsfällen (Rollladensteuerung) funktioniert es bereits, bei den Lampen habe ich etwas Probleme:
Problem 1
Ich habe eine Beleuchtung (via Osram Lightify), die möchte ich 15 Minuten vor Sonnenuntergang bis 60 Minuten nach Sonnenaufgang anschalten, ansonsten soll sie aus sein. Mein Problem: das Programm schaltet einfach nicht ein.. Was mache ich falsch?
Code: Alles auswählen
(Bedingung: Wenn...
Minuten_vor_SU im Wertebereich kleiner als -15.00)
ODER
(Minuten_vor_SA im Wertebereich kleiner als -60.00)
DANN
Dimmwert sofort auf 40%
SONST
Dimmwert sofort auf 0%
Die Weihnachtsbeleuchtung soll (via Osram Lightfiy Plugs) kurz nach Sonnenuntergang bis 22:30 angeschaltet sein und dann morgens wieder ab 5:30 bis nach Sonnenaufgang. Das funktioniert komischerweise nur sehr sporadisch, d.h. es geht an (abends) aber um 22:30 meistens nicht aus. Wo liegt da mein Denkfehler?
Code: Alles auswählen
Bedingung:
(
Wenn...
Tageszeit_hh.mm im Wertebereich von 5.30 h bis kleiner 9.30 h
)
ODER
(
Minuten_vor_SU im Wertebereich kleiner als 15.00
UND
Tageszeit_hh.mm im Wertebereich kleiner als 22.30 h
)
DANN
An
SONST
Aus
- Meyer11
- Beiträge: 89
- Registriert: 28.11.2017, 11:32
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Ostfriesland
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 3 Mal
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Zum Problem 1:
Hier werden die min vor SU definiert.
Müsste also 15 und nicht -15 heißen
-15 min sind 15 Min nach SU
Und kleiner als -60 ist dann logischerweise -61, -62, ... (Negativbereich)
Sprich dreh alles mal um: min vor SU =15 und min vor SA größer als -60....
Hier werden die min vor SU definiert.
Müsste also 15 und nicht -15 heißen
-15 min sind 15 Min nach SU
Und kleiner als -60 ist dann logischerweise -61, -62, ... (Negativbereich)
Sprich dreh alles mal um: min vor SU =15 und min vor SA größer als -60....
Gruß Frank
-
- Beiträge: 13
- Registriert: 26.12.2018, 10:14
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Danke, Frank! Daran könnte es gelegen haben - zumindest leuchtet die Lampe jetzt So ganz hab ich das ganze noch nicht verinnerlicht. Hast Du -oder jemand der Mitlesenden- eine Idee, wo mein Denkfehler beim zweiten Problem ist? ich hab sogar extra noch ein "Sonst wenn nach 22:30 --> aus" mit drin, wird aber oft nicht getriggert.Meyer11 hat geschrieben: ↑30.12.2018, 21:44Zum Problem 1:
Hier werden die min vor SU definiert.
Müsste also 15 und nicht -15 heißen
-15 min sind 15 Min nach SU
Und kleiner als -60 ist dann logischerweise -61, -62, ... (Negativbereich)
Sprich dreh alles mal um: min vor SU =15 und min vor SA größer als -60....
- Meyer11
- Beiträge: 89
- Registriert: 28.11.2017, 11:32
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Ostfriesland
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 3 Mal
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Ich würde den Sonst wenn Zweig mal komplett wieder rausnehmen...
Noch besser , so meine Erfahrung, das komplette Programm löschen und neu schreiben.(Hab immer mal wieder Probleme mit "nur" geänderten Programmen)
Zu guter letzt könnte man daraus noch zwei Programme machen, eines für morgens, eines für abends.
Ich habe da so eine ähnliche Lösung, die sich auch nicht in einem Programm realisieren ließ...
Teste es doch mal...
Noch besser , so meine Erfahrung, das komplette Programm löschen und neu schreiben.(Hab immer mal wieder Probleme mit "nur" geänderten Programmen)
Zu guter letzt könnte man daraus noch zwei Programme machen, eines für morgens, eines für abends.
Ich habe da so eine ähnliche Lösung, die sich auch nicht in einem Programm realisieren ließ...
Teste es doch mal...
Gruß Frank
-
- Beiträge: 325
- Registriert: 10.03.2015, 10:54
- Wohnort: Süd NDS
- Hat sich bedankt: 3 Mal
- Danksagung erhalten: 8 Mal
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Hallo,
ich habe mal versucht meine etwas komplexere Steuerung umzustellen: Rollo Runter:
30 Minuten nach Sonnenuntergang Rollo auf 50%, wenn es nicht schon unter 50% ist.
60 Minuten nach Sonnenuntergang Rollo zu, aber nicht vor 18:00
Rollo Hoch:
60 Minuten nach Sonnenaufgang auf 25%, aber nicht vor 7:30
120 Minuten nach Sonnenaufgang auf 60%, aber nicht vor 7:30
Die Reihenfolge der Blöcke ist wichtig. Es muss immer erst die stärkere Bedingung abgefragt werden:
wenn z.B. -60 erfüllt ist, ist auch -30 erfüllt. Deshalb muss -60 zuerst abgefragt werden.
wenn z.B. -30 erfüllt ist, ist nich auch -60 erfüllt, deshalb kann -30 nach -60 abgefragt werden.
Ausgenutzt wir auch, das von 0-12:00 Minuten vor_SU auf 999 steht und damit nicht die ersten Bedingungen ziehen.
Deshalb sollte alles in einem Skript gehen.
Wenn der Sonnenuntergang nun um 16:45:
17:16 M_v_SU = -31 Skript triggert, 2. Block:Rollo fährt auf 50%
17:46 M_v_SU = -61 Skript triggert. aber weder 1 noch 2 sind erfüllt
18:00 M_v_SU = -75 Skript triggert. 1. Block: Rollo fährt auf 0%
Wenn der Sonnenuntergang nun um 17:45:
18:00 M_v_SU = -15 Skript triggert, aber weder 1 noch 2 sind erfüllt
18:16 M_v_SU = -31 Skript triggert. 2. Block: Rollo fährt auf 50%
18:46 M_v_SU = -61 Skript triggert. 1. Block: Rollo fährt auf 0%
Wenn der Sonnenuntergang nun um 18:45:
18:00 M_v_SU = +45 Skript triggert, aber weder 1 noch 2 sind erfüllt
19:16 M_v_SU = -31 Skript triggert. 2. Block: Rollo fährt auf 50%
19:46 M_v_SU = -61 Skript triggert. 1. Block: Rollo fährt auf 0%
Was ich noch gerne aufnehmen würde, wenn das Rollo per Hand gesteuert wird, soll es für x-Minuten gesperrt werden.
ich habe mal versucht meine etwas komplexere Steuerung umzustellen: Rollo Runter:
30 Minuten nach Sonnenuntergang Rollo auf 50%, wenn es nicht schon unter 50% ist.
60 Minuten nach Sonnenuntergang Rollo zu, aber nicht vor 18:00
Rollo Hoch:
60 Minuten nach Sonnenaufgang auf 25%, aber nicht vor 7:30
120 Minuten nach Sonnenaufgang auf 60%, aber nicht vor 7:30
Die Reihenfolge der Blöcke ist wichtig. Es muss immer erst die stärkere Bedingung abgefragt werden:
wenn z.B. -60 erfüllt ist, ist auch -30 erfüllt. Deshalb muss -60 zuerst abgefragt werden.
wenn z.B. -30 erfüllt ist, ist nich auch -60 erfüllt, deshalb kann -30 nach -60 abgefragt werden.
Ausgenutzt wir auch, das von 0-12:00 Minuten vor_SU auf 999 steht und damit nicht die ersten Bedingungen ziehen.
Deshalb sollte alles in einem Skript gehen.
Wenn der Sonnenuntergang nun um 16:45:
17:16 M_v_SU = -31 Skript triggert, 2. Block:Rollo fährt auf 50%
17:46 M_v_SU = -61 Skript triggert. aber weder 1 noch 2 sind erfüllt
18:00 M_v_SU = -75 Skript triggert. 1. Block: Rollo fährt auf 0%
Wenn der Sonnenuntergang nun um 17:45:
18:00 M_v_SU = -15 Skript triggert, aber weder 1 noch 2 sind erfüllt
18:16 M_v_SU = -31 Skript triggert. 2. Block: Rollo fährt auf 50%
18:46 M_v_SU = -61 Skript triggert. 1. Block: Rollo fährt auf 0%
Wenn der Sonnenuntergang nun um 18:45:
18:00 M_v_SU = +45 Skript triggert, aber weder 1 noch 2 sind erfüllt
19:16 M_v_SU = -31 Skript triggert. 2. Block: Rollo fährt auf 50%
19:46 M_v_SU = -61 Skript triggert. 1. Block: Rollo fährt auf 0%
Was ich noch gerne aufnehmen würde, wenn das Rollo per Hand gesteuert wird, soll es für x-Minuten gesperrt werden.
MfG
Sissiwup
--------------------------------------------
CCu3,CCu2Gateway,RaspiGateway,LanGateway
--------------------------------------------
Sissiwup
--------------------------------------------
CCu3,CCu2Gateway,RaspiGateway,LanGateway
--------------------------------------------
-
- Beiträge: 13
- Registriert: 26.12.2018, 10:14
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Wow, sissiwup, genial. Da werde ich ein paar Ideen übernehmen. Mir gefällt das schrittweise öffnen der Rollläden. Die Idee ist gut. Mit einer Aufgabenstellung schließe ich mich deinem Skript direkt an. Meine Timer scheinen jetzt zuverlässig zu funktionieren. Der "Trick", einfach das selbe Programm nochmal neu zu machen hat geholfen. Warum auch immer.
Aber jetzt kommt meine neue Herausforderung Die Aktionen triggern jetzt natürlich alle 3 Minuten (so ist mein CUxD Timer eingestellt), d.h. sobald ich ein Rollladen händisch öffne oder -und das ist nerviger- meine Osramlichter ändere (Helligkeit, Farbe, etc.), dann bleibt die Änderung im besten Fall 3 Minuten erhalten, also bis zum nächsten Triggern des Programms. Meine Idee ist, für jedes Programm eine Variable hinzuzufügen (true/false) um sicherzustellen, dass das Skript nur einmal "pro Bedingung" (Licht an) ausgeführt wurde und erst wieder ausgeführt wird, wenn die Variable auf false bei Licht aus gesetzt wurde. Gibts was eleganteres? Oder brauche ich für n Programme dann n neue Variablen?
Aber jetzt kommt meine neue Herausforderung Die Aktionen triggern jetzt natürlich alle 3 Minuten (so ist mein CUxD Timer eingestellt), d.h. sobald ich ein Rollladen händisch öffne oder -und das ist nerviger- meine Osramlichter ändere (Helligkeit, Farbe, etc.), dann bleibt die Änderung im besten Fall 3 Minuten erhalten, also bis zum nächsten Triggern des Programms. Meine Idee ist, für jedes Programm eine Variable hinzuzufügen (true/false) um sicherzustellen, dass das Skript nur einmal "pro Bedingung" (Licht an) ausgeführt wurde und erst wieder ausgeführt wird, wenn die Variable auf false bei Licht aus gesetzt wurde. Gibts was eleganteres? Oder brauche ich für n Programme dann n neue Variablen?
-
- Beiträge: 325
- Registriert: 10.03.2015, 10:54
- Wohnort: Süd NDS
- Hat sich bedankt: 3 Mal
- Danksagung erhalten: 8 Mal
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Warum hast du im ersten Block bei aktualiserung verwendet. Daher kommt wohl der 3 Minuten Trigger.dermitdemhaustanzt hat geschrieben: ↑07.01.2019, 19:41Wow, sissiwup, genial. Da werde ich ein paar Ideen übernehmen. Mir gefällt das schrittweise öffnen der Rollläden. Die Idee ist gut. Mit einer Aufgabenstellung schließe ich mich deinem Skript direkt an. Meine Timer scheinen jetzt zuverlässig zu funktionieren. Der "Trick", einfach das selbe Programm nochmal neu zu machen hat geholfen. Warum auch immer.
Aber jetzt kommt meine neue Herausforderung Die Aktionen triggern jetzt natürlich alle 3 Minuten (so ist mein CUxD Timer eingestellt), d.h. sobald ich ein Rollladen händisch öffne oder -und das ist nerviger- meine Osramlichter ändere (Helligkeit, Farbe, etc.), dann bleibt die Änderung im besten Fall 3 Minuten erhalten, also bis zum nächsten Triggern des Programms. Meine Idee ist, für jedes Programm eine Variable hinzuzufügen (true/false) um sicherzustellen, dass das Skript nur einmal "pro Bedingung" (Licht an) ausgeführt wurde und erst wieder ausgeführt wird, wenn die Variable auf false bei Licht aus gesetzt wurde. Gibts was eleganteres? Oder brauche ich für n Programme dann n neue Variablen?
Bildschirmfoto 2019-01-07 um 19.34.44.png
> Ich habe mein Skript auf Timer umgestellt, da kommt es nicht zu Mehrfachauslösungen.
Ansonsten kann man wunderbar über VIS die Zeiten anzeigen und auch für den aktuellen Tag anpassen (am nächsten Tag wird es wieder gesetzt).
Siehe zur Anleitung mein Post in Tipps und Tricks.
MfG
Sissiwup
--------------------------------------------
CCu3,CCu2Gateway,RaspiGateway,LanGateway
--------------------------------------------
Sissiwup
--------------------------------------------
CCu3,CCu2Gateway,RaspiGateway,LanGateway
--------------------------------------------
-
- Beiträge: 13
- Registriert: 26.12.2018, 10:14
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Danke für deine Aufmerksamkeit und Hilfe, Sissiwupp. Das mit der Aktualisierung ist mir nie aufgefallen, habs jetzt auf "Auf Änderung" umgestellt und jetzt sind alle Skripte wieder ein reines Glücksspiel Manchmal gehen die Lampen an oder die Rollos hoch, manchmal nicht. Manchmal aus, zu Zeiten, an denen nix ausgehen sollte und wieder an, an denen nix angehen sollte
Ich bin am verzweifeln, v.a. weil ich eigentlich dachte dass ich programmieren kann (also so richtig im vim, nicht mit Klickibunti ) aber die WebUI Logik treibt mich in den Wahnsinn. Das Debugging fällt mir schwer, ich will vermeiden dass ich an der falschen Stelle suche. Nicht dass das Osram Lightify Gateway der Übeltäter ist oder so. Andererseits funktioniert es mit HM Rollladenaktoren auch nicht zuverlässig.
Für die Rollos werde ich mal dein neues Skript ausprobieren, vielleicht habe ich damit mehr Erfolg.
Viele Grüße und vielen Dank
Ich bin am verzweifeln, v.a. weil ich eigentlich dachte dass ich programmieren kann (also so richtig im vim, nicht mit Klickibunti ) aber die WebUI Logik treibt mich in den Wahnsinn. Das Debugging fällt mir schwer, ich will vermeiden dass ich an der falschen Stelle suche. Nicht dass das Osram Lightify Gateway der Übeltäter ist oder so. Andererseits funktioniert es mit HM Rollladenaktoren auch nicht zuverlässig.
Für die Rollos werde ich mal dein neues Skript ausprobieren, vielleicht habe ich damit mehr Erfolg.
Viele Grüße und vielen Dank
-
- Beiträge: 13
- Registriert: 26.12.2018, 10:14
Re: Universelles Astro/Zeit-Skript für Rolladen, Lampen und mehr
Jetzt bin Ichs nochmal. Einfache Aufgabe, aber ich sehe vor lauter Bäumen den Wald nicht mehr
Aufgabe: Eine Lampe soll in der Zeit von 30 Minuten nach Sonnenuntergang bis 15 Minuten nach Sonnenaufgang (also quasi nachts) an sein, sonst aus. Mein Script sieht so aus:
Aber irgendwas ist immer. Mal geht sie falsch an, mal nicht aus Was hab ich denn falsch gemacht?
Aufgabe: Eine Lampe soll in der Zeit von 30 Minuten nach Sonnenuntergang bis 15 Minuten nach Sonnenaufgang (also quasi nachts) an sein, sonst aus. Mein Script sieht so aus:
Code: Alles auswählen
WENN Minuten_vor_SA im Wertebereich größer als -30.00
ODER
Minuten_vor_SU im Wertebereich kleiner als -15.00
DANN
Lampe = AN
SONST
Lampe = AUS