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

- √ - Zeitbereiche innerhalb einer Logik

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

    - √ - Zeitbereiche innerhalb einer Logik

    Hi,
    Ich würde gerne innerhalb einer Logik zeitabhängige IF schleifen realisieren.
    Dazu hab ich mir als Test folgendes erstellt.
    test.py
    Code:
    tageszeit = sh.now()
    if tageszeit.hour > 10 or tageszeit.hour < 12:
        sh.ZS.Test(1)
        sh.EG.Licht.VRWand(1)
    if tageszeit.hour > 15 or tageszeit.hour < 17:
        sh.ZS.Test(0)
        sh.EG.Licht.VRDecke(1)
    if tageszeit.hour > 18 or tageszeit.hour < 22:
        sh.ZS.Test(0)
        sh.EG.Buero.Dimmen(10)
    Als auslöser hab ich einfach ein Licht item als watch_item gesetzt.
    Code:
    [Test]   
        filename = Test.py
        watch_item = EG.Buero.Schalten
    Als Ergebnis werden alle sh.* Befehle ausgeführt, obwohl eigentlich nur die letzte IF schleife aktuell gültig wäre
    LOG
    Code:
    2014-03-27 20:27:09,735 DEBUG    Main         Item EG.Buero.Schalten = True via Visu 192.168.0.1:52465 None -- item.py:__update:363
    2014-03-27 20:27:09,741 DEBUG    Main         Triggering Test - by: Item source: EG.Buero.Schalten dest: None value: True -- scheduler.py:trigger:162
    2014-03-27 20:27:09,748 DEBUG    Test         Item ZS.Test = True via Logic None None -- item.py:__update:363
    2014-03-27 20:27:09,758 DEBUG    Test         Item EG.Licht.VRWand = True via Logic None None -- item.py:__update:363
    2014-03-27 20:27:09,768 DEBUG    Test         Item ZS.Test = False via Logic None None -- item.py:__update:363
    2014-03-27 20:27:09,771 DEBUG    Main         knx: 0.0.1 set 5/0/21 to 01 -- __init__.py:parse_telegram:193
    2014-03-27 20:27:09,778 DEBUG    Test         Item EG.Licht.VRDecke = True via Logic None None -- item.py:__update:363
    2014-03-27 20:27:09,788 DEBUG    Test         Item EG.Buero.Dimmen = 10 via Logic None None -- item.py:__update:363
    Wo liegt der Fehler bzw. wie schreibt man meine Anforderung besser?

    #2
    Ich denke du solltest in den anweisungen AND statt OR verwenden

    Kommentar


      #3
      Zitat von Bernator Beitrag anzeigen
      Ich denke du solltest in den anweisungen AND statt OR verwenden
      Danke für den Hinweis, jetzt wo du es sagst ist es logisch.

      Kommentar

      Lädt...
      X