Seite 7 von 15

Re: Beschattungsbaustein für Rolläden

Verfasst: Fr Aug 23, 2019 9:34 pm
von Dragonos2000
Dazu brauchst Du nichtmal ne Custom Logik. Wenn Du nur die Raumtemperatur willst, dann kannst Du einfach nen Schwellwertmodifikator einstellen. Ansonsten ein Oder-Baustein davor und an dessen Eingängen Modifikatoren einrichten.

Re: Beschattungsbaustein für Rolläden

Verfasst: Fr Aug 23, 2019 9:36 pm
von jensgulow
Okay, da muss ich mich wohl einarbeiten 8-)

Re: Beschattungsbaustein für Rolläden

Verfasst: Fr Aug 23, 2019 9:41 pm
von Dragonos2000
Würde so aussehen (Beispiel jetz nur für eine Temperatur):
Bild
Dann verknüpfst Du einfach die Raumtemperatur mit dem Eingang.

Die grünen unscheinbaren Kästchen sind sehr mächtig und eine echt geile Sache (sorry für die Wortwahl)...

Re: Beschattungsbaustein für Rolläden

Verfasst: Fr Aug 23, 2019 10:24 pm
von Dragonos2000
Übrigens ist der unschöne Zustand, dass die Verzögerung auch bei Sonnenwinkel und Sonnenhöhe greift, inzwischen behoben.

Re: Beschattungsbaustein für Rolläden

Verfasst: Mo Aug 26, 2019 11:27 am
von jensgulow
Hallo Jochen,

ich habe am Wochenende noch einmal über den Beschattungsbaustein nachgedacht:
1. Temperaturen aussen, innen Ist und innen Soll würde ich schon als Eingang sinnvoll finden
2. zum Tag/Nacht Objekt hätte ich noch eine Frage - aktuell habe ich es bei mir so, dass einige Fenster bei Dämmerung (+ oder - x min) runterfahren bis auf eine bestimmte Höhe (z.B. 60%). Einige Rolläden möchte ich aber nicht automatisch zur Dämmerung runterfahren (z.B. Wohnzimmer) .... wie bildet sich das in dem Beschattungsbaustein ab ? So wie ich das verstanden habe fahren die Rolläden bei Dämmerung zu und früh auf ....
3. ... da komme ich gleich auf nochwas: ich habe bei mir die Rolladenautomatik gesperrt bis zum Erreichen der Weckzeit, welche ich auf dem Bus habe ... sollte dann wie ich es verstehe über einen Inhibit-Eingang gehen, oder???
4. ich habe bei mir zum Schutz vor Festfrieren im Winter drin, dass bei Temperaturen um den Gefrierpunkt eben nicht ganz hoch oder ganz runter gefahren wird, sondern nur 90% oder eben 5% ... vielleicht kann man ja solch einen "Anfrierschutz" auch mit einbauen....

Ich weiss, viele Wünsche und evtl. auch verzichtbar - aber am Anfang wurde ja mal nach noch gewünschten features gefragt.

PS: kannst Du mal den Code Deines Bausteines hier teilen - ich würde mich wie gesagt gerne in die Materie einarbeiten (vielleicht kann ich dann später auch mal was sinnvolles beisteuern ;-))

Re: Beschattungsbaustein für Rolläden

Verfasst: Mo Aug 26, 2019 1:56 pm
von Dragonos2000
@jensgulow
Zu 1) Meinst Du der Hitzeschutzeingang ist nicht ausreichend? Wofür soll die Außentemperatur herangezogen werden? Ist es so gedacht, dass auf eine externe "Hitzeschutzlogik" verzichtet werden kann, und das im Baustein gemacht wird?
Zu 2) Wann hoch-/runtergefahren wird hängt letztlich davon ab, wann das Tag/Nacht Objekt umschaltet. Eine Dämmerungsstellung hatte ich noch nicht auf dem Schirm. Soll das den Hitzeschutz übersteuern, selbst aber durch die Fensterstellungen übersteuert werden (würde m.E. Sinn machen)?
Zu 3) Wenn Du das Prio-Objekt nutzt und auf 100% setzt, dann bleibt der Rolladen morgens unten (außer Du machst das Fenster auf, dann greift die parametrierte Lüftungsstellung). Für solche sperren nutze ich aber tatsächlich lieber direkt die Aktorfunktionen.
Zu 4) Kann ich einfließen lassen.

