PowerFeedOptimizer

PowerFeedOptimizer (FB)

FUNCTION_BLOCK PowerFeedOptimizer

Short description

Maximum limit of electrical power at the grid connection point by switching off consumers 1 - 4 (index ‘_Con’) (e.g. electric heater) Minimum limit of electrical power at the grid connection point by switching on generators 1 - 4 (index ‘_Gen’) (e.g. heat pump for cooling) Influencing factors: electrical power at the grid connection point, operating hours, operating and fault states of the consumers / generators Typical application: optimization of the time profile of the electrical power at the grid connection point

Representation

Interfaces

Inputs

Name
Data type
Value range
Initial value
Function

xEn

BOOL

TRUE

Enable / disable of the function block

xUpdateDeviceOutputs

BOOL

FALSE

Update of the device outputs (on every rising edge)

xResError

BOOL

FALSE

Reinitialization of the error outputs to their respective error-free states (on every rising edge)

rElectricalPower

REAL

0.0

Current electrical power at the feed-in point in XX.X kW

rMaxElectricalPower_Con

REAL

100.0

Maximum electrical power at the feed-in point (consumption) in XX.X kW before switching off consumers

rMaxElectricalPower_Gen

REAL

100.0

Maximum electrical power at the feed-in point (feed-in) in XX.X kW before switching on generators

wActiveNumberOfDevices_Con

WORD

4

Number of requested consumers (0 - 4)

xFb_Con1

BOOL

FALSE

Operation - Consumer 1 (TRUE = in operation)

xFb_Con2

BOOL

FALSE

Operation - Consumer 2 (TRUE = in operation)

xFb_Con3

BOOL

FALSE

Operation - Consumer 3 (TRUE = in operation)

xFb_Con4

BOOL

FALSE

Operation - Consumer 4 (TRUE = in operation)

xAlarm_Con1

BOOL

FALSE

Fault - Consumer 1 (TRUE = fault)

xAlarm_Con2

BOOL

FALSE

Fault - Consumer 2 (TRUE = fault)

xAlarm_Con3

BOOL

FALSE

Fault - Consumer 3 (TRUE = fault)

xAlarm_Con4

BOOL

FALSE

Fault - Consumer 4 (TRUE = fault)

udiOpHours_Con1

UDINT

0

Operating hours - Consumer 1

udiOpHours_Con2

UDINT

0

Operating hours - Consumer 2

udiOpHours_Con3

UDINT

0

Operating hours - Consumer 3

udiOpHours_Con4

UDINT

0

Operating hours - Consumer 4

wActiveNumberOfDevices_Gen

WORD

4

Number of requested generators (0 - 4)

xFb_Gen1

BOOL

FALSE

Operation - Generator 1 (TRUE = in operation)

xFb_Gen2

BOOL

FALSE

Operation - Generator 2 (TRUE = in operation)

xFb_Gen3

BOOL

FALSE

Operation - Generator 3 (TRUE = in operation)

xFb_Gen4

BOOL

FALSE

Operation - Generator 4 (TRUE = in operation)

xAlarm_Gen1

BOOL

FALSE

Fault - Generator 1 (TRUE = fault)

xAlarm_Gen2

BOOL

FALSE

Fault - Generator 2 (TRUE = fault)

xAlarm_Gen3

BOOL

FALSE

Fault - Generator 3 (TRUE = fault)

xAlarm_Gen4

BOOL

FALSE

Fault - Generator 4 (TRUE = fault)

udiOpHours_Gen1

UDINT

0

Operating hours - Generator 1

udiOpHours_Gen2

UDINT

0

Operating hours - Generator 2

udiOpHours_Gen3

UDINT

0

Operating hours - Generator 3

udiOpHours_Gen4

UDINT

0

Operating hours - Generator 4

xUpdateRedundance4_Con

BOOL

FALSE

Trigger recalculation of the sequence for the consumers (internal FB ‘Redundance4’) on every rising edge

xUpdateRedundance4_Gen

BOOL

FALSE

Trigger recalculation of the sequence for the generators (internal FB ‘Redundance4’) on every rising edge

Outputs

Name
Data type
Value range
Initial value
Function

xLoadRejection_Con

BOOL

FALSE

Current state of the shut-off of active consumers (TRUE = shut-off active)

