FB_BA_ScheduleBase

FB_BA_ScheduleBase 1:

The basic schedule represents the parameterization and evaluation of the derived schedule function blocks FB_BA_ScheduleAnalog, FB_BA_ScheduleBinary and FB_BA_ScheduleMultistate.

The function block contains the actual schedule entries for 24 exception days and 7 weekdays.

The schedule entries for the 24 exception days are parameterized in the aException list.

The schedule entries for the 7 days of the week are parameterized in the aWeek list.

The three derived schedule function blocks FB_BA_ScheduleAnalog, FB_BA_ScheduleBinary and FB_BA_ScheduleMultistate have identical functionality - they differ only in the data type of the switching values, see example initializations.

Different data types cannot be mixed within a schedule function block.

Determination of the resulting switching command

All schedule entries active at a specific time are summarized in an internal priority matrix. From these schedule entries, the one with the highest switching time determines the switching value at one of the derived function blocks FB_BA_ScheduleAnalog, FB_BA_ScheduleBinary or FB_BA_ScheduleMultistate. The schedule entries are evaluated cyclically.

A schedule command is only valid for one day at a time (until midnight). Either a new switching command is defined from midnight or the default value of the derived schedule function blocks is output at the PresentValue.

The basic schedule determines the resulting switching command entry PresentValue according to the following criteria:

An active exception profile with an active schedule entry has priority over a weekly timer; the weekly timer is then not taken into account.

If an active exception profile does not have a schedule entry, the weekly timer is automatically added. This entry is equivalent to an active exception profile with an active schedule entry.

The weekly timer only comes into play if no exception profile is active and determines the PresentValue based on active schedule entries.

If the weekly timer does not have an active schedule entry either, the default value = PresentValue.

Samples of configuration in connection with other Schedule function blocks.

FB_BA_ScheduleBase 2: Inputs CONSTANT PERSISTENT

VAR_INPUT CONSTANT PERSISTENT
{region 'Variable Parameters'}
  {attribute 'parameterCategory':='Value'}
    aWeek         : T_BA_ScheduleWeek;
  {attribute 'parameterCategory':='Value'}
    aException    : T_BA_ScheduleExceptionList;
  {endregion}
END_VAR

Name

Type

Description

aWeek

T_BA_ScheduleWeek

The weekly program aWeek contains a daily profile for each day of the week (Monday to Sunday).

A profile consists of the following properties:

  • List of schedule entries

Sample declarations can be found attached.

aException

T_BA_ScheduleExceptionList

The aException list contains 24 schedule exception profiles.

A profile consists of the following properties:

  • Period types (Simple date, Date range, Week and day)
  • Date value
  • List of schedule entries

Sample declarations can be found attached.

FB_BA_ScheduleBase 3: Properties

Name

Type

Access

Definition location

Description

Exception

T_BA_ScheduleExceptionList

Get / Set

Public

The Exception property enables read and write access to the exception entries of the schedule.

Week

T_BA_ScheduleWeek

Get / Set

Public

The Week property enables read and write access to the weekly program of the schedule.

Prerequisites

Development environment

Required PLC library

TwinCAT from v3.1.4024.62

Tc3_BA2 from v5.5.2.0