Zeitschaltplanung
Die zeitliche Steuerung von TGA- und Raumautomationsanlagen ist ein wichtiger Bestandteil der Gebäudeautomatisierung. Durch den gezielten Einsatz von Zeitschaltplänen lassen sich die Effizienz des Gebäudes und der Komfort für die Nutzer optimieren. Wird z. B. eine Heizungsanlage über einen Zeitschaltplan gesteuert, kann die Raumtemperatur an die Nutzungszeiten angepasst werden, wodurch Heizenergie eingespart werden kann, wenn das Gebäude nicht genutzt wird.
Die Umsetzung von Zeitschaltplänen mit TF8040 ist in diesem Kapitel beschrieben.
Planung
Generell gibt es verschiedene Möglichkeiten, einen Zeitschaltplan einzustellen.
Wöchentliche Planung
Zunächst gibt es den Wochenzeitschaltplan. Dies ist der Zeitschaltplan, der jede Woche gilt, er beschreibt also eine allgemeine Woche.
Eingestellt wird er durch den Parameter aWeek der Bausteine, FB_BA_SchedA, FB_BA_SchedB und FB_BA_SchedM.
Ausnahmen
Der wöchentliche Zeitschaltplan, der in Standardwochen, bzw. im normalen Betrieb, des Gebäudes gilt, muss immer wieder durch Ausnahmen abgeändert werden. Beispiele für solche Ausnahmen wären:
- Ferien
- Feiertage
- Buchung von Besprechungsräumen
- etc.
Die Ausnahmen, die für einen Zeitschaltplan definiert werden können, werden in zwei Kategorien unterteilt.
Lokale Ausnahmen
Die lokalen Ausnahmen eines Zeitschaltplans sind Ausnahmen, die nur für diesen expliziten Zeitschaltplan gelten. D.h. sie haben keine Auswirkungen auf andere Zeitschaltpläne und werden direkt am Zeitschaltplan-Objekt eingestellt. Sie werden über den Parameter aException der Bausteine, FB_BA_SchedA, FB_BA_SchedB und FB_BA_SchedM parametriert.
Die Ausnahmen können wie folgt konfiguriert werden:
- Datum:
Es kann eine Ausnahme an einem bestimmten Datum definiert werden. An diesem Datum kann dann eingestellt werden, was zu welcher Uhrzeit passieren soll. Z. B. könnte die Heizung an diesem Tag nicht um 5 Uhr abends, wie im wöchentlichen Plan, sondern erst um 8 Uhr abends, aufgrund einer längeren Besprechung, heruntergestellt werden. - Datumsbereich:
Ausnahmen können über einen kompletten Datumsbereich festgelegt werden. Ist z. B. geplant das Gebäude in einer bestimmten Woche, aufgrund von Betriebsferien, nicht zu nutzen, so kann eingestellt werden, dass der wöchentlichen Zeitschaltplan so überschrieben wird, dass das Gebäude in der definierten Zeit nicht in den Komfort-Modus zu den eingestellten Betriebszeiten wechselt und somit Energie eingespart wird. - Woche und Tag:
Neben einem Datumsbereich können auch wiederkehrende Ausnahmen an bestimmten Wochen zu bestimmten Tagen definiert werden. Damit können Ausnahmen wie z.B. "jeden zweiten Mittwoch im Monat" realisiert werden.
Globale Ausnahmen
Globale Ausnahmen werden genauso durch Datum, Datumsbereich und Woche und Tag definiert. Wie der Name jedoch vermuten lässt, gelten diese Ausnahmen nicht für einen spezifischen Zeitschaltplan, sondern global. Globale Ausnahmen werden über Kalender-Objekte definiert, die dann bestimmten Zeitschaltplänen über den Parameter aCalendar übergeben werden.
So ein Kalender könnte z. B. die Schulferien in dem jeweiligen Bundesland definieren. Somit könnten alle Zeitschaltpläne in einer Schule, während der Ferien überschrieben werden.
Programmierung
Die Funktionsweise von Zeitschaltplänen und deren Ausnahmen sollten an dieser Stelle verstanden sein und es wird nun auf die Programmierung eingegangen.
Wöchentlicher Zeitschaltplan
Der Parameter aWeek ist ein Array und somit ist es ziemlich kompliziert ihn manuell zu parametrieren. Um es für den Anwender einfacher zu machen, wird dafür der Parameter-Builder F_BA_WeeklyScheduleBuilder angeboten. Die Verwendung dieses Parameter-Builders wird in dessen Dokumentation beschrieben.
Lokale Ausnahmen
Der Parameter aException ist ein Array und somit ist es ziemlich kompliziert ihn händisch zu parametrieren. Um es für den Anwender einfacher zu machen, wird dafür der Parameter-Builder F_BA_ExceptionScheduleBuilder angeboten. Die Verwendung dieses Parameter-Builders wird in dessen Dokumentation beschrieben.
Globale Ausnahmen
Der Parameter aCalendar ist ein Array und somit ist es ziemlich kompliziert ihn händisch zu parametrieren. Um es für den Anwender einfacher zu machen, wird dafür der Parameter-Builder F_BA_ScheduleCalendarBuilder angeboten. Die Verwendung dieses Parameter-Builders wird in dessen Dokumentation beschrieben.