Ankündigung

Einklappen
Keine Ankündigung bisher.

Rolladensteuerung nach Zeit, Helligkeit und Dämmerung

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

  • Lookahead
    antwortet
    Hallo hjk

    Leider habe ich Deine Antwort heute erst gelesen und versucht umzusetzen. Mit dem THB stehe ich hier etwas auf Kriegsfuss... Habe jetzt 1.000 Lux als Grenzwert hinterlegt für die Sperre und das KO mit der Wetterstation verknüpft. Ziel wäre es, dass der Rollladen bzw. Jalousie nicht vor einer bestimmten Zeit und Helligkeit morgens hochfährt und abends wieder runterfährt inkl. einer entsprecheden Abstufung.


    grafik.png




    Das KO "Objektwert Sperre" mit dem zugeordneten Helligkeitswert der Wetterstation muß wohl jedesmal für alle Funktionen, die einem Rollladen bzw. Jalousie zugeordnet sind, neu angelegt werden. Ein funktionsübergreifendes Objekt für den Empfang der Helligkeit gibt es für die Zeitschaltuhr so nicht, oder?

    VG

    Einen Kommentar schreiben:


  • hjk
    antwortet
    Die Schaltuhren können mit einem Helligkeitsschwellwert freigeben oder gesperrt werden. Das geht jetzt schon.

    Einen Kommentar schreiben:


  • Lookahead
    antwortet
    Hallo hjk, eure Zeitschaltuhr ist schon gut. Deshalb habe ich auch von V1 auf V2 upgegradet. Noch besser wäre es aber wenn auch die Helligkeit als Kriterium mit herangezogen würde. Dann könnte man komplett auf zusätzliche Logiken verzichten. Vielleicht könnte das als Update noch hinzugefügt werden?

    😉

    Einen Kommentar schreiben:


  • McFrosty
    antwortet
    Hi.

    Ich konnte mein Problem jetzt auf zwei Arten lösen.

    Lösung 1: Ich habe den Ausgangsfilter gesetzt, sodass immer nur das gewünschte Telegramm gesetzt wird. Eine Fahrt in die andere Richtung wird somit verhindert. Ansonsten konnte ich meine Logik unverändert lassen.

    Lösung 2: Heute morgen konnte ich die Funktion mir der Universallogik testen. Funktioniert ebenfalls und ist einfacher umzusetzen.

    Somit Problem gelöst.

    Danke Euch!

    Einen Kommentar schreiben:


  • hjk
    antwortet
    Dann erstell für den Ausgang der Logiken eigene GAs. Dann kannst du einkreisen, welche Logik wann sendet und diese korrigieren.
    Du wirst auch einen Ausgangsfilter benötigen, die Logik sendet dann z.B. nur einen Wert bei Gültigkeit, löst aber keine Fahrt in entgegengesetzter Richtung aus, nur weil ein Bedingung nicht wahr ist.
    Du kannst auch mit der Universallogik experimentieren.

    Einen Kommentar schreiben:


  • McFrosty
    antwortet
    Zitat von hjk Beitrag anzeigen
    Nur mal nebenbei, mit der MDT Schaltuhr oder Glasbedienzentrale geht sowas out of the Box. Also Sonnenaufgang aber nicht vor 7:00 Uhr hochfahren, nkl. Feiertagsberechnung, Urlaubsfunktion usw.
    Die Schaltzeiten sind dann für den Benutzer auch änderbar.
    Danke hjk für den Tipp.
    Hab mir die MDT Zeitschaltuhr schon angeschaut, und neidisch auf die Funktion geblickt.

    Da ich aber bereits die Enertex Spannungsversorgung mit Zeitschaltuhr habe, möchte ich mir das Geld aktuell sparen.

    Und ich will ja auch weng Spaß haben, mit den Logiken rumzuexperimentieren.

    Einen Kommentar schreiben:


  • McFrosty
    antwortet
    Zitat von hyman Beitrag anzeigen

    Was sendet denn Deine Logik für

    wenn auf einem der Eingangs-KOs über die entsprechende GA ein EIN kommt (also morgens)? Vermutlich ($00) ... und das kommt dann natürlich zu früh, aber nicht aus dem Logikgatter, wo Du den Fehler suchst ...

    Danke Dir hyman.
    Ich glaube das war der Fehler...

    Ich habe nicht berücksichtigt, dass das UND Logikgatter ja bei ungleichen Eingängen dennoch einen Wert sendet
    Und somit, wie Du gesagt hast, das "Abend" Logikgatter morgens meine Rolladen hoch fährt.
    Ich hab jetzt mal den Ausgangsfilter im Logikgatter aktiviert, sodass nur noch EIN oder AUS gesendet wird. Damit sollte das jetzt funktionieren.
    Ich werde das die nächsten Tage mal testen und berichten.

    Einen Kommentar schreiben:


  • hjk
    antwortet
    Nur mal nebenbei, mit der MDT Schaltuhr oder Glasbedienzentrale geht sowas out of the Box. Also Sonnenaufgang aber nicht vor 7:00 Uhr hochfahren, nkl. Feiertagsberechnung, Urlaubsfunktion usw.
    Die Schaltzeiten sind dann für den Benutzer auch änderbar.

    Einen Kommentar schreiben:


  • hyman
    antwortet
    Und die ganzen DANN-Telegramme gehen alle auf dieselbe GA?

    Was sendet denn Deine Logik für
    Zitat von McFrosty Beitrag anzeigen
    Abends:
    WENN Helligkeit <200Lux (AUS in GA 0/1/5 - daher invertierter Eingang im Logikmodul parametriert)
    UND Sonnenuntergang (AUS in GA 0/1/6 - daher invertierter Eingang im Logikmodul parametriert)
    DANN Rollos runter ($01)
    wenn auf einem der Eingangs-KOs über die entsprechende GA ein EIN kommt (also morgens)? Vermutlich ($00) ... und das kommt dann natürlich zu früh, aber nicht aus dem Logikgatter, wo Du den Fehler suchst ...

    Zitat von McFrosty Beitrag anzeigen
    Ich habe damit ein XNOR Glied gebastelt, das nur ein Signal sendet, wenn beide Eingänge den gleichen Zustand haben (1 & 1 --> Hoch; 0 & 0 --> Runter).
    Und genau das hättest Du wohl gern gebaut, hast Du aber wahrscheinlich nicht ...

    Da wursteln vier Logikgatter. Wenn deren Ausgänge alle direkt auf dieselbe GA gehen, tut es garantiert nicht ... siehe Beispiel oben.
    Zuletzt geändert von hyman; 11.10.2022, 18:11.

    Einen Kommentar schreiben:


  • McFrosty
    antwortet
    Zitat von hyman Beitrag anzeigen
    Da sind zu viele Verknüpfunfegen an Deinen GAs die ich nicht verstehe:
    • Warum geht jede GA an zwei Eingänge des Logikmoduls?
    • Warum geht sie überhaupt noch woanders hin als an das Logikmodul?
    Ich hätte erwartet: Die beiden GAs an je einen Eingang des UND-Gatters im Logikmodul -- und sonst nirgends hin.

    Ich wollte folgende Logik umsetzen, und habe dafür zwei Logik-Funktionen des Logikmoduls genutzt:

    Morgens:
    WENN Helligkeit >200Lux (EIN in GA 0/1/5)
    UND Uhrzeit 6:45 Uhr (EIN in GA 0/1/6)
    DANN Rollos hoch ($00)

    Am Wochenende soll eine andere Zeit gelten, daher sind in der GA 0/1/6 zwei Zeitschaltuhr Paar verknüpft:

    WENN Helligkeit >200Lux (EIN in GA 0/1/5)
    UND Uhrzeit 7:45 Uhr (EIN in GA 0/1/6)
    DANN Rollos hoch ($00)


    Abends:
    WENN Helligkeit <200Lux (AUS in GA 0/1/5 - daher invertierter Eingang im Logikmodul parametriert)
    UND Sonnenuntergang (AUS in GA 0/1/6 - daher invertierter Eingang im Logikmodul parametriert)
    DANN Rollos runter ($01)

    Am Wochenende gilt die gleiche Logik, ich habe nur für meine Übersichtlichkeit den Sonnenuntergang der zweiten Zeitschaltuhr mit angelegt.:

    WENN Helligkeit <200Lux (AUS in GA 0/1/5 - daher invertierter Eingang im Logikmodul parametriert)
    UND Sonnenuntergang (AUS in GA 0/1/6 - daher invertierter Eingang im Logikmodul parametriert)
    DANN Rollos runter ($01)


    Ich habe damit ein XNOR Glied gebastelt, das nur ein Signal sendet, wenn beide Eingänge den gleichen Zustand haben (1 & 1 --> Hoch; 0 & 0 --> Runter).



    Was meinst Du mit "warum geht sie überhaupt noch woanders hin als an das Logikmodul"?
    In den GAs sind nur jeweils 2 Eingänge von verschiedenen Logik-Funktionen, und die Zeitschaltuhr oder die Wetterstation hinterlegt.

    ​​

    Einen Kommentar schreiben:


  • hyman
    antwortet
    Da sind zu viele Verknüpfunfegen an Deinen GAs die ich nicht verstehe:
    • Warum geht jede GA an zwei Eingänge des Logikmoduls?
    • Warum geht sie überhaupt noch woanders hin als an das Logikmodul?
    Ich hätte erwartet: Die beiden GAs an je einen Eingang des UND-Gatters im Logikmodul -- und sonst nirgends hin.

    Einen Kommentar schreiben:


  • McFrosty
    antwortet
    Guten Morgen Zusammen.

    Danke für Eure Tipps.

    Das stimmt, das mit der Event-basierten Arbeitsweise habe ich wieder mal ignoriert. Da ich aus dem Embedded Bereich komme, habe ich leider immer noch diese Denkweise drin.

    Ich habe inzwischen meine Programmierung entsprechend umgebaut, so dass es nun Event basiert funktionieren sollte.

    Jedoch fahren die Rollos nur nach dem Kommando der Zeitschaltuhr (Eingänge 2 des Logikmoduls), und ignorieren die Helligkeit auf Eingang 1 des Logikmoduls.


    Ich habe nun eine GA für die Helligkeit (wenn kleiner 200 Lux, dann auf AUS).
    Das KO C2.1 Universalkanal kommt von der Wetterstation und wechselt zwischen AUS (wenn dunkel) und EIN (wenn hell).
    image.png

    Und nun habe ich die Schaltzeiten der Zeitschaltuhr auch auf eine GA gelegt.
    Sind Auf/Ab für Wochentags und Auf/Ab für Wochenende. Senden eine EIN am Morgen und ein AUS am Abend. Somit sollte sich auch der Zustand an den Logikmodul Eingängen ändern.
    image.png

    Aber heute morgen, um 6:45 Uhr, die Zeitschaltuhr sendet über das Element 178 (GA 0/1/6) eine EIN, und alle Rolladen fahren brav nach oben.
    Die GA 0/1/5 (Helligkeit) ist jedoch auf AUS.
    image.png​Gestern Abend war das Verhalten übrigens ähnlich. Rolladen sind nach Zeit gefahren, haben die Helligkeit jedoch ignoriert.


    Wie kann ein AUS und ein EIN (Logikmodul Eingänge sind nicht invertiert) denn eine wahre UND Verknüpfung ergeben?
    image.png

    Ich dachte ja nicht, dass ich schwer von Begriff bin, aber ........

    Seht Ihr den Fehler?​

    Einen Kommentar schreiben:


  • hyman
    antwortet
    Zitat von McFrosty Beitrag anzeigen
    Die Telegramme 1 und 2 werden nicht explizit zurückgesetzt. Sind aber auch nicht als lesend markiert, und somit nach meinem Verständnis auch nur zum Sendezeitpunkt valide.
    Nur falls das aus den vorigen Antworten nicht klar geworden ist: Dein Verständnis ist schlicht falsch. Die einmal gesendete 1 bleibt gültig, bis sie durch eine 0 auf der gleichen Gruppenadresse wieder zurückgenommen wird. Genau das hatte ich auch schon in Beitrag #4 versucht, Dir nahe zu bringen ...

    KNX ist nun mal Event-basiert: Jedes Telegramm ist ein Event. Solche Events können nun zwei Dinge tun:
    • Sie können Vorgänge auslösen und danach "vergessen" werden (weil kein Busteilnehmer sich was merkt)
    • Sie können Zustände von Busteilnehmern ändern
    Zustände kennt also nicht der Bus, wohl aber manche Busteilnehmer. Soweit Busteilnehmer Zustände kennen, fangen sie nach einem Reset mit einem (oft konfigurierbaren) Anfangszustand an. Zustandsänderungen ergeben sich aus den danach empfangenen Bustelegrammen.

    Nehmen wir mal einen Dimmaktor als Beispiel: Der kennt seinen aktuellen Dimmwert. Nach Reset ist der meist 0%, also Lampe aus. Und das bleibt so, bis ein Telegramm dem Dimmaktor einen neuen Wert gibt. Wenn jetzt ein Telegram mit also z. B. 63% empfangen wird, dann wird die die angeschlossene Lampe mit dieser Helligkeit eingeschaltet. Auch dieser Zustand bleibt so lange erhalten, bis wieder ein neues Telegramm ihn ändert.

    Bei Binärwerten an Eingängen von Logikgattern ist das nicht anders: Auch die bleiben so lange gültig, bis sie durch neue Telegramme überschrieben werden.

    Das Leseflag hat damit überhaupt nichts zu tun. Es gibt nur an, ob der letzte gesendete Zustand nochmal abgefragt werden kann. Selbst wenn das nicht der Fall ist, bleibt der letzte gesendete Binärwert für alle Busteilnehmer gültig, die ihn empfangen haben.
    Zuletzt geändert von hyman; 10.10.2022, 17:45.

    Einen Kommentar schreiben:


  • DerRenovator
    antwortet
    Zitat von McFrosty Beitrag anzeigen
    Die Telegramme 1 und 2 werden nicht explizit zurückgesetzt. Sind aber auch nicht als lesend markiert, und somit nach meinem Verständnis auch nur zum Sendezeitpunkt valide.
    Hier könntest du dein Verständnis des KNX noch etwas überdenken. Das hat jetzt nichts mit der konkreten Zeitschaltuhr zu tun und hilft dir dann auch in Zukunft.

    Einen Kommentar schreiben:


  • hjk
    antwortet
    Wenn sich am Eingang der Logik nichts ändert, ändert sich der Ausgang auch nicht. Dann läuft das bestenfalls genau einmal.
    Die Schaltuhr muss so eingestellt sein, dass sie zur Zeit y Aus sendet.

    Einen Kommentar schreiben:

Lädt...
X