OSCAT Forum

oscat.lib => oscat.lib fuer TwinCAT/CoDeSys => Thema gestartet von: erdbeerschaeler am 13. Oktober 2014, 15:33:02

Titel: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 13. Oktober 2014, 15:33:02
Hallo,

ich bin einfach noch nicht mit meiner Rollladensteuerung zufrieden und bevor ich meine schon recht umfangreiche Struktur um die Blindbausteine erweitere möchte ich die Xblind jetzt einfach mal zum laufen bekommen.

Welcher XBlind was machen soll ist mir grob klar, aber wie bringe ich die Bausteine zusammen?
Wollen die sich gar nicht Unterhalten? Laufen die alle Stand alone?
Die "normalen" Blinds kann ich aneinander hängen und Hinten dann die Ausgänge für Rauf und Runter dran bauen.
Wie sieht das hier aus?

Wenn mir das jemand kurz erklären könnte wäre das toll.
Ich will auch gerne später mal eine Doku zu den XBlind schreiben, aber ganz ohne Schupps komme ich mit den Dingern nicht an den Start.

Bitte nicht hauen aber ich weiß, dass viele von Euch Interesse an den kleine XBlind hätten, und es wäre doch Schade, wenn sie dann als Datenmüll enden   ;)
Wenn schon jemand Erfahrung mit den Bausteinen würde ich mich auch über Informationen freuen.

Gruß
erdbeerschaeler


[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: Majaestix am 13. Oktober 2014, 21:37:08
Hallo erdbeerschaeler,

da hast Du Dir aber 'was vorgenommen!
Wenn ich das richtig sehe, sind die XBLIND Bausteine im aplpha - Stadium hängen geblieben, weil niemand sie fortentwickeln wollte. Soweit ich das erkennen konnte, sind sie vollständig neu "erschaffen" worden und haben wenig (sehr wenig) mit den Vorghängerbausteinen gemeinsam. Um diese Bausteine zum stabilen Laufen zu bringen ist m. E. noch sehr viel Arbeit nötig, plus das Schreiben der bisher nicht vorhandenen Doku.
Für meinen Teil habe ich die vorhandenen, "klassischen" Bausteine so ergänzt/umgeschrieben, dass es jetzt bei mir super läuft. Dazu gibt es hier im Forum eine Menge Hinweise/Code, wie man 'was besser machen kann.

Gruss

Rainer
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 13. Oktober 2014, 22:07:13
Hallo Rainer,

das sich die Bausteine in einer Alphaphase befinden würden hab ich jetzt nicht gewusst.
Ich bin davon ausgegangen, dass nur noch ein wenig herumgetastet werden muss.

Zu meinem Projekt:
Ich habe 16 Rolladen am Haus welche alle vollautomatisch laufen.

Bisher haben wir nur für 3 Rolladen Hardwaretaster installiert (KNX).
Der Rest wird wenn überhaupt über XHome hervorragend gesteuert.

Die Steuerung ist seit dem Frühjahr aktiv und hat mit Beschattung Super funktioniert.
Jetzt kommt aber die Jahreszeit, in der man und auch Frau gerne mal die Rolladen Abends etwas länger oben lassen will.

Dafür möchte ich gerne Sperrzeiten an jeden Rollladen einbauen.
Allerdings so, dass er morgens trotzdem noch alleine hochfährt ohne das ein Tag gewartet werden muss.

Ein weiteres Problem habe ich auch noch mit dem Nightbaustein, dass wenn die Rolladen geschlossen sind und ich das Fenster öffnen, der Rolladen zwar auf Lüftungsposition fährt, aber dann am Morgen nach Sonnenaufgang und Nachlaufzeit nicht wieder öffnen.

Im Großen und Ganzen stelle ich immer wieder fest, dass mein Problem der Blind_Night Baustein ist.


...... um aber noch mal zum Anfang dieses Threads zu kommen.
Wenn es Möglichkeiten gibt den Night etwas zu modifizieren, dann würde ich das gerne vorziehen.
Allerdings habe ich das so noch nie gemacht und bin mal gespannt wie das funktioniert.

Was hast Du denn so an Deinen Bausteinen für Funktionen eingebaut und wie hast Du das realisiert?

Gruß
Sven
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 15. Oktober 2014, 00:02:36
Hi Sven, dein Problem mit dem nicht mehr morgens hochfahren nach einem manuellen Eingriff habe ich auch. Dafür müsste es doch eigentlich eine Einstellung geben, sodass der Baustein spätestens nach einer Zeit X wieder in den Automatik Modus wechselt?
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 15. Oktober 2014, 06:54:31
Guten Morgen,

@Nightwatcher
Das ist der eine Punkt. Allerdings wäre ein Freigabebit sowie ein Zeitbereich von Frühestens Rauf oder Runter für Morgens und Abends auch interessant.

Ich werd mal versuchen, den Originalbaustein zu verbiegen, wobei ich noch nicht weiß, wie ich an den Code komme.

Gruß Sven
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 17. Oktober 2014, 08:28:21
Das sollte relativ einfach zu ändern sein. Schaut mal in den Quellcode des BLIND_NIGHT, gleich die ersten Zeilen bewirken, dass ein manueller Eingriff bei Nacht das automatische Öffnen deaktiviert:

IF NOT (up AND dn) AND night THEN
(* manual operation at night will cancel operation for one night *)
night := FALSE;
ELSIF [...]

Wenn ihr diese erste IF-Abfrage rauslöscht (und aus dem ELSIF natürlich ein IF macht), sollte es so funktionieren, wie ihr euch das wünscht.

Ich würde dazu ganz pragmatisch den Baustein aus der Bibliothek ins eigene Projekt kopieren, dort modifizieren und z. B. als BLIND_NIGHT2 speichern und aufrufen. Sache gegessen.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 18. Oktober 2014, 13:31:37
Mahlzeit,

vielleicht eine blöde Frage, aber wie komme ich am besten an den Quellcode der Bausteine dran.
Einfach die Lib in einem Editor des Vertrauen öffnen und dann drin herummachen ist doch wohl der falsche Weg, oder??

Sonnigen Wochenende

Der Schwenn
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 18. Oktober 2014, 16:29:45
Okay...
Lib als Datei öffnen und ab geht die wilde Reise ;-)

