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 - xEnable- BOOL- TRUE - Enable - usiNumPlants- USINT (2..8) - 2 - Number of plants - 2 .. 8 - usiNumPlantsRunning- USINT (1..8) - 1 - Number of plants supposed to be running in parallel - 1 .. usiNumPlants-1 - xEnable1- BOOL- TRUE - Enable Plant 1 - xEnable2- BOOL- TRUE - Enable Plant 2 - xEnable3- BOOL- TRUE - Enable Plant 3 - xEnable4- BOOL- TRUE - Enable Plant 4 - xEnable5- BOOL- TRUE - Enable Plant 5 - xEnable6- BOOL- TRUE - Enable Plant 6 - xEnable7- BOOL- TRUE - Enable Plant 7 - xEnable8- BOOL- TRUE - Enable Plant 8 - tOnMax- TIME- TIME#60m0s0ms - Maximum on-time - xResetRuntimeAndCounters- BOOL- FALSE - Reset runtime hours and start counters, edge sensitive (xResetRuntimeAndCounters FALSE->TRUE => reset runtime and counters) - itfDateTimeProvider- Util.IDateTimeProvider- Globals.g_dtpDateTimeProvider - Source for the current date and time information in milliseconds since 1.1.1970 00:00:00.000 - Output - xOut1- BOOL- FALSE - Plant 1 - xOut2- BOOL- FALSE - Plant 2 - xOut3- BOOL- FALSE - Plant 3 - xOut4- BOOL- FALSE - Plant 4 - xOut5- BOOL- FALSE - Plant 5 - xOut6- BOOL- FALSE - Plant 6 - xOut7- BOOL- FALSE - Plant 7 - xOut8- BOOL- FALSE - Plant 8 - tPlant1- TIME- Runtime plant 1 - tPlant2- TIME- Runtime plant 2 - tPlant3- TIME- Runtime plant 3 - tPlant4- TIME- Runtime plant 4 - tPlant5- TIME- Runtime plant 5 - tPlant6- TIME- Runtime plant 6 - tPlant7- TIME- Runtime plant 7 - tPlant8- TIME- Runtime plant 8 - udiCntPlant1- UDINT- Activation counter plant 1 - udiCntPlant2- UDINT- Activation counter plant 2 - udiCntPlant3- UDINT- Activation counter plant 3 - udiCntPlant4- UDINT- Activation counter plant 4 - udiCntPlant5- UDINT- Activation counter plant 5 - udiCntPlant6- UDINT- Activation counter plant 6 - udiCntPlant7- UDINT- Activation counter plant 7 - udiCntPlant8- UDINT- Activation counter plant 8 - xError- BOOL- Error indication - eErrorID- Error ID 
