FB_BACnetAI1201
BACnet analog input
Functional description
This function block generates a BACnet analog input object and provides write and read variables for the object within the PLC.
This function block is the "small" version in terms of functionality.
Alternatively the following versions are available:
The parameters, which can be written from the PLC, can also be written from the BACnet side; the last change is always the valid one. These parameters are transferred from the PLC via ADS and into the PLC via a cyclic interface. On the PLC side, all parameters have an additional Enable input: when the respective Enable input is set for the first time (rising edge), the value at the parameter input is transferred in any case; subsequently, if Enable is set, it is only transferred if it changes, in order to reduce the ADS traffic. If the Enable input is not set, no transfer takes place.
PLC variable | Comment | BACnet-Property (Property ID) |
---|---|---|
bEnEvtEn | Enable for writing the EventEnable bit pattern |
|
stEvtEn | Property value bit pattern EventEnable | EventEnable (35) |
bEnLimEn | Enable for writing the bit pattern of the limit value enables |
|
stLimEn | Property value bit pattern limit value enables | Limit-Enable (52) |
bEnLmtVal | Enable for writing the limit values |
|
rHiLmt | Property value HighLimit | HighLimit (45) |
rLoLmt | Property value LowLimit | LowLimit (59) |
bEnTiDly | Enable for writing the message delay [s] |
|
udiTiDly | Property value message delay [s] | TimeDelay (113) |
Inputs/outputs
VAR_INPUT
usiRawValSta : USINT;
iRawVal : INT;
bEnEvtEn : BOOL;
stEvtEn : ST_BACnet_EventTransitionBits;
bEnLimEn : BOOL;
stLimEn : ST_BACnet_LimitEnable;
bEnLmtVal : BOOL;
rHiLmt : REAL;
rLoLmt : REAL;
bEnTiDly : BOOL;
udiTiDly : UDINT;
usiRawValSta: input for linking with the status byte (State) of the terminal
iRawVal: input for linking with the data word (Data In) of the terminal
bEnEvtEn / stEvtEn: enable/property value bit pattern EventEnable
bEnLimEn / stLimEn: enable/property value bit pattern LimitEnable
bEnLimVal: enable writing High-Limit and Low-Limit
rHiLmt: property value High-Limit
rLoLmt: property value Low-Limit
bEnTiDly / udiTiDly: enable/property value message delay [s]
VAR_OUTPUT
rPrVal : REAL;
bHiLmt : BOOL;
bLoLmt : BOOL;
bStaInAlm : BOOL;
bStaFlt : BOOL;
bStaOoServ : BOOL;
dwObjId : DWORD;
bErrs : BOOL;
udiErrId : UDINT;
udiErrArg : UDINT;
rPrVal: current value of the analog input object - read directly from the BACnet
bHiLim: message upper limit reached
bLoLim: message lower limit reached
bStaInAlm: indicates the state of the status flag "InAlarm" of the analog input object.
bStaFlt: indicates the state of the status flag "Fault" of the analog input object.
bStaOoServ: indicates the state of the status flag "OutOfService" of the analog input object.
dwObjId: BACnet object ID of the analog input object
bErr: indicates a general error in the function block. The cause can be in BACnet, in the ADS data exchange, or due to incorrect parameterization.
udiErrId / udiErrArg: contains the error number and the error argument. See error codes.
VAR_IN_OUT
stComnMsg : ST_BA_ComnMsg;
fbDvc : FB_BACnet_Device;
stComnMsg: reference to the connection structure for the collective message function block FB_BA_ComMsg.
fbDvc: reference to the function block of the BACnet device object.
Requirements
Development environment | Target system | required library | required supplement |
---|---|---|---|
TwinCAT 2.11 R3/x64 | PC/CX | TcBA library from V1.0.0 | TS8040 | TwinCAT Building Automation from V1.0.0 |