ClockMaster32

ClockMaster32 (FB)

FUNCTION_BLOCK ClockMaster32 EXTENDS LAT.Element IMPLEMENTS IUhrProtocol, IUhr

Kurzbeschreibung

Master - Funktionsbaustein für ein Uhrensystem mit 32 Wochenuhren, 30 Feiertagen, 10 Ferienperioden und 5 Sonderschaltzeiten. Die Wochenuhren enthalten jeweils eine Ein- und Ausschaltzeit pro Wochentag (448 Schaltpunkte). Ferner sind 30 Feiertage (länderspezifisch), 10 Ferienperioden (Anfangs- und Enddatum) sowie 5 Sonderschaltzeiten (Ein- und Ausschaltzeit sowie Datum) definierbar.

Darstellung

Funktionsbeschreibung

Allgemeines

Dieser Funktionsbaustein dient als Master - Funktionsbaustein für ein Uhrensystem mit 32 Wochenuhren, 30 Feiertagen, 10 Ferienperioden und 5 Sonderschaltzeiten. Er erlaubt die Festlegung der Zeit- bzw. Datumsangaben durch den Anwender (Visualisierung) und stellt unter Berücksichtigung der aktuellen Uhrzeit und des aktuellen Datums die daraus resultierenden Zustände (Wochenuhrkanal 1 - 32, Feiertagekanal, Ferienkanal sowie Sonderschaltzeitenkanal) den maximal 63 Slave - Funktionsbausteinen ClockSlave32 zur Verfügung. In den Slave - Funktionsbausteinen erfolgt nun die Zuordnung zu den Kanälen (Wochenuhrkanal 1 - 32, Feiertagekanal, Ferienkanal sowie Sonderschaltzeitenkanal) durch binäre Variablen (FALSE = nicht zugeordnet, TRUE = zugeordnet). Die Verbindung zwischen dem Master - Funktionsbaustein und den Slave - Funktionsbausteinen wird dabei über den Ausgang itfToClockSlave32 bzw. die Eingänge *itfFromClockMaster32 * hergestellt. Die Eingänge xAllOn bzw. xAllOff erlauben (Eingang = TRUE) die zentrale Aktivierung / Deaktivierung aller Ausgänge xClockActive aller angeschlossenen Slave - Funktionsbausteine. Der Eingang xAllOff ist gegenüber dem Eingang xAllOn höher priorisiert. Zur Festlegung der Zeit- bzw. Datumsangaben werden die folgende Funktionsbausteine eingesetzt:

Clock7d1Ch

PublicHoliday

Holiday

SwitchTimeS

Beispiel Darstellung in Kombination mit Slave Uhren:

Visualisierung

Darstellung

Die Slave Uhren werden automatisch nach der Reihenfolge wie diese im Programm aufgerufen werden angehängt. Die Maximale Anzahl ist auf 144 Slave Uhren im Visuelement limitiert. Im ClockMaster32 kann die maximale Anzahl über die Library Konstante angepasst werden.

Schnittstellen Visu-Element

Name
Datentyp
Typ
Initialwert
Funktion

FB_ClockMaster32

ClockMaster32

VAR_IN_OUT

Hier FB ClockMaster32 eintragen Bsp. PRG.ClockMaster32

BMS_Active

BOOL

VAR_INPUT

BMS (Building Management System) GLT (Gebäudeleittechnik). Wenn BMS_Active = TRUE wird die Eingabe / Editierung der Uhren deaktiviert da diese dann nur über das BMS eingestellt werden können. Uhrzeiten können dann nur angeschaut werden.

DisableInput

BOOL

VAR_INPUT

DisableInpput = TRUE Uhrzeiten der Wochenuhren können nur angesehen werden und nicht editiert werden.

Hinweis: VAR_IN_OUT Schnittstellen müssen belegt werden, VAR_INPUT sind optional.

CODESYS

InOut:

Scope
Name
Type
Initial

Input

xAllOn

BOOL

Input

xAllOff

BOOL

Input Const

eCountry

eCountryList

eCountryList.DE

Input Const

ActiveClocksVisu

eActiveClocksVisu

eActiveClocksVisu.Activate16Clocks

Output

itfToClockSlave32

IUhrProtocol

THIS^

Output

ctClockSlave32

CAA.COUNT

Zuletzt aktualisiert