Scheduler

Timing control of building and room automation systems is an important part of building automation. The targeted use of schedules can optimize the efficiency of the building and the comfort for the users. If, for example, a heating system is controlled by a schedule, the room temperature can be adapted to the times of use, thus saving heating energy when the building is not in use.

The implementation of schedules with TF8040 is described in this chapter.

Planning

In general, there are several ways to set a schedule.

Weekly planning

First, there is the weekly schedule. This is the schedule that applies every week, so it describes a general week.

It is set by the parameter aWeek of the function blocks FB_BA_SchedA, FB_BA_SchedB and FB_BA_SchedM.

Exceptions

The weekly schedule that applies during standard weeks, or normal operation, of the building must always be modified by exceptions. Examples of such exceptions would be:

  • Vacation
  • Public holidays
  • Meeting room booking
  • etc.
    The exceptions that can be defined for a schedule are divided into two categories.

Local exceptions

The local exceptions of a schedule are exceptions that apply only to that explicit schedule. I.e. they have no effect on other schedules and are set directly on the schedule object. They are parameterized via the parameter aException of the function blocks FB_BA_SchedA, FB_BA_SchedB and FB_BA_SchedM.

The exceptions can be configured as follows:

  • Date:
    An exception can be defined on a specific date. On this date you can then set what should happen at what time. For example, the heating might not be turned down at 5pm that day, as in the weekly schedule, but at 8pm, due to a meeting.
  • Date range:
    Exceptions can be set over a complete date range. If, for example, the building is not planned to be used in a certain week due to company vacations, it can be set that the weekly schedule is overwritten in such a way that the building does not switch to comfort mode at the set operating times during the defined time, thus saving energy.
  • Week and day:
    In addition to a date range, recurring exceptions can also be defined on specific weeks on specific days. This allows exceptions such as "every second Wednesday of the month" to be implemented.

Global exceptions

Global exceptions are defined in the same way by date, date range and week and day. However, as the name suggests, these exceptions do not apply to a specific schedule, but globally. Global exceptions are defined via calendar objects, which are then passed to specific schedules via the parameter aCalendar.

Such a calendar could, for example, define the school vacations in the respective state. Thus, all schedules in a school could be overwritten during the vacations.

Programming

The operation of schedules and their exceptions should be understood at this point and programming will now be discussed.

Weekly schedule

The parameter aWeek is an array and therefore it is quite complicated to parameterize it manually. To make it easier for the user, the parameter builder F_BA_WeeklyScheduleBuilder is provided for this purpose. The use of this parameter builder is described in its documentation.

Local exceptions

The parameter aException is an array and therefore it is quite complicated to parameterize it manually. To make it easier for the user, the parameter builder F_BA_ExceptionScheduleBuilder is provided for this purpose. The use of this parameter builder is described in its documentation.

Global exceptions

The parameter aCalendar is an array and therefore it is quite complicated to parameterize it manually. To make it easier for the user, the parameter builder F_BA_ScheduleCalendarBuilder is provided for this purpose. The use of this parameter builder is described in its documentation.