Ankündigung

Einklappen
Keine Ankündigung bisher.

Supportthread für UZSU Plugin

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

    Ich möchte unsere Aussenbeleuchtung zwischen 0600 und Sonnenaufgang einschalten. Dazu habe ich folgende Zeitschaltuhr eingerichtet:

    s1.jpg
    In der Admin-Oberfläche sieht das heute morgen so aus:

    s2.jpg Heute um 0630 brannte diese Lampe, obwohl der Sonnenaufgang aktuell vor 0600 liegt.

    Was habe ich falsch definiert ? Gibt es eine Konfiguration, die verhindert, dass die Lampe eingeschaltet wird, wenn der Sonnenaufgang vor 0600 liegt ?

    Danke für Eure Hilfe.

    Ich verwende die aktuellen Develop von smarthomeng, Plugins und Smartvisu auf einem Testsystem.

    Kommentar


      Den unteren Eintrag auf on stellen und den oberen deaktivieren.
      das sollte es sein…

      Kommentar


        Zitat von schuma Beitrag anzeigen
        Den unteren Eintrag auf on stellen und den oberen deaktivieren.
        das sollte es sein…
        Das wäre korrekt wenn die Sonne vor 0600 aufgeht. Wenn die Sonne nach 0600 aufgeht, dann habe ich das umgekehrte Problem.

        Warum schaltet diese Uhr das Licht ein, obwohl das "On"-Kriterium direkt mit dem "Off"-Kriterium aufgelöst wird ?

        Kommentar


          Der untere Eintrag, mit Experten Modus, ist so zu verstehen:

          Schalte jeden Tag in der Woche bei SONNENAUFGANG auf AUS aber frühestens um 6:00 Uhr.

          Das heißt aktuell, da der Sonnenaufgang aktuell vor 6:00Uhr ist, wird die Lampe immer um 6:00 Uhr ausgeschaltet. Und gleichzeitig durch den ersten Eintrag eingeschaltet. Was ja erstmal so keinen Sinn ergibt.

          Kommentar


            Vielleicht noch eins zur Erklärung:

            Jede Zeile ist ein Schaltvorgang!
            Wenn du also die Lampe bei Sonnenaufgang einschalten möchtest dann muss deine Zweite Zeile einen on Befehl haben.
            Dann brauchst du noch eine zweite Zeile die die Lampe zu dem definierten Zeitpunkt wieder ausschaltet wenn du es wünscht.

            Kommentar


              Zitat von schuma Beitrag anzeigen
              Schalte jeden Tag in der Woche bei SONNENAUFGANG auf AUS aber frühestens um 6:00 Uhr.

              Das heißt aktuell, da der Sonnenaufgang aktuell vor 6:00Uhr ist, wird die Lampe immer um 6:00 Uhr ausgeschaltet. Und gleichzeitig durch den ersten Eintrag eingeschaltet. Was ja erstmal so keinen Sinn ergibt.
              Also müsste ich für meinen Ansatz die Expertenzeile so ändern, dass die Lampe mit "Sonnenaufgang aber frühstens 0601 Uhr" ausgeschaltet wird ?

              So würde die Lampe aber immer 1 Minute von 0600-0601 brennen, wenn die Sonne vor 0600 aufgeht. Lässt sich das nicht vermeiden ?

              Kommentar


                Mit einer UZSU meines Erachtens nicht, lasse mich aber gerne eines besseren belehren.
                Ich weiß nicht, was du für ein System hinter der UZSU hast. Falls es KNX sein sollte, könntest du z.B. das Einschalten direkt im Aktor mit dem Sonnenaufgang sperren.
                Alternativ eine Logik oder direktes eval beim Item.

                Kommentar


                  Zitat von stoepf Beitrag anzeigen
                  Mit einer UZSU meines Erachtens nicht, lasse mich aber gerne eines besseren belehren.
                  Ich weiß nicht, was du für ein System hinter der UZSU hast. Falls es KNX sein sollte, könntest du z.B. das Einschalten direkt im Aktor mit dem Sonnenaufgang sperren.
                  Alternativ eine Logik oder direktes eval beim Item.
                  Danke für Deine Ausführungen. Habe es fast befürchtet. Im Hintergrund verwende ich smarthomeng mit KNX. Vermutlich baue ich mir dazu ein eigenes Plugin. So lassen sich solche Probleme einfach in Python lösen.

                  Kommentar


                    Für deinen Anwendungsfall wird das mit Uzsu nicht so einfach funktionieren. Da müsste man dann ein Eval im Item oder eine Logik basteln.

                    Kommentar


                      Stateengine Plugin sag ich da nur

                      Kommentar


                        Zitat von Onkelandy Beitrag anzeigen
                        Stateengine Plugin sag ich da nur
                        Danke für den Hinweis. Habe bereits einen Test am Laufen. Das GUI dazu muss ich mir dann in SmartVisu noch erstellen.

                        Kommentar


                          Wäre cool, wenn's funzt. Gerne Ergebnisse hier teilen

                          Kommentar


                            Zitat von Onkelandy Beitrag anzeigen
                            Wäre cool, wenn's funzt. Gerne Ergebnisse hier teilen
                            Ich habe eine erste Version mit dem Stateengine Plugin in Betrieb. Die Aufgabenstellung für unsere Aussenbeleuchtung ist:
                            • Morgen: 0600 einschalten, Sonnenaufgang oder spätestens 0800 ausschalten
                            • Abends: Sonnenuntergang oder spätestens 1800 einschalten und 2230 ausschalten
                            Eine Lampe als Beispiel in meiner "light.yaml":

                            Code:
                            Licht:
                            
                                Trigger:
                                    type: bool
                                    enforce_updates: yes
                                    cycle: 60 = 1
                            
                                Aussen:
                            
                                    Weichenlaterne:
                                        Licht:
                                            type: bool
                                            visu_acl: rw
                                            knx_dpt: 1
                                            knx_init: 1/0/131
                                            knx_send: 1/0/130
                                        Automatik:
                                            struct:
                                              - stateengine.general
                                              - stateengine.state_lock
                                              - stateengine_light_outside
                                            rules:
                                                se_plugin: active
                                                eval_trigger:
                                                  - Licht.Trigger
                            In der Datei "struct.yaml" findet sich der Struct "stateengine_light_outside":

                            Code:
                            stateengine_light_outside:
                                settings:
                                    lock:
                                        type: bool
                                        initial_value: true
                                        
                                    VorSonnenaufgang:
                                        type: bool
                                        eval: 1 if (sh.env.location.sunrise().time() > sh.shtime.now().time()) else 0
                                        cycle: 60
                                        
                                    NachSonnenuntergang:
                                        type: bool
                                        eval: 1 if (sh.env.location.sunset().time() < sh.shtime.now().time()) else 0
                                        cycle: 60
                                        
                                rules:
                                    se_item_licht: ...Licht
                                    se_item_vorsonnenaufgang: ..settings.VorSonnenaufgang
                                    se_item_nachsonnenuntergang: ..settings.NachSonnenuntergang
                            
                                    eval_trigger:
                                      - ..settings.VorSonnenaufgang
                                      - ..settings.NachSonnenuntergang
                                      - ..settings.lock
                                                
                                    Morgen:
                                        name: Licht am Morgen von 0600 bis Sonnenaufgang oder spaetestens 0800
                                        se_action_licht:
                                          - 'function: set'
                                          - 'to: True'
                                        
                                        enter_start:
                                            se_value_vorsonnenaufgang: true
                                            se_min_time: '06:00'
                                            se_max_time: '08:00'
                            
                                    Abend:
                                        name: Licht am Abend von Sonnenuntergang oder ab 1800 bis 2230
                                        se_action_licht:
                                          - 'function: set'
                                          - 'to: True'
                                        
                                        enter_start:
                                            se_value_nachsonnenuntergang: true
                                            se_min_time: '18:00'
                                            se_max_time: '22:30'
                            
                                    Default:
                                        se_action_licht:
                                          - 'function: set'
                                          - 'to: False'
                                        enter:
                                            type: foo
                            Vermutlich könnte diese Geschichte noch etwas optimiert werden. Diese Stateengine funktioniert auf jeden Fall wie gewünscht. In einem nächsten Schritt werde ich vermutlich die fixen Zeiten im Struct mit Items verbinden, so dass ich diese Zeiten einfach in der Visu ändern kann.

                            Kommentar


                              Cool, wenn es funktioniert. Theoretisch könntest du dir das eval mit dem Sonnenaufgang auch sparen und sun_altitude nutzen. https://smarthomeng.de/user/plugins/...dingungen.html

                              Kommentar


                                Zitat von Onkelandy Beitrag anzeigen
                                Cool, wenn es funktioniert. Theoretisch könntest du dir das eval mit dem Sonnenaufgang auch sparen und sun_altitude nutzen. https://smarthomeng.de/user/plugins/...dingungen.html
                                Danke für den Hinweis. Wäre das so korrekt ?

                                Code:
                                stateengine_light_outside:
                                    settings:
                                        lock:
                                            type: bool
                                            initial_value: true
                                            
                                    rules:
                                        se_item_licht: ...Licht
                                
                                        eval_trigger:
                                          - ..settings.lock
                                                    
                                        Morgen:
                                            name: Licht am Morgen von 0600 bis Sonnenaufgang oder spaetestens 0800
                                            se_action_licht:
                                              - 'function: set'
                                              - 'to: True'
                                            
                                            enter_start:
                                                se_max_sun_altitude: 0
                                                se_min_time: '06:00'
                                                se_max_time: '08:00'
                                
                                        Abend:
                                            name: Licht am Abend von Sonnenuntergang oder ab 1800 bis 2230
                                            se_action_licht:
                                              - 'function: set'
                                              - 'to: True'
                                            
                                            enter_start:
                                                se_max_sun_altitude: 0
                                                se_min_time: '18:00'
                                                se_max_time: '22:30'
                                
                                        Default:
                                            se_action_licht:
                                              - 'function: set'
                                              - 'to: False'
                                            enter:
                                                type: foo

                                Kommentar

                                Lädt...
                                X