FB_BA_LglPrev

FB_BA_LglPrev 1:

This function block FB_BA_LglPrev is used for disinfection of the service water and for killing off Legionella. Disinfection mode is activated at input bEnLglPrev via a timer program. It is advisable to run the disinfection at least once per week (during the night). The temperature should be at least 70 °C. The activation interval at bEnLglPrev must be adequately long. The output bLd activates the storage tank charging.
For hot water tanks with several temperature sensors, a min selection of all sensors must be connected to fTMin.
If fTMin exceeds the value of fSp, a monitoring timer with a time of nTi_sec [s] is started. If the minimum tank temperature fTMin remains above fSp - fSpHys while the timer is active, the tank was heated adequately. If circulation is active, the output bLd must be linked to enabling of the circulation pump, to ensure that the water pipe within the service water system is included in the disinfection. If the temperature has fallen below fSp -fSpHys during the disinfection process, this process must be restarted and run until the time nTi has fully elapsed. If disinfection is successful, output bLd is reset.
If the disinfection process was incomplete during the function block activation (bEnLglPrev), this is indicated with the output bAlm. The output must be reset with bRst.

FB_BA_LglPrev 2:

Explanation of the diagram:

t0 Start of the legionella program and switching of output bLd. Heating of the hot water tank.

t1 The tank has reached the temperature fSp. The timer for the heating time is started.

t2 The minimum tank temperature has fallen below fSp -fSpHys. The timer for the heating time is reset.

t3 The temperature exceeds fSp again, and the heating timer is started again.

t4 The minimum tank temperature was above the limit fSp - fSpHys over the period nTi ; the disinfection was successful. bLd is reset, and the hot water tank switches back to normal operation.

FB_BA_LglPrev 3: Inputs

VAR_INPUT
  bEnLglPrev  : BOOL;
  fTMin       : REAL;
  fSp         : REAL;
  fSpHys      : REAL;
  nTi         : UDINT;
  bRst        : BOOL;
END_VAR

Name

Type

Description

bEnLglPrev

 

BOOL

Enabling of disinfection operation via a timer program.

fTMin

REAL

Minimum tank temperature [°C]. Minimum selection of temperature sensors at the top and bottom.

fSp

REAL

Setpoint for disinfection [°C]

fSpHys

REAL

Temperature difference [°K] lower limit; always calculated absolute.

nTi

UDINT

Monitoring period [s].

bRst

BOOL

Resetting of the legionella alarm.

FB_BA_LglPrev 4: Outputs

VAR_OUTPUT
  bLd     : BOOL;
  fSpOut  : REAL;
  nRTi    : UDINT;
  nSta    : UDINT;
  bAlm    : BOOL;
END_VAR

Name

Type

Description

bLd

BOOL

Anti-legionella mode active.

fSpOut

REAL

Setpoint forwarding to charging circuit:
fSp (input) if the function block is activated
0 if the function block is not activated

nRTi

UDINT

Countdown timer disinfection mode.

nSta

 

UDINT

Disinfection program status:

  1. Disinfection operation was successful.
  2. Disinfection completed successfully. After the disinfection, and to reactivate legionella prevention, bEnLglPrev must be FALSE.
  3. Disinfection operation active.
  4. Disinfection not successfully. Alarm is pending.
  5. Disinfection not successfully, the alarm was acknowledged.
  6. Restart of the controller or no legionella mode has been requested yet.

bAlm

BOOL

The temperature setpoint was not reached consistently over the interval nTi, so that adequate disinfection is not guaranteed.

Requirements

Development environment

Required PLC library

TwinCAT from v3.1.4024.22

Tc3_BA2 from v5.2.5.0