Ankündigung

Einklappen
Keine Ankündigung bisher.

Umrechnung von Werten

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

    Umrechnung von Werten

    Hallo Zusammen,

    nachdem ich nun stolzer Besitzer einer Wetterstation bin, stehe ich vor der Herausforderung m/s in km/h darzustellen.
    Meine Idee war es, das ganze Thema mit einem Trigger zu realisieren aber scheinbar bin ich da auf dem falschen Weg.

    Folgende Items hatte ich in der Config definiert
    Code:
    [Wetterstation]
                    [[Windgeschwindigkeit]]
                                   type = num
                                   visu_acl = rw
                                   sqlite = no
                                   knx_dpt = 9
                                   knx_listen = 4/5/1
                                   knx_init = 4/5/1
                    [[Windgeschwindigkeitkmh]]                  
                    type = num
                    visu_acl = rw
                    knx_dpt = 9
                    eval_trigger = Wetterstation.Windgeschwindigkeit
                    eval =(Wetterstation.Windgeschwindigkeit*3.6)

    In der Visu stelle ich den Wert dann über Basic.Vaule dar.

    Für Ideen wäre ich sehr dankbar.

    Viele Grüße,
    Alexander

    #2
    Hi,
    irgendwie stehe ich auf dem Schlauch warum Du meinst auf dem falschen Weg zu sein? Ich würde es an Deiner Stelle genauso machen. Einzig bei der Eval-Syntax bin ich mir nicht 100%ig sicher, sollte man aber im Fehlerfalle durch die Fehlermeldung schnell finden.

    Daher: Wo ist das Problem? Ich mache solche Dinge auch immer über diesen Weg. Oder ist es die Syntax?

    Kommentar


      #3
      Syntax! sh.Wetterstation.Windgeschwindigkeit*3.6

      eval-trigger ohne sh.
      eval mit sh.

      Grund:
      eval-trigger wird durch smarthome.py ausgelesen, das eval aber global durch Python geprüft.
      Zuletzt geändert von JuMi2006; 26.06.2015, 17:49.
      Umgezogen? Ja! ... Fertig? Nein!
      Baustelle 2.0 !

      Kommentar


        #4
        Hi,
        besten Dank für die Hinweise.
        hab nun das Item wie folgt geändert
        Code:
            [[Windgeschwindigkeitkmh]]        
            type = num
            visu_acl = rw
            knx_dpt = 9
            eval_trigger = Wetterstation.Windgeschwindigkeit
            eval = (sh.Wetterstation.Windgeschwindigkeit*3.6)
        Leider erhalte ich nun im Log folgenden Fehler
        ​ WARNING Wetterstation.Windgeschwindigkeitkmh Item Wetterstation.Windgeschwindigkeitkmh: problem evaluating (sh.Wetterstation.Windgeschwindigkeit*3.6): unsupported operand type(s) for *: 'Item' and 'float'

        Scheinbar stehe ich nun echt mit der Syntax auf dem Schlauch

        Kommentar


          #5
          Code:
           
           eval = (sh.Wetterstation.Windgeschwindigkeit()*3.6)
          Um an den akuellen Wert zu kommen brauchst Du immer die Klammern(). Hatte ich gestern übersehen.
          Umgezogen? Ja! ... Fertig? Nein!
          Baustelle 2.0 !

          Kommentar


            #6
            Super vielen Dank. Hatte wohl ein Brett vorm Kopf mit der Klammer.

            Kommentar


              #7
              Nur für mein Verständniss, hätte es nicht auch einfach so geklappt?
              Code:
              eval = val*3.6
              Was das mit dem trigger auf sich hat ist mir noch nicht ganz bewusst. Ich würde erwarten das die Umrechnung immer gezogen wird, somit sollte der trigger da keinen Sinn machen in meinen Augen.

              Kommentar

              Lädt...
              X