Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem nach Update auf 2.308

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

    #31
    Das wird somit relativ übersichtlich:
    [highlight=epc]
    // Makros ....
    Bei_Sonnenuntergang_Gedeckelt_mitFreigabe(SUGedFr2 9,FreigabeVar,"Licht Wohnen-2/2/3",AUS,22060000,22,31,00)
    Bei_Sonnenaufgang_Gedeckelt_mitFreigabe(Sonnenaufg ang1,FreigabeVar,"Rolläden Ost-5/2/0",RAUF,7200000,07,28,00)
    ...
    // Zustandsmaschine in [EibPC]
    FreigabeVar=AUS
    TFrueh=chtime(00,00,01) and !chtime(12,00,00)
    // Zustand 1: Frühmodus
    if TFrueh and !sun() then FreigabeVar=AUS endif
    // Zustand 2: TagModus
    if sun() then FreigabeVar="Anwesenheit-8/1/1" endif
    // Zustand3 Spätmodus
    if !TFrueh and !sun() then FreigabeVar="Anwesenheit-8/1/1" endif
    [/highlight]
    Besonders ist hier die Verwendung der Variable TFrueh. Diese ist ist über eine Verknüpfung von einer Schaltuhr um Mitternacht und nach Mittag realisiert. Grundsätzlich muss hier sichergestellt werden, dass TFrueh um 0:00 Uhr auf EIN und sicher vor dem Sonnenuntergang auf AUS steht.

    Ich habe dieses Beispiel ins Handbuch übernommen. Es zeigt doch hoffentlich recht eindrucksvoll, wie einfach das ist.
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      #32
      kleiner Hinweis: Webseite aktualisieren...

      auf eurer Webseite steht immer noch:
      Enertex® EibPC PatchUpdate (v2.306)

      der Link geht aber auf v2.309

      generelle wäre es besser die Version im Namen mitaufzunehemn- dann wird eine andere Version nicht überschrieben (PatchUpdate.zip) und man sieht sofort (ohne entpacken & readme lesen) welche Version im Zip ist...
      EPIX
      ...und möge der Saft mit euch sein...
      Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

      Kommentar


        #33
        Hoi

        Ja das ärgert mich auch jedes mal, wenn im ZIP einfach README.TXT steht.
        Sowohl im Patchupdate als auch im EibStudioupdate als auch bei den Macrolibs.
        Wenn ich das einfach rüberkopiere dann überschreibt das readme vom Patch dasjenige vom EibStudio usw.
        Ausserdem bevorzuge ich Kleinschreibung, zumindest bei der Endung .txt

        Ich würde
        readme_patch.txt
        readme_firmware.txt
        readme_macrolibs.txt
        bevorzugen.
        Grüsse Bodo
        Fragen gehören ins Forum, und nicht in mein Postfach;
        EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

        Kommentar


          #34
          Zitat von EPIX Beitrag anzeigen
          der Link geht aber auf v2.309
          Inhaltlich ok, ansonsten aber sehr OT hier an dieser Stelle.
          offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
          Enertex Produkte kaufen

          Kommentar


            #35
            Ich glaube das war der erste Beitrag seit langem der nicht OFFTOPIC war.

            Beim Verschieben hast du vermutlich die Überschriften vertauscht.....
            Der schöne Niederrhein läßt Grüssen

            Andreas


            Alter Hof mit neuer Technik

            Kommentar


              #36
              Hallo Michael,

              vielen Dank für die Konfig.
              Ich habe das mal wie folgt für Testzwecke umgesetzt.

              Code:
              [Macros]
              //Test für Zustandsabfrage
              Bei_Sonnenuntergang_Gedeckelt_mitFreigabe(Test1,FreigabeVar,"Funkdose 1 Flur Schalten-7/0/3",EIN,1900000,22,31,00)
              Bei_Sonnenaufgang_Gedeckelt_mitFreigabe(Test2,FreigabeVar,"Funkdose 1 Flur Schalten-7/0/3",AUS,72000000,09,28,00)
               
              ...
              [EibPC]
              // Zustandsmaschine in [EibPC]
              FreigabeVar=AUS
              TFrueh=chtime(00,00,01) and !chtime(12,00,00)
              // Zustand 1: Frühmodus
              if TFrueh and !sun() then FreigabeVar=AUS endif
              // Zustand 2: TagModus
              if sun() then FreigabeVar="Anwesenheit-8/1/1" endif
              // Zustand3   Spätmodus
              if !TFrueh and !sun() then FreigabeVar="Anwesenheit-8/1/1" endif 
               
              //-Anwesenheit
              if button(4)==1 then {write("Anwesenheit-8/1/1",!"Anwesenheit-8/1/1")} endif
              if "Anwesenheit-8/1/1" then display(4,$Abwesend$,ABSENT,DARKRED,BLINKBLUE) else display(4,$Anwesend$,PRESENT,ACTIVE,GREEN) endif
              //
              Ich habe das Ganze um 14:45h geladen und den Button für die Abwesenheit betätigt. Da wurde der Befehl für die Rollos zum hochfahren ausgelöst. Das ist soweit nicht problematisch.

              Dann passierte jedoch bei Sonnenuntergang folgendes:
              Code:
              2013-01-18 16:25:00 | Sender: EibPC | GA: "Licht Flur-0/0/5" | Wert: EIN | Typ: Binärwert |  Schreiben
              % 2013-01-18 16:25:00 | Sender: EibPC | GA: "Funkdose 1 Flur Schalten-7/0/3" | Wert: AUS | Typ: Binärwert |  Schreiben
              Dabei wundern mich zwei Dinge.
              1.)
              Warum wurde ein AUS für die Funkdose (also mein Testobjekt) gesendet?
              2.)
              Warum wurde plötzlich ein EIN für das Licht im Flur gesendet?

              Zu 2.)
              Hierzu habe ich folgenden ergänzenden Code, der das Licht bei Abwesenheit und nach Sonnenuntergang über einen Türkontakt beim Betreten einschaltet.

              Code:
              //Eingangstür
              if (!"Türkontakt-8/1/3") and ("Anwesenheit-8/1/1") and (sun()==0b01) then write ("Licht Flur-0/0/5",EIN) endif
              Es wäre klasse, wenn du da Infos zu den Hintergründen hättest.
              Vielen Dank im Voraus.
              Jens

              Kommentar


                #37
                Zitat von jjmargis Beitrag anzeigen
                1.)
                Warum wurde ein AUS für die Funkdose (also mein Testobjekt) gesendet?
                Sorry, da war noch ein Bug: Der Code schaut ja nur nach, ob Anwesenheit gedrückt wurde, wenn der Tag/Nacht-Übergang da ist. FreigabeVar wird also nur beim Wechsel von sun() verändert und nicht beim Wechsel von "Anwesenheit-8/1/1".
                Also muss der Code sein:
                [highlight=epc]
                FreigabeVar=AUS
                TFrueh=chtime(00,00,01) and !chtime(12,00,00)
                // Zustand 1: Frühmodus
                if TFrueh and !sun() then FreigabeVar=AUS endif
                // Zustand 2: TagModus
                if sun() and change("Anwesenheit-8/1/1") then FreigabeVar="Anwesenheit-8/1/1" endif
                // Zustand3 Spätmodus
                if !TFrueh and !sun() and change("Anwesenheit-8/1/1") then FreigabeVar="Anwesenheit-8/1/1" endif
                [/highlight]
                2.)
                Warum wurde plötzlich ein EIN für das Licht im Flur gesendet?
                Ist doch der Code hier:
                [highlight=epc]
                //Eingangstür
                if (!"Türkontakt-8/1/3") and ("Anwesenheit-8/1/1") and (sun()==0b01) then write ("Licht Flur-0/0/5",EIN) endif
                [/highlight]
                "Türkontakt-8/1/3" wird auf AUS stehen. Ggf. mit initGA arbeiten...
                offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                Enertex Produkte kaufen

                Kommentar


                  #38
                  Danke dir, werde ich morgen versuchen zu testen.

                  Ggf. mit initGA arbeiten...
                  Du meinst sicher ich sollte den beim Neustart des EibPC auf AUS setzen, richtig?

                  Hab ich noch nicht gemacht, muss ich mir anschauen.

                  Kommentar


                    #39
                    Nabend Michael,

                    ich habe das nun wie folgt umgesetzt.

                    Code:
                    [Macros]
                    ...
                    Bei_Sonnenuntergang_Gedeckelt_mitFreigabe(SUGedFr1,FreigabeVar,"Alle Rolläden auf/ab-4/3/0",RUNTER,19000000,22,30,00)
                    Bei_Sonnenuntergang_Gedeckelt_mitFreigabe(SUGedFr2,FreigabeVar,"Funkdose 1 Flur-Treppe Schalten-7/0/2",EIN,600000,22,30,00)
                    Bei_Sonnenuntergang_Gedeckelt_mitFreigabe(SUGedFr12,FreigabeVar,"Funkdose 1 Flur-Treppe Schalten-7/0/2",AUS,30000000,23,02,00)
                    Bei_Sonnenuntergang_Gedeckelt_mitFreigabe(SUGedFr10,FreigabeVar,"Funkdose 2 WZ Süd Schalten-7/0/1",EIN,600000,22,30,00)
                    Bei_Sonnenuntergang_Gedeckelt_mitFreigabe(SUGedFr11,FreigabeVar,"Funkdose 2 WZ Süd Schalten-7/0/1",AUS,19060000,22,31,00)
                    Bei_Sonnenaufgang_Gedeckelt_mitFreigabe(Sonnenaufgang1,(FreigabeVar) and (!"Beschattung Aktivierung-8/1/0"),"Rolläden Ost-5/2/0",RAUF,7200000,07,28,00)
                    Bei_Sonnenaufgang_Gedeckelt_mitFreigabe(Sonnenaufgang2,(FreigabeVar) and (!"Beschattung Aktivierung-8/1/0"),"Wohnen - Süd Rolläden-5/0/5",RAUF,7200000,07,28,00)
                    Bei_Sonnenaufgang_Gedeckelt_mitFreigabe(Sonnenaufgang3,FreigabeVar,"Rolläden West-5/2/2",RAUF,7200000,07,28,00)
                    Bei_Sonnenaufgang_Gedeckelt_mitFreigabe(Sonnenaufgang4,FreigabeVar,"Wohnen - Terrasse Rolläden-5/0/4",RAUF,7200000,07,28,00)
                    ...
                    [EibPC]
                    ...
                    // Zustandsmaschine in [EibPC]
                    FreigabeVar=AUS
                    TFrueh=chtime(00,00,01) and !chtime(12,00,00)
                    // Zustand 1: Frühmodus
                    if TFrueh and !sun() then FreigabeVar=AUS endif
                    // Zustand 2: TagModus
                    if sun() and change("Anwesenheit-8/1/1") then FreigabeVar="Anwesenheit-8/1/1" endif
                    // Zustand3   Spätmodus
                    if !TFrueh and !sun() and change("Anwesenheit-8/1/1") then FreigabeVar="Anwesenheit-8/1/1" endif 
                     
                    if button(4)==1 then {write("Anwesenheit-8/1/1",!"Anwesenheit-8/1/1")} endif
                    if "Anwesenheit-8/1/1" then display(4,$Abwesend$,ABSENT,DARKRED,BLINKBLUE) else display(4,$Anwesend$,PRESENT,ACTIVE,GREEN) endif
                     
                    //Eingangstür
                    if (!"Türkontakt-8/1/3") and ("Anwesenheit-8/1/1") and (sun()==0b01) then write ("Licht Flur-0/0/5",EIN) endif
                    Folgendes passiert:

                    1.) Der Türkontakt funktioniert korrekt. Das Licht geht an wie es soll.

                    2.) Aktivierung der Abwesenheit nach Sonnenaufgang und nach 12:00h
                    Code:
                    2013-01-20 14:58:59, EibPC, "Anwesenheit-8/1/1", Binärwert, EIN, Schreiben, bc 00 00 41 01 e1 00 81 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 14:58:59, EibPC, "Rolläden Ost-5/2/0", Binärwert, AUS, Schreiben, bc 00 00 2a 00 e1 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 14:58:59, EibPC, "Wohnen - Süd Rolläden-5/0/5", Binärwert, AUS, Schreiben, bc 00 00 28 05 e1 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 14:58:59, EibPC, "Rolläden West-5/2/2", Binärwert, AUS, Schreiben, bc 00 00 2a 02 e1 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 14:58:59, EibPC, "Wohnen - Terrasse Rolläden-5/0/4", Binärwert, AUS, Schreiben, bc 00 00 28 04 e1 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 16:38:00, EibPC, "Funkdose 1 Flur-Treppe Schalten-7/0/2", Binärwert, EIN, Schreiben, bc 00 00 38 02 e1 00 81 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 16:38:00, EibPC, "Funkdose 2 WZ Süd Schalten-7/0/1", Binärwert, EIN, Schreiben, bc 00 00 38 01 e1 00 81 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 21:44:40, EibPC, "Alle Rolläden auf/ab-4/3/0", Binärwert, EIN, Schreiben, bc 00 00 23 00 e1 00 81 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 21:45:40, EibPC, "Funkdose 2 WZ Süd Schalten-7/0/1", Binärwert, AUS, Schreiben, bc 00 00 38 01 e1 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    2013-01-20 23:02:00, EibPC, "Funkdose 1 Flur-Treppe Schalten-7/0/2", Binärwert, AUS, Schreiben, bc 00 00 38 02 e1 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    Das sieht so aus, wie es sein soll.

                    3.) Aktivierung der Abwesenheit vor Sonnenaufgang
                    Code:
                    2013-01-22 06:28:25, EibPC, "Anwesenheit-8/1/1", Binärwert, EIN, Schreiben, bc 00 00 41 01 e1 00 81 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
                    Das ist alles. Es passiert nichts weiter.
                    Es läuft also nicht, sofern im Frühmodus die Abwesenheit aktiviert wird.



                    Ich hoffe du hast da noch eine Idee?

                    Vielen Dank und viele Grüße
                    Jens

                    Kommentar

                    Lädt...
                    X