rTotalNomElectricalPower_Con

REAL

0.0

Total nominal electrical power of all ready-for-operation and active consumers in XX.X kW

rControlSignal_Con

REAL

0.0

Difference of the electrical power in XX.X kW for the consumers

wNumberOfOperationalDevices_Con

WORD

0

Number of operational consumers

udiCurrentSequence_Con

UDINT

0

Current device sequence of the consumers as integer (criteria: fault state, operating hours)

sCurrentSequence_Con

STRING

‘’

Current device sequence of the consumers as string (criteria: fault state, operating hours)

stOutputs_Con1

stDevicesOutputsCon_PowerFeedOptimizer

Current states of all outputs of consumer 1

stOutputs_Con2

stDevicesOutputsCon_PowerFeedOptimizer

Current states of all outputs of consumer 2

stOutputs_Con3

stDevicesOutputsCon_PowerFeedOptimizer

Current states of all outputs of consumer 3

stOutputs_Con4

stDevicesOutputsCon_PowerFeedOptimizer

Current states of all outputs of consumer 4

eOperationalCondition_Con

eRedundance3_OperationalMode

Number / name of the current operational condition of the consumers (Redundance4)

xLoadConnection_Gen

BOOL

FALSE

Current state of the connection of active generators (TRUE = connection active)

rTotalNomElectricalPower_Gen

REAL

0.0

Total nominal electrical power of all ready-for-operation and active generators in XX.X kW

rControlSignal_Gen

REAL

0.0

Difference of the electrical power in XX.X kW for the generators

wNumberOfOperationalDevices_Gen

WORD

0

Number of operational generators

udiCurrentSequence_Gen

UDINT

0

Current device sequence of the generators as integer (criteria: fault state, operating hours)

sCurrentSequence_Gen

STRING

‘’

Current device sequence of the generators as string (criteria: fault state, operating hours)

stOutputs_Gen1

stDevicesOutputsGen_PowerFeedOptimizer

Current states of all outputs of generator 1

stOutputs_Gen2

stDevicesOutputsGen_PowerFeedOptimizer

Current states of all outputs of generator 2

stOutputs_Gen3

stDevicesOutputsGen_PowerFeedOptimizer

Current states of all outputs of generator 3

stOutputs_Gen4

stDevicesOutputsGen_PowerFeedOptimizer

Current states of all outputs of generator 4

eOperationalCondition_Gen

eRedundance3_OperationalMode

Number / name of the current operational condition of the generators (Redundance4)

xErr

BOOL

FALSE

Output - Fault (TRUE = fault)

sErrorCodes_General

STRING

‘’

String with the numbers of the active error bits - general

sErrorCodes_Con

STRING

‘’

String with the numbers of the active error bits - consumers

sErrorCodes_Gen

STRING

‘’

String with the numbers of the active error bits - generators

Setpoints / parameters

Name
Data type
Value range
Initial value
Function

tTimeUpdateDeviceOutputs

TIME

T#3s

Update interval for the operations influenced by the input ‘xUpdateDeviceOutputs’

wTolerance_Con

WORD

100

Threshold - operating hours difference for direct sequence change in partial load operation of the consumers

xEnFb_Con

BOOL

FALSE

Selection criterion for determining the operating condition (idle / partial load / full load), FALSE: enable outputs - consumers (xCmd_ConX), TRUE: operation feedback inputs - consumers (xFb_ConX)

xConOperatingHours_Con

BOOL

TRUE

Trigger criterion for recalculation of the sequence, FALSE: only by input ‘xUpdateRedundance4_Con’, TRUE: automatically after operating hours ‘udiOpHours_ConX’

wTolerance_Gen

WORD

100

Threshold - operating hours difference for direct sequence change in partial load operation of the generators

xEnFb_Gen

BOOL

FALSE

Selection criterion for determining the operating condition (idle / partial load / full load), FALSE: enable outputs - generators (xCmd_GenX), TRUE: operation feedback inputs - generators (xFb_GenX)

xConOperatingHours_Gen

BOOL

TRUE

Trigger criterion for recalculation of the sequence, FALSE: only by input ‘xUpdateRedundance4_Gen’, TRUE: automatically after operating hours ‘udiOpHours_GenX’

