Ankündigung

Einklappen

Serverwartung 21.2.



Am 21.2. im Laufe des späten Abends wird eine Serverwartung durchgeführt. Das Forum ist dadurch für gut zwei Stunden nicht erreichbar.
Es wird eine Wartungsseite geschaltet.

Mehr anzeigen
Weniger anzeigen

Erste Erfahrung mit HSL 2.0-Framework

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

    #16
    Danke. Werde über das Eine oder Andere noch ein wenig grübeln müssen ... Schönen Abend.

    Kommentar


      #17
      Code:
      # -*- coding: iso-8859-1 -*-
      LOGIKCATEGORY="#lucien\hsb"
      LOGIKNAME="reg_wohnen"
      LOGIKID="10310"
      LOGIKVERSION="2.0b"
      LOGIKCOMPILEMODE=1
      LOGIKDEBUG=1
      LOGIKDESCRIPTION="""
      Raumregelung (Betriebsmodus und Präsenzobjekt) bei Scharf, Urlaub, Tag und Nacht sowie Zeit, Präsenz
      """
      
      #5000|"Text"|Remanent(1/0)|Anz.Eingänge|.n.|Anzahl Ausgänge|.n.|.n.
      #5001|Anzahl Eingänge|Ausgänge|Offset|Speicher|Berechnung bei Start
      #5002|Index Eingang|Default Wert|0=numerisch 1=alphanummerisch
      #5003|Speicher|Initwert|Remanent
      #5004|ausgang|Initwert|runden binär (0/1)|typ (1-send/2-sbc)|0=numerisch 1=alphanummerisch
      #5012|abbruch bei bed. (0/1)|bedingung|formel|zeit|pin-ausgang|pin-offset|pin-speicher|pin-neg.ausgang
      
      5000|"@LOGIKCATEGORY@\\@LOGIKNAME@"|0|7|"Nacht"|"Urlaub"|"Scharf"|"Pr_Zeit"|"Pr_Bew"|"HVAC_Tag"|"HVAC_Nacht"|2|"Betr_Modus"|"Prsenz"|"@LOGIKID@ - V@LOGIKVERSION@"
      
      5001|7|2|0|0|1
      
      5002|1|0|0 # Nacht
      5002|2|0|0 # Urlaub
      5002|3|0|0 # Scharf
      5002|4|0|0 # Präsenz gemäß Zeit
      5002|5|0|0 # Präsenz gemäß Bewegungsmelder
      5002|6|2|0 # HVAC Code Tag
      5002|7|3|0 # HVAC Code Nacht
      
      5004|1|0|0|2|0 # Betriebsmodus
      5004|2|0|0|2|0 # Präsenz für Heizung
      
      ## nur beim ersten Mal initialisieren
      5012|0|"EI and not hasattr(pItem.LogikItem,'SHARED_REG_WOHNEN')"|"@BYTECODE@"|""|0|0|0|0
      @BYTECODESTART@
      ## Name bisschen angepasst
      class C10310_regwohnen(object):
          def __init__(self,pItem):
              ## reicht ... rest brauchen wir nicht und dann bauen wir es auch nicht ein
              pItem.LogikItem.SHARED_REG_WOHNEN = self  
      
          def check(self,EN,AN):
              ## ist automatisch wahr ... brauchst du nicht mit True vergleichen
              if EN[1] or EN[2]: # Nacht oder Urlaub
                  AN[1]=EN[7]
                  AN[2]=0
              elif not EN[1] and not EN[3]: # weder Nacht noch Scharf
                  AN[1]=EN[6]
                  AN[2]=(ein[4] or ein[5]) # Präsenz gemäß Zeit oder Präsenzmelder
              else:
                  AN[1]=EN[6]
                  AN[2]=0
        
      C10310_regwohnen(pItem)
      @BYTECODEEND@
      
      ## reicht einmal und dann direkt auf AN schreiben, hier muss dann Ausgang auf 0 sonst würde es wieder überschrieben
      5012|0|""|"pItem.LogikItem.SHARED_REG_WOHNEN.check(EN,AN)"|""|0|0|0|0
      Nils

      aktuelle Bausteine:
      BusAufsicht - ServiceCheck - Pushover - HS-Insight

      Kommentar


        #18
        Das ist ja nett! Vielen Dank.

        Kommentar

        Lädt...
        X