FB_BACnet_RemoteAccumulator

The following function block is used for linking a remote BACnet object of the local BACnet client. The function block for the corresponding BACnet object is linked with the aid of process data. The data exchange with the remote BACnet server takes place via BACnet with the aid of WOC (Write-On-Change) and COV (Changes-On-Value) or via polling (not recommended).

The process data can be created manually in the BACnet object, linked manually, or they can be generated automatically via PLC automapping. The comments required for PLC automapping ( (* ~ (BACnet... | ??? | ??? ) *) ) are already included in the declaration of the function block.

FB_BACnet_RemoteAccumulator 1:

Use

The function block "FB_BACnet_RemoteAccumulator" can be used for read access to a remote BACnet object of type Accumulator (AC). To this end the remote BACnet object was added to a local BACnet client.

FB_BACnet_RemoteAccumulator 2:
Fig. 1: Example for a remote BACnet object under a local BACnet client.

VAR_OUTPUT

bReady       : BOOL;
nPresentValue: UDINT;
bOverridden  : BOOL;
bOutOfService: BOOL;
bFault       : BOOL;
bInAlarm     : BOOL;
bError       : BOOL;
nErrorId     : UINT;

bReady: Notification of general readiness. If this output is set, the other status outputs are valid (PresentValue, Overridden ...). If the output is FALSE, the corresponding function block "FB_BACnet_RemoteDevice" reports "not operational", the block instances was not linked correctly in the System Manager or the remote server cannot be reached (gateway cannot be reached, no Ethernet link).

nPresentValue: Current value of the BACnet object (see also BACnet specification DIN EN ISO 16484-5 for BACnet object Accumulator and property Present_value).

bOverride, bOutOfService, bFault, bInAlarm: See BACnet specification DIN EN ISO 16484-5 for BACnet object Accumulator and property Status_Flags.

bError: An error is pending.

nErrorId: Error number
0 = no error
1 = function block of the corresponding client (RemoteDevice) is not called or not called regularly enough from the PLC program.
2 = incorrect process data mapping detected (check mapping in the System Manager; if necessary compile complete PLC project and reload)
3 = the corresponding BACnet client is not ready (bOperational = FALSE at instance of the FB_BACnet_RemoteDevice)
The error numbers can be queried as block constants via the FB instance (FB_BACnet_Remote???.nERR_xxx).

VAR_IN_OUT

RemoteDevice     : FB_BACnet_RemoteDevice;

RemoteDevice: Block instance of the corresponding remote BACnet device object. The remote BACnet device object of a remote BACnet server has been added under a local BACnet client. Local client and remote server are linked via BACnet. Any number of clients can be linked via BACnet adapter. See FB_BACnet_Adapter and FB_BACnet_RemoteDevice for further information.