BLIND_NIGHT fährt Rollläden am Morgen nicht zurück

Begonnen von ohm200x, 09. Januar 2011, 21:57:30

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

ohm200x

Moin,

soweit ich die Beschreibung von BLIND_NIGHT richtig verstanden habe sollte der Baustein folgendes machen:
Bei Nacht die Rollläden runter fahren und bei "Nacht Ende" die Rollläden wieder in die ursprüngliche Position zurück fahren.

Runter klappt einwandfrei, hoch jedoch nicht.

Ich habe folgenden Aufbau:
BLIND_INPUT -> BLIND_NIGHT -> BLIND_CONTROL_S


(* Blind Input *)
RO_EWO_I(
S1:= T_E_KO_GU_3,
S2:= T_E_KO_GU_4,
IN := 0,
POS := RO_EWO_A.POS);

(* Blind Night *)
RO_EWO_N(
UP:= RO_EWO_I.QU,
DN:= RO_EWO_I.QD,
DTIN:= UTC_CUR,
SUNRISE:= SUNR,
SUNRISE_OFFSET := t#0h,
SUNSET:= SUNS,
SUNSET_OFFSET := t#1h,
PI := RO_EWO_I.PO,
S_IN := RO_EWO_I.STATUS);

(* Blind Control S *)
RO_EWO_A(
UP:= RO_EWO_N.QU,
DN:= RO_EWO_N.QD,
PI := RO_EWO_N.PO,
T_UD := t#26s,
S_IN := RO_EWO_N.STATUS );




UTC_CUR, SUNS und SUNR sind globale Variablen die ebenfalls mit OSCAT Bausteinen erzeugt werden.

Wenn ich die Beschreibung und den Code der Bausteine sowie Fragen hierzu im Forum lese kann ich nachvollziehen warum meine Rollläden morgens nicht hochfahren.
BLIND_NIGHT fährt morgens die Rollläden auf die Position die an PI ansteht. Dummerweise kommt durch die Rückkopplung der drei Bausteine dort 0 an, was ja stimmt weil BLIND_NIGHT selbst bei NACHT runtergefahren hat.

Den Hinweis zur Aufrufreihenfolge habe ich auch schon hier im Forum gefunden, allerdings gibt es die Option bei mir nicht. Liegt das Daran weil ich die Bausteine in ST schreibe und dort (denke ich mal) der Code von Oben nach unten abgearbeitet wird?

Sieht in dem Stück Code jemand den Fehler?
Danke im Voraus

Gruß ohm200x

P.S:
Hardware ist ein Beckhoff CX9001.

pelmic

Hallo,

so ein Problem hatte ich auch mal. Hast Du den Mastermode am BLIND_INPUT auf TRUE?

pelmic

ohm200x

Hi,

danke für den Tip.
Hatte den Beitrag Aufgrund falscher Benachrichtigungsoptionen übersehen. Hab die Änderung mal eingespielt und bin gespannt ob es klappt.

Gruß ohm200x

ohm200x

Hi,

der Tip war goldrichtig!
Das "verdammte Bit" wie mein Arbeitskollege sagen würde. Man muss aber auch wissen welches Bit das richtige ist.

Danke nochmal für den Hinweiß. Heute morgen sind die Rollläden wie geplant per BLIND_NIGHT und nicht über meinen eigenen Trigger hochgegangen.

Gruß ohm200x

vicky

Hallo,
möchte das Thema kurz nochmal hoch holen.

Wäre es euch möglich die Zusammenhänge von MASTERMODE / AUTOMATIKMODE(Blind_Input) usw.  zu Auf/Abwärtsfahrten von Blind_Night und Blind_Shade und Blind_Scene darzulegen.
Meine:
1. Blind_Night steuert Jalousie abwärts, wenn .....
1. Blind_Night steuert Jalousie aufwärts, wenn .....

Das wäre echt super. Ich glaube das würde einige Threads ersparen.

Danke schon mal

hugo

#5
also kurz und schmerzlos.

der bisherige ansatz für blind night war das er nachts eine definierte position anfährt, und morgens diese position wieder verlässt.
blind night hat also nur eine sogenannte nachtposition, er weis aber nichts von einer tagposition.
blind night verlässt also am morgen seine nachtposition und die jalousie wird dann die von einem vorgelagerten modul eingestellte position anfahren.
welche das ist hängt nicht von blind night ab und wird (falls keine anderen module etwas anderes einstellen) vom blind input festgelegt.

wenn master mode TRUE ist speichert blind input den letzten wert, was aber von anderen modulen abhängt und nicht immer das tut was man eigentlich möchte.
wenn mast_mode beim blind input auf true ist sollte am morgen wenn sich blind night abschaltet wiederr die zuletzt eingestellte position von blind input aktiv sein.

falls das aber am abend schon geschlöossen war wird er auch am morgen geschlossen bleiben.

blind_night kümmert sich eben nicht um die tagesposition sondern nur wie der name sagt um die nachtposition.
es ist also nicht verwunderlich das blind_night die jalousie nicht zurückfährt, dafür ist er nicht wirklich konzipiert.

***********************************

wir haben derzeit neue blind module im test, bei denen blind night komplett anders gelöst ist und auch ganz etwas anderes macht.
der neue xblind_night hat 2 unabhängige ereignisse:

1. er fahrt am abend die jalousie in eine sogenannte nachtposition.
  anschliessend wird er inaktiv....

2. am morgen fährt er die jalousie auf eine tagposition