tInitDelay_EP

TIME

T#5s

Startup delay - initialization for the input ‘rElectricalPower’ (eInitial_rEP = InitValueDelayed)

eInitial_EP

eInit

eInit.InputValue

Selection of the initial value for the input ‘rElectricalPower’

rInitValue_EP

REAL

0.0

Initial value for the input ‘rElectricalPower’ (eInitial_rEP = InitValue)

tTimeConstant_EP

TIME

T#15s

Filter - time constant for the input ‘rElectricalPower’

rTn_Con

REAL

180.0

PI controller for the power difference: reset time for the control deviation in seconds

rTn_Gen

REAL

180.0

PI controller for the power difference: reset time for the control deviation in seconds

eControlSelect

ePowerFeedOptimizer_ControlSelect

ePowerFeedOptimizer_ControlSelect.P_Controller

Selection of the controller characteristics (common for the controllers for consumers and generators)

rMinNomElectricalPower_Con1

REAL

0.0

Minimum nominal electrical power of consumer 1 in XX.X kW

rMaxNomElectricalPower_Con1

REAL

10.0

Maximum nominal electrical power of consumer 1 in XX.X kW

tOnDelayCmd_Con1

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - consumer 1

tOffDelayCmd_Con1

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - consumer 1

rMinNomElectricalPower_Con2

REAL

0.0

Minimum nominal electrical power of consumer 2 in XX.X kW

rMaxNomElectricalPower_Con2

REAL

10.0

Maximum nominal electrical power of consumer 2 in XX.X kW

tOnDelayCmd_Con2

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - consumer 2

tOffDelayCmd_Con2

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - consumer 2

rMinNomElectricalPower_Con3

REAL

0.0

Minimum nominal electrical power of consumer 3 in XX.X kW

rMaxNomElectricalPower_Con3

REAL

10.0

Maximum nominal electrical power of consumer 3 in XX.X kW

tOnDelayCmd_Con3

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - consumer 3

tOffDelayCmd_Con3

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - consumer 3

rMinNomElectricalPower_Con4

REAL

0.0

Minimum nominal electrical power of consumer 4 in XX.X kW

rMaxNomElectricalPower_Con4

REAL

10.0

Maximum nominal electrical power of consumer 4 in XX.X kW

tOnDelayCmd_Con4

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - consumer 4

tOffDelayCmd_Con4

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - consumer 4

rMinNomElectricalPower_Gen1

REAL

0.0

Minimum nominal electrical power of generator 1 in XX.X kW

rMaxNomElectricalPower_Gen1

REAL

-10.0

Maximum nominal electrical power of generator 1 in XX.X kW

tOnDelayCmd_Gen1

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - generator 1

tOffDelayCmd_Gen1

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - generator 1

rMinNomElectricalPower_Gen2

REAL

0.0

Minimum nominal electrical power of generator 2 in XX.X kW

rMaxNomElectricalPower_Gen2

REAL

-10.0

Maximum nominal electrical power of generator 2 in XX.X kW

tOnDelayCmd_Gen2

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - generator 2

tOffDelayCmd_Gen2

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - generator 2

rMinNomElectricalPower_Gen3

REAL

0.0

Minimum nominal electrical power of generator 3 in XX.X kW

rMaxNomElectricalPower_Gen3

REAL

-10.0

Maximum nominal electrical power of generator 3 in XX.X kW

tOnDelayCmd_Gen3

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - generator 3

tOffDelayCmd_Gen3

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - generator 3

rMinNomElectricalPower_Gen4

REAL

0.0

Minimum nominal electrical power of generator 4 in XX.X kW

rMaxNomElectricalPower_Gen4

REAL

-10.0

Maximum nominal electrical power of generator 4 in XX.X kW

tOnDelayCmd_Gen4

TIME

T#10s

Turn-on delay - enable output ‘xCmd’ - generator 4

tOffDelayCmd_Gen4

TIME

T#10s

Turn-off delay - enable output ‘xCmd’ - generator 4

Function description

General