Ideen sind gerne willkommen, kein Thema. Es kann dadurch nur besser werden :)

Code kann ich heute Abend gerne einstellen, wenn ich wieder zu Hause bin und Zugriff habe.

Re: Beschattungsbaustein für Rolläden

Verfasst: Mo Aug 26, 2019 2:30 pm
von jensgulow
@Dragonos2000
Zu 1) Beschattung/Hitzeschutz nur, wenn Raumtemperatur < RaumSolltemperatur. Bei mir wird aktuell aber auch erst ab 20 °C Aussentemperatur beschattet .... ist ein rein empirischer Wert mit dem ich bisher gut klargekommen bin. .... Im Winter hatte ich bisher nicht beschattet .... wenn aber hier ein "Komplettbaustein" entsteht - dann sollten dort ggf. Dinge wie unter 3. und 4. mit hinein. Ist allerdings dann schon ein mächtiger "Klopper" :-)
Zu 2) Die Sache früh Rolläden hoch und Abend Rolläden runter hatte ich im WG im Logikprozessor verarbeitet und hier die nautische Dämmerung genommen. Früh ging es x min nach der Weckzeit hoch (unabhängig von der Dämmerung) - wenn keine Sperre auf dem Rolladen lag. Wenn das jetzt alles im Rolladenbaustein drin ist dann wollte ich halt nicht stur Dämmerung -> zu (oder eben x%), Sonnenaufgang -> auf ....sondern die Beeinflussbarkeit, ob auf Dämmerung (Tag/Nacht) reagiert wird oder nicht und die Zeiten ggf. anpassbar sind.
Zu 3) wird wohl mit dem Prio-Objekt gehen ;-)

Re: Beschattungsbaustein für Rolläden

Verfasst: Di Aug 27, 2019 8:44 am
von Dragonos2000
Hab's nicht früher geschafft, den Code einzustellen. Blockdiagramm kommt dann auch noch, sonst keine Change den Code zu verstehen, glaube ich:

Code: Alles auswählen

################################## Hysterese hinzugefügt
###########    V2.0    ########### Sonnenwinkel / -richtung auf Standard LE Funktion für Logikeingänge reduziert
################################## Keine Verzögerung mehr für Sonnenhöhe und Sonnenwinkel

