Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS 19000141 - Beschattungssteuerung

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

    Hallo Yves,
    so heute mal ohne E33/34 den Baustein laufen lassen: Alles funktioniert wie gewünscht!

    zu den E33/34 habe ich nun nochmal die Logfiles und auch die KNX Telegramme ausführlicher angesehen. Der BMS MCU 09 von mir hat leider folgendes Verhalten:

    Wenn höhe+Winkel (je eine GA die beschrieben wird) gesendet werden wird leider immer sobald einer der angeforderten Werte erreicht wird auch auf den beiden entsprechenden Rückmelde-GA sofort der aktuelle Wert bestätigt obwohl die Jalousie noch nicht beide Zielwerte angefordert hat.
    An der Aktorapplikation kann ich aus meiner Sicht leider nichts weiter ändern um dieses Verhalten zu ändern und ich weiß auch nicht ob andere Aktoren dasselbe Verhalten aufweisen...

    Im Detail: Wenn z.B. Höhe=100 / Winkel =0 angefordert werden passiert folgendes:
    Jalousie fährt auf 100% Höhe, dann folgt sofort auf Rückmelde GA Höhe 100% und auch auf Rückmelde GA Winkel =100% (da nach Abfahren der Winkel halt auf 100% ist), dann fährt die Jalousie weiter auf Lamellenposition und dann kommt leider wieder beides: sowohl Höhe wird nochmal mit 100% bestätigt als auch der Winkel wird nun per Rückmelde GA mit 0% bestätigt. Solange E33/34 nicht aktiv ist geht das alles...

    Mit aktivem E33/34 deaktiviert sich leider der Baustein schon bei der ersten Rückmeldung, da wahrscheinlich der Lamellenwinkel nicht passt (somit muß ich meinen post oben ggf. etwas revidieren da vielleicht doch schon eine Abfrage auf die Werte erfolgt, sorry...). Damit ist der Baustein jedoch deaktiviert und die Jalousie bleibt leider auf 100% Höhe und 100% Winkel hängen...

    KNX Protokollausschnitt:

    EDOMI / LBS forder 50% Winkel und 0% Höhe:
    2016-08-30 07:19:33 209642 KNX WRITE EDOMI 6/2/131 967 zentral_EG_Wohnzimmer_Ost_Winkel 128
    2016-08-30 07:19:33 260610 KNX WRITE 1.1.254 6/2/131 967 zentral_EG_Wohnzimmer_Ost_Winkel 128
    2016-08-30 07:19:33 304032 KNX WRITE EDOMI 6/2/121 957 zentral_EG_Wohnzimmer_Ost_Höhe 0
    2016-08-30 07:19:33 330326 KNX WRITE 1.1.254 6/2/121 957 zentral_EG_Wohnzimmer_Ost_Höhe 0
    und dann ein paar sekunden später erfolgt Rückmeldung des Aktors und die Sperre des Bausteins bevor der Winkel erreicht ist:
    2016-08-30 07:20:37 995996 KNX WRITE 1.1.30 3/4/1 507 EG Esszimmer Jalousie Ostseite Höhe_RM 0
    2016-08-30 07:20:38 023897 KNX WRITE 1.1.30 3/5/1 519 EG Esszimmer Jalousie Ostseite Lamelle RM 0
    2016-08-30 07:20:38 128140 KNX WRITE EDOMI 3/6/1 531 EG Esszimmer Jalousie Ostseite Automatiksperre 1
    2016-08-30 07:20:38 155214 KNX WRITE 1.1.254 3/6/1 531 EG Esszimmer Jalousie Ostseite Automatiksperre 1
    Idee meinerseits wäre nun daß man ggf. eine Totzeit bis zur tatsächlichen Abschaltung des Bausteins reinmacht (in der Zeit aber schon keine weiteren Automatikwerte des LBS ausgibt falls doch ein manueller Eingriff erfolgt ist) um auf die zweite (richtige) Rückmeldung warten zu können. Diese sollte etwas länger sein wie die worstcase Zeit von 0%/0% auf 100%/100% Jalousieposition. Und dann könnte man die für die Visu schöne kontinuierliche Rückmeldung (alle 10% Schritte)während der Verstellung auch wieder aktivieren und auf der Visu das Fahren der Jalousie sehen

    Falls Du das nicht im Baustein umsetzen kannst/möchtest müsste ich mir einen Workaround als Logik bauen oder selbst den LBS "customizen".

    Gruß
    Andi
    Gruß
    Andi

    Kommentar


      was eben noch auffiel warum es auch mit dem EDOMI Neustart Probleme geben könnte: Nach einem Neustart (Projektaktivierung) scheint der Höhenausgang nicht aktualisiert/berechnet zu werden. Ich hatte eben überall korrekte Wert in der Live Ansicht, nur nicht in der Höhe und nach Projektaktivierung war wieder der LBS gesperrt obwohl an den E33/34 die Werte für Dämmerung korrekt anlagen (durch IniScan der Rückmeldeobjekte).
      Gruß
      Andi

      Kommentar


        Ich hab da eine Ausgangsbox. Am Eingang das IKO Systemstart, und am Ausgang wird das IKO "Baustein einschalten" auf 1 gesetzt. Funktioniert

        Kommentar


          N'abend

          Zitat von tger977 Beitrag anzeigen
          so heute mal ohne E33/34 den Baustein laufen lassen: Alles funktioniert wie gewünscht!
          Super, freut mich zu hören.


          Zitat von tger977 Beitrag anzeigen
          Wenn höhe+Winkel (je eine GA die beschrieben wird) gesendet werden wird leider immer sobald einer der angeforderten Werte erreicht wird auch auf den beiden entsprechenden Rückmelde-GA sofort der aktuelle Wert bestätigt obwohl die Jalousie noch nicht beide Zielwerte angefordert hat.
          An der Aktorapplikation kann ich aus meiner Sicht leider nichts weiter ändern um dieses Verhalten zu ändern und ich weiß auch nicht ob andere Aktoren dasselbe Verhalten aufweisen...
          Hm, ein saudummes Problem.


          Zitat von tger977 Beitrag anzeigen
          Mit aktivem E33/34 deaktiviert sich leider der Baustein schon bei der ersten Rückmeldung, da wahrscheinlich der Lamellenwinkel nicht passt (somit muß ich meinen post oben ggf. etwas revidieren da vielleicht doch schon eine Abfrage auf die Werte erfolgt, sorry...). Damit ist der Baustein jedoch deaktiviert und die Jalousie bleibt leider auf 100% Höhe und 100% Winkel hängen...
          Das die Jalousie auf 100/100 hängen bleibt, kann ich mir aber nicht vorstellen. Bist Du sicher, dass das so ist? Bei meinem MCU-09 kann ich beide Werte schicken, wobei der Wert für den Winkel natürlich sehr viel später erst zur Anwendung kommt, da der Behang ja erstmal runter fahren muss. Dass der Baustein zum Zeitpunkt der finalen Lamellenverstellung aufgrund des oben beschriebenen Problems deaktiviert ist, hat darauf keinen Einfluss. Der Wert für den Winkel wurde ja schon gesendet. Oder machst Du das irgendwie anders?


          Zitat von tger977 Beitrag anzeigen
          Idee meinerseits wäre nun daß man ggf. eine Totzeit bis zur tatsächlichen Abschaltung des Bausteins reinmacht (in der Zeit aber schon keine weiteren Automatikwerte des LBS ausgibt falls doch ein manueller Eingriff erfolgt ist) um auf die zweite (richtige) Rückmeldung warten zu können. Diese sollte etwas länger sein wie die worstcase Zeit von 0%/0% auf 100%/100% Jalousieposition. Und dann könnte man die für die Visu schöne kontinuierliche Rückmeldung (alle 10% Schritte)während der Verstellung auch wieder aktivieren und auf der Visu das Fahren der Jalousie sehen
          Das muss ich mir erstmal in Ruhe durch den Kopf gehen lassen und auch mit meinem Dev-Setup ein paar Tests machen...


          Zitat von tger977 Beitrag anzeigen
          Falls Du das nicht im Baustein umsetzen kannst/möchtest müsste ich mir einen Workaround als Logik bauen oder selbst den LBS "customizen".
          Ob und mit welchen Folgen das zu realisieren ist, wird sich zeigen. Wie gesagt, da muss ich erstmal ein wenig "draufrumdenken".
          Kind regards,
          Yves

          Kommentar


            Hallo Micha,

            Danke für den Hinweis mit IKO Systemstart! Ich hab es nun über einen Wertauslöser und einer ODER Verknüpfung gelöst... Damit ist nach Projektaktivierung der Baustein weiter aktiv. Zumindest ein funktionierender aber nicht ganz schöner Workaround.

            Andi
            Gruß
            Andi

            Kommentar


              Zitat von starwarsfan Beitrag anzeigen
              Das die Jalousie auf 100/100 hängen bleibt, kann ich mir aber nicht vorstellen. Bist Du sicher, dass das so ist? Bei meinem MCU-09 kann ich beide Werte schicken, wobei der Wert für den Winkel natürlich sehr viel später erst zur Anwendung kommt, da der Behang ja erstmal runter fahren muss. Dass der Baustein zum Zeitpunkt der finalen Lamellenverstellung aufgrund des oben beschriebenen Problems deaktiviert ist, hat darauf keinen Einfluss. Der Wert für den Winkel wurde ja schon gesendet. Oder machst Du das irgendwie anders?
              prinzipiell hast Du recht, aber ich habe eine Kleinigkeit anders in der Logik: Ich nehme den Ausgang LBS aktiv und schreibe ihn invertiert und nur bei Änderung auf meine Automatiksperren KNX GA und diese Wiederrum dann wieder invertiert auf den LBS aktiv Eingang. Damit erreiche ich daß auch per KNX der Baustein gesperrt werden kann und ich auch per KNX mitbekomme wann der LBS sich selbst deaktiviert. Hat nun leider den unschönen nebeneffekt daß sofort mit LBS deaktiviert auch die Sperre im Aktor gesetzt wird und offensichtlich damit auch die Lamellenverstellung nicht mehr ausgeführt wird.


              Zitat von starwarsfan Beitrag anzeigen
              Das muss ich mir erstmal in Ruhe durch den Kopf gehen lassen und auch mit meinem Dev-Setup ein paar Tests machen...

              Ob und mit welchen Folgen das zu realisieren ist, wird sich zeigen. Wie gesagt, da muss ich erstmal ein wenig "draufrumdenken".
              Gerne, muß ja nicht gleich morgen eine Lösung da sein, ich wollte nur wissen ob Du Dich dem Thema annehmen möchtest.
              Ich probiere jetzt noch was morgen aus: ich habe bei der Winkel RM nun noch ein SendbyChange reingemacht, vielleicht hilft das auch schon... berichte morgen

              Gruß
              Andi

              Kommentar


                Zitat von tger977 Beitrag anzeigen
                ...Ich hab es nun über einen Wertauslöser und einer ODER Verknüpfung gelöst... Damit ist nach Projektaktivierung der Baustein weiter aktiv. Zumindest ein funktionierender aber nicht ganz schöner Workaround.
                Sorry, aber das ist doch deutlich schöner, als dass hier:

                ...Iich habe eine Kleinigkeit anders in der Logik: Ich nehme den Ausgang LBS aktiv und schreibe ihn invertiert und nur bei Änderung auf meine Automatiksperren KNX GA und diese Wiederrum dann wieder invertiert auf den LBS aktiv Eingang. Damit erreiche ich daß auch per KNX der Baustein gesperrt werden kann und ich auch per KNX mitbekomme wann der LBS sich selbst deaktiviert. Hat nun leider den unschönen nebeneffekt daß sofort mit LBS deaktiviert auch die Sperre im Aktor gesetzt wird und offensichtlich damit auch die Lamellenverstellung nicht mehr ausgeführt wird.
                Kann natürlich dein Anliegen verstehen, aber das ist auch wieder so ein Sonderfall wie mein "Raffstorevorgaben"-LBS, da würde ich befürworten, selbst etwas zu schreiben, als den Originalen (eigentlich unnötig) weiter aufzublähen.

                Kommentar


                  so, zumindest hat es nun heute mit der Automatik und verbundenen E33/34 geklappt! Der sendbychange hat also funktioniert und man muß sich damit aus meiner Sicht keine Gedanken mehr machen wegen der beschriebenen Rückmeldelogik des BMS MCU 09, da der eine "Zwischen" Lamellenwert damit nicht mehr an den Baustein gesendet wird. Allerdings ist das Einbinden des Logikbausteins ohne weitere Logik damit nicht so einfach darstellbar und bedarf einiger "Einarbeitung".

                  Allerdings hatte ich noch das Problem daß nun die eigentliche Funktion von E33/34 nicht ganz korrekt funktioniert hat. Wenn man per Lokalbefehl die Jalousie verfährt deaktiviert sich der Baustein korrekt. ABER: Wenn ich dann an E32 wieder eine Aktivierung (sprich "1") sende fährt zwar die Jalousie wieder auf ihre Automatikposition zurück (das macht der BMS MCU da ja E32 invertiert auch auf dem Aktor die Sperre auslöst) und der Aktor liefert über E33/34 auch die korrekten Werte zurück, der Baustein wird aber mit dieser Änderung an E33/34 trotzdem deaktiviert mit Debug Meldung "LBS disabled through external angle change" und "LBS disabled through external height change" , was natürlich nicht im Sinne des Erfinders sein kann. Nun habe ich im Code nachgesehen wie das implementiert ist und siehe da das Problem war schnell gefunden: Bei der Prüfung auf E33/34 wird im Falle einer festgestellten Abweichung immer noch der zuletzt berechnete Bausteinwert mit den letzten Werten die durch die manuelle Verstellung erreicht wurden überschrieben, was aus meiner Sicht keinen Sinn macht. Ich habe diese beiden Codezeilen nun auskommentiert und nun funktioniert es auch mit der Reaktivierung des Bausteins!

                  Code sieht bei mir nun so aus:
                  PHP-Code:
                  if ($currentHeightExternalRefreshed == || $currentAngleExternalRefreshed == 1) {
                              
                  $currentHeightExternal $E[33]['value'];
                              
                  $minHeight LB_LBSID_getCalculatedHeightPercent() - 10;
                              
                  $maxHeight LB_LBSID_getCalculatedHeightPercent() + 10;
                              if (
                  $currentHeightExternalRefreshed == && $currentHeightExternal <> '' && ((($currentHeightExternal) < $minHeight) || ($currentHeightExternal) > $maxHeight)) {
                                  
                  // LB_LBSID_setCalculatedHeightPercent(($currentHeightExternal));
                                  
                  LB_LBSID_setLBSActivationState(0);
                                  
                  LB_LBSID_setOutputLBSActive(0);
                                  
                  LB_LBSID_debug(true"LBS disabled through external height change! aktuelle externe Höhe: $currentHeightExternal min Höhe: $minHeight max Höhe: $maxHeight");
                                  return;
                              }
                              
                  $currentAngleExternal $E[34]['value'];
                              
                  $minAngle LB_LBSID_getCalculatedAnglePercent() - 5;
                              
                  $maxAngle LB_LBSID_getCalculatedAnglePercent() + 5;
                              if (
                  $currentAngleExternalRefreshed == && $currentAngleExternal <> '' && ((($currentAngleExternal) < $minAngle) || ($currentAngleExternal) > $maxAngle)) {
                                  
                  // LB_LBSID_setCalculatedAnglePercent(($currentAngleExternal));
                                  
                  LB_LBSID_setLBSActivationState(0);
                                  
                  LB_LBSID_setOutputLBSActive(0);
                                  
                  LB_LBSID_debug(true"LBS disabled through external angle change! aktuelle externe Winkel: $currentAngleExternal min Winkel: $minAngle max Winkel: $maxAngle");
                                  return;
                              }
                          } 

                  Ich bin nun frohen Mutes endlich alles soweit am Laufen zu haben und teste mal ein paar Tage weiter mit meiner Testjalousie bevor ich das auf das Ganze Haus übertrage... Nochmal vielen Dank Yves für den Baustein und Du kannst aus meiner Sicht aufhören zu grübeln!
                  Zuletzt geändert von tger977; 01.09.2016, 21:29.
                  Gruß
                  Andi

                  Kommentar


                    Zitat von MrMirror Beitrag anzeigen
                    Kann natürlich dein Anliegen verstehen, aber das ist auch wieder so ein Sonderfall wie mein "Raffstorevorgaben"-LBS, da würde ich befürworten, selbst etwas zu schreiben, als den Originalen (eigentlich unnötig) weiter aufzublähen.
                    Ist nun ja gelöst (s.vorheriger post) und keiner braucht Angst haben daß der Baustein aufgebläht wird... An Deinem Raffstorevorgaben-LBS hätte ich aber großes Interesse! Gerne auch im alpha Stadium

                    Gruß
                    Andi

                    Kommentar


                      Hallo Yves,

                      hab die letzen Tage auch Deinen tollen Baustein getestet.
                      Hab nur Rollläden aber das funktioniert echt gut.

                      Eins ist mir aufgefallen. Wenn sich der Baustein durch Handbedienung ausschaltet und ich die Beschattungsautomatik für den Baustein wieder einschalte, nachdem die Sonne die Fassade verlassen hat, fahren die Rollläden nicht nach oben. Starte ich Edomi neu fahren die Rollläden hoch.

                      Ist das Verhalten so gewollt?

                      Gruß
                      Klaus

                      Kommentar


                        Zitat von sunnyhd Beitrag anzeigen
                        Wenn sich der Baustein durch Handbedienung ausschaltet und ich die Beschattungsautomatik für den Baustein wieder einschalte, nachdem die Sonne die Fassade verlassen hat, fahren die Rollläden nicht nach oben.
                        ist genau das was ich oben auch schon geschrieben habe. Kommentiere mal die beiden Code Zeilen (s. #188) aus, dann tut es vermutlich, da der Baustein dann seine alten selbst berechneten Werte nicht verliert...

                        Gruß
                        Andi

                        Kommentar


                          Hat funktioniert. Danke für den Hinweis.

                          Klaus

                          Kommentar


                            Hallo miteinander

                            Zitat von tger977 Beitrag anzeigen
                            Bei der Prüfung auf E33/34 wird im Falle einer festgestellten Abweichung immer noch der zuletzt berechnete Bausteinwert mit den letzten Werten die durch die manuelle Verstellung erreicht wurden überschrieben, was aus meiner Sicht keinen Sinn macht. Ich habe diese beiden Codezeilen nun auskommentiert und nun funktioniert es auch mit der Reaktivierung des Bausteins!
                            Alles klar, danke für die Tests und die Analyse.


                            Zitat von tger977 Beitrag anzeigen
                            Ich bin nun frohen Mutes endlich alles soweit am Laufen zu haben und teste mal ein paar Tage weiter mit meiner Testjalousie bevor ich das auf das Ganze Haus übertrage... Nochmal vielen Dank Yves für den Baustein und Du kannst aus meiner Sicht aufhören zu grübeln!
                            Gut, eine Baustelle weniger.

                            Du könntest evtl. mal noch einen Screenshot mit ein paar Kommentaren hier einstellen, wie Du die Verknüpfungen nun effektiv gemacht hast. Der eine oder andere hat sicher seine liebe Mühe damit, der Beschreibung folgen zu können...


                            Zitat von sunnyhd Beitrag anzeigen
                            hab die letzen Tage auch Deinen tollen Baustein getestet. Hab nur Rollläden aber das funktioniert echt gut.
                            Freut mich zu hören, danke für's Feedback.

                            PS: Achja, ich bin daran, den separaten Eingang für die Beschattungsschwelle zu implementieren...
                            Kind regards,
                            Yves

                            Kommentar


                              Zitat von starwarsfan Beitrag anzeigen
                              PS: Bei dieser Gelegenheit ist mir noch etwas anderes in den Sinn gekommen. Es wird bald noch ein neues Feature geben, stay tuned!
                              ...was ist eigentlich daraus geworden?

                              Kommentar


                                N'abend

                                Zitat von MrMirror Beitrag anzeigen
                                ...was ist eigentlich daraus geworden?
                                Öhm, veröffentlicht ab dem ersten RC der V2.8, siehe #137 vom 14.08.:

                                • Neue Eingaenge fuer minimale und maximale Elevation. Nur wenn sich die tatsaechliche Elevation zwischen diesen beiden Werten befindet, wird beschattet.
                                Final war's dann am 23.08., siehe #164. Von daher habe ich aktuell nichts mehr in der Hinterhand, abgesehen vom separaten Eingang der Dämmerungshelligkeit. Aber ob das so ohne weiteres funktioniert, wird sich erst noch rausstellen. Ist etwas tricky...
                                Kind regards,
                                Yves

                                Kommentar

                                Lädt...
                                X