Hilfe bei einem programm

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Antworten
Linnet998
Beiträge: 110
Registriert: 04.07.2018, 21:46
Danksagung erhalten: 2 Mal

Hilfe bei einem programm

Beitrag von Linnet998 » 06.07.2018, 03:14

Screenshot_20180706-015744_Samsung Internet.jpg
Hi, habe hier ein Programm was nicht so läuft wie ich es möchte.. Und brauche mal hilfe wie ich es schalten muss!!!
Ich weiss das Programm im Anhang ist völlig falsch!!!

Soll wie folgt ablaufen

Hell (vari)und raum besetzt(vari) soll nichts passieren
Dunkel(vari) und raum besetzt(vari) soll wohnzimmerlicht an gehen.
Egal ob dunkel(vari)oder hell(vari)sobald raum nicht besetzt(vari) soll wohnzimmerlicht sofort ausgehen küchenlicht und küchenbeleutung erst nach 1min und dunstabzugshaube erst nach 6min ausgehen...soweit ist alles gut
Nun mein Problem sollte innerhalb der verzögerten ausschaltzeit die vari wieder auf besetzt gehen dann sollen die ausschaltverzögerungen gestoppt werden und die lichter anbleiben(Aber nur die aktoren die vorher auch an waren, nichts neues anschalten)
Zudem soll das wohnzimmerlicht eingeschaltet werden wenn der raum besetzt ist und die vari von hell auf dunkel springt.
Ausserdem soll wenn es dunkel(vari) ist und raum besetzt (vari)und ich nachträglich das wohnzimmerlicht per schalter ausschalte... er nicht von alleine wieder angehen

Und am besten ohne skript

Danke schonmal im voraus

manfredh
Beiträge: 4155
Registriert: 09.09.2012, 10:41
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 78 Mal
Danksagung erhalten: 301 Mal

Re: Hilfe bei einem programm

Beitrag von manfredh » 06.07.2018, 13:47

Ich schiebe dich mal in die Schublade "relative Anfänger". :D

Folgende grundsätzliche Tipps:

- Erstelle keine Programme, in denen mehrere verschiedene Funktionen / Szenarien stecken. Schon die Verschahctelung mit mehreren "Sonst, wenn..." birgt zu viele Fallstricke. Es gibt hier Profis (!), die grundsätzlich keine Programme mit "Sonst, wenn..." erstellen.
Mache lieber (zumindest anfangs) für jede einzelne Funktion ein eigenes Programm.

- Wenn du etwas komplexeres programmierst (und das Abbrechen von Verzögertem Ausschalten ist durchaus schon komplex), fange mit einzelnen Grundfunktionen an. In deinem Beispiel würde ich mal das Wohnzimmer- oder Küchenlicht alleine programmieren.

Zum konkreten Problem, spielen wir mal ein Szenario theoretisch durch:
- erstelle ein Programm zum Einschalten, wenn eine Person den Raum betritt (Raum besetzt)
- ein zweites Programm zum Ausschalten, wenn die letze Person rausgeht (keiner im Raum)

Damit hast du schon mal erreicht, dass das Licht einen erneuten Einschaltbefehl erhält, wenn kurz nach "keiner im Raum" wieder einer reingeht.

Wenn aber beim vorherigen Verlassen das Licht verzögert ausgeschaltet wird, und der Raum vor dem Ausschalten wieder betreten wird, kannst du die Ausschaltverzögerung löschen, wenn du den Haken bei "vor dem Ausführen laufende Verzögerungen löschen" setzt. Damit wird die laufende Ausschaltverzögerung gelöscht.
Es gibt 10 Arten von Menschen: solche die Binärcode verstehen und solche, die ihn nicht verstehen.

Bratmaxe
Beiträge: 1573
Registriert: 28.05.2015, 12:48
Wohnort: Willich
Hat sich bedankt: 4 Mal
Danksagung erhalten: 10 Mal

Re: Hilfe bei einem programm

Beitrag von Bratmaxe » 06.07.2018, 16:03

ich kann mich manfredh nur anschließen, erstelle am besten für jeden Aktor ein eigenes Programm (bzw. 2 Programme, eins zum Ein. und eins zum Ausschalten). Es ist übersichtlicher und man erkennt Fehler viel leichter.