Aber wenn ich die Lib dann mit dem kopierten und geändertem Baustein speichere, dann ist der nach erneutem Import der Datei nicht dabei.

Was mache ich falsch?!?
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 19. Oktober 2014, 20:03:43
Also der Editor des Vertrauens sollte klar sein - Codesys. Darin kann man nicht nur Projekte bearbeiten, sondern auch Bibliotheken, sofern sie nicht verschlossen wurden. Was bei den OSCAT-Bibliotheken ("Open Source Community...") dankenswerterweise nicht der Fall ist.

Drei Möglichkeiten fallen mir auf die Schnelle ein:

1. In Codesys also "Datei öffnen", Dateiart "Bibliothek *.lib" auswählen und die gewünschte Bibliothek öffnen. Zweite Instanz von Codeys öffnen mit dem Zielprojekt, dort neuen Baustein unter beliebigem Namen anlegen und per Copy & Paste Deklarations- und Codeteil kopieren. Im Zielprojekt dann anpassen und die Instanzen auf den neuen Bausteinnamen ändern.

2. Wie oben Bibliothek in Codesys öffnen, dann aber als Projekt abspeichern. Schließen. Zielprojekt öffnen, "Projekt/Kopieren...", Quellprojekt auswählen und im folgenden Dialog den gewünschten Baustein. Eine Kopie wird im Zielprojekt angelegt, diese umbenennen, modifizieren und die Instanzen anpassen an den neuen Namen.

3. Vielleicht am einfachsten: Bibliothek öffnen, "Projekt/Exportieren...", gewünschten Baustein auswählen, Dateiname für (temporäre) Exportdatei angeben. Zielprojekt öffnen, "Projekt/Importieren...", Datei auswählen, anpassen, etc. pepe.

Sucht euch eine Variante aus.

Direkt in der Bibliothek ändere ich nichts, weil ein Debuggen vom Zielprojekt aus dann nicht möglich ist.

Grüße,
mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 19. Oktober 2014, 20:11:23
Hallo Mattsches,

bei meiner Bastelei habe ich mich für die .exp Favriante entschieden.
Dadurch habe ich auch Deinen Dark Baustein testen können.

Leider funktioniert der nicht mit dem Shadebaustein, daher muss ich jetzt wirklich mal selbst ran.

Eine Frage hätte ich noch... Kann ich wohl eine Art Zeitfenster wir beim Timer_EXT in den Blind_Night mit hinein bauen?

Gruß
Sven
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 19. Oktober 2014, 20:32:42
Servus Sven,

jetzt verwirrst Du mich. Welchen Dark-Baustein meinst Du?  ???

Ich habe mal meine Varianten der bestehenden BLIND_*-Bausteine vorgestellt. Ein *DARK war da aber nicht dabei. Richtig ist, dass meine Bausteine nur miteinander tun - weil ich die Analogwerte für Position und Lamellenwinkel von größenlosen 0..255 auf 0..100 bzw. Winkel in Grad geändert habe.

Was Deine Frage angeht: Können kannst Du nahezu alles. Mir ist nur nicht ganz klar, was der Timer bewirken soll (ohne den TIMER_EXT jetzt genau zu kennen, ich setze ihn nicht ein).

Was soll denn genau wie funktionieren? Komst Du mit meinem Vorschlag oben nicht zum Ziel?

Gruß,
mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 19. Oktober 2014, 20:42:08
Hallo,

ich komme mit Deinem Vorschlag schon einen ganzen Schritt weiter, und bin jetzt gerade etwas verunsichert bezüglich des Darkbausteines.
Könnte sein, dass der von jemand anderem kam.. Sorry!

Timer_Ext.... Den nutze ich sehr häufig.
Der Baustein reagiert auf Sunrise und Sunset mit Offsets und es kann ein "Fenster" für start und Stop eingestellt werden.

Bezogen auf die Blindbausteine bedeutet das: Die Jalousien sollen im Sommer nicht nach der Offsetzeit von z.B. 11 Minuten schon um 4:44h hoch fahren, sondern frühestens um 7 Uhr.

Für den Winter würde ich die Jalousien nicht schon um 16:30h runter fahren lassen, sondern erst um 19 Uhr.
Alles in Abhängigkeit davon, ob wir zuhause sind oder nicht ;-)

Ich werd mich mal ran setzten und ein wenig basteln... vielleicht bekomme ich es ja hin!

Schicken Abend noch....
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 20. Oktober 2014, 13:42:30
Das sollte einfach sein, dazu brauchst Du keinen TIMER_EXT.

Einfach ein paar zusätzliche Parameter definieren, z. B.:

FUNCTION_BLOCK BLIND_NIGHT
VAR_INPUT
[...]
ENABLE_MINMAXTIMES : BOOL;
END_VAR
VAR_INPUT CONSTANT
[...]
EARLIEST_OPENING_TIME : TIME_OF_DAY;
EARLIEST_CLOSING_TIME : TIME_OF_DAY;
[...]
END_VAR

Und dann die Bedingungen für das automatische Schließen und öffnen erweitern:

