ExampleVariantsRoomControlFCUSimple (FB)¶
FUNCTION_BLOCK ExampleVariantsRoomControlFCUSimple
Example how to deal with aggregate / plant variants using “external composition”
This example function block implements a simple room control strategy using a fan coil unit.
There are three variant aspects in ExampleVariantsRoomControlFCUSimple:
the heat valve (type)
the cool valve (type)
the condensate pump (type)
Despite the fact there are external elements for those three variant aspects ExampleVariantsRoomControlFCUSimple provides the related output values to help to get a better understanding of functionality during simulation / testing.
Of course this example falls a bit short on complexity, but thats on purpose to focus on aggregate / plant variants using “external composition”.
Real world FCU room controller need to have inputs / configuration for:
energy level setpoints (see EnergyLevelSetpoint)
sequence controller settings and manual control (see SequenceControl)
fan coil settings and manual control (see FancoilContinuous)
- InOut:
Scope
Name
Type
Initial
Comment
Input
eLevel
Energy level
rRoomTemp
REAL
22.0
Room temperature
itfValveHeat
Heat valve - plugin your specific continuous valve here.
itfValveCool
Cool valve - plugin your specific continuous valve here.
itfCondensatePump
condensate pump - plugin your specific pump on/off here.
xReset
BOOL
FALSE
Reset
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
eModeOut
HeatCoolOperationMode.INACTIVE
Operation mode.
rHeatOut
REAL
Heat valve signal (0..100%).
rCoolOut
REAL
Cool valve signal (0..100%).
rFanSpeedOut
REAL
0.0
Fan speed (0..100%).
xCpumpOut
BOOL
FALSE
Condensate pump.
xError
BOOL
Error indication
eErrorID
Error ID