{
      "Level": [
                ["$Null","integer",0],
                ["$Eins","integer",1],
		["$Zwei","integer",2],
		["$Sonne","bool",true],
		["$Azi_in_range","bool",false],
		["$Alti_in_range","bool",false],
		["$S1_Pos","integer",50],
		["$S2_Pos","integer",102],
		["$PosC","integer",200],
		["$PosD","integer",160],
		["$PosDwn","integer",255],
		["$PosUp","integer",0],
		["$PrioPos","integer",0],
		["$MaxPos_Tilted","integer",100],
		["$Lux","float",0],
		["$I_Lux_A","float",10000],
		["$I_Lux_B","float",50000],
		["$Hysteresis","float",1000],
		["$Lux_A_Hysteresis","float",0],
		["$Lux_B_Hysteresis","float",0],
		["$I3_Light_CResult_A","bool",false],
		["$I3_Light_CResult_B","bool",false],
		["$I4_Day","bool",false],
		["$I5_Auto","bool",false],
		["$Shade","bool",false],
		["$Sun_in_range_select","bool",false],
                ["$Lvl_1_select","integer",0],
		["$Lvl_1_result","integer",0],
		["$Lvl_1_delayed_result","integer",0],
		["$Lvl_1_T1_trigger","bool",false],
		["$Lvl_1_T2_trigger","bool",false],
		["$Lvl_1_delayed_select","bool",false],
		["$Sun_in_range_result","integer",0],
		["$Holddown_up","integer",5],
		["$Holddown_dn","integer",5],
		["$Lvl_2_select","integer",0],
		["$Lvl_2_result","integer",0],
		["$Lvl_2_PrioResult","integer",0],
		["$Lvl_3_select","integer",0],
		["$Lvl_3_result","integer",0],
		["$Lvl_3_result_MaxPos_Tilted","integer",0],
		["$Lvl_4_select","integer",0],
		["$Output_window","integer",0],
		["$Presence","bool",false],
		["$Heat","bool",false],
		["$Prio_select","bool",false],
		["$Open","bool",false],
		["$Tilted","bool",false],
		["$VAR<Inhibit?>","bool",false]
      ],
      "Module": [
		["Break",["$VAR<Inhibit?>"]],
		["Polynomial","$Eins","$Lux_A_Hysteresis",["$I_Lux_A","-$Hysteresis"]],
		["Polynomial","$Eins","$Lux_B_Hysteresis",["$I_Lux_B","-$Hysteresis"]],
		["Comparator","$Lux","$I3_Light_CResult_A",["$I_Lux_A","$Lux_A_Hysteresis"]],
		["Comparator","$Lux","$I3_Light_CResult_B",["$I_Lux_B","$Lux_B_Hysteresis"]],
		["And",["$Sonne","$I3_Light_CResult_A"],"$Shade"],
                ["Polynomial","$Zwei","$Lvl_1_select",["$Shade","$I3_Light_CResult_B"]],
		["Multiplexer",["$PosUp","$S1_Pos","$PosUp","$S2_Pos"],"$Lvl_1_result","$Lvl_1_select"],	
		["Comparator","$Lvl_1_delayed_result","$Lvl_1_T1_trigger","$Lvl_1_result"],
		["Comparator","$Lvl_1_result","$Lvl_1_T2_trigger","$Lvl_1_delayed_result"],
		["Monoflop","$Lvl_1_T1_trigger","$Lvl_1_T2_trigger","$Lvl_1_T1_trigger","$Holddown_up",3],
		["Monoflop","$Lvl_1_T2_trigger","$Lvl_1_T1_trigger","$Lvl_1_T2_trigger","$Holddown_dn",3],
		["Or",["$Lvl_1_T1_trigger","$Lvl_1_T2_trigger"],"$Lvl_1_delayed_select"],
		["Multiplexer",["$Lvl_1_result","$Lvl_1_delayed_result"],"$Lvl_1_delayed_result","$Lvl_1_delayed_select"],	
		["And",["$Alti_in_range","$Azi_in_range"],"$Sun_in_range_select"],
		["Multiplexer",["$Null","$Lvl_1_delayed_result"],"$Sun_in_range_result","$Sun_in_range_select"],	
		["Polynomial","$Zwei","$Lvl_2_select",["$Presence","$Heat"]],
		["Multiplexer",["$Sun_in_range_result","$Sun_in_range_result","$PosC","$PosD"],"$Lvl_2_result","$Lvl_2_select"],	
		["Multiplexer",["$Lvl_2_result","$PrioPos"],"$Lvl_2_PrioResult","$Prio_select"],	
		["Polynomial","$Zwei","$Lvl_3_select",["$I5_Auto","$I4_Day"]],
		["Multiplexer",["$PosDwn","$PosDwn","$PosUp","$Lvl_2_PrioResult"],"$Lvl_3_result","$Lvl_3_select"],
		["Limiter","$Lvl_3_result","$Lvl_3_result_MaxPos_Tilted",0,["$Null", "$MaxPos_Tilted"]],
		["Polynomial","$Zwei","$Lvl_4_select",["$Tilted","$Open"]],
		["Multiplexer",["$Lvl_3_result","$Lvl_3_result_MaxPos_Tilted","$PosUp","$PosUp"],"$Output_window","$Lvl_4_select"]
       ],
      "Input": [
		["SonnenHoehe","Sonne: Höhe über Horizont","$Alti_in_range","c"],
		["Sonnenrichtung","Sonne Kompassrichtung","$Azi_in_range","c"],
		["Sonne","Eingang, ob Sonne scheint (fix auf true, wenn unbenutzt)","$Sonne","c"],
                ["Lux","Helligkeitseingang","$Lux","c"],
		["LuxSchw1","Schwellwert für Behangposition 1","$I_Lux_A","u"],
		["LuxSchw2","Schwellwert für Behangposition 2","$I_Lux_B","u"],
		["Hysterese","Hysterese: Schwellwert - Hysterese","$Hysteresis","u"],
		["HöheSchw1","Behangposition für Schwelle 1","$S1_Pos","u"],
		["HöheSchw2","Behangposition für Schwelle 2","$S2_Pos","u"],
		["Praesenz","Hitzeschutz steuern nach Anwesenheit","$Presence","c"],
		["Hitzeschutz","Hitzeschutz auslösen","$Heat","c"],
		["HitzePosAn","Behanghöhe für Hitzeschutz bei Anwesenheit","$PosD","u"],
		["HitzePosAb","Behanghöhe für Hitzeschutz bei Abwesenheit","$PosC","u"],
		["Tag/Nacht","Tag/Nacht Eingang","$I4_Day","c"],
		["Beschatten","Beschattung aktivieren","$I5_Auto","c"],
		["Gekippt","Fenster gekippt","$Tilted","c"],
		["Geöffnet","Fenster geöffnet","$Open","c"],
		["MaxPosGekippt","Begrenzung untere Behangstellung bei gekipptem Fenster","$MaxPos_Tilted","u"],
		["DelayAuf","Verzögerungszeit beim Zurückfahren des Behangs","$Holddown_up","u"],
		["DelayAb","Verzögerungszeit beim Ablassen des Behangs","$Holddown_dn","u"],
		["Priorität","Übersteuert Beschattungs- und Hitzeschutzpositionen mit einer Prioritätsstellung","$Prio_select","c"],
		["PrioPos","Höhe der Prioritätsstellung","$PrioPos","u"],
		["Inhibit","INHIBIT","$VAR<Inhibit?>","u"]
      ],
      "Output": [
        ["Pos_o_Fenster","Behangposition ohne Auswertung Fensterkontakte (Fassadensteuerung)","$Lvl_3_result","c"],
		["Pos_m_Fenster","Behangposition mit Auswertung Fensterkontakte (Fenstersteuerung)","$Output_window","c"]
      ]
}

Re: Beschattungsbaustein für Rolläden

Verfasst: Di Aug 27, 2019 9:54 am
von gospelrock
@Dragonos2000
Ich habe mich beim Belegen der Eingänge gewundert warum ich bei manchen gelbe Ausrufezeichen bekommen habe und die Änderungen sich deshalb nicht speichern ließen.
Im Code ist mir dabei aufgefallen, dass z.B. Sonnenhöhe und Richtung von Dir als "boolean" definiert sind und nicht als "float". Wie kommt das? Das Astro-Plugin gibt die Werte doch als "float"aus? :think:

Peter

Re: Beschattungsbaustein für Rolläden

Verfasst: Di Aug 27, 2019 10:36 am
von Dragonos2000
@gospelrock
Ich habe das in der Version 2.0 dahingehend umgeschrieben, dass die Eingangsmodifikatoren verwendet werden können (Grünes Kästchen wie in Post #63 viewtopic.php?f=9&t=1245&p=13820#p13649 und dann heißt es glaub' "innerhalb Bereich"). Wenn Du das eingestellt hast, kannst Du Sonnenhöhe und -Richtung verbinden und speichern. D.h. Du gibst in der aktuellen Version die Grenzen nicht mehr über separate Eingänge vor.