[code][...]
ELSIF (DT_TO_TOD(dtin) > sunset + sunset_offset) AND (last_night < DT_TO_DATE(dtin)) AND NOT night AND e_night DN AND (DT_TO_TOD(dtin)>=EARLIEST_CLOSING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
[...]
ELSIF (DT_TO_TOD(dtin) > sunrise + sunrise_offset) AND (last_day < DT_TO_DATE(dtin)) AND night AND e_day AND (last_night < DT_TO_DATE(dtin))  AND (DT_TO_TOD(dtin)>=EARLIEST_OPENING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
[...]
END_IF;

Jetzt werden die Rolläden erst geschlossen, wenn EARLIEST_CLOSING_TIME erreicht oder diese Blockierung/Verzögerung per ENABLE_MINMAXTIMES=FALSE deaktiviert ist (z. B. wenn Du nicht zuhause bist).

Du solltest nur noch prüfen, ob die aktuelle Uhrzeit an DTIN als Lokalzeit oder UTC übergeben wird. Falls Letzteres der Fall ist, würde ich einen weiteren Parameter machen, mit dem Lokalzeit übergeben wird und in den beiden zusätzlichen Bedingungen darauf zugreifen (und nicht auf DTIN). Sonst bewegen sich die Läden doch ein oder zwei Stunden früher als gewünscht.

Grüße,
mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 20. Oktober 2014, 13:49:40
Mahlzeit

Coole Sache...was Du da mal eben aus dem Ärmel geschüttelt hast....
Das sollte die ganze Sache doch schon erheblich beschleunigen.

Ich hab mir aber auch nochmal die XBlind Bausteine angesehen, da ich ja jetzt weiß, wie ich an den Quellcode komme war das kein Problem mehr.
Die bieten diese Funktion nämlich schon...
Ich werde in den nächsten Tagen einfach mal beides einbauen und sehen, wo es noch klemmen könnte.

Vielen Dank auf jeden Fall schon mal ....

Gruß
Sven
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 25. Oktober 2014, 14:18:59
Soooo, jetzt aber nochmal zu Mattsches Code.

Der verbogenen Blind_Night läuft SUUUUPER.  :)
Ich hab's erst an einem Fenster ein paar Tage getestet und jetzt alle anderen (16 Rollläden) umgestrickt.
In Verbindung mit der Anwesenheitserkennung von Xhome ist das eine TOP Lösung.

VIELEN DANK

Einen Hab ich aber noch  ;)
Auf den Blind_Input habe ich den jeweiligen Fensterkontakt gelegt. (IN)
Wenn die Rolladen die Position Null haben und der IN negativ durch das Öffnen des Fensters wird, dann fährt der Rolladen auf die eingestellte Lüftungsposition.
Was könnte ich machen, dass der Rolladen beim schließen des Fensters auch wieder zu fährt? Master Mode ist auf "1".
Sollte ich mit Flanken arbeiten?

Gruß
Sven
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 25. Oktober 2014, 14:30:59
Das sollte relativ einfach zu ändern sein. Schaut mal in den Quellcode des BLIND_NIGHT, gleich die ersten Zeilen bewirken, dass ein manueller Eingriff bei Nacht das automatische Öffnen deaktiviert:

IF NOT (up AND dn) AND night THEN
(* manual operation at night will cancel operation for one night *)
night := FALSE;
ELSIF [...]

Wenn ihr diese erste IF-Abfrage rauslöscht (und aus dem ELSIF natürlich ein IF macht), sollte es so funktionieren, wie ihr euch das wünscht.

Ich würde dazu ganz pragmatisch den Baustein aus der Bibliothek ins eigene Projekt kopieren, dort modifizieren und z. B. als BLIND_NIGHT2 speichern und aufrufen. Sache gegessen.

Merci, das werde ich mal 3-4 Tage zum test so laufen lassen.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 26. Oktober 2014, 07:52:48
Moin,

das ist es leider nicht.

Ich vermute das Problem dabei, dass man über Blind_INPUT den PO ja auf 0 setzt. Die weiteren Blind Bausteine schleifen das ja nur durch und ändern nichts am Status PO. Daher gibt der BLIND_NIGHT am Morgen nur den Befehlt, den PO wieder freizugeben. Da er aber bereits bei 0 ist (unten), passiert am Morgen nichts.

Demzufloge müsste eigentlich der BLIND_INPUT Baustein nach einer Zeit wieder den Wert 255 annehmen.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 26. Oktober 2014, 13:45:51
@NightWatcher:
Hast du am BLIND_INPUT Master_Mode auf True gesetzt?

@erdbeerschäler:
Ja, das würde ich über eine Erkennung der negativen Flanke lösen. F_TRIG auf den Fensterkontakt, den Ausgang zum einen verodert mit dem, was bisher auf BLIND_INPUT/IN geht.

Zum anderen muss ja noch der Sollwert umgeschaltet werden, der auf BLIND_INPUT/AI geht. Dazu würde ich dem F_TRIG zur Sicherheit einen TOF nachschalten, z. b. mit t#1s. Von dort dann auf den eigentlichen Sollwertumschalter. Der ginge z. B. mit MUX_R2 und nachgeschaltetem Konverter von Real auf Byte (nötigenfalls Real -> Int -> Byte). Etwas umständlich, eleganter wäre ein MUX_B2 für die Umschaltung zweier Byte-Werte. Leicht herzustellen als abgewandelte Kopie des MUX_R2.

Gruß,
m.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 26. Oktober 2014, 21:20:24
Ja habe ich.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 26. Oktober 2014, 21:23:21
Hast Du die Reihenfolge des Plans nochmal kontrolliert?
Das ist bei mir meistens ein Problem, wenn ich gebastelt habe.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 27. Oktober 2014, 09:51:35
japp, auch das passt alles.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 27. Oktober 2014, 21:51:39
Sven, bei dir tut es nun ja, oder? Soll heißen, wenn du nachts manuell eingreifst, fährt der Rolladen morgens trotzdem automatisch hoch? Poste doch mal deinen Code.

NightWatcher, dann muss es an deinem Programm liegen. Du schreibst, der BLIND_INPUT gibt PO=0 aus. Das geht m. E. nur, wenn entweder MASTER_MODE=FALSE ist (musst du ausdrücklich setzen, leider hat der Autor der Variablen keinen Initialwert verpasst). Oder wenn vor dem automatischen Schließvorgang der Laden schon manuell geschlossen wurde.

Wenn Master Mode = True ist und der Laden manuell geöffnet ist, bleibt PO=255 bestehen - egal was die nachgeschalteten Bausteine bei aktivem Automatikbetrieb so anstellen, inklusive BLIND_NIGHT.

