FB_BA_SunPrtc

FB_BA_SunPrtc 1:

Der Funktionsbaustein FB_BA_SunPrtc dient zur Blendschutz Steuerung mit Hilfe einer Lamellen-Jalousie.

Der Blendschutz wird durch die Variation des Lamellenwinkels und durch die Position der Jalousiehöhe realisiert.

Der Lamellenwinkel wird in Abhängigkeit des Sonnenstandes so eingestellt, dass direkte Blendung unterbunden, aber trotzdem ein maximaler Einfall natürlichen Lichts möglich ist.

Für das Variieren der Jalousiehöhe stehen drei verschieden Betriebsarten zur Verfügung.

  1. Die Jalousie fährt bei aktiven Sonnenschutz in eine fest vorgegebene Höhe. Der Wert für die Höhe wird mit der Variablen fFixPos vorgegeben.
  2. Die Position der Jalousie wird in Abhängigkeit des Sonnenstandes variiert. Die Position wird in der Tabelle (ST_BA_BldPosTab) vorgegeben. Siehe auch Beschreibung des FB_BA_BldPosEntry.
  3. Die Höhe der Jalousie wird anhand der Fenstergeometrie so berechnet, dass die Sonnenstrahlen bis zu einer vorgegebenen Tiefe in den Raum einfallen. Die Einfalltiefe der Sonnenstrahlen wird mit der Variablen fMaxLgtIndc definiert.

Damit das Neupositionieren des Lamellenwinkels nicht zu häufig erfolgt, kann mittels der Variablen nPosIntval [Min] ein Zeitintervall bestimmt werden, innerhalb dessen keine Anpassung des Lamellenwinkels erfolgt. Um trotzdem eine Blendwirkung auszuschließen, wird der Winkel immer weiter geändert, dass er bis zum Ablauf des Zeitintervalls ausreicht.

Für die Positionierung der Jalousie und der Einstellung des Lamellenwinkels müssen die folgenden Bedingungen erfüllt sein.

FB_BA_SunPrtc 2: Eingänge

VAR_INPUT
  bEn               : BOOL;
  tUTC              : TIMESTRUCT;
  nPosIntval        : UDINT;
  fDegLngd          : REAL;
  fDegLatd          : REAL;
  fFcdOrtn          : REAL;
  fFcdAngl          : REAL;
  fLamWdth          : REAL;
  fLamDstc          : REAL;
  fFixPos           : REAL;
  fMaxLgtIndc       : REAL;
  fWdwHght          : REAL;
  fDstcWdwFlr       : REAL;
  stBldPosTab       : ST_BA_BldPosTab;
  ePosMod           : E_BA_PosMod := E_BA_PosMod.eFix;
END_VAR

Name

Typ

Beschreibung

bEn

BOOL

Wenn dieser Eingang auf FALSE gesetzt wird, ist die Positionierung nicht aktiv, d.h. in der Positionier-Struktur stSunBld vom Typ ST_BA_SunBld wird das aktiv-Bit (bActv) zurückgesetzt und der Baustein selbst verharrt in einem Stillstands-Modus. Ist der Baustein hingegen aktiviert, so ist das aktiv-Bit auf TRUE und der Baustein gibt in der Positionierstruktur zu den entsprechenden Zeiten seine Stellwerte durch (fPos, fAngl).

stUTC

TIMESTRUCT

Eingabe der aktuellen Uhrzeit als koordinierte Weltzeit (UTC, Coordinates Universal Time - im älteren Sprachgebrauch auch GMT, Greenwich-Mean-Time) (siehe TIMESTRUCT). Mit Hilfe des Bausteines FB_BA_GetTime kann diese Zeit aus einem Zielsystem gelesen werden.

FB_BA_SunPrtc 3:

Ein Zeitrücksprung von mehr als 300 s führt, wenn die Jalousie nach den o.a. Kriterien in der Sonne steht und der Blendschutz aktiv ist, zu einer sofortigen Neupositionierung. Diese Funktionalität ist eingefügt worden, um einen nachvollziehbaren Programmablauf zu gewährleisten.

Name

Typ

Beschreibung

nPosIntval

UDINT

Positionierintervall in Minuten - Zeitspanne zwischen zwei Ausgaben von Jalousiestellungen. Gültiger Bereich: 1 min...720 min.

fDegLngd

REAL

Geographische Länge (Längengrad) [°]. Gültiger Bereich: - 180°...180°.

fDegLatd

REAL

Geographische Breite (Breitengrad) [°]. Gültiger Bereich: - 90°...90°.

fFcdOrtn

REAL

Fassadenausrichtung [°].

Dabei gilt auf der Nordhalbkugel für die Fassadenausrichtung (Blick aus dem Fenster):

Blickrichtung

Fassadenausrichtung

Nord

β=0°

Ost

β=90°

Süd

β=180°

West

β=270°

Für die Südhalbkugel gilt hingegen:

Blickrichtung

Fassadenausrichtung

Süd

β=0°

Ost

β=90°

Nord

β=180°

West

β=270°

Name

Typ

Beschreibung

fFcdAngl

REAL

Fassadenneigung [°] (siehe Fassadenneigung).

fLamWdth

REAL

Breite der Lamellen in mm (siehe Skizze).

fLamDstc

REAL

Lamellenabstand in mm (siehe Skizze).

fFixPos

REAL

Fixe (konstante) Jalousiehöhe [0…100 %]. Gültig, wenn ePosMod = ePosModFix (siehe E_BA_PosMod).

fMaxLgtIndc

REAL

