RedundantPlantControl8 (FB)¶
FUNCTION_BLOCK RedundantPlantControl8
RedundantPlantControl8 does controls a pool of max. 8 plants (actuators, aggregates etc.).
The purpose of redundant plant control is reducing mean time between failures plus optimizing (equalizing) plant wearing in a group of redundant plants.
A given number of plants (usiNumPlantsRunning) out of a group of (usiNumPlants) plants will be enabled in parallel. After a given maximum on-time PlantRotator8 is switching over to the next enabled plant(s) selecting the one(s) with the minimal runtime.
Plants out of service (on purpose or error) can be handled by setting their xEnable1 .. xEnable8 to FALSE. Disabled plants will not be used (enabled) by RedundantPlantControl8. In case activated plants will be disabled, RedundantPlantControl8 is switching over to next available plant.
- InOut:
Scope
Name
Type
Initial
Comment
Input
xEnableBOOLTRUE
Enable
usiNumPlantsUSINT (2..8)
2
Number of plants - 2 .. 8
usiNumPlantsRunningUSINT (1..8)
1
Number of plants supposed to be running in parallel - 1 .. usiNumPlants-1
xEnable1BOOLTRUE
Enable Plant 1
xEnable2BOOLTRUE
Enable Plant 2
xEnable3BOOLTRUE
Enable Plant 3
xEnable4BOOLTRUE
Enable Plant 4
xEnable5BOOLTRUE
Enable Plant 5
xEnable6BOOLTRUE
Enable Plant 6
xEnable7BOOLTRUE
Enable Plant 7
xEnable8BOOLTRUE
Enable Plant 8
tOnMaxTIMETIME#60m0s0ms
Maximum on-time
xResetRuntimeAndCountersBOOLFALSE
Reset runtime hours and start counters, edge sensitive (xResetRuntimeAndCounters FALSE->TRUE => reset runtime and counters)
itfDateTimeProviderUtil.IDateTimeProviderGlobals.g_dtpDateTimeProvider
Source for the current date and time information in milliseconds since 1.1.1970 00:00:00.000
Output
xOut1BOOLFALSE
Plant 1
xOut2BOOLFALSE
Plant 2
xOut3BOOLFALSE
Plant 3
xOut4BOOLFALSE
Plant 4
xOut5BOOLFALSE
Plant 5
xOut6BOOLFALSE
Plant 6
xOut7BOOLFALSE
Plant 7
xOut8BOOLFALSE
Plant 8
tPlant1TIMERuntime plant 1
tPlant2TIMERuntime plant 2
tPlant3TIMERuntime plant 3
tPlant4TIMERuntime plant 4
tPlant5TIMERuntime plant 5
tPlant6TIMERuntime plant 6
tPlant7TIMERuntime plant 7
tPlant8TIMERuntime plant 8
udiCntPlant1UDINTActivation counter plant 1
udiCntPlant2UDINTActivation counter plant 2
udiCntPlant3UDINTActivation counter plant 3
udiCntPlant4UDINTActivation counter plant 4
udiCntPlant5UDINTActivation counter plant 5
udiCntPlant6UDINTActivation counter plant 6
udiCntPlant7UDINTActivation counter plant 7
udiCntPlant8UDINTActivation counter plant 8
xErrorBOOLError indication
eErrorIDError ID