Ich hatte seinerzeit im BLIND_NIGHT noch einen Bug gefunden, die Ausgänge QU und QD werden nur im Automatikmodus durchgeschleift, was ich für falsch halte:

Original:
(* shade at night only in auto mode and enable = true *)
IF UP AND DN AND night THEN
status := 141;
po := night_position;
ao := night_angle;
ELSE
QU := UP;
QD := DN;
po := pi;
ao := ai;
status := s_in;
END_IF;

Meine Version:
(* shade at night only in auto mode and enable = true *)
IF UP AND DN AND night THEN
status := 141;
po := night_position;
ao := night_angle;
ELSE
po := pi;
ao := ai;
status := s_in;
END_IF;

QU := UP;
QD := DN;

Glaube aber nicht unbedingt, dass dein Problem damit zusammenhängt.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 27. Oktober 2014, 22:05:48
Nabend,
das ist mein aktueller Code:

IF (DT_TO_TOD(dtin) > sunset + sunset_offset) AND (last_night < DT_TO_DATE(dtin)) AND NOT night AND e_night AND DN AND (DT_TO_TOD(dtin)>=EARLIEST_CLOSING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
(* enable night *)
night := TRUE;
last_night := DT_TO_DATE(dtin);
ELSIF (DT_TO_TOD(dtin) > sunrise + sunrise_offset) AND (last_day < DT_TO_DATE(dtin)) AND night AND e_day AND (last_night < DT_TO_DATE(dtin)) AND (DT_TO_TOD(dtin)>=EARLIEST_OPENING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
(* disable night *)
night := FALSE;
last_day := DT_TO_DATE(dtin);
END_IF;

(* shade at night only in auto mode and enable = true *)
IF UP AND DN AND night THEN
status := 141;
po := night_position;
ao := night_angle;
ELSE
QU := UP;
QD := DN;
po := pi;
ao := ai;
status := s_in;
END_IF;

Ich hab Abends mal ein wenig an dem ein oder anderen Rolladen herumgefahren und morgen fahren alle so wie sie sollen.
Einen CFC-Plan von einem Fenster hab ich auch mal mit dran gehangen.

Gruß
Sven

[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 28. Oktober 2014, 08:01:31
Danke, genau wie ich das vermutet habe, die erste IF-Abfrage ("IF NOT (up AND dn) AND night...") entfernt.

NightWatcher, ich kann keinen Fehler darin erkennen. Muss bei dir genauso funktionieren. Wenn nein, müsstest du dein Programm mal hier posten. Sonst wird es schwierig, weitere Aussagen zu machen.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 28. Oktober 2014, 23:05:03
Nun, folgendes Szenario, rolladen fährt nachts automatisch runter.

blind_input po = 255
blind_night po = 0

Ich fahren den rolladen in der Nacht hoch und dann wieder runter, weil ich zb mal auf die Terrasse muss.

blind_input po = 0
blind_night po = 0

Morgens schleift das modul blind_night den pi an po durch. Da er aber noch auf 0 steht, passiert natürlich nichts.

[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 29. Oktober 2014, 12:29:07
Jetzt verstehe ich, wo der Hase im Pfeffer liegt. Klar, wenn der Laden nachts manuell geschlossen wird, bleibt er morgens zu.

Die Abhilfe kann nun allerdings nicht im BLIND_NIGHT geschehen, Ursache ist ja der PO=0 des BLIND_INPUT. Lösen würde ich das folgendermaßen:

- 255 (konstant) auf BLIND_INPUT/PI
- BLIND_NIGHT/STATUS abgreifen und auf <> 141 vergleichen (Achtung, die Doku stimmt hier nicht, Status 142 wird nicht ausgegeben)
- das (boolesche) Ergebnis über einen F_TRIG ziehen und dessen Ausgang auf BLIND_INPUT/IN

Ergebnis: Wenn der BLIND_NIGHT aus dem Nachtbetrieb geht, wird dem BLIND_INPUT kurzzeitig befohlen, auf Position 255 zu fahren. Dazu reicht der kurze Impuls, der Baustein fährt danach selbständig die definierte Position an.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 29. Oktober 2014, 17:02:49
Die Abhilfe kann nun allerdings nicht im BLIND_NIGHT geschehen, Ursache ist ja der PO=0 des BLIND_INPUT. Lösen würde ich das folgendermaßen:
Das habe ich mir auch gedacht. Aber probieren wollte ich es natürlich trotzdem mal.

- 255 (konstant) auf BLIND_INPUT/PI
Sowas ind er Art habe ich mir heute morgen auch gedacht, nachdem ich mit den Quellcode des Bausteins mal angesehen habe.

Ich kann kaum glauben, dass das Problem nur mich betrifft und man dies nicht Werkseitig in den Baustein irgendwie integriert hat. Oder bauen sich alle Ihr eigenes Süppchen? Habe immer möglichst versucht, die Bausteine nicht zu bearbeiten.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 29. Oktober 2014, 21:55:47
Nochmal, du musst keinen Baustein bearbeiten. Das würde überhaupt nichts bringen. Du müsstest lediglich die Verschaltungen im CFC-Plan zufügen, dessen Screenshot du oben angehängt hattest. Und würdest die "werksseitig" (es gibt hier keinen Hersteller, lediglich eine Community) vorgesehenen Funktionen der Bausteine nutzen. Wenn ich schreibe "255 auf BLIND_INPUT/PI", dann heißt das nicht, du sollst den PI des BLIND_INPUT im Baustein selbst verbiegen. Sondern eine Konstante mit Wert 255 an den Bausteineingang übergeben. Nur falls das vielleicht missverständlich war.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 29. Oktober 2014, 22:56:58
Schon klar, das alles.  ;)

Ich denke, ich habe mich falsch ausgedrückt...
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 31. Oktober 2014, 09:32:25
Habe mal was gebastelt, so meinst du es, oder?



[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 31. Oktober 2014, 12:30:04
Ja, genau. Ich hätte den Status eher über eine grafische Verschaltung gelöst, du bewegst dich ja innerhalb eines CFC-Plans. Aber das ist Geschmackssache und macht funktional keinen Unterschied.

Dann kannst du heute Nacht bzw. morgen früh ja mal testen.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 31. Oktober 2014, 13:28:18
Habe ich gestern bereits (heute morgen) - klappt natürlich.... NICHT  :-\
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 31. Oktober 2014, 22:05:19
Na dann sag' das doch gleich.

Zwei Vorschläge noch:

1. IN über CFC-Verschaltung, wie oben beschrieben
2. Nach dem F_TRIG noch ein TON, um den Impuls zu verlängern

Ich glaube aber nicht, dass es das ist. Der BLIND_INPUT schaltet PI auf PO durch, sobald IN=TRUE ist, und sei es nur für einen Zyklus. Sorry, aber ich tippe immer noch auf MASTER_MODE=FALSE.

Was passiert denn, wenn du statt BLIND_SHADE.Status eine sonst ungenutzte Variable an den Vergleicher hängst? Dann die auf 141 setzen und zurück auf 0 oder was auch immer. Wenn es dann funktioniert (auch ohne Impulsverlängerung via TON), muss es am BLIND_NIGHT liegen.

Die erste Bedingung im BLIND_NIGHT hast du wie oben beschrieben rausgenommen?
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 31. Oktober 2014, 22:13:07
Ach, und falls du dich wunderst, warum die Läden so früh herunter gehen: XCAL.SUN_RISE und SUN_SET werden in UTC ausgegeben (die Sonne ging heute nicht schon um kurz vor vier unter). Dem BLIND_NIGHT übergibst du aber die lokale Zeit an DTIN. Mit XCAL.UTC funktioniert es richtig.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 02. November 2014, 08:41:22
Ach, und falls du dich wunderst, warum die Läden so früh herunter gehen: XCAL.SUN_RISE und SUN_SET werden in UTC ausgegeben (die Sonne ging heute nicht schon um kurz vor vier unter). Dem BLIND_NIGHT übergibst du aber die lokale Zeit an DTIN. Mit XCAL.UTC funktioniert es richtig.
Die Bausteine haben bei mir nen Offset von 90min. Die andere Nachricht von dir, werde ich evtl am Montag mal ausgiebig testen. Danke schon mal  8)
Titel: Lüftungsfunktion über Fensterkontakt
Beitrag von: erdbeerschaeler am 02. November 2014, 09:52:23
Guten Morgen,

ich muss nochmal wegen meiner Lüftungsfunktion etwas nachhaken.
Die Flanken für die Fensterkontakte sind drin und wenn der Rolladen ganz zu (Pos 0) hat, dann wird auch die eingestellte Position angefahren.

Wenn ich das Fenster wieder schließe sollte der Rolladen wieder zu fahren.
Sollte ich jetzt noch eine weitere Abfrage der Flanke nur andersherum machen in Verbindung mit der eingestellten Position?
Das scheint mir falsch zu sein. Irgendwie sollte ich doch den Blind_Input dazu bewegen können, wieder den Befehl zum zufahren heraus zu geben?!?

IDEEN?

[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 02. November 2014, 18:28:41
Hallo Sven,

das stimmt schon so. Das Öffnen über IN und PI ist für den BLIND_INPUT eine einmalige Sache. Er weiß nach der Ausführung schlicht nicht mehr, wie der Laden zuvor gestanden hat. Woher auch?

Den Befehl zum Zufahren kannst du entweder über die von mir ursprünglich vorgeschlagen über IN und PI lösen. Oder du gibst bei der entsprechenden Flanke des Fensterkontakts (wie ist denn dessen Logik? deine zwei Posts widersprechen sich hier) einen Impuls auf S2, der länger als DEBOUNCE_TIME und kürzer als CLICK_TIME ist. Voraussetzung: CLICK_EN=TRUE. Nachteil: Der Rolladen ist danach für die bei MANUAL_TIMEOUT angegebene Zeit auf Handbetrieb - geht in der Zeitspanne die Sonne auf, fährt der Rolladen nicht automatisch hoch.

Du hast die Wahl...

Grüße,
mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 03. November 2014, 10:49:25
Update, ich vermute, dass der F_TRIG hier bei einer Zyklischen Laufzeit nicht geeignet ist. In meinen ersten Tests läuft es, wenn ich eine Schaltung schreibe, die 1x in der Sekunde aufgerufen wird.

Werde das dann heute nach mal noch unter realen Bedingungen testen.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 03. November 2014, 12:44:11
Was meinst du mit "in einer zyklischen Laufzeit"? Der F_TRIG kann schon zyklisch aufgerufen und bearbeitet werden - genau dafür ist er gemacht. Er gibt bei einer positiven Flanke ein Signal heraus, das genau einen Zyklus lang ansteht. Das nennt man dann Impuls. Und der reicht, um den BLIND_INPUT via IN anzutriggern.

Aber ich hatte dich so verstanden, dass dein Beispiel (Screenshot) für die Lüftungsposition zwar funktioniert, das Schließen jedoch nicht. Oder funktioniert schon der Screenshot nicht?

Man kann leider die Konstante nicht erkennen, die an PI angebunden ist. Kannst du die noch so verschieben, dass man sieht, welchen Wert du übergibst?
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 03. November 2014, 13:20:45
Servus nochmal,

ich war schon dabei, dir ein CFC-Beispiel zu bauen. Da fiel mir auf, dass der Vorschlag eigentlich Schwachsinn ist und die Lösung durch Modifikation des BLIND_NIGHT viel eleganter geht. Du hast den Baustein ja eh schon angepasst, oder? Dann bau doch mal folgendes mit dazu:

FUNCTION_BLOCK BLIND_NIGHT
VAR_INPUT
[...]
WINDOW_SWITCH : BOOL := FALSE;
END_VAR
VAR_INPUT CONSTANT
[...]
ENABLE_VENTINGPOS : BOOL := FALSE;
VENTING_POSITION : BYTE := 0;
VENTING_ANGLE : BYTE := 0;
END_VAR

[...]

(* shade at night only in auto mode and enable = true *)
IF UP AND DN AND night THEN
status := 141;
IF ENABLE_VENTINGPOS AND NOT WINDOW_SWITCH THEN (* open shade slightly if venting position is enabled and window is opened *)
po := venting_position;
ao := venting_angle;
ELSE (* set standard night position when not venting *)
po := night_position;
ao := night_angle;
END_IF
ELSE
[...]
END_IF;

Dem liegt die Annahme zu Grunde, dass der Fensterkontakt mit 1=geschlossen definiert ist. Andernfalls musst du halt die Logik in meinem Code oder an der CFC-Verschaltung negieren. Und via Setup-Variablen die Lüftungsfunktion aktivieren und die Position festlegen.

Sollte eigentlich so funktionieren. Und ist doch deutlich übersichtlicher als die Lösung außen über den CFC.

Gruß,
mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 03. November 2014, 15:12:59
Mahlzeit,

das sieht seehr gut aus und ich hatte auch schon mit etwas ähnlichem angefangen.

Eins musst Du mir aber bitte noch erklären.

Wieso hat der BNightbaustein in meinen Plänen jetzt die Oberhand?

Ein paar Beispiele:
Gestern Abend habe ich vor der eingestellten Uhrzeit die Rolladen ganz zu gefahren und zur eingestellten Uhrzeit ist der Rolladen auf seine Position gefahren.
Heute Morgen sind wir sehr früh raus und haben die Rolladen zum Lüften im Schlafzimmer von Hand hoch gefahren.
Nach der Manueltimeout Zeit sind die Rolladen dan wieder in die Nachtposition gefahren.

Irgendwie bin ich verwirrt. Liegt das daran, das die oberste Zeile im Nightbaustein raus ist, oder liegt das an Mastermode=1

Gruß
Sven
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: NightWatcher am 03. November 2014, 18:26:22
Was meinst du mit "in einer zyklischen Laufzeit"? Der F_TRIG kann schon zyklisch aufgerufen und bearbeitet werden - genau dafür ist er gemacht. Er gibt bei einer positiven Flanke ein Signal heraus, das genau einen Zyklus lang ansteht. Das nennt man dann Impuls. Und der reicht, um den BLIND_INPUT via IN anzutriggern.

Aber ich hatte dich so verstanden, dass dein Beispiel (Screenshot) für die Lüftungsposition zwar funktioniert, das Schließen jedoch nicht. Oder funktioniert schon der Screenshot nicht?

Man kann leider die Konstante nicht erkennen, die an PI angebunden ist. Kannst du die noch so verschieben, dass man sieht, welchen Wert du übergibst?
Meine Schaltplan funktioniert schon. Der Impuls in dem Zyklus ist leider so kurz, dass der nächste Baustein (TON) und/oder BLIND_INPUT ihn nicht "registriert".

Ist der Zyklus z.b. 1sek. dann scheint es zu klappen. Werde ich morgen früh sehen.  ::)
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 03. November 2014, 19:09:12
@NightWatcher:
Sorry, jetzt hatte ich euch beide durcheinander gebracht und deinen Post auf den Screenshot von Sven bezogen. Mein Fehler.
Dennoch habe ich Schwierigkeiten mit Deiner Darstellung. Was meinst du mit "Ist der Zyklus z. B. 1 sek."? Verstellst du die Bearbeitungszeit der Task, in der der CFC-Plan aufgerufen wird? Das hat auf die Flankenerkennung grundsätzlich keinen Einfluss. Wichtig ist lediglich, dass der F_TRIG in derselben Task aufgerufen wird wie das Quellsignal aktualisiert wird. In deinem Screenshot hier http://www.oscat.de/community/index.php/topic,2252.msg11798.html#msg11798 (http://www.oscat.de/community/index.php/topic,2252.msg11798.html#msg11798) ist das aber der Fall. Man sieht allerdings auch, dass die Bearbeitungsreihenfolge nicht stimmt, der F_TRIG wird vor dem Vergleicher aufgerufen. Ich würde mal Extras/Reihenfolge.../Nach Datenfluss anordnen ausführen.
Hast du meine Vorschläge hier http://www.oscat.de/community/index.php/topic,2252.msg11801.html#msg11801 (http://www.oscat.de/community/index.php/topic,2252.msg11801.html#msg11801) denn schon ausprobiert? Brauchst du überhaupt weitere Unterstützung?

@Sven:
Bezieht sich deine Aussage von wegen Oberhand schon auf den modifizierten BLIND_NIGHT? Kaum, oder? Wichtig dazu noch, die ganze Beschaltung an IN und PI inkl. F_TRIG etc. fliegt dann raus. Nur falls das nicht schon klar war.
Ich schlage vor, du testest damit mal. Um zur vorherigen Variante hier http://www.oscat.de/community/index.php/topic,2252.msg11806.html#msg11806 (http://www.oscat.de/community/index.php/topic,2252.msg11806.html#msg11806) und deren Verhalten etwas sagen zu können, bräuchte ich noch Infos zu meinen Fragen oben (Logik des Fensterkontaktes, verschaltete Konstante an PI).

Grüße,
mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 03. November 2014, 19:37:13
hallo mattsches,

meine Erkenntnisse beziehen sich alle nur noch auf die modifizierte Version.
Deinen "Code" hab ich eingebaut, aber irgendwie bewegt sich nichts, wenn ich das Fenster öffne.
Die Vermutung von Dir ist richtig, dass der Kontakt bei geschlossenem Fenster eine "1" bringt.

Vielleicht wirfst Du mal kurz einen Blick drauf, was ich da gebastelt habe.
Hast Du zufällig eine Erklärung für das Verhalten des modifizierten Blind_Night?

Schicken Abend noch...
Sven

[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 03. November 2014, 22:13:59
Kannst du noch einen Screenshot machen bei geöffnetem Fenster? Möglichst so, dass man die Ausgänge Status und PO des BLIND_NIGHT_SD erkennen kann. Danke!
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 04. November 2014, 07:00:13
Guten Morgen,

na klar mach ich noch ein paar Screenshots.
Du bekommst alles was Du brauchst  ;)

Es ändert sich beim Öffnen des Fensters, aber nur der Eingang vom Kontakt.
Ich hab einen Screenshot und auch mal den aktuellen Code des Blind angehängt.

(*IF NOT (up AND dn) AND night THEN
(* manual operation at night will cancel operation for one night *)
night := FALSE;*)
IF (DT_TO_TOD(dtin) > sunset + sunset_offset) AND (last_night < DT_TO_DATE(dtin)) AND NOT night AND e_night AND DN AND (DT_TO_TOD(dtin)>=EARLIEST_CLOSING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
(* enable night *)
night := TRUE;
last_night := DT_TO_DATE(dtin);
ELSIF (DT_TO_TOD(dtin) > sunrise + sunrise_offset) AND (last_day < DT_TO_DATE(dtin)) AND night AND e_day AND (last_night < DT_TO_DATE(dtin)) AND (DT_TO_TOD(dtin)>=EARLIEST_OPENING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
(* disable night *)
night := FALSE;
last_day := DT_TO_DATE(dtin);
END_IF;

(* shade at night only in auto mode and enable = true *)
IF UP AND DN AND night THEN
status := 141;
IF ENABLE_VENTINGPOS AND NOT WINDOW_SWITCH THEN (* open shade slightly if venting position is enabled and window is opened *)
po := night_position;
ao := night_angle;
ELSE (* set standard night position when not venting *)
po := night_position;
ao := night_angle;
END_IF
ELSE
po := pi;
ao := ai;
status := s_in;
END_IF;
QU := UP;
QD := DN;


Ich hab nochmal versucht zu verstehen, warum der Blindnight seine Position nach Manueltimeout immer wieder nachzieht, aber dafür fehlt mir einfach das Programmiergen  :-\

[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 04. November 2014, 10:59:38
 ::) ::) Fehler gefunden  ::) ::)

Ich hab für die Lüftungsposition die Nachtposition eingetragen.

BLÖD... wer lesen kann ist klar im Vorteil.

Dann halt nur noch das Problem mit dem automatischen Fahren.
Muss ich da etwas am Blind_Input umstellen?
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 04. November 2014, 13:25:01
Ja, genau. Klassischer Tippfehler.

Dass der BLIND_NIGHT nach Ablauf des Timeouts für den Handbetrieb wieder seine Position aktiviert, liegt tatsächlich an der deaktivierten ersten IF-Abfrage. Die bewirkt nämlich, dass sich der BLIND_NIGHT bei einem nächtlichen Handeingriff bis zum nächsten Abend abschaltet. Dann bleibt der Laden auch nach Ablauf des Timeouts oben. Aber er fährt morgens eben nicht automatisch hoch, wenn er nachts manuell geöffnet und wieder geschlossen wurde. Die beiden Anforderungen wirdersprechen sich also.

Denkbar wäre ein Mechanismus, der das manuelle Schließen versucht zu erkennen und den BLIND_NIGHT wieder aktiv schaltet. Aber ganz trivial ist das nicht. Was wäre das Erkennungskriterium? NIGHT_POS wieder erreicht? Nahezu unmöglich, wenn hierfür nicht 0 sondern z. B. 15 hinterlegt ist. Man könnte auch den Status beobachten. Und wenn der Laden manuell oder per Klick-Betrieb für eine gewisse Zeit abwärts bewegt wird den BLIND_NIGHT wieder aktivieren.

Es gäbe aber auch zwei einfache Abhilfen: Timeout verlängern. Oder länger schlafen.  ;)
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 04. November 2014, 13:33:06
Mahlzeit mattsches,

so langsam verstehe ich den Syntax glaube ich.
Deine beiden reellen Lösungsansätze werde ich mal mit der Regierung mal klären ;D

Allerdings finde ich den Timeout von 2-3 Stunden auch nicht schlecht.

Ich hab da selbst auch noch mal was versucht.
Das möchte ich noch einbauen um die Rolladen bei längerer Abwesenheit (URLAUB) ganz zu schließen.
Könnte das Funktionieren, oder ist das totaler Quatsch?

VAR_INPUT
SPEZ_NIGHT_POS : BYTE;
OTHER_NIGHT_POS_AKTIV: BOOL;

END_VAR



IF OTHER_NIGHT_POS_AKTIV := TRUE THEN
NIGHT_POSITION : = SPEZ_NIGHT_POS;
END_IF

Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 04. November 2014, 21:44:57
Das geht schon so. Bis auf einen Tippfehler, es müsste heißen

IF OTHER_NIGHT_POS_AKTIV = TRUE

oder einfach nur

IF OTHER_NIGHT_POS_AKTIV

":=" ist eine Wertzuweisung; an dieser Stelle führt das zu einem Übersetzungsfehler. Und du musst das Ganze natürlich vor der Zuweisung an PO packen.

Folgende Anregungen noch:

- SPEZ_NIGHT_POS würde ich in den VAR_INPUT CONSTANT-Block reinpacken. Dann verschwindet das Beinchen in CFC, und du kannst den gewünschten Wert zusammen mit den anderen Einstellungen per Doppelklick auf den Block einstellen.

- NIGHT_POSITION ist ein Eingangsparameter, den du intern bedingt überschreibst. Funktioniert, ist aber nicht so richtig guter Stil. Ich würde es wohl so machen:

(* shade at night only in auto mode and enable = true *)
IF UP AND DN AND night THEN
status := 141;
IF ENABLE_VENTINGPOS AND NOT WINDOW_SWITCH THEN (* open shade slightly if venting position is enabled and window is opened *)
po := venting_position;
ao := venting_angle;
ELSIF OTHER_NIGHT_POS_AKTIV THEN (* use special night position *)
po := SPEZ_NIGHT_POS;
ao := night_angle;
ELSE (* set standard night position when not venting *)
po := night_position;
ao := night_angle;
END_IF
ELSE
po := pi;
ao := ai;
status := s_in;
END_IF;
QU := UP;
QD := DN;

Viel Spaß,
mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 04. November 2014, 21:48:35
Okay, Danke für die Hinweise.
Habe ich verstanden und werde es berücksichtigen.

Übrigens:
Länger Schlafen is nicht, aber den Timeout auf 2-3 Stunden setzen ist genehmigt  ::)
Titel: Re: Rollläden über Blindbausteine (mal wieder)
Beitrag von: erdbeerschaeler am 24. Februar 2016, 21:38:06
Hallo Zusammen,