im gegensatz zum alten blind night der ein langes ereignis über nacht generiert hat wird der neue 2 unabhängige ereignisse am amben und am morgen erzeugen.


die neuen blind module sind derzeit im test und werden in ca 1 woche als beta zur verfügung stehen.
die blind module werden dann deutlich flexibler aber auch einfacher in der anwendung.

hugo

der neue xblind_night wird folgende parameter haben:

- früheste und späteste tageszeit für nachtbeschattung, zwischen diesen zeiten wird er sich nach dem sonnenuntergang richten
- delay vom sonnenuntergang (positiv und negativ in minuten)
- dto für sonnenaufgang
- position und winkel für nachtstellung und tagstellung kann vorgegeben werden
- 2 unabhängige enable eingänge für tag und nachtstellung (hier kann z.b. an wochenenden und feitertagen die tagbeschattung abgeschaltet werden.
- es können mehrere xblind_night parallel betrieben werden um z.b. am wochenende mit anderen zeiten zu arbeiten



vicky

Hallo Hugo,
ahh ich dachte immer der _night ist für die Aufwärtsfahrt am morgen ebenfalls zuständig(was eigentlich auch Sinn macht, da er die Jalousie am Abend zuvor verstellt hat=> also abwärts gefahren hat).

Verhalten sich generell alle Module so:
z.B. _shade fährt die Jalousie auf Beschattungsposition, aber zurückstellen muß ein anderes Modul übernehmen?

mfg vicky

hugo

#8
ja aalle module verhalten sich so sonst würde das konzept der jalousiesteuerung nicht funktionieren.

eine reihe von modulen sind hintereinandergeschaltet, das letzte in der reihe stellt die position ein,es schaletet sich ab und das vorhergehende übernimmt.
ein modul soll und kann nicht bestimmen was nach seiner aktivität passiert. nach einer automatischen beschattung soll wieder in die zuvor geltende position gefahrten werden.
oder stell dir mal vor es wird in die beschattung gefahren und anschliessend ist bereits der blind night programmiert.
ein beschattungsmodul soll und kann ja nicht wissen was nach seiner beschattung zu machen ist.


lediglich bei blind night macht es sinn am tag danach in eine definierte ausgangsposition zu fahren den an einem neuen tag gibt es keine alte stellung mehr....

hugo

das grundkonzept ist wie folgt:

es sind einige module in reihe geschaltet, und das jeweils letzte aktive übernimmt die steuerung bis es wieder inaktiv wird.

beispiel eine reihe von input - shade - night - security

wenn security aktiv wird übernimmt es die kontrolle und überschreibt alle verhergehenden module.
wenn security inaktiv wird stellt es die jalousie nicht in eine definierte position, es schaltet sich lediglich das modul ab und übergibt die kontrolle an das verhergehende mosul.
ist kein modul mehrt aktiv übernimmt automatisch das allererste in der kette (input) die kontrolle.

deshalb bestimmt auch der master mode von blind input was nach blind_night am nächsten tag passiert wenn sich blind night abschaltet.
dieses prinzip gilt für alle blind module sonst würde das ganze auch gar nicht funktionieren

vicky

Sprich:
will ich nach jeder Aktion, wieder in Ausgangsposition fahren, muß am _input der MASTERMODE auf "TRUE" gestellt sein?

hugo

du scheinst etwas nicht zu verstehen, es gibt keine ausgangsposition was soll den das sein?
ist das oben unten mitte oder was denn ?????

es gibt nur die positionen die ein modul ansteuert.

wenn master_mode = true behält BLIND input seinen wert und steuert diesen dauerhadt an.
dass ist aber keine besondere ausgangsposition, es ist lediglich die letzte manuell angefahrene position !!!!!

master mode bedeutet das nach beenden aller automatik module blind_input die letzte manuelle stellung wieder herstellt.
da dieses aber nicht immer gewünscht wird ist der master mode konfigurierbar.


Beispiel:::
wird nun die jalousie manuell auf 1/2 höhe gestellt und dann schaltet blind night ein fährt die jalousie die nachtposition an.
wird die nachtposition wieder verlassen beendet blind_night seine ansteuerung und tut gar nichts mehr.
daraufhin wird blind_input wieder durchgeschaltet und stellt die jalousie wieder auf seine letzte aktive stellung was in diesem fall 1/2 höhe war.
aber alles nur wenn dazwischen kein anderes modul etwas anderes vorgibt.


KloseMar

Mal eine Frage dazu. In Euren Beispielen wird der Ausgang Pos vom Blind_control Modul auf den Eingang vom Blind_Input zurückgeführt.
Somit kommt nach dem Runterfahren der Rolladen vom Blind_Night Modul immer die Nacht Position am Input Modul an und wird auch weitergegeben.
Dadurch kann nach Ablauf vom Night Modul keine vorherige Position angefahren werden da ja die Aktuelle Position (Nachtposition) vom Input Modul kommt.
Verstehe ich da etwas falsch ?



hugo

nein das verstehst du völlig richtig.

es gibt im input modul ein flag (master_mode)

master mode = false: input mpdul speist seine position nur für den manual timeout ein ansonsten ist es transparent und gibt die jeweils aktuelle position durch
master_mode = true: input modul merkt sich seine letzte position und speist diese weiter ein.

wenn also im master mode = true die nachtbeschattund aktiv ist fährt am morgen das ganze wieder in die letzte position die vor der nachtbeschattung aktiv war an.
allerdings wenn jemand die jalousie vor der nachtbeschattun runterfährt belibt sie auch am morgen unten.

KloseMar