This function block serves to limit (control) the electrical power at the grid connection point ‘rElectricalPower’ to adjustable maximum values. The power/energy drawn from the grid connection point is indicated by a positive sign, the power/energy fed back to the grid connection point is indicated by a negative sign. If the electrical power ‘rElectricalPower’ exceeds the adjustable positive minimum value ‘rMinElectricalPower_Con’, consumers are ramped down (PI controller behavior) starting with the device with the lowest priority. If the electrical power ‘rElectricalPower’ falls below the adjustable negative minimum value ‘rMinElectricalPower_Gen’, generators are ramped up (PI controller behavior) starting with the device with the highest priority. Without further wiring to the inputs ‘xFb’, ‘xAlarm’ and ‘udiOpHours’ as well as the initial parameter settings, device 1 is assigned priority 1 (= highest) and device 4 is assigned priority 4 (= lowest) for the respective group. For each functionality (switching off consumers, switching on generators) there is an internal function block ‘Redundance4’ from this library, where an adjustable number of consumers (‘wActiveNumberOfDevices_Con’) and generators (‘wActiveNumberOfDevices_Gen’) is used. The detailed information about this function block is described there. The enable / disable of the function block is done via the input xEn, in the disabled state all outputs assume defined states. Devices with the index ‘_Con’ are consumers, devices with the index ‘_Gen’ are generators (= Generator).

Input xEn

This input is used to enable / disable the function block, in the disabled state all outputs assume defined states.

Input xUpdateDeviceOutputs

Each rising edge on this input triggers an update of all device outputs (outputs ‘stOutputs_XXXX’).

Input xResError

Each rising edge on this input triggers a reset of all error outputs (‘sErrorCodes_General’, ‘sErrorCodes_Con’ and ‘sErrorCodes_Gen ’) to the error-free state.

Input rElectricalPower

The current electrical power at the grid connection point is available at this input. Power consumption is indicated by a positive sign, feed-in by a negative sign. The electrical power is then time-filtered (four parameters with the index ‘_EP’) and made available for the internal control processes.

Input rMaxElectricalPower_Con

This input sets the current maximum value of electrical power consumption. If the current electrical power at the input ‘rElectricalPower’ exceeds this maximum value, consumers are ramped down, depending on their nominal power, starting with the consumer with the lowest priority. The control behavior of the PI controller used can be influenced by the parameter ‘rTn_Con’ (= reset time).

Input rMaxElectricalPower_Gen

This input sets the current maximum value of electrical power feed-in. If the current electrical power at the input ‘rElectricalPower’ falls below this maximum value, generators are ramped up, depending on their nominal power, starting with the generator with the highest priority. The control behavior of the PI controller used can be influenced by the parameter ‘rTn_Gen’ (= reset time).

Input wActiveNumberOfDevices_Con

This input sets the number of consumers used in the range 0 - 4. It is directly connected to the internal function block ‘Redundance4_Con’ (input ‘wActiveNumberOfDevices’).

Input wActiveNumberOfDevices_Gen

This input sets the number of generators used in the range 0 - 4. It is directly connected to the internal function block ‘Redundance4_Gen’ (input ‘wActiveNumberOfDevices’).

Device inputs xFb``, Alarm and udiOpHours

These device inputs are fed directly to the corresponding inputs of the internal function blocks of type ‘Redundance4’ and there influence the current sequence of the respective four devices.

Inputs xUpdateRedundance4

These inputs are fed directly to the corresponding inputs of the internal function blocks of type ‘Redundance4’ and there influence the current sequence of the respective four devices.

Output xLoadRejection_Con

This output always indicates the current shut-off of active consumers (= TRUE).

Output rTotalNomElectricalPower_Con

This output always indicates the currently switch-off-able power of the ready-for-operation and active consumers in kW.

Output rControlSignal_Con

This output always indicates the control signal of the internal PI controller (= desired power to be switched off).

Output wNumberOfOperationalDevices_Con

This output always indicates the number of ready-for-operation consumers.

Output udiCurrentSequence_Con

This output always indicates the current device sequence as an integer. The number of the device with the highest priority is always at the beginning, followed by the number of the device with the second highest priority, etc.

circle-info

Example: udiCurrentSequence_Con = 145 means: device 1 = priority 1, device 4 = priority 2 and device 5 = priority 3

Output sCurrentSequence_Con

This output always shows the current device sequence as a string with separators. The same applies regarding priorities as for the output udiCurrentSequence.

circle-info

