Ankündigung

Einklappen
Keine Ankündigung bisher.

Eltako FFG7B-rw auswerten (Fenstergriff-Sensor)

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

    Eltako FFG7B-rw auswerten (Fenstergriff-Sensor)

    Hallo zusammen,
    ich bin total neu dabei mit Edomi. Ich habe nun fast alle KNX-Grundfunktionen in meinem Haus umgesetzt und überlege mir nun nach und nach ein paar Logiken.
    Dabei wollte ich die Fenstergriff-Stellungen meiner Fenster abfragen und so visualisieren, dass wenn ich das Haus verlasse, dass ich dann daran erinnert werde, wenn irgendwo noch ein Fenstergriff auf der "offen-Position" steht (passiert tatsächlich andauernd).
    Vermutlich weil ich keinerlei Erfahrung mit den Logiken von Edomi (bzw. die unendlich vielen LBSen nicht kenne), habe ich nicht geschafft, eine schlanke Logik alleine für den Part des Fenstersensors zu erstellen. Deshalb habe ich gleich mal versucht, einen eigenen LBS dafür zu schreiben.
    Anbei der Code, ich habe mich zwar als Entwickler registriert, aber noch keine Rückmeldung erhalten. Da ich aber ausserdem auch komplett neu in php bin, stehen sicherlich einigen von Euch die Haare zu Berge. Deshalb freue ich mich auch über konstruktive Kritik und Verbesserungsvorschläge.

    Code:
    [I]###[DEF]###[/I]
    
    [name=Eltako FFG7B-rw auswerten]
    
    [e[I]#1=Status1 #init=0][/I]
    [e[I]#2=Status2 #init=0][/I]
    [e[I]#3=Batteriestatus #init=0][/I]
    [a[I]#1=][/I]
    [a[I]#2=][/I]
    [a[I]#3=][/I]
    
    [I]###[/DEF]###[/I]
    
    [I]###[HELP]###[/I]
    
    Dieser Baustein wertet [B]die[/B] Statusbits des Eltako FFG7B-rw-Fenstersensors aus[B].[/B] Getriggert wird der Baustein, wenn sich E1 oder E2 ändern[B].[/B]
    
    E1 = Statusbit 1
    E2 = Statusbit 2
    E3 = Statusbit Batterie
    
    Wenn E1 und E2 = 0, dann wird A1 = 0 und A2 kriegt das Ergebnis "Fenster geschlossen"
    Wenn E1 und E2 = 1, dann wird A1 = 1 und A2 kriegt das Ergebnis "Fenster geoeffnet"
    Wenn E1 = 1 und E2 = 0, dann wird A1 = 2 und A2 kriegt das Ergebnis "Fenster gekippt"
    Wenn E3 = 1 ist, dann kriegt A3 das Ergebnis "Batterie tauschen", ansonsten "Batterie ok"
    
    Versionhistorie:
    0.1 Initiale Version
    
    [I]###[/HELP]###[/I]
    
    [I]###[LBS]###[/I]
    
    <?
    
    [B]function[/B] LB_LBSID($id) {
        [B]if[/B] ($E=getLogicEingangDataAll($id)) {                     [I]//Daten aller Eingänge holen[/I]
            [B]if[/B] ($E[1]['refresh']==1 || $E[2]['refresh']==1) {     [I]//neues Telegramm?[/I]
                [B]if[/B] (($E[1]['value'])==0){
                  [B]if[/B] ($E[1]['value'] == $E[2]['value']){
                    setLogicLinkAusgang($id,1,0);
                    setLogicLinkAusgang($id,2,"Fenster geschlossen");
                  }
                }
                [B]if[/B] (($E[1]['value'])==1) {
                  [B]if[/B] ($E[1]['value'] == $E[2]['value']){
                    setLogicLinkAusgang($id,1,1);
                    setLogicLinkAusgang($id,2,"Fenster geoeffnet");
                  }
                  [B]else[/B] {
                    setLogicLinkAusgang($id,1,2);
                    setLogicLinkAusgang($id,2,"Fenster gekippt");
                  }
                [B]if[/B] (($E[3]['value'])==1) {
                  setLogicLinkAusgang($id,3,"Batterie tauschen");
                }[B]else[/B]{
                  setLogicLinkAusgang($id,3,"Batterie ok");
                }
                }
            }
        }
    }
    
    [B]?>[/B]
    
    [I]###[/LBS]###[/I]
    
    [I]###[EXEC]###[/I]
    <?
    [B]?>[/B]
    [I]###[/EXEC]###[/I]
    Viele Grüße
    Stefan

    #2
    Ganz einfach? LBS 19000137 http://service.knx-user-forum.de/?co...ad&id=19000137

    E1 = Fenster offen
    E2 = Fenster kipp

    Als Ausgangswerte bekommst Du

    0 = Fenster zu
    1 = Fenster Auf
    2 = Fenster Kipp

    lässt sich auch besser weiterverarbeiten, als LBS die Texte ausgeben

    fenster.PNG

    Kommentar


      #3
      Hi,
      danke! Das Ergebnis hätte ich auch schon fast mit dem Additions-LBS (A+B), nur andere Reihenfolge.
      Ich wollte aber (weil ich noch keine Ahnung habe, wie ich in der Visu aus der 0 ein „Fenster geschlossen“ mache), auch in der Logik den Text haben.
      Aber Du hast natürlich vollkommen recht, ich schau mal, wie ich das in der Visu hinbekomme...

      Gruß Stefan

      Kommentar


        #4
        Additionsbaustein ist blöd! Wenn einer 1 und einer 0 ist, welcher von beiden ist dann 1?

        Kommentar


          #5
          Und zum Thema Visu:

          Fenstervisu.PNG

          Unter Dynamische Designs kannst Du auch die Beschriftung ändern.....

          Kommentar


            #6
            Sau cool. Nochmal danke. Unter „dynamischen Designs“ hätte ich nie gesucht...
            Gibt es außer im Wiki noch eine Doku?

            Kommentar


              #7
              Oben rechts das Fragezeichen auf grauen Grund.... Ansonsten gibt es ja hier das Forum. Reicht das nicht?

              Kommentar


                #8
                Ok, die Hilfe der Bausteine kenne ich natürlich, das Forum auch .
                Ich will Euch halt nicht mit andauernden Fragen nerven, deshalb lese ich gerne erstmal. Und im Wiki steht für Anfänger jetzt nicht sooo viel, d.h. der Start ist schon etwas steinig, dafür ist die Lernkurve ziemlich steil.

                Danke Dir.

                Kommentar

                Lädt...
                X