Maximal gewünschter Lichteinfall in mm gemessen ab Außenseite der Wand (siehe Höhenverstellung). Mit Hilfe der Parameter fWdwHght und fDstcWdwFlr wird in Abhängigkeit des Sonnenstandes errechnet, wie hoch die Jalousie stehen muss, damit der Lichteinfall den Wert fMaxLgtIndc nicht überschreitet. Gültig, wenn ePosMod = ePosModeMaxIncidence (siehe E_BA_PosMod).

fWdwHght

REAL

Fensterhöhe in mm zur Errechnung der Jalousiehöhe, wenn der Modus "Maximal gewünschter Lichteinfall" gewählt ist.

fDstcWdwFlr

REAL

Abstand Boden - Fenstersims in mm zur Errechnung des der Jalousiehöhe, wenn der Modus "Maximal gewünschter Lichteinfall" gewählt ist.

stBldPosTab

ST_BA_BldPosTab

Tabelle von 6 Stützpunkten, davon 4 parametrierbar, aus denen dann durch lineare Interpolation eine Jalousieposition in Abhängigkeit des Sonnenstandes gegeben wird. Gültig, wenn ePosMod = ePosModFix (siehe E_BA_PosMod). Weitere Beschreibung siehe FB_BA_BldPosEntry.

ePosMod

E_BA_PosMod

Auswahl des Positioniermodus

FB_BA_SunPrtc 4: Eingänge CONSTANT PERSISTENT

VAR_INPUT CONSTANT PERSISTENT
  ePrio        : E_BA_SunBldPrio := E_BA_SunBldPrio.eSunProtection;
  fAnglLmtUp   : REAL;
END_VAR

Name

Typ

Beschreibung

ePrio

E_BA_SunBldPrio

Priorität des aktiven Telegramms.

fAnglLmtUp

REAL

Lamellen müssen nicht über 0° geöffnet werden.

FB_BA_SunPrtc 5: Ausgänge

VAR_OUTPUT
  stSunBld     : ST_BA_SunBld;
  bActv        : BOOL;
  bErr         : BOOL;
  sErrorDescr  : T_MAXSTRING;
END_VAR

Name

Typ

Beschreibung

stSunBld

ST_BA_SunBld

Ausgabetelegramm für die Position und den Winkel der Lamelle.

bActv

BOOL

Entspricht dem booleschen Wert bActv im Jalousie-Telegramm ST_BA_SunBld und dient zur reinen Anzeige, ob der Baustein ein aktives Telegramm sendet.

bErr

BOOL

Bei fehlerhafter Abarbeitung, bzw. bei Warnzuständen wird dieser Ausgang auf TRUE gesetzt.

sErrDescr

T_MAXSTRING

Enthält die Fehlerbeschreibung

Fehlerbeschreibung

01: Fehler: Die Dauer des Positionierintervalls ist kleiner oder gleich Null oder überschreitet 720 min.

02: Fehler: Der eingetragene Längengrad ist nicht im gültigen Bereich von -180°…180°.

03: Fehler: Der eingetragene Breitengrad ist nicht im gültigen Bereich von -90°…90°.

04: Fehler: Der eingetragene Wert für die Fassadenneigung fFcdAngl ist außerhalb des gültigen Bereiches von -90°…90°.

05: Fehler: Der Wert für den Lamellenabstand (fLamDstc) ist größer oder gleich dem Wert für die Lamellenbreite (fLamWdth). Dies stellt keine "gültige" Jalousie dar, da die Lamellen nicht vollständig schließen könnten. Mathematisch gesehen würde dieses zu Fehlern führen.

06: Fehler: Der eingetragene Wert für die Lamellenbreite fLamWdth ist gleich Null.

07: Fehler: Der eingetragene Wert für den Lamellenabstand fLamDstc ist gleich Null.

08: Fehler: Der eingetragene Wert für die fixe Jalousiehöhe (fFixPos) ist größer als 100 oder kleiner als 0. Gleichzeitig ist Positionierung "fixe Jalousiehöhe" angewählt – ePosMod = ePosModFix.

09: Fehler: Das Bit "Werte gültig" (bVld) in der Positioniertabelle stBldPosTab ist nicht gesetzt - ungültige Werte: siehe FB_BA_BldPosEntry. Gleichzeitig ist Positionierung "Tabelle" angewählt – ePosMod = ePosModTab.

10: Fehler: Der eingetragene Wert für den maximal gewünschten Lichteinfall fMaxLgtIndc ist kleiner oder gleich Null. Gleichzeitig ist Positionierung "maximaler Lichteinfall" angewählt – ePosMod = ePosModMaxIndc.

11: Fehler: Der eingetragene Wert für die Fensterhöhe fWdwHght ist kleiner oder gleich Null. Gleichzeitig ist Positionierung "maximaler Lichteinfall" angewählt – ePosMod = ePosModMaxIndc.

12: Fehler: Der eingetragene Abstand Fensterunterkante zu Boden fDstcWdwFlr ist kleiner Null. Gleichzeitig ist Positionierung "maximaler Lichteinfall" angewählt – ePosMod = ePosModMaxIndc.

13: Fehler: nicht gültiger Positioniermodus am Eingang ePosMod eingetragen.

FB_BA_SunPrtc 6:

Wenn ein Fehler ansteht, wird diese Automatik deaktiviert und Position und Winkel auf 0 gesetzt. Das bedeutet, dass bei Verwendung einer Prioritätssteuerung automatisch eine andere Funktion niedrigerer Priorität (siehe Übersicht) die Steuerung der Jalousie übernimmt. Bei direkter Beschaltung hingegen wird die Jalousie auf Position/Winkel 0 fahren.

Voraussetzungen

Entwicklungsumgebung

Erforderliche SPS-Bibliothek

TwinCAT ab v3.1.4024.22

Tc3_BA2 ab v5.2.5.0