Ankündigung

Einklappen
Keine Ankündigung bisher.

Patch 3.04 eibPC verhält sich anders

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

    Patch 3.04 eibPC verhält sich anders

    Hallo zusammen,

    habe folgenden Code, der bisher einwandfrei funktionierte.
    Lichtsensor meldet momentan 30.000 lux, Variabel luxhellSunOst steht auf 24.000
    Demnach muss SonneOst = EIN sein. Wenn Wert von Lichtsensor mehr als 30 min kleiner als Variabel ist, dann soll SonneOst wieder auf AUS gehen.
    War auch immer so.
    Mit patch und studio 3.04, geht SonneOst nicht mehr auf Ein. Habe mal neugestartet, dann SonneOst auf EIN, nach ca. 33 min ging SonneOst auf AUS, obwohl Wert Lichtsensor die ganze Zeit größer als Variabel luxhellOst war.
    Wird da mit dem patch etwas anders interpretiert?

    [highlight=epc]
    luxhellSunOst=convert(luxhellOst,0f16)
    // Sonnenabhängige Beschattung
    if "LiSe1-10/0/0" > luxhellSunOst then SonneOst=EIN endif
    if delay(("LiSe1-10/0/0" < luxhellSunOst),1800000u64) and SonneOst==EIN then SonneOst=AUS endif
    [/highlight]

    01.03.2014 11:09 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:10 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:12 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:14 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:16 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29.757.440.000.000.000
    01.03.2014 11:17 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29.757.440.000.000.000
    01.03.2014 11:19 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29880.32
    01.03.2014 11:19 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 28016.64
    01.03.2014 11:20 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 26624.0
    01.03.2014 11:20 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 25108.48
    01.03.2014 11:20 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 28139.52
    01.03.2014 11:20 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29.757.440.000.000.000
    01.03.2014 11:22 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29532.16
    01.03.2014 11:23 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29184.0
    01.03.2014 11:25 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29306.88
    01.03.2014 11:26 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29880.32
    01.03.2014 11:28 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:29 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:31 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29880.32
    01.03.2014 11:32 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 28139.52
    01.03.2014 11:32 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 27.197.440.000.000.000
    01.03.2014 11:32 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 26624.0
    01.03.2014 11:32 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 28712.96
    01.03.2014 11:33 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29532.16
    01.03.2014 11:33 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 28487.68
    01.03.2014 11:33 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29.757.440.000.000.000
    01.03.2014 11:35 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29409.28
    01.03.2014 11:36 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29655.04
    01.03.2014 11:38 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:40 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:40 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 28712.96
    01.03.2014 11:40 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 26152.96
    01.03.2014 11:40 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 28835.84
    01.03.2014 11:40 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 29880.32
    01.03.2014 11:42 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2
    01.03.2014 11:44 1.1.20 "LiSe1-10/0/0" 16-Bit-Fliesskommazahl 30003.2

    #2
    Das Problem hat mit dem Patch-Update nichts zu tun. Du musst die Bedingung auch nach dem delay() nochmal abfragen, sonst geht der Wert auch dann auf AUS, wenn es mittlerweile wieder sonnig ist.

    Korrekt sieht das dann so aus:

    Code:
    luxhellSunOst = convert(luxhellOst, 0f16)
    // Sonnenabhängige Beschattung
    if "LiSe1-10/0/0" > luxhellSunOst then SonneOst = EIN endif
    if delay("LiSe1-10/0/0" < luxhellSunOst, 1800000u64) and "LiSe1-10/0/0" < luxhellSunOst then SonneOst = AUS endif
    Die Abfrage von SonneOst kannst du weglassen, denn wenn SonneOst bereits auf AUS ist ändert sich ohnehin nichts.

    Kommentar


      #3
      prima, danke, habe ich geändert.
      Allerdings erklärt das nicht, warum SonneOst gar nicht erst auf EIN geht obwohl Lichtsensor > Variabel. Ich beobachte mal weiter.

      Gruß
      Ralf

      Kommentar

      Lädt...
      X