Ankündigung

Einklappen

Hinweis

Die Forenregeln wurden überarbeitet (Stand 7.11.22). Sie sind ab sofort verbindlich. Wir bitten um Beachtung.
Mehr anzeigen
Weniger anzeigen

Probleme beim erstellen des ersten Logokbausteins

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

    Probleme beim erstellen des ersten Logokbausteins

    Guten Abend,
    versuche mich im Erstellen des ersten LBS.
    Leider klappt es nicht so gut wie im HS.
    Der erste Baustein soll für meinem Fühler an der Zirkulationsleitung eine Auswertung machen:
    Ich nutze das im HS zur Steuerung (mit der Zeit) der Zirkulationspumpe.
    Leider bekomme ich den Ausgang nicht beschaltet.
    Hier einmal die Daten:

    ###[DEF]###
    [name =Groesser- Kleiner- Vergleicher]

    [e#1 =Aktiv/ Passiv #init=0 ]
    [e#2 =Vergleichswert 1 #init=0 ]
    [e#3 =Vergleichswert 2 #init=0 ]

    [a#1 =E3 < E2 ]
    [a#2 =E3 > E2 ]
    [a#3 =E3 = E2 ]
    ###[/DEF]###


    ###[HELP]###
    Es wird der Eingang E2 mit dem Eingang E3 verglichen.
    Entsprechend sendet der jeweilige Ausgang eine 1.
    ###[/HELP]###


    ###[LBS]###
    <?
    function LB_LBSID($id) {
    if ($E=getLogicEingangDataAll($id)) {
    if ($E[1]['refresh']==1 || $E[2]['refresh']==1 || $E[3]['refresh']==1) {

    if (is_numeric($E[2]['value']) && is_numeric($E[3]['value']) && $E[1]['value']!=0 && $E[3]['value'] < $E[2]['value'] && $E[1]['refresh']==1) {
    setLogicLinkAusgang($id,1,1);
    } else {
    setLogicLinkAusgang($id,1,0);
    }

    if (is_numeric($E[2]['value']) && is_numeric($E[3]['value']) && $E[1]['value']!=0 && $E[3]['value'] > $E[2]['value'] && $E[1]['refresh']==1) {
    setLogicLinkAusgang($id,2,1);
    } else {
    setLogicLinkAusgang($id,2,0);
    }

    if (is_numeric($E[2]['value']) && is_numeric($E[3]['value']) && $E[1]['value']!=0 && $E[3]['value'] == $E[2]['value'] && $E[1]['refresh']==1) {
    setLogicLinkAusgang($id,3,1);
    } else {
    setLogicLinkAusgang($id,3,0);
    }
    }
    }
    }
    ?>
    ###[/LBS]###


    ###[EXEC]###
    <?
    ?>

    ###[/EXEC]###

    Meiner Logik.jpg

    Mache ich etwas grundlegendes falsch? Habe mir viele zum Kopieren angesehen.
    Einlesen konnte ich ihn fehlerfrei.
    Vielen DANK vorab!!!
    Gruß Marcus

    #2
    Dir ist schon bewusst, dass die Du jedesmal ...&& $E[1][refresh''] in den IFs stehen hast? Also immer E1? Ist das so gewollt?!
    EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

    Kommentar


      #3
      Danke!!!
      Mal geändert:

      ###[DEF]###
      [name =Groesser- Kleiner- Vergleicher]

      [e#1 =Aktiv/ Passiv #init=0 ]
      [e#2 =Vergleichswert 1 #init=0 ]
      [e#3 =Vergleichswert 2 #init=0 ]


      [a#1 =E3 < E2 ]
      [a#2 =E3 > E2 ]
      [a#3 =E3 = E2 ]
      ###[/DEF]###

      ###[HELP]###
      Es wird der Eingang E2 mit dem Eingang E3 verglichen.
      Entsprechend sendet der jeweilige Ausgang eine 1.
      ###[/HELP]###

      ###[LBS]###
      <?
      function LB_LBSID($id) {
      if ($E=getLogicEingangDataAll($id)) {
      if ($E[1]['refresh']==1 || $E[2]['refresh']==1 || $E[3]['refresh']==1) {

      if ($E[1]['value']!=0 && $E[3]['value'] < $E[2]['value']) {
      setLogicLinkAusgang($id,1,1);
      } else {
      setLogicLinkAusgang($id,1,0);
      }

      if ($E[1]['value']!=0 && $E[3]['value'] > $E[2]['value']) {
      setLogicLinkAusgang($id,2,1);
      } else {
      setLogicLinkAusgang($id,2,0);
      }

      if ($E[1]['value']!=0 && $E[3]['value'] == $E[2]['value']) {
      setLogicLinkAusgang($id,3,1);
      } else {
      setLogicLinkAusgang($id,3,0);
      }
      }
      }
      }
      ?>
      ###[/LBS]###


      ###[EXEC]###
      <?
      ?>
      ###[/EXEC]###

      Meiner Visu.jpg Meiner Logik_2.jpg

      Aber sooo richtig ist das noch nicht.
      jetzt bekome ich zweimal die eins...... Boohh aller Anfang ist schwer....




      Angehängte Dateien

      Kommentar


        #4
        Das liegt daran, dass Du E1 der Ausgangsboxen verwendest - E1 wird immer dann getriggert, wenn der Wert !=0 ist (in diesem Fall also ausschließlich bei einem Wert von 1 - die 0 kommt nie an...). Lösung: E2 nehmen
        EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

        Kommentar


          #5
          Erstmal DANK für die Hilfe!! Aber leider verstehe ich es noch nicht so ganz (entschuldige):
          - Der Eingang E1 soll den Baustein aktivieren oder passiv schalten, mehr nicht. Also "dachte ich" bei einer 1 aktiv
          und bei einer 0 passiv
          - Der Eingang E2 soll den Messwert aufnehmen, also vom KNX- Anlegefühler
          - Der Eingang E3 ist der Vergleichswert.

          Du sagst E1 der Ausgangsboxen, hmmmm - E1 wird immer dann getriggert, wenn der Wert !=0 ist
          (in diesem Fall also ausschließlich bei einem Wert von 1 - die 0 kommt nie an...)
          , ja dachte ich die 1 aktiv und 0 passiv
          Könntest Du das mit noch mal als "Anfänger deuten??
          DANKE DIR (höre dann für HEUTE auf!!!!)
          Gruß Marcus

          Kommentar


            #6
            Ich denke das bezog sich auf die ausgangsboxen der Logik. Diese sind auf e1 verknüpft und müssten auf e2.

            Kommentar


              #7
              DAS WAR DER TIPP!!!
              DANKE..Hab immer im LBS dern Fehler gesucht........
              VIELEN DANK!!!
              P.S. soll ich soo einen einfachen Baustein hochladen??? Oder ist der zu billig hier???
              Meiner Logik_3.jpg
              Gruß Marcus

              Kommentar


                #8
                Hochladen, irgendwann kann das sicher jemand brauchen. Registriert bist Du ja schon.
                Mfg Micha
                Qualifizierte und richtige Antworten gibts nur von Leuten, die während des Neustarts des HS Zeit für einen Post haben!

                Kommentar


                  #9
                  Jupps habe ich dann mal gemacht.....

                  Kommentar


                    #10
                    Ich zitiere mich mal selbst: "...Das liegt daran, dass Du E1 der Ausgangsboxen verwendest..."
                    EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

                    Kommentar


                      #11
                      JAAAAAAAAAA!!!! Man(n) muss ja erstmal ins Thema finden......
                      Wenn Man (n) immer im LBS nach dem Fehler sucht, dann ist keine Blick mehr für den
                      Logikeditor übrig!!!!

                      Kommentar


                        #12
                        Ruuuuhig.... Alles wird gut....
                        EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

                        Kommentar

                        Lädt...
                        X