Schaltuhr Übersicht
Die Zeitschaltuhr-Bausteine dienen dazu, an bestimmten Tagen im Jahr/ im Monat/ in der Woche jeweils eine Aktion auszuführen. Dabei kann die Aktion durch ein Startereignis oder einen Startzeitpunkt begonnen und durch ein Endereignis, einem Endzeitpunkt oder einer Dauer beendet werden. Es ergeben sich folgende Kombinationen:
Die graublauen Felder bezeichnen die Art der Zeitschaltuhr. Die Tagesauswahl wird bestimmt durch die Periodizität (rote Felder) und weitergehende Diskretisieren (orange). Alle Bausteine haben gemeinsam, dass sie die gleiche Auswahl an Start- und Endkriterien besitzen (grün). Das Startkriterium bezieht sich auf den zuvor ausgewählten Tag, das Endkriterium steht immer in Abhängigkeit zum Startpunkt. Pro Instanz eines Funktionsbausteines ist immer nur ein Start- und Endkriterium definierbar. Für mehrere Aktionen an ein und demselben Tag sind mehrere Instanzen des Funktionsbausteines nötig.
Zeitliche Überschneidungen
Zeitliche Überschneidungen Bei ein und derselben Instanz des Funktionsbausteines können zeitliche Überschneidungen von zwei aufeinanderfolgenden Ein- und Ausschaltkriterien dann auftreten, wenn die Schaltdauer nicht auf unter 1 Tag begrenzt ist. In diesem Fall kann es geschehen, dass einem Start ein weiterer folgt, ohne dass ein Ende der vorhergehenden Periode eingetreten ist . Bei den genannten Auswahlen ergeben sich folgende Überschneidungsmöglichkeiten:
Starttime / Endtime (Typ TOD, TOD)
Keine Überschneidung möglich da bei Starttime<Endtime Start- und Endpunkt am selben Tag sind und umgekehrt bei Starttime>=Endtime davon ausgegangen wird, dass der Endpunkt am nächsten Tag ist. Damit ist die Dauer auf unter 1 Tag begrenzt.
Starttime / Duration (Typ TOD, TIME)
Überschneidung möglich, da die Dauer frei wählbar ist und der TIME-Variablentyp bis knapp 50 Tage reicht. Somit wäre es beispielsweise möglich, täglich eine Aktion von 3 Tagen zu starten. Durch das fortwährende Nachstarten würde diese Aktion dann nie beendet werden.
Starttime / Endevent (Typ TOD, BOOL)
Überschneidung möglich, da das Endereignis (Endevent) in seinem Auftreten variabel ist und durchaus nicht vor dem nächsten Startzeitpunkt erfolgen kann.
Startevent / Endtime (Typ BOOL, TOD)
Überschneidung teilweise möglich. Beim Auftreten des Startevent wird der Endzeitpunkt errechnet. Ist Starttime<Endtime wird der Endzeitpunkt am selben Tag liegen. Dann gibt es keine Überschneidungsmöglichkeit. Umgekehrt, bei Starttime>=Endtime wird der Endpunkt auf den nächsten Tag gelegt. Ereignet sich an diesem Tag der Start bevor das Ende des vorherigen erreicht ist, so kommt es zur Überschneidung.
Startevent / Duration (Typ BOOL, TIME)
Überschneidung möglich, da die Dauer frei wählbar ist und der TIME-Variablentyp bis knapp 50 Tage reicht. Somit wäre es beispielsweise möglich, täglich eine Aktion von 3 Tagen zu starten. Durch das fortwährende Nachstarten würde diese Aktion dann nie beendet werden.
Startevent / Endevent (Typ BOOL, BOOL)
Überschneidung möglich, da das Endereignis (Endevent) in seinem Auftreten variabel ist und durchaus nicht vor dem nächsten Startereignis (Startevent) erfolgen kann.
Eine Überschneidung hat zur Folge, dass der Steuerausgang bOut des jeweiligen Funktionsbausteines nicht auf FALSE wechselt. Statt dessen wird das nächste Periodenende abgewartet. Da es jedoch auch beabsichtigt sein kann, dass die Bausteine eine Aktion lediglich "antriggern", ist auch der Flankenausgang bTriggerOnan denBausteinen mit herausgeführt.
Weitergehende Dokumentation
Die folgende Tabelle führt zu den genauen Dokumentationen der einzelnen Bausteine:
schaltet jeden n-ten Tag | schaltet jede n-te Woche an bestimmten Wochentagen (Mehrfachauswahl möglich) | schaltet in bestimmten Monaten (Mehrfachauswahl möglich) an einem bestimmten Wochentag | schaltet in bestimmten Monaten (Mehrfachauswahl möglich) an einem bestimmten Tag im Monat | schaltet an einem bestimmten Tag im Jahr |
Beispielprogramm
In einem Beispielprogramm wird anhand eines Tages-Schaltbausteines (FB_DailyScheduler) gezeigt, wie die Bausteine zu parametrieren sind.