Example: sCurrentSequence_Con = ‘1-4-5’ means: device 1 = priority 1, device 4 = priority 2 and device 5 = priority 3

Outputs stOutputs_Con

These structure variables always show the current states of the respective devices. The following variables are displayed:

  1. rMinNomElectricalPower: Minimum nominal electrical power of the consumer in XX.X kW

  2. rMaxNomElectricalPower: Maximum nominal electrical power of the consumer in XX.X kW

  3. wPrio: Current priority of the device (0 = none, 1 = highest, 4 = lowest)

  4. rPowerSignalPercent: Control signal for the electrical power in percent (0.0 - 100.0%)

  5. rPowerSignalkW: Control signal for the electrical power in kW

  6. xCmd: Enable output of the device (TRUE = enabled) taking into account the on and off delays

  7. xCmd_Redundance4: Enable output of the device (TRUE = enabled) due to the internal function block Redundance4_Con

Output eOperationalCondition_Con

This output always indicates the current load situation (idle, partial load, full load) and is taken directly from the internal function block Redundance4 used.

Output xLoadConnection_Gen

This output always indicates the current connection of active generators (= TRUE).

Output rTotalNomElectricalPower_Gen

This output always indicates the currently connectable power of the ready-for-operation and active generators in kW.

Output rControlSignal_Gen

This output always indicates the control signal of the internal PI controller (= desired power to be connected).

Output wNumberOfOperationalDevices_Gen

This output always indicates the number of ready-for-operation generators.

Output udiCurrentSequence_Gen

This output always indicates the current device sequence as an integer. The number of the device with the highest priority is always at the beginning, followed by the number of the device with the second highest priority, etc.

circle-info

Example: udiCurrentSequence_Gen = 145 means: device 1 = priority 1, device 4 = priority 2 and device 5 = priority 3

Output sCurrentSequence_Gen

This output always shows the current device sequence as a string with separators. The same applies regarding priorities as for the output udiCurrentSequence.

circle-info

Example: sCurrentSequence_gen = ‘1-4-5’ means: device 1 = priority 1, device 4 = priority 2 and device 5 = priority 3

Outputs stOutputs_Gen

These structure variables always show the current states of the respective devices. The following variables are displayed:

  1. rMinNomElectricalPower: Minimum nominal electrical power of the generator in XX.X kW

  2. rMaxNomElectricalPower: Maximum nominal electrical power of the generator in XX.X kW

  3. wPrio: Current priority of the device (0 = none, 1 = highest, 4 = lowest)

  4. rPowerSignalPercent: Control signal for the electrical power in percent (0.0 - 100.0%)

  5. rPowerSignalkW: Control signal for the electrical power in kW

  6. xCmd: Enable output of the device (TRUE = enabled) taking into account the on and off delays

  7. xCmd_Redundance4: Enable output of the device (TRUE = enabled) due to the internal function block Redundance4_Gen

Output eOperationalCondition_Gen

This output always indicates the current load situation (idle, partial load, full load) and is taken directly from the internal function block Redundance4 used.

Fault output xErr

This output is active (= TRUE) if at least one of the following conditions is met.

  1. Number of general errors > 0

  2. Number of errors in the consumer functionality > 0

  3. Number of errors in the generator functionality > 0

In all other cases the output xErr is not active (= FALSE).

Output sErrorCodes_General

This output shows any active errors (maximum 16 = bits 0 - 15) from the general area as a string, if any.

circle-info

Example: ‘1-2’: error bits 0 and 1 are active.

Output sErrorCodes_Con

This output shows any active errors (maximum 16 = bits 0 - 15) from the consumer area as a string, if any.

circle-info

Example: ‘1-2’: error bits 0 and 1 are active.

Output sErrorCodes_Gen

This output shows any active errors (maximum 16 = bits 0 - 15) from the generator area as a string, if any.

circle-info

Example: ‘1-2’: error bits 0 and 1 are active.

Parameters wTolerance_Con, xEnFb_Con and xConOperatingHours_Con

These parameters concern the strategies for determining the device sequence in the internal function block Redundance4 and are described there in detail.

Parameters wTolerance_Gen, xEnFb_Gen and xConOperatingHours_Gen

These parameters concern the strategies for determining the device sequence in the internal function block Redundance4 and are described there in detail.

