Ankündigung

Einklappen
Keine Ankündigung bisher.

Beschattungsmakro, Freigabe und Systemstart

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

    Beschattungsmakro, Freigabe und Systemstart

    Hallo,

    ich habe in meinem Beschattungsmakro noch eingebaut, dass die Jalousie wieder hochgefahren wird, wenn die Freigabe entzogen wird:

    [highlight=epc] if !Freigabe then write(GARolloFahren,AUF) endif [/highlight]
    Das klappt auch so weit ganz gut. Nur, wenn ich jetzt die Applikation neu in den eibPC lade wird die Jalousie nach dem Neustart ebenfalls hochgefahren, auch wenn man das zu dem Zeitpunkt gar nicht möchte, z.B weil es schon Nacht ist.
    Die Erweiterung der if-Abfrage
    [highlight=epc] if !Freigabe and !systemstart() then write(GARolloFahren,AUF) endif [/highlight]hat leider auch nicht zum Erfolg geführt. Die Jalousie fährt trotzdem nach dem Neustart wieder hoch.
    Habt Ihr einen Tipp für mich, wie ich verhindern kann, dass beim Systemstart die Jalousie hier ebenfalls hochgefahren wird?

    Ciao, Peter

    #2
    Eher so:
    [highlight=epc] if systemstart() then Freigabe=sun() endif [/highlight]
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      #3
      Sorry, da habe ich mich sicher nicht deutlich genug ausgedrückt. Freigabe ist ein Parameter, der an das Makro übergeben wird (so wie in der EnertexBeschattung.lib) und mit dem ich steuern kann, ob die Beschattung aktiv ist, oder nicht:
      [highlight=epc]
      :begin BeschattungJalousie(Freigabe, GABehangFahren, GALamellePosition, GradEin, GradAus)

      // ... Logik für die Beschattungssteueerung

      // Wenn Beschattungsfreigabe weggenommen wird, fährt der Rollo hoch
      if (!Freigabe and !systemstart()) then write(GABehangFahren,AUF) endif

      :end
      [/highlight]
      D.h. ich möchte mit der Anweisung daür sorgen, dass die Jalousie hochgefahren wird, wenn die Freigabe Variable Ihren Wert von 1 nach 0 ändert, jedoch nicht beim Systemstart.

      Kommentar


        #4
        Zitat von kermit42 Beitrag anzeigen
        Sorry, da habe ich mich sicher nicht deutlich genug ausgedrückt.
        Die Anweisung kannst Du aus den Makro rausnehmen und nur einmal im Hauptprogramm wie oben beschrieben ergänzen.
        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
        Enertex Produkte kaufen

        Kommentar


          #5
          Ich würde das so machen um das "Problem des Systemstarts" zu umgehen (ungetestet):
          Code:
          if change (Freigabe) and Freigabe = 0 then write(GABehangFahren,AUF) endif
          Damit muß die Freigabe auf 1 stehen damit der then-Teil ausgeführt ist und der Reboot (Freigabe=0) ist abgefangen.

          Kommentar


            #6
            Zitat von Sandman60 Beitrag anzeigen
            Ich würde das so machen um das "Problem des Systemstarts" zu umgehen (ungetestet):
            Code:
            if change (Freigabe) and Freigabe = 0 then write(GABehangFahren,AUF) endif
            Wenn du Freigabe==0 oder !Freigabe schreibst, sollte das funktionieren.

            Kommentar


              #7
              Danke für die Anregung. change(Freigabe) als zusätzliche Bedingung für das if, das hört sich gut an. Werde ich nachher gleich mal testen.

              Ciao, Peter

              Kommentar

              Lädt...
              X