Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Plugin: UZSU (Universelle Zeitschaltuhr)

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • JanT
    antwortet
    Hallo Mike,

    Was Du machen kannst, ist die uzsu ein "Zwischenitem" setzen zu lassen und ein Logik definieren die Dein item setzt als Funktion davon und ein Heizperiode Freigabeitem.

    Viele Grüße,

    Jan

    Einen Kommentar schreiben:


  • Mike01
    antwortet
    Hallo Jochen,

    Da hast du wohl einerseits recht, dass es mit einer Logik auch möglich wär, bzw hab ich es gerade von einer Logik zur uzsu abgeändert, weil es seit dem smartvisu plugin von Michel (Orion) schon sehr praktisch ist, wenn man die zeiten in der visu einsehen und ändern kann, und nicht jedesmal die logik editieren muss wenn man eine schaltzeit nicht haben will. Über das smartvisu popup ist es ja möglich, eine schaltuhr zu deaktieren, und dabei die zeiten gespeichert zu lassen, das wär dann halt auch von einer logik aus ggf. Auch praktisch.

    Mike

    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    Hallo Mike,

    ich würde mal davon ausgehen, dass die Zeiten der Heizung sich eher statisch verhalten, also kaum Änderungen unterliegen.
    Macht es da nicht mehr Sinn, ansteller der UZSU dies in der logic.conf zu definieren und dort die Logik zu deaktivieren?

    Gruss
    Jochen.

    Einen Kommentar schreiben:


  • Mike01
    antwortet
    Kann ich mit einer Logik eine Zeitschaltuhr aktivieren/deaktivieren ?

    Ich hab in meiner Visualisierung mehrere Zeitschaltuhren für die Heizungsthermostate programmiert, diese würde ich gerne mit einer Logik zu beginn der Heizperiode aktivieren und beim ausschalten der Heizkreispumpe wieder deaktivieren.

    Bisher hab ich es mit folgendem Befehl in der Shell geschafft die Zeitschaltuhr einzuschalten, allerdings löscht es mir dabei immer die eingestellten Schaltzeiten, was natürlich nicht sein soll:
    Code:
    sh.item.uzsu({'active': True})
    Befehle wie:
    Code:
    [URL="http://redaktion.knx-user-forum.de/lexikon/sh/"]sh[/URL].[URL="http://redaktion.knx-user-forum.de/lexikon/uzsu/"]uzsu[/URL].update(sh.item1, 1, active=False) [URL="http://redaktion.knx-user-forum.de/lexikon/sh/"]sh[/URL].[URL="http://redaktion.knx-user-forum.de/lexikon/uzsu/"]uzsu[/URL].update(sh.item1, 1, active=True)
    zeigen keine wirkung, und führen nur zu einem Syntax Error.

    Gruß, Mike

    Einen Kommentar schreiben:


  • fanta2k
    antwortet
    ich habe noch ein komisches problem, beim senden der gleichen werte auf 1 objekt.

    in der config habe ich 2 einträge

    PHP-Code:
            [[[uzsu_nacht]]]
                    
    type=dict
                    uzsu_item
    =OG.buero.szenen.nacht
                    visu_acl
    =rw
                    cache
    =True
            
    [[[uzsu_tag]]]
                    
    type=dict
                    uzsu_item
    =OG.buero.szenen.tag
                    visu_acl
    =rw
                    cache
    =True 
    und dann eben jeweils eine szene dazu, zb:

    PHP-Code:
    1 OG.buero.storeN.position 255
    1 OG
    .buero.storeN.abs_angle 255
    1 OG
    .buero.storeO.position 255
    1 OG
    .buero.storeO.abs_angle 255
    1 OG
    .buero.storeS.position 255
    1 OG
    .buero.storeS.abs_angle 255 
    Testweise habe ich nun 3 aktionen hintereinander angelegt um eine 1 zu senden.

    2014-08-23 12:21:40,470 DEBUG Main 192.168.1.122:49995 sent '{"cmd":"item","id":"OG.buero.uzsu_nacht","val":{" active":true,"list":[{"active":true,"rrule":"FREQ=WEEKLY;BYDAY=MO,TU,WE ,TH,FR,SA,SU","value":1,"time":"12:14"},{"active": true,"rrule":"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA, SU","time":"12:16","value":1},{"active":true,"rrul e":"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA,SU","time" :"12:17","value":1}]}}' -- __init__.py:json_parse:269
    im log wird die uzsu aber nur ausgelöst wenn ich zwischenzeitlich OG.buero.uzsu_nacht auf 0 setze (switch in der visu).

    setze ich 3 uzus auf
    12:20 1
    12:21 0
    12:22 1

    dann wird jeweils 1,0,1 gesetzt, setze ich 3x1, wird nur die erste gesetzt.

    ein enforce_updates in der config hatte auch keine auswirkung.

    als lösung könnte ich natürlich in meiner szene den wert jeweils wieder auf 0 setzen, oder gibt es da noch ne andere lösung zu dem problem ?

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    Hallo Mario,

    das Plugin wurde bisher nicht released und ist somit nicht im Image enthalten. Sprich, es ist nur im develop Zweig vorhanden und kann somit auch nur über git aktualisiert werden.

    Einen Kommentar schreiben:


  • MNKunde
    antwortet
    Frage

    Wird der Fix auch über normales Update eingespielt?
    MfG Mario

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    Etwas neues bezüglich sunrise und sunset bei time... da war noch ein Bug drin, der dazu führte, dass solche Einträge erst am Folgetag ausgeführt werden. Das ist nun gefixt. Siehe auch: https://knx-user-forum.de/418144-post20.html

    Einen Kommentar schreiben:


  • Steven
    antwortet
    Zitat von Onkelandy Beitrag anzeigen
    Anführungszeichen weg?
    DANKE! :-)

    Super, geht!

    Gruß
    Steven

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Anführungszeichen weg?

    Einen Kommentar schreiben:


  • Steven
    antwortet
    Danke, leider funktioniert meine Prüfung irgendwie nicht.

    Was mache ich falsch? Danke!

    Logik:
    Code:
    if (trigger['value'] == '1'):
        logger.info(' **** Rolladen runter')
    else:
        logger.info(' **** Rolladen hoch ')
    Debug Log.
    Code:
    2014-08-15 20:20:00,113 DEBUG    uzsu_Gesamtfunktionen.Rollladen_EG_fahren.uzsu Triggering gesamtfunktion_EG_fahren - by: Item source: Gesamtfunktionen.Rollladen_EG_fahren dest: None value: 0 -- scheduler.py:trigger:162
    2014-08-15 20:20:00,172 INFO     gesamtfunktion_EG_fahren  **** Rolladen hoch  -- test.py:<module>:14
    
    2014-08-15 20:22:00,058 DEBUG    uzsu_Gesamtfunktionen.Rollladen_EG_fahren.uzsu Triggering gesamtfunktion_EG_fahren - by: Item source: Gesamtfunktionen.Rollladen_EG_fahren dest: None value: 1 -- scheduler.py:trigger:162
    2014-08-15 20:22:00,119 INFO     gesamtfunktion_EG_fahren  **** Rolladen hoch  -- test.py:<module>:14

    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    Hi,

    anbei ein paar Beispiele, wie das im Script aussehen kann:
    Code:
    if (trigger['source'] == 'og.hall.window_sensor'):
    oder
    Code:
    if (logic.name == 'shutter_ctrl'):
    oder
    Code:
    if (trigger['value'] == '0'):
    u.s.w.

    hth
    Jochen

    Einen Kommentar schreiben:


  • Steven
    antwortet
    Zitat von mknx Beitrag anzeigen
    Hallo Steven,



    momentan kann man keine Werte direkt an watch_item hängen. (Ist auch nicht geplant).
    In der Logik muss man den trigger['source'] auswerten und entsprechend handeln.

    Bis bald

    Marcus
    Hast du mal für mich nen Beispiel?

    Danke!!

    Einen Kommentar schreiben:


  • callidomus
    antwortet
    Hallo Steven,

    Zitat von Steven Beitrag anzeigen
    Hab es jetzt mal ausprobiert über "watch_item" meine Logik anzutriggern, klappt soweit gut nur wie übergebe ich sinnvoll die value für 0 od 1 (auf/ab)? (über IF-Abfrage?)
    momentan kann man keine Werte direkt an watch_item hängen. (Ist auch nicht geplant).
    In der Logik muss man den trigger['source'] auswerten und entsprechend handeln.

    Bis bald

    Marcus

    Einen Kommentar schreiben:


  • Steven
    antwortet
    Zitat von Sandman60 Beitrag anzeigen
    Hi,
    evtl. stehe ich ja mit Deiner Frage etwas auf dem Schlauch, aber Du steuerst doch GA's eh nur indirekt an, da die UZSU doch Items ansteuert. ... und über diesen Weg kannst Du dann ebenfalls eine Logik antriggern, sprich Dein PY-Script.
    Hab es jetzt mal ausprobiert über "watch_item" meine Logik anzutriggern, klappt soweit gut nur wie übergebe ich sinnvoll die value für 0 od 1 (auf/ab)? (über IF-Abfrage?)

    Gruß
    Steven

    Einen Kommentar schreiben:

Lädt...
X