BurnerP

BurnerP (FB)

FUNCTION_BLOCK BurnerP

Short description

Control of a heat generator (temperature control via analog power signal 0.0 - 100.0 %) Typical application: heat generation

Representation

Function description

General

This function block is used to control / regulate a heat generator depending on the demand of the heat generator xEn, the flow setpoint temperature rSetPtTemp and the flow temperature rFdT. The enable / disable of the heat generator is done via the output xHB ( FALSE = lockout, TRUE = enable ). The flow temperature control (analog also boiler temperature control) is performed by a power controller (PI controller) via the analog output rHa in the range of rYMin to rYMax. The enabling of the controller is delayed (setpoint / parameter udiWaitControl ) after the running feedback ( xFb = TRUE ) of the heat generator. The following function blocks are essentially used:

ControlPI

OperatingHours

ManBin

ManNum

Enable / disable of the heat generator

The enabling of the heat generator ( xAB = TRUE, xHB = TRUE ( eManModeB = eManBin.Auto )) occurs if the flow temperature rFdT the sum of flow setpoint temperature rSetPtTemp and setpoint / parameter rSwitchOnPoint falls below, at the same time the general enable xEn active ( = TRUE ) and the minimum off time is not active. The disabling of the heat generator ( xAB = FALSE, xHB = FALSE ( eManModeB = eManBin.Auto )) occurs if the flow temperature rFdT the sum of flow setpoint temperature rSetPtTemp and setpoint / parameter rSwitchOffPoint exceeds and at the same time the general enable xEn active ( = TRUE ). A minimum off time (duration = udiTimeMinOff, display - remaining time: tOnDelay ) is always inserted between two consecutive operating cycles. The minimum off time always begins with the falling edge ( TRUE > FALSE ) at the input xFb.

Temperature control of the heat generator

The enabling of the temperature control is delayed (duration = udiWaitControl, display - remaining time: tOnControlDelay ) after the active operation message ( xFb = TRUE ) of the heat generator. The disabling of the temperature control occurs immediately after the inactive running feedback ( xFb = FALSE ) of the heat generator (power signal - heat generator before manual override rAA in the locked state = rYDisabled ). The internal power controller (PI controller, output range: rYMin to rYMax ) is enabled/disabled with the temperature control. (setpoint = flow set temperature rSetPtTemp, actual value = flow temperature rFdT ). The parameters of the internal power controller can be configured individually: Power controller - upper absolute limit of the output signal in % : rYMax Power controller - lower absolute limit of the output signal in % : rYMin Power controller - reset time in s : rTn Power controller - gain factor : rKp Power controller - offset temperature in °C : rOffset Power controller - initialization value for the output signal in % : rInitValue Power controller - switch-off value in % : rYDisabled The output signal of the power controller is fed directly to the output rAA supplied.

Manual override of the digital output xHB

The enable/disable of the heat generator ( xHB ) can be operated either in automatic mode ( eMANBIN.Auto ) or in one of the two manual modes ( eMANBIN.ManOn, eMANBIN.ManOff ).

xAB

eMANBIN

xHB

Notes

FALSE

eMANBIN.Auto

FALSE

Manual override module in automatic

TRUE

eMANBIN.Auto

TRUE

Manual override module in automatic

X

eMANBIN.ManOn

TRUE

Manual override module in manual operation On

X

eMANBIN.ManOff

FALSE

Manual override module in manual operation Off

Legend: X = don't care

Manual override of the analog output rHA

The output signal of the power controller ( rHA ) can be operated either in automatic mode ( eMANNUM.Auto ) or in manual mode ( eMANNUM.Man ).

rAA

eMANNUM

rHA

Notes

Value

eMANNUM.Auto

Value

Manual override module in automatic

X

eMANNUM.Man

rManValue

Manual override module in manual operation

Legend: X = don't care

Aggregate fault xAlarm

The aggregate fault xAlarm is active ( = TRUE ) if the fault message of the heat generator xAlarmIn is active ( = TRUE ). In all other situations the aggregate fault xAlarm is not active ( = FALSE ).

Collective automatic mode message xAuto

The collective automatic mode message xAuto is set active ( = TRUE ) if the following conditions are met simultaneously:\

  • Input eAOO = HVACTYPES.eManBin.Auto

  • Input eAO = HVACTYPES.eManNum.Auto

  • Setpoint / parameter eManModeB = eMANBIN.Auto

  • Setpoint / parameter eManModeN = eMANNUM.Auto

Operating hours counter - heat generator

The operating hours counter ( udiOperatingHours, udiCountFb ) for the heat generator is active when the running feedback is active ( xFb = TRUE ).

Write access to the counters

Via the path ‘InstanceName._OperatingHours.udiOperatingHours’ or ‘InstanceName._OperatingHours.udiCountFb’ a write access to both counter values is possible.\

Prerequisite for using the function block BurnerP

The use of the TimeRead2 function block is required for correct operation.

Feedback of the heat generator output rU

The current actual Output of the heat generator can be connected to the input rU . This input is currently not used for control and regulation purposes.

Feedback of the manual value for the power signal from the manual override - hardware rPoti

The feedback of the manual value can be at the input rPoti . This input is currently not used for control and regulation purposes.

Inactive state ( xEn = FALSE )

xHB

xAB

rHA

rAA

tOnDelay

tOnControlDelay

dtLastFb

udiOperatingHours

udiCountFb

xAlarm

xAuto

Notes

FALSE ( eManModeB = eManBin.Auto )

FALSE

rYDisabled ( eManModeN = eManNum.Auto )

rYDisabled

old value

old value

old value

old value

old value

State of xAlarmIn

old value

xEn = FALSE

Legend: X = don't care

CODESYS

InOut:

Scope
Name
Type
Initial

Input

xEn

BOOL

Input

rSetPtTemp

REAL

Input

xFb

BOOL

Input

rU

REAL

0

Input

xAlarmIn

BOOL

Input

eAOO

eManBin

eManBin.Auto

Input

eAO

eManNum

eManNum.Auto

Input

rPoti

REAL

Input

rFdT

REAL

Output

xHB

BOOL

Output

xAB

BOOL

Output

rHA

REAL

Output

rAA

REAL

Output

tOnDelay

TIME

Output

tOnControlDelay

TIME

Output

dtLastFb

DT

Output

udiOperatingHours

UDINT

Output

udiCountFb

UDINT

Output

xAlarm

BOOL

Output

xAuto

BOOL

Input Const

udiTimeTOFxFb

UDINT

7

Input Const

rYMax

REAL

100

Input Const

rYMin

REAL

0

Input Const

rTn

REAL

200

Input Const

rKp

REAL

2

Input Const

rOffset

REAL

0

Input Const

rInitValue

REAL

0

Input Const

rYDisabled

REAL

0

Input Const

udiWaitControl

UDINT

3

Input Const

rSwitchOffPoint

REAL

2.5

Input Const

rSwitchOnPoint

REAL

-2.5

Input Const

udiTimeMinOff

UDINT

3

Input Const

rManValue

REAL

0

Input Const

eManModeN

eMANNUM

eMANNUM.Auto

Input Const

eManModeB

eMANBIN

eMANBIN.Auto

Last updated