Der letzte Sonst-Wenn + dann Pfad macht keinen Sinn, aber ich denke das meintest du mit
"Ich weiss das Programm im Anhang ist völlig falsch!!!"
Gruß Carsten

Linnet998
Beiträge: 110
Registriert: 04.07.2018, 21:46
Danksagung erhalten: 2 Mal

Re: Hilfe bei einem programm

Beitrag von Linnet998 » 09.07.2018, 07:55

Hmm ok... leider habe ich bereits soviele programme laufen, wovon manche um einiges länger sind als dieses Beispiel.
Wenn ich die alle ohne sonst wenn und jeden aktor einzeln schalten würde ohhh... dann bin ich bestimmt über 150 einzelne Programme also übersichtlicher ist das nicht :D.
Aber ich werde euren Tip umsetzen und sie erheblich kürzen... Und die Idee mit dem neu schalten für die Verzögerung mache ich auch.
Und mit völlig falsch meinte ich das Ende ja... dieses Bild sollte nur als Beispiel dienen um ungefähr zu sehen was ich vor habe.
Danke

Benutzeravatar
JRiemann
Beiträge: 3903
Registriert: 12.11.2015, 21:05
Wohnort: Aurich
Danksagung erhalten: 3 Mal

Re: Hilfe bei einem programm

Beitrag von JRiemann » 09.07.2018, 10:05

Nicht die Länge eines Programms ist entscheidend sondern dessen Inhalt.
Bei mir laufen Programme mit 10 und mehr SONST-WENN absolut fehlerfrei.
Wenn diese Programme richtig aufgebaut sind, sparsam mit unterschiedlichen Auslösern umgegangen wird, die einzelnen Blöcke inhaltlich lückenlos definiert sind und damit nicht durch falsche Auslöser abgearbeitet werden können, klappt es bestimmt.
Man muss eben nur 100%ig wissen und voraussagen können welche Abläufe und Ergebnisse entstehen könnten.
Je mehr unterschiedliche Auslöser und Blöcke in dem Programm enthalten sind desto unvorhersehbarer wird der Ablauf sogar für die Profis. Das kann sogar soweit führen das letztlich Aktionen ausgeführt werden welche absolut nicht mehr erklärbar sind.
Noch fehleranfälliger wird es wenn Dinge die grundsätzlich nichts miteinander zu tun haben in einem Programm vereint werden sollen. Ein übertriebenes aber aktuelles Beispiel: Man packt nicht die Beregnung des Rasens, die Rollladensteuerung und das befüllen von Variablen in ein Programm.

Auf welche Endsumme an Programmen Du dann kommst ist doch total egal. Bei mir laufen auf der CCU über 250 kleine und auch "Monsterprogramme". Pro Fenster und Rollladen kommen da teilweise 5-10 Programme zusammen. Die "Alarmanlage" umfasst im Kern über 10 Programme usw. Dazu kommen dann noch unzählige Direktverknüpfungen. Wenn man diesen Programmen sinnvolle Namen zuteilt ist alles relativ übersichtlich und nachvollziehbar.
Trotzdem würde ich jedem Anfänger raten die Programme, DV´s usw. übersichtlich zu dokumentieren. Leider habe ich das damals verpasst und scheue jetzt den großen Zeitaufwand um dies nachzuholen.
Viele Grüße!
Jörg

Linnet998
Beiträge: 110
Registriert: 04.07.2018, 21:46
Danksagung erhalten: 2 Mal

Re: Hilfe bei einem programm

Beitrag von Linnet998 » 11.07.2018, 16:05

20180711_155533.jpg
20180711_155522.jpg
20180711_155510.jpg
Hab's jetzt anders gelöst anstatt die Verzögerung der lampen zu unterbrechen habe ich ne 2te variable hinzugefügt die die nach rausgehen des zimmers um 2 min verzögert umspringt...Und die wird unterbrochen. das funzt ganz gut jetzt.
Bei denn lampen direkt hat er sie immer denoch abgeschaltet.
Aber das grosse Hauptproblem ist mir dabei aufgefallen, muss wohl seit dem letzten fw update sein... das wenn man programme ändert oder sache hinzufügt/rausnimmt. Sie völlig rumspinnen. Wenn man das Programm löscht und neuschreibt gehen sie wieder

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“