Parameters rMinNominalElectricalPower_ConX, rMaxNominalElectricalPower_ConX, tOnDelayCmd_ConX and tOffDelayCmd_ConX

These parameters concern consumers 1 - 4 and influence the associated device outputs. The respective on and off delays apply to the respective device outputs xCmd.

Parameters rMinNominalElectricalPower_GenX, rMaxNominalElectricalPower_GenX, tOnDelayCmd_GenX and tOffDelayCmd_GenX

These parameters concern generators 1 - 4 and influence the associated device outputs. The respective on and off delays apply to the respective device outputs xCmd.

Parameters eControlSelect

These parameters set the controller characteristic (P or PI behavior) of the two controllers (consumers and generators). The gain factor rkP is fixed at the constant 1.0 for both controllers and cannot be changed. The reset times rTn are separately adjustable for both controllers.

Criteria for updating the device outputs ‘stOutputs_ConX’

These outputs are updated in the enabled state (xEn = TRUE) if at least one of the following criteria applies:

  1. once after each restart of the controller

  2. on every rising edge at the input xUpdateDeviceOutputs

  3. cyclically in the time interval ‘tTimeUpdateDeviceOutputs’ (tTimeUpdateDeviceOutputs > 0)

  4. once on any change of the sequence (udiCurrentSequence_Con)

  5. once on any change of the minimum nominal electrical power of the consumers (rMinNomElectricalPower_ConX)

  6. once on any change of the maximum nominal electrical power of the consumers (rMaxNomElectricalPower_ConX)

  7. once on every rising edge at the input xEn

Criteria for updating the device outputs stOutputs_GenX

These outputs are updated in the enabled state (xEn = TRUE) if at least one of the following criteria applies:

  1. once after each restart of the controller

  2. on every rising edge at the input xUpdateDeviceOutputs

  3. cyclically in the time interval tTimeUpdateDeviceOutputs (tTimeUpdateDeviceOutputs > 0)

  4. once on any change of the sequence (udiCurrentSequence_Gen)

  5. once on any change of the minimum nominal electrical power of the generators (rMinNomElectricalPower_GenX)

  6. once on any change of the maximum nominal electrical power of the generators (rMaxNomElectricalPower_GenX)

  7. once on every rising edge at the input xEn

CODESYS

InOut:

Scope
Name
Type
Initial

Input

xEn

BOOL

TRUE

Input

xUpdateDeviceOutputs

BOOL

FALSE

Input

xResError

BOOL

FALSE

Input

rElectricalPower

REAL

0.0

Input

rMaxElectricalPower_Con

REAL

100.0

Input

rMaxElectricalPower_Gen

REAL

-100.0

Input

wActiveNumberOfDevices_Con

WORD

4

Input

xFb_Con1

BOOL

FALSE

Input

xFb_Con2

BOOL

FALSE

Input

xFb_Con3

BOOL

FALSE

Input

xFb_Con4

BOOL

FALSE

Input

xAlarm_Con1

BOOL

FALSE

Input

xAlarm_Con2

BOOL

FALSE

Input

xAlarm_Con3

BOOL

FALSE

Input

xAlarm_Con4

BOOL

FALSE

Input

udiOpHours_Con1

UDINT

0

Input

udiOpHours_Con2

UDINT

0

Input

udiOpHours_Con3

UDINT

0

Input

udiOpHours_Con4

UDINT

0

Input

wActiveNumberOfDevices_Gen

WORD

4

Input

xFb_Gen1

BOOL

FALSE

Input

xFb_Gen2

BOOL

FALSE

Input

xFb_Gen3

BOOL

FALSE

Input

xFb_Gen4

BOOL

FALSE

Input

xAlarm_Gen1

BOOL

FALSE

Input

xAlarm_Gen2

BOOL

FALSE

Input

xAlarm_Gen3

BOOL

FALSE

Input

xAlarm_Gen4

BOOL

FALSE

Input

udiOpHours_Gen1

UDINT

0

Input

udiOpHours_Gen2

UDINT

0

Input

udiOpHours_Gen3

UDINT

0

Input

udiOpHours_Gen4

UDINT

0

Input

xUpdateRedundance4_Con

BOOL

FALSE

Input

xUpdateRedundance4_Gen

