Ankündigung

Einklappen
Keine Ankündigung bisher.

Plausibilitätsprüfung

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

    [callidomus] Plausibilitätsprüfung

    Hallo,

    gibt es eine Möglichkeit, nur plausible Werte zu übernehmen und zu speichern bzw. die Plausibilität für Werte (Items) festzulegen?

    Hintergrund: Ich erfasse den Füllstand meiner Zisterne über den Freiraum (bis zum Wasserspiegel), aber ab und an bekomme ich (verschiedene Ursachen) hier Nullwerte. Der niedrigste Wert für den Freiraum sind aber ca. 60 cm. Damit ist der Wert 0 halt kein Wert, sondern einfach ein Fehler. In der Diagramm-Darstellung sieht es blöd aus und wenn ich eventuell Logiken von diesem Wert abhängig machen will, ist es auch blöd.

    Wenn ich jetzt in dem entsprechenden Item einfach einstellen könnte, dass Werte <60 (und theoretisch >230) nicht berücksichtigt werden sollen, wäre das prima.

    Hat jemand dazu eine Idee?

    Gruß
    Thomas

    #2
    Hi,

    klar... im code einfach folgendes schreiben:
    Code:
    value if value >= 60 and value <= 230 else <kompletter Itemname>
    <kompletter Itemname> muss durch den Namen des Items (cd.irgendwas.sonstwas) ersetzt werden. Eventuell geht auch
    Code:
    value if value >=60 and value <= 230 else None
    Musst Du mal ausprobieren.

    Gruß, Waldemar
    OpenKNX www.openknx.de

    Kommentar


      #3
      Hallo Waldemar,

      hat das schon richtig beantwortet. Es geht aber auch nur:
      Code:
      value if value >=60 and value <= 230
      das entspricht
      Code:
        
       value if value >=60 and value <= 230 else None
      und wenn None zurück kommt, dann wird der Wert ignoriert.

      Bis bald
      Marcus

      Kommentar


        #4
        Hi Marcus,

        kurze Rückfrage: Früher (im sh.py) kam bei None im Log immer eine Meldung, dass der Wert None ignoriert wird. Das ist der Grund, warum ich mir angewöhnt hatte, immer im else-Fall den Wert des Items selbst zu nehmen.

        Ist das immer noch so? Ich versuche immer, das Log so sauber wie möglich zu halten, damit man nicht wichtige Meldungen vor lauter "unwichtigen" übersieht.
        Ich finde die Meldung nicht schlecht, falls man unabsichtlich ein None evaluiert und sich dann wundert, warum sich der Wert nicht ändert. Nur würde ich mir wünschen, dass Dein
        Code:
        value if value >= 60 and value <= 230
        zu irgendwas evaluiert, dass keine Meldung bringt - ausser value ist None...

        Ich hoffe, es ist klar was ich meine

        Gruß, Waldemar
        OpenKNX www.openknx.de

        Kommentar


          #5
          Hallo mumpf und callidomus ,

          vielen Dank für eure schnelle Antwort!!

          Allerdings bekomme ich da folgende Fehlermeldung ins Log:

          problem evaluating value if value >= 0.6 and value <= 2.01: unexpected EOF while parsing

          Im Codeblock steht:

          Code:
          value if value >= 0.6 and value <= 2.01
          ... habs auch schon Klammern versucht, hat leider nichts genützt. Was mache ich falsch?

          Gruß
          Thomas

          Kommentar


            #6
            Hi,

            schon mit

            Code:
            value if value >= 0.6 and value <= 2.01 else None
            versucht? Ich habe bisher immer das else nicht weggelassen und bei mir läuft es...

            Gruß, Waldemar
            OpenKNX www.openknx.de

            Kommentar


              #7
              Zitat von mumpf Beitrag anzeigen
              Hi,

              schon mit

              Code:
              value if value >= 0.6 and value <= 2.01 else None
              versucht? Ich habe bisher immer das else nicht weggelassen und bei mir läuft es...

              Gruß, Waldemar
              Das hätte ich ja wirklich auch mal testen können! So geht es! Vielen Dank, Waldemar.

              Gruß
              Thomas

              Kommentar


                #8
                Hi Thomas,

                freut mich, dass es klappt.

                Gruß, Waldemar
                OpenKNX www.openknx.de

                Kommentar


                  #9
                  Hallo Waldemar,

                  Zitat von mumpf Beitrag anzeigen
                  kurze Rückfrage: Früher (im sh.py) kam bei None im Log immer eine Meldung, dass der Wert None ignoriert wird.
                  Ist das immer noch so?
                  ja, das ist noch immer so. Es erfolgt eine (Debug) Meldung.


                  Bis bald

                  Marcus

                  Kommentar

                  Lädt...
                  X