Ankündigung

Einklappen
Keine Ankündigung bisher.

Langzeitandimmen "WakeUP-Light"

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Knochen
    antwortet
    Was sagt der GA Monitor in der ETS?

    Einen Kommentar schreiben:


  • technicus
    antwortet
    Du hast recht, ist nicht eindeutig genug.
    Ein TS startet links die Szene Fernsehen und rechts die Szene Kino, welche ganz rechts ausgelöst wird.
    Diese funktioniert auch einwandfrei.
    Es geht hier um das langsame Herunterdimmen der Lampen wie im Kino.

    Einen Kommentar schreiben:


  • Knochen
    antwortet
    Ich glaub du hast da eine Schleife gebaut. Den Befehl kann man hier leider nicht einsehen.
    Szene triggert gleiche(?) Szene?

    Einen Kommentar schreiben:


  • technicus
    antwortet
    Hallo zusammen,
    viele Versuche habe ich unternommen, doch es will einfach nicht klappen.
    Ich habe den Langzeitdimmer von ozett (#27) in meinen HS 3 in der letzten Version 4.5.0.160627 "eingebaut".
    Mein Gira Dimmer 103200 startet wie gewünscht bei 25 % und fährt auch schön langsam und gleichmäßig runter auf 0 %, aber danach geht das Licht nochmal dreimal an und wieder aus. Egal, ob mit Ende erreicht oder nicht.
    Liegt es an meinem Dimmer oder wie kann ich es erreichen, dass bei 0 % auch das Licht ausgeschaltet bleibt?
    Langzeitdimmer.png
    Vielen Dank schon mal im Voraus für eure Hilfe.
    Gruß
    Carsten
    Angehängte Dateien

    Einen Kommentar schreiben:


  • ThorstenGehrig
    antwortet
    Die Fehlermeldung stimmt nicht mit deiner Fehlermeldung überein.
    Da fehlt ein < -Zeichen - sicher das der Code stimmt?
    Hast du das ZIP-Genommen?

    Gruß
    Thorsten

    Einen Kommentar schreiben:


  • svenkonstanzer
    antwortet
    Hallo zusammen!

    Ich habe den Baustein in betrieb, aber leider bleibt er am Ende des Wertes nicht stehen und überfährt den Endwert.
    In den Exceptions taucht folgender Fehler auf:
    [INFORMATION]File "/hs/compile/hs_logik.py", line 179, in addFormel
    File "case", line 1
    (EN[5] [ EN[4]) and (int(SN[4])=]EN[4])
    ^
    SyntaxError: invalid syntax
    [5012L, 19856L, 1L, '(EN[5] [ EN[4]) and (int(SN[4])=]EN[4])', '1', '', 2L, 0L, 0L, 0L][/INFORMATION]

    Den Baustein habe ich hier aus dem Thread übernommen, der Code sieht so aus:

    [INFORMATION]
    ################################################## ##################################
    # (C) 2005, Matthias Schmidt, v1.1 #
    ################################################## ##################################
    # BS : Langzeitdimmer aus/ab #
    ################################################## ##################################
    # 18.1.05 angelegt #
    # 12.1.10 optimiert für alternatives Aufdimmen #
    # 22.8.12 taktung sek für smoothes dimmen #
    # 25.9.12 timer am ende auch auf 1 sec gesetzt... #
    ################################################## ##################################

    #5000|"Text"|Typ(1-4)|Anz.Eingänge|.n.|Anzahl Ausgänge|.n.|.n.
    #5001|Anzahl Eingänge|Ausgänge|Offset|Speicher|Berechnung bei Start
    #5002|Index Eingang|Default Wert
    #5003|Speicher|Initwert|Remanent
    #5004|ausgang|Initwert|runden binär (0/1)|typ (1-send/2-sbc)
    #5012|abbruch bei bed. (0/1)|bedingung|formel|zeit|pin-ausgang|pin-offset|pin-speicher|pin-neg.ausgang

    5000|"smh@213\Langzeitdimmer"|1|5|"Ein/Aus"|"Dauer (min)"|"Istwert"|"Endwert"|"Startwert"|3|"Dimmwert "|"Ende erreicht"|"Ber. SW"

    5001|5|3|1|4|0

    # EN[x]
    5002|1|0 # Ein/Aus
    5002|2|6 # Dauer
    5002|3|0 # Istwert
    5002|4|0 # Endwert
    5002|5|0 # Startwert

    # Speicher
    5003|1|0|0 # Schrittweite berechnet
    5003|2|4|1 # fix 1 sec. unbenutzt (2012-08-22 TAKT von 10s auf 1s geaendert)
    5003|3|0|0 # Startwert
    5003|4|0|0 # Abbild A

    # Ausgänge
    5004|1|0|0|2|0 # Ausgang
    5004|2|0|1|2|0 # Ende erreicht=1
    5004|3|0|0|2|0 # berechnete Schrittweite

    # Logik Berechnung SW

    # wenn Einschaltung und Startwert = 0 -> Istwert in Startspeicher_SN3 und Abbild SN4
    5012|0|"(EC[1] and EN[1]==1 and EN[5]==0)"|"EN[3]"|""|0|0|3|0
    5012|0|"(EC[1] and EN[1]==1 and EN[5]==0)"|"EN[3]"|""|0|0|4|0

    # wenn Einschaltung und Startwert ungleich 0 -> Startvorgabe in Startspeicher_SN3 und Abbild SN4
    5012|0|"(EC[1] and EN[1]==1 and EN[5]!=0)"|"EN[5]"|""|0|0|3|0
    5012|0|"(EC[1] and EN[1]==1 and EN[5]!=0)"|"EN[5]"|""|0|0|4|0

    # wenn Einschaltung -> fertigmeldung rücksetzen
    5012|0|"(EC[1] and EN[1]==1)"|"0"|""|2|0|0|0

    #Berechnungsabbruch wenn AUS
    5012|1|"EN[1]==0 or AN[2]"|""|""|0|0|0|0

    # wenn eingeschaltet wird oder Dauer geändert wird -> Schrittweite berechnen und in Speicher und auf A3
    # Schrittweite = (Endwert - Startspeicher) / Dauer * 60 / 1
    5012|0|"(EC[1] and EN[1]) or (EC[2] and EN[2]>0)"|"float(EN[4]-SN[3])/float(EN[2]*60.0/1.0)"|""|3|0|1|0

    # wenn eingeschaltet wird oder Dauer geändert wird -> Startwert auf Dimmausgang ??? warum nicht Startspeicher
    5012|0|"(EC[1] and EN[1]) or (EC[2] and EN[2]>0)"|"EN[5]"|""|1|0|0|0

    # Timer event,
    # - Abbild um Schrittweite erhöhen
    5012|0|"EN[1] and OC[1]"|"SN[4]+SN[1]"|""|0|0|4|0

    # - Werte auf Ausgang ausgeben
    5012|0|"EN[1] and OC[1]"|"int(SN[4])"|""|1|0|0|0


    # 5012|Ende nach Ausführen|Bedingung|Formel|Zeitformel|Ausgang|Zeit speicher|Speichervariable|Negierter Ausgang
    # Ende nach Ausführen
    # | Bedingung
    # | | Formel
    # | | | Zeitformel
    # | | | | Ausgang
    # | | | | | Zeitspeicher
    # | | | | | | Speichervariable
    # | | | | | | | Negierter Ausgang
    # | | | | | | | |
    # 5012|0|"EC[1] and EN[1]"|"1"|""|1|0|0|2

    # Wenn Ende erreicht abdimmen, Fertigmeldung
    #wenn SN4=EN4 immer, direkt, Augang2 (Ende Erreicht)=1, Danach beenden
    5012|1|"int(SN[4])==EN[4]"|"1"|""|2|0|0|0

    #Wenn Abdimmen (E5 > E4) und ist <= soll (A1 < E4)
    5012|1|"(EN[5] > EN[4]) and (int(SN[4])<=EN[4])"|"1"|""|2|0|0|0

    #Wenn Hochdimmen (E5 < E4) und ist => soll (A1 => E4)
    5012|1|"(EN[5] < EN[4]) and (int(SN[4])=>EN[4])"|"1"|""|2|0|0|0

    # Timer neustarten, Basis 10 Sekunden, geaendert auf 1 sec (5te feld von hinten)
    5012|0|"(EC[1] and EN[1]) or OC[1]"|""|"1"|0|1|0|0
    [/INFORMATION]


    Ich beschreibe den Baustein mit verschiedenen Werten aus einer Szene, das heisst, es wird ständig hoch und runtergedimmt....
    Hat jemand eine Idee??

    Einen Kommentar schreiben:


  • ozett
    antwortet
    ABER:
    bei all dem feedback zum dimm-baustein: auch damals schon gut, was? (_lobhudelei_modus). Wie wäres es mit nem facelift? ist doch heute gar nicht mehr so schlimm .... ;-) und der stress ist seit 2005 bestimmt weniger geworden , da klappt das sicher .... ;-)

    Einen Kommentar schreiben:


  • MatthiasS
    antwortet
    Zitat von ozett Beitrag anzeigen
    klar,
    der baustein sieht irgendwie auch "in die jahre gekommen" aus, aber wer tut das nicht? ;-)
    Der war gut - so lange ist das schon her? Ich werde wirklich alt

    Einen Kommentar schreiben:


  • ozett
    antwortet
    klar,
    der baustein sieht irgendwie auch "in die jahre gekommen" aus, aber wer tut das nicht? ;-)

    ich muss allerdings nochmla sagen, dass ich keinerlei ahnung von baustein-programmierung habe, sondern nur nach allen Hilfen hier zuvor die Werte der Taktung von 10 auf 1 (sec.) geändert habe. in meinen kurzen test hats geklappt. also:


    Code:
    ####################################################################################
    #   (C) 2005, Matthias Schmidt, v1.1                                               #
    ####################################################################################
    #   BS : Langzeitdimmer aus/ab                                                     #
    ####################################################################################
    #   18.1.05 angelegt                                                               #
    #   12.1.10 optimiert für alternatives Aufdimmen                                   #
    #   22.8.12 taktung sek für smoothes dimmen
    #   25.9.12 timer am ende auch auf 1 sec gesetzt...
    ####################################################################################
    
    #5000|"Text"|Typ(1-4)|Anz.Eingänge|.n.|Anzahl Ausgänge|.n.|.n.
    #5001|Anzahl Eingänge|Ausgänge|Offset|Speicher|Berechnung bei Start
    #5002|Index Eingang|Default Wert
    #5003|Speicher|Initwert|Remanent
    #5004|ausgang|Initwert|runden binär (0/1)|typ (1-send/2-sbc)
    #5012|abbruch bei bed. (0/1)|bedingung|formel|zeit|pin-ausgang|pin-offset|pin-speicher|pin-neg.ausgang
    
    5000|"smh@213\Langzeitdimmer1s"|1|5|"Ein/Aus"|"Dauer (min)"|"Istwert"|"Endwert"|"Startwert"|3|"Dimmwert"|"Ende erreicht"|"Ber. SW"
    
    5001|5|3|1|4|0
    
    # EN[x]
    5002|1|0                # Ein/Aus
    5002|2|6                # Dauer
    5002|3|0                # Istwert
    5002|4|0                # Endwert
    5002|5|0                # Startwert
    
    # Speicher
    5003|1|0|0              # Schrittweite berechnet
    5003|2|4|1             # fix 1 sec. unbenutzt (2012-08-22 TAKT von 10s auf 1s geaendert)
    5003|3|0|0              # Startwert
    5003|4|0|0              # Abbild A
    
    # Ausgänge
    5004|1|0|0|2|0            # Ausgang
    5004|2|0|1|2|0            # Ende erreicht=1
    5004|3|0|0|2|0            # berechnete Schrittweite
    
    # Logik Berechnung SW  
    
    # wenn Einschaltung und Startwert = 0 -> Istwert in Startspeicher_SN3 und Abbild SN4
    5012|0|"(EC[1] and EN[1]==1 and EN[5]==0)"|"EN[3]"|""|0|0|3|0
    5012|0|"(EC[1] and EN[1]==1 and EN[5]==0)"|"EN[3]"|""|0|0|4|0
    
    # wenn Einschaltung und Startwert ungleich 0 -> Startvorgabe in Startspeicher_SN3 und Abbild SN4
    5012|0|"(EC[1] and EN[1]==1 and EN[5]!=0)"|"EN[5]"|""|0|0|3|0
    5012|0|"(EC[1] and EN[1]==1 and EN[5]!=0)"|"EN[5]"|""|0|0|4|0
    
    # wenn Einschaltung -> fertigmeldung rücksetzen
    5012|0|"(EC[1] and EN[1]==1)"|"0"|""|2|0|0|0
    
    #Berechnungsabbruch wenn AUS
    5012|1|"EN[1]==0 or AN[2]"|""|""|0|0|0|0
    
    # wenn eingeschaltet wird oder Dauer geändert wird -> Schrittweite berechnen und in Speicher und auf A3
    # Schrittweite = (Endwert - Startspeicher) / Dauer * 60 / 1
    5012|0|"(EC[1] and EN[1]) or (EC[2] and EN[2]>0)"|"float(EN[4]-SN[3])/float(EN[2]*60.0/1.0)"|""|3|0|1|0
    
    # wenn eingeschaltet wird oder Dauer geändert wird -> Startwert auf Dimmausgang ??? warum nicht Startspeicher
    5012|0|"(EC[1] and EN[1]) or (EC[2] and EN[2]>0)"|"EN[5]"|""|1|0|0|0
    
    # Timer event, 
    # - Abbild um Schrittweite erhöhen
    5012|0|"EN[1] and OC[1]"|"SN[4]+SN[1]"|""|0|0|4|0
    
    # - Werte auf Ausgang ausgeben
    5012|0|"EN[1] and OC[1]"|"int(SN[4])"|""|1|0|0|0
    
    
    # 5012|Ende nach Ausführen|Bedingung|Formel|Zeitformel|Ausgang|Zeitspeicher|Speichervariable|Negierter Ausgang
    #      Ende nach Ausführen
    #      |  Bedingung
    #      |  |                 Formel
    #      |  |                 |  Zeitformel
    #      |  |                 |  |  Ausgang
    #      |  |                 |  |  | Zeitspeicher
    #      |  |                 |  |  | | Speichervariable
    #      |  |                 |  |  | | | Negierter Ausgang
    #      |  |                 |  |  | | | |
    # 5012|0|"EC[1] and EN[1]"|"1"|""|1|0|0|2
    
    # Wenn Ende erreicht abdimmen, Fertigmeldung
    #wenn SN4=EN4 immer, direkt, Augang2 (Ende Erreicht)=1, Danach beenden
    5012|1|"int(SN[4])==EN[4]"|"1"|""|2|0|0|0
    
    #Wenn Abdimmen (E5 > E4) und ist <= soll (A1 < E4)
    5012|1|"(EN[5] > EN[4]) and (int(SN[4])<=EN[4])"|"1"|""|2|0|0|0
    
    #Wenn Hochdimmen (E5 < E4) und ist => soll (A1 => E4)
    5012|1|"(EN[5] < EN[4]) and (int(SN[4])=>EN[4]) "|"1"|""|2|0|0|0
    
    # Timer neustarten, Basis 10 Sekunden, geaendert auf 1 sec (5te feld von hinten)
    5012|0|"(EC[1] and EN[1]) or OC[1]"|""|"1"|0|1|0|0
    Angehängte Dateien

    Einen Kommentar schreiben:


  • kippi
    antwortet
    hi,

    könntest du mal kurz den Baustein posten oder den gesamten Code, würde das auch gerne mal ausprobieren, da ich ein schönes Fading fürs Heimkino bauen wollte. Und dazu wäre das ja wenns geht ideal

    Einen Kommentar schreiben:


  • ozett
    antwortet
    hi,
    nach ich habe nach meinen zweifeln einfach noch den timer aus dem vorhergehenden post von 10sec auf 1sec gesetzt. ich hatte ja (lange ist her) einfach deine ge-bug-fixte version genommen.

    ansonsten nur ausprobiert, ob der dimmer auch wie von dir vorgeschlagen mit den dezimalwerten als timer-minuten funktioniert. tut er, wie ja schon geschrieben.

    sieht soweit gut aus. wenn man wollte, dann könnte man diesen dimmer-baustein sicher noch um weitere kleinigkeiten "pimpen". ich würde fast glauben, dass matthias bei seinen innovationen dies seit 2009 bei sich irgendwo schon getan hat ?-) aber mir reicht das im augenblick so, für meinen zweck.

    und damit zur nächsten baustelle bei der knx-modelleisenbahn.. ok?
    gruss,
    ozett

    Einen Kommentar schreiben:


  • ThorstenGehrig
    antwortet
    Danke fürs Feedback.
    Kannst du bitte genau beschreiben was du geändert hast - für "nachfolgende Generationen".
    Und zum Beilegen: der Baustein kommt ja nicht von Gira... da müssten Sie zumindest Fragen ;-)

    Gruß
    Thorsten

    Einen Kommentar schreiben:


  • ozett
    antwortet
    blindflug

    habe jetzt zeit zum testen gefunden.
    und den timer auf 1 sec gesetzt.
    damit verschwindet eine kleine anfangsverzögerung. und der verlauf ist gleichmässiger. auf- und abdimmen geht gut.
    min-werte als 0,5 gehen (=30sec.) auch.

    Der Baustein von 2009 wird immer mal wieder nachgefragt, könnte fast schon beim HS dabei liegen, oder? ;-)

    ganz herzlichen dank,
    ozett

    Einen Kommentar schreiben:


  • ozett
    antwortet
    was ist denn damit:

    # Timer neustarten, Basis 10 Sekunden
    5012|0|"(EC[1] and EN[1]) or OC[1]"|""|"10"|0|1|0|0

    (bewege mich hier echt auf duennen eis, in diesem baustein ...)

    gruss,
    ozett

    Einen Kommentar schreiben:


  • ThorstenGehrig
    antwortet
    Hi
    die Version die ich einsetze dimmt auch von Dunkel nach hell - bei mir jeden Morgen :-)
    Und wenn ich mir den Baustein so anschaue ist der auch SEHR gut dokumentiert.

    ich würde das
    5003|2|4|10 # fix 10 sec. unbenutzt
    auf
    5003|2|4|1 # fix 1 sec. unbenutzt
    ändern
    und außerdem

    # wenn eingeschaltet wird oder Dauer geändert wird -> Schrittweite berechnen und in Speicher und auf A3
    # Schrittweite = (Endwert - Startspeicher) / Dauer * 60 / 10
    5012|0|"(EC[1] and EN[1]) or (EC[2] and EN[2]>0)"|"float(EN[4]-SN[3])/float(EN[2]*60.0/10.0)"|""|3|0|1|0

    auf

    # wenn eingeschaltet wird oder Dauer geändert wird -> Schrittweite berechnen und in Speicher und auf A3
    # Schrittweite = (Endwert - Startspeicher) / Dauer * 60 / 1
    5012|0|"(EC[1] and EN[1]) or (EC[2] and EN[2]>0)"|"float(EN[4]-SN[3])/float(EN[2]*60.0/1.0)"|""|3|0|1|0


    Damit müsste der Baustein sekündlich takten.
    Evtl. kannst du mit dem Wert noch spielen - z.B. 0.5 sekunden...
    Nimm bitte die Version die ein paar posts weiter oben von mir hochgeladen wurde...

    Alles ohne Garantie und ohne Gewähr.

    Gruß
    Thorsten

    Einen Kommentar schreiben:

Lädt...
X