ich muss dieses Thema nochmal erweitern und finde es hier ganz passend.

Der modifizierte Blind_Night läuft jetzt seit über einem Jahr hervorragend.

Jetzt habe ich noch den Security Baustein mit dahinter gehangen der bei Wind die Rolladen z.T. ganz Auf oder ganz Zu fährt.

Wenn in der Nacht der Windalarm die Rolläden schließt, dann kommt es vor, dass auf Grund der vielen Nachlaufzeiten in den unterschiedlichen Bausteinen die Rolläden am Morgen nicht mehr hoch fahren.

Was haltet ihr davon die manuelle Timeoutzeit im Blind_Input auf 5 Minuten zu setzen?
Gleichzeitig suche ich nach einer Lösung durch die manuelle Bedienung, z.B. Morgens oder Zwischendurch, die Blind_Night Automatik zu deaktivieren. Wenn ich die Automatik nicht deaktiviere würden die Rolladen sonst nach den 5 Minuten in die Nachposition fahren?!?!

Über eure Meinungen oder Erfahrungen würde ich mich freuen.
Wie habt ihr die Zeiten an den Baustein so eingestellt?

Gruß
Sven


@Peewit
Wenn ich für dieses Thema einen neuen Thread auf machen soll, einfach bescheid geben.
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 24. Februar 2016, 21:51:34
Hallo Sven,