BOOL

FALSE

Output

xLoadRejection_Con

BOOL

FALSE

Output

rTotalNomElectricalPower_Con

REAL

0.0

Output

rControlSignal_Con

REAL

0.0

Output

wNumberOfOperationalDevices_Con

WORD

0

Output

udiCurrentSequence_Con

UDINT

0

Output

sCurrentSequence_Con

STRING

‘’

Output

stOutputs_Con1

stDevicesOutputsCon_PowerFeedOptimizer

Output

stOutputs_Con2

stDevicesOutputsCon_PowerFeedOptimizer

Output

stOutputs_Con3

stDevicesOutputsCon_PowerFeedOptimizer

Output

stOutputs_Con4

stDevicesOutputsCon_PowerFeedOptimizer

Output

eOperationalCondition_Con

eRedundance3_OperationalMode

Output

xLoadConnection_Gen

BOOL

FALSE

Output

rTotalNomElectricalPower_Gen

REAL

0.0

Output

rControlSignal_Gen

REAL

0.0

Output

wNumberOfOperationalDevices_Gen

WORD

0

Output

udiCurrentSequence_Gen

UDINT

0

Output

sCurrentSequence_Gen

STRING

‘’

Output

stOutputs_Gen1

stDevicesOutputsGen_PowerFeedOptimizer

Output

stOutputs_Gen2

stDevicesOutputsGen_PowerFeedOptimizer

Output

stOutputs_Gen3

stDevicesOutputsGen_PowerFeedOptimizer

Output

stOutputs_Gen4

stDevicesOutputsGen_PowerFeedOptimizer

Output

eOperationalCondition_Gen

eRedundance3_OperationalMode

Output

xErr

BOOL

FALSE

Output

sErrorCodes_General

STRING

‘’

Output

sErrorCodes_Con

STRING

‘’

Output

sErrorCodes_Gen

STRING

‘’

Input Const

tOffDelayCmd_Gen4

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Gen4

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Gen4

REAL

-10.0

Input Const

rMinNomElectricalPower_Gen4

REAL

0.0

Input Const

tOffDelayCmd_Gen3

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Gen3

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Gen3

REAL

-10.0

Input Const

rMinNomElectricalPower_Gen3

REAL

0.0

Input Const

tOffDelayCmd_Gen2

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Gen2

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Gen2

REAL

-10.0

Input Const

rMinNomElectricalPower_Gen2

REAL

0.0

Input Const

tOffDelayCmd_Gen1

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Gen1

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Gen1

REAL

-10.0

Input Const

rMinNomElectricalPower_Gen1

REAL

0.0

Input Const

tOffDelayCmd_Con4

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Con4

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Con4

REAL

10.0

Input Const

rMinNomElectricalPower_Con4

REAL

0.0

Input Const

tOffDelayCmd_Con3

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Con3

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Con3

REAL

10.0

Input Const

rMinNomElectricalPower_Con3

REAL

0.0

Input Const

tOffDelayCmd_Con2

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Con2

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Con2

REAL

10.0

Input Const

rMinNomElectricalPower_Con2

REAL

0.0

Input Const

tOffDelayCmd_Con1

TIME

TIME#10s0ms

Input Const

tOnDelayCmd_Con1

TIME

TIME#10s0ms

Input Const

rMaxNomElectricalPower_Con1

REAL

10.0

Input Const

rMinNomElectricalPower_Con1

REAL

0.0

Input Const

rTn_Gen

REAL

180.0

Input Const

rTn_Con

REAL

180.0

Input Const

tTimeConstant_EP

TIME

TIME#15s0ms

Input Const

rInitValue_EP

REAL

0.0

Input Const

eInitial_EP

eInit

eInit.InputValue

Input Const

tInitDelay_EP

TIME

TIME#5s0ms

Input Const

xConOperatingHours_Gen

BOOL

TRUE

Input Const

xEnFb_Gen

BOOL

FALSE

Input Const

wTolerance_Gen

WORD

100

Input Const

xConOperatingHours_Con

BOOL

TRUE

Input Const

xEnFb_Con

BOOL

FALSE

Input Const

wTolerance_Con

WORD

100

Input Const

tTimeUpdateDeviceOutputs

TIME

TIME#3s0ms

Last updated