Programming a BACnet client

A BACnet client is a reference to an external peer BACnet device. As a client, the TwinCAT BACnet supplement provides access to objects and services provided by an external device.

For each external device one reference needs to be established.

The function blocks to access BACnet objects as a client are located in the section POUs/Remote/Objects.

Difference between server and client FBs

Client FBs are designed to provide cyclic data-exchange to an external device, mostly the present value and status flags are transferred. Other properties like description, limits, state-texts, minimum-/maximum present value, etc. are not part of the standard FB implementation. Even though, the function blocks FB_BACnet_ReadProperty and FB_BACnet_WriteProperty may be used to access properties other than the standard ones provided in the FB implementation. These function blocks provide acyclic access to BACnet property data.