der BLIND_NIGHT deaktiviert sich selbst, wenn du nachts manuell eingreifst. Er schaltet sich dann ab und wird erst am nächsten Abend wieder aktiv. Insofern musst du da gar nichts machen.

Meine Timeouts habe ich bei 1 h belassen, an der Schiebetür bei 3 h.

Gruß,
Mattsches
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 25. Februar 2016, 08:29:25
Guten Morgen Mattsches,

ich hab über Nacht mal wieder getestet und bin etwas verwirrt.
Die Rollläden im Schlafzimmer habe ich von Hand hoch gefahren und alles hat funktioniert.
Allerdings habe ich vor ca. 14 Tagen das ganze Spielchen schon einmal getestet und wir waren zuhause (Anwesend) die Rolläden sind dann mindestens einmal wieder zu gefahren.

Könnte es mit dem modifizierten Baustein zusammen hängen und die Anwesenheitsschaltung die Nachtfunktion wieder aktivieren?
Vielleicht liegt es aber auch an dem Security-Baustein, der den Nachtmodus irgendwie durcheinander bringt.

Könntest du vielleicht einmal drüber schauen?!?

Vielen Dank im Voraus
Schwenn

(*IF NOT (up AND dn) AND night THEN
(* manual operation at night will cancel operation for one night *)
night := FALSE;*)
IF (DT_TO_TOD(dtin) > sunset + sunset_offset) AND (last_night < DT_TO_DATE(dtin)) AND NOT night AND e_night AND DN AND (DT_TO_TOD(dtin)>=EARLIEST_CLOSING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
(* enable night *)
night := TRUE;
last_night := DT_TO_DATE(dtin);
ELSIF (DT_TO_TOD(dtin) > sunrise + sunrise_offset) AND (last_day < DT_TO_DATE(dtin)) AND night AND e_day AND (last_night < DT_TO_DATE(dtin)) AND (DT_TO_TOD(dtin)>=EARLIEST_OPENING_TIME OR NOT ENABLE_MINMAXTIMES) THEN
(* disable night *)
night := FALSE;
last_day := DT_TO_DATE(dtin);
END_IF;

IF UP AND DN AND night THEN
status := 141;
IF ENABLE_VENTINGPOS AND NOT WINDOW_SWITCH THEN (* open shade slightly if venting position is enabled and window is opened *)
po := venting_position;
ao := venting_angle;
ELSIF OTHER_NIGHT_POS_AKTIV THEN (* use special night position *)
po := SPEZ_NIGHT_POS;
ao := night_angle;
ELSE (* set standard night position when not venting *)
po := night_position;
ao := night_angle;
END_IF
ELSE
po := pi;
ao := ai;
status := s_in;
END_IF;
QU := UP;
QD := DN;

[gelöscht durch Administrator]
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 25. Februar 2016, 08:30:39
BOAH... warum ist denn die erste Zeile auskommentiert?  :o

das habe ich gerade erst gesehen! Ich glaube das ist schon das Problem?!?
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 25. Februar 2016, 12:43:48
Genau. Auskommentiert hast du das vermutlich selbst.  ;)
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: mattsches am 25. Februar 2016, 12:48:30
Nicht nur vermutlich, sondern sicher, nämlich im November 2014: http://www.oscat.de/community/index.php/topic,2252.msg11817.html#msg11817 (http://www.oscat.de/community/index.php/topic,2252.msg11817.html#msg11817)

Und meine Erklärung zwei Posts weiter unten: http://www.oscat.de/community/index.php/topic,2252.msg11820.html#msg11820 (http://www.oscat.de/community/index.php/topic,2252.msg11820.html#msg11820)
Titel: Re: Rollläden über xBlind (mal wieder)
Beitrag von: erdbeerschaeler am 28. Februar 2016, 16:10:27
Klassischer Fall von Blind & Blöd...
... SORRY für die Störung  ::)