Multiple functional blocks with the same ufpt, Multiple functional blocks with unique ufpts – Echelon i.LON SmartServer 2.0 User Manual
Page 74
60
Creating FPM Device Interface (XIF) Files
nviSetPoint implements nviSetPoint;
nviTemp implements nviTemp;
nvoAC_OnOff implements nvoAirConditioner_OnOff;
nvoFurnace_OnOff implements nvoFurnace_OnOff;
} fbHVACFunction external_name ("HVAC Function")
fb_properties {
nciHeartbeat,nciOffline,nciThrottle,nciHysteresis
};
Multiple Functional Blocks with the Same UFPT
The following example demonstrates how to use a functional block array in a model file to create two
functional blocks that are instances of the same UFPT. You could then write a single FPM application
based on the UFPT. When you deploy the FPM application on the SmartServer and select the XIF
generated from this model file, the internal FPM device will include two functional blocks that are
separate instances of the same FPM application.
#define NUM_SWITCH_ENCODERS 2
network input SNVT_switch nviACSwitch[NUM_SWITCH_ENCODERS];
network input SNVT_switch nviFurnaceSw[NUM_SWITCH_ENCODERS];
network output SNVT_hvac_mode nvoHVACMode[NUM_SWITCH_ENCODERS];
fblock UFPTSwitchEncoder {
nviACSwitch[0] implements nviACSwitch;
nviFurnaceSw[0] implements nviFurnaceSwitch;
nvoHVACMode[0] implements nvoHVACMode;
} fbSwitchEncoder[NUM_SWITCH_ENCODERS] external_name
("Digital Encoder");
Multiple Functional Blocks with Unique UFPTs
The following example demonstrates a model file that creates two functional blocks that are instances
of two different UFPTs. You could then write separate FPM applications for the UFPTs instantiated
by the model file. When you deploy the FPM application on the SmartServer and select the XIF
generated from this model file, the internal FPM device will include two functional blocks that are
instances of their respective FPM applications.
/////////////first FB instantiated/////////////////////////
#include
network input SNVT_hvac_mode nviHVACMode;
network input SNVT_temp_f nviSetPoint;
network input SNVT_temp_f nviTemp;
network output SNVT_switch nvoAC_OnOff;
network output SNVT_switch nvoFurnace_OnOff;
network input SCPTmaxSendTime cp nciHeartbeat;
network input SCPTmaxRcvTime cp nciOffline;
network input SCPTminSendTime cp nciThrottle;
network input UCPTHysteresis cp nciHysteresis;
fblock UFPTHVACController {
nviHVACMode implements nviHVACMode;
nviSetPoint implements nviSetPoint;