Overview
BACnet is a standardized data communication protocol for Building Automation and Control net works as defined in the ANSI/ASHRAE Standard 135 and ISO 16484-5.
The BACnet protocol defines "Services" to allow communication between devices. Examples include Who-Is
, I-Am
, Who-Has
, and I-Have
for device and object search and identification, as well as Read-Property
and Write-Property
for the exchange of data.
The BACnet protocol defines a number of "Object" types on which the services operate. Each object is characterized by its "Properties".
The BACnet objects are combined in a BACnet "device". A BACnet "device" represents the functionality of a physical device.
Integration allows access to the properties of BACnet objects and the configuration parameters of a BACnet device by means of an IEC application. You can program a dynamic BACnet configuration and have access to the BACnet functions in the BACnet network by reading and writing BACnet object properties.
Support of the BACnet Standards ASHRAE 135-2012 AND ASHRAE 135-2020
The BACnet integration in CODESYS implements both ANSI/ASHRAE Standard 135-2012 ("protocol revision 14/15") and ANSI/ASHRAE 135-2020 ("protocol revision 25") and is based on the AMEV recommendations AS-A and AS-B.
CODESYS BACnet2 SL Version <=1.7.x.x implements the functionality standardized in BACnet standard ASHRAE 135-2012, supports protocol revision 14/15, and is referred to as "CODESYS BACnet(1) SL (major version 1)" for better differentiation.
CODESYS BACnet2 SL Version>=2.0.0.0 implements the functionality standardized in BACnet standard ASHRAE 135-2020, supports protocol revision 25, and is referred to as "CODESYS BACnet2 SL (major version 2)" for better differentiation.
The extensions and changes made since version 1.7.0.0 from standard ASHRAE 135-2012 to standard ASHRAE 135-2020 are so extensive that a complete compatibility from the point of view of the application – depending on the BACnet functional scope used – is not guaranteed.
Therefore, the package contains the libraries for accessing the respective runtime system component for both protocols. The libraries for the support of protocol revision 25 (CODESYS BACnet2 SL) are named accordingly (for example, BACnet2
and CmpBACnet2
). The documentation displayed in the Library Manager or the BACnet2 Library online help provides a detailed description.
For new developments, priority should be given to CODESYS BACnet2 SL. CODESYS BACnet(1) SL still allows for the maintenance of applications created in accordance with protocol revision 14/15. A migration is possible and is described in the library documentation. See also the documentation displayed in the Library Manager or the BACnet2 Library online help.
The installation of the packages contains the following parts:
Package: CODESYS BACnet2 SL
BACnet plug-in component
Device descriptions for BACnet servers, BACnet objects, and BACnet clients
Libraries:
CmpBACnet
,BACnet
,BACnetDefaultImpl
,CmpBACnet2
,BACnet2
, andBACnetDefaultImpl2
Extensive sample projects
BACnet runtime system component
For more information see: Library BACnet
The following sample projects are available, each in a variant for CODESYS BACnet(1) SL and CODESYS BACnet2 SL:
Functional restrictions: CODESYS BACnet(1) SL
When using CODESYS BACnet(1) SL, note the functional restrictions as compared to CODESYS BACnet2 SL, which are described in the product data sheet.