Вы находитесь на странице: 1из 77

BACnet Interface Reference

Issue Date
5 September 2003

Notice
This document contains Honeywell proprietary information. Information
contained herein is to be used solely for the purpose submitted, and no part of
this document or its contents shall be reproduced, published, or disclosed to a
third party without the express permission of Honeywell Limited Australia.
While this information is presented in good faith and believed to be accurate,
Honeywell disclaims the implied warranties of merchantability and fitness for a
purpose and makes no express warranties except as may be stated in its written
agreement with and for its customer.
In no event is Honeywell liable to anyone for any direct, special, or
consequential damages. The information and specifications in this document are
subject to change without notice.
Copyright 2003 – Honeywell Limited Australia

Honeywell Trademarks
PlantScape®, TotalPlant® and TDC 3000® are U.S. registered trademarks of
Honeywell, Inc. Honeywell Enterprise Buildings Integrator™ and SafeBrowse™
are U.S. trademarks of Honeywell Inc.

Other Trademarks
Other trademarks that appear in this document are used only to the benefit of the
trademark owner, with no intention of trademark infringement.

ii
Contents
1 Getting Started
Understanding BACnet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Standard Object Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Alarms and Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Commands, Groups and Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Other Documentation for BACnet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Choosing the BACnet Interface to Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
BACnet Direct Client Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
BACnet Client (Scan Task) Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
BACnet Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Setting up BACstac Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Setting up BACnet/Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Setting up BACnet/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Protocol Implementation Conformance Statement for BACnet Client and Server . . . . . . . . . 9
Product Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
BACnet Standardized Device Profile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Segmentation Capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Networking Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Character Sets Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Data Link Layer Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Gateway to: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
BACnet-specific Terms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 BACnet Direct Client Interface Setup
Defining a BACnet Point Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Discovering Devices and Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Point Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Discovering Points Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Discovering points using Quick Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Manually Building Points Using Quick Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Downloading and Uploading Points Using Quick Builder. . . . . . . . . . . . . . . . . . . . . . 26
Deleting and Renaming Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Building Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3 BACnet Client (Scan Task) Interface Setup
Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Virtual Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Directly-mapped Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
BACnet Controller Configuration and Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Defining a BACnet Channel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
BACnet Channel Main Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

BACnet Interface Reference iii


Contents

Defining a BACnet Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35


BACnet Controller Main Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Defining a BACnet Address for a Point Parameter Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Entering an Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Optimizing Scanning Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Scanning Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4 Server and Station Tasks for BACnet
Testing Communications with a BACnet Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Troubleshooting BACnet Client Interface Scanning Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Other types of errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5 Using the BACnet Server
Discovering Points with the BACnet Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Using the whohas Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Using the bacnetbld Utility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Flexible Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Rules that Determine the BACnet Object Type for Standard Points. . . . . . . . . . . . . . . . . . . . 48
When a Parameter Value is Entered (for example, “whohas AnalogPoint.SP”) . . . . . 48
When a Parameter Value is Omitted (for example, “whohas AnalogPoint”) . . . . . . . 49
Determining the Parameters for Read/Write Requests . . . . . . . . . . . . . . . . . . . . . . . . 50
Rules that Determine the BACnet Object Type for Flexible Points . . . . . . . . . . . . . . . . . . . . 51
Honeywell Server Point Mapping to BACnet Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Device Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Analog Input Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Analog Output and Analog Value Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Binary Output and Binary Value (Pseudo Binary Points). . . . . . . . . . . . . . . . . . . . . . . 66
Multi-state Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Multi-state Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Index

BACnet Interface Reference iv


1 Getting Started
This reference describes how to set up, configure and test the various BACnet interfaces.

For details about: Go to:


Choosing which BACnet interface to use page 5
Setting up the BACnet Direct Client Interface page 19
Setting up the BACnet Client interface page 29
The BACnet server page 45

BACnet Interface Reference 1


1 – Getting Started

Understanding BACnet
BACnet is an ANSI standard network protocol which is applicable to many distributed
control and monitoring applications. Unlike network protocols such as Ethernet and
TCP/IP, BACnet focuses on defining a method for abstracting the functionality commonly
found in control and monitoring devices. In BACnet, network accessible functionality in a
device is represented as a collection of objects which other devices may access using
BACnet services.
BACnet has a broad set of standard object types and services, but proprietary object types
and services may also be defined. BACnet messages may be transmitted on networks
employing a wide range of technologies including Ethernet and LonTalk.

Standard Object Types


A BACnet device can contain a range of different BACnet objects from an Analog Input to
a Loop object. A BACnet device can also be a master timekeeper which sends time sync
messages to other BACnet devices. A BACnet device may also keep bindings to other
BACnet devices for communications purposes.

Analog Binary Multi-state


Input Input Input

Analog Binary Multi-state


Contains List Output Output Output
of objects IsA
Object
Analog Binary Multi-state
Value Value Value (Ref 1b)

Timesync
Recipients Event
Device Device Group Loop
Enrolment

Notification Averaging
Bindings to Command
Class Object (Ref 1b)
other devices
Device
Trend
Calendar Program
Log (Ref 1b)

Life Safety
Schedule File
Point (Ref 1c)

Life Safety
Zone (Ref 1c)

2
Understanding BACnet

Alarms and Events


Several types of BACnet objects can have intrinsic alarm conditions (for example, Present
Value High and Low). These objects can be associated with Notification Class which can
help with prioritizing and routing the alarms to a list of recipients.

Binary Analog
Input Input

SP property
Binary Analog reference
Associated with Object
Output Output
Intrinsic alarm
Conditions inside PV property
Notification certain objects IsA Binary Analog reference
Object Object
Class Value Value

List of OP property
Recipients Multi-state reference
Device Loop Object
Output

Multi-state Life Safety


Input Point

Multi-state Life Safety


Value (Ref 1b) Zone

Commands, Groups and Schedules


A Command object contains a list of references to other device, object, properties.
By controlling the command object a set of values can be sent to each of the
referenced properties. The command object also allows the operator to monitor
the status of the set of controls performed and if any errors occurred.
A Group object contains a list of references to other object properties within the
device. The Group object allows for the value of each of these properties to be
viewed in a quick manner.
A Schedule object contains a list of Time/Value pairs for each day of the week. It
also contains a list of exception dates and their corresponding Time/Value pairs.
The exception dates may be a reference to a calendar of dates, a specific date, a
range of dates, or a recurring day. At the given time the value shall be sent to a
list of object/property references contained within the device.

BACnet Interface Reference 3


1 – Getting Started

List of device/object/property
References to command
Command Device Object

List of object/property
references to show
Group Object

Exceptions to schedule
Schedule Calendar

List of object/property
References to control
Object

Other Documentation for BACnet


The following documents are relevant to the BACnet system and should be studied before
using or installing the BACnet Client Interface:
• ANSI/ ASHRAE Standard by 135-2001
• BACstac Installation documents
• Cimetrics Installation Guide.

4
Choosing the BACnet Interface to Use

Choosing the BACnet Interface to Use


There are three main BACnet interfaces supported by the Honeywell system. Each
interface is best suited to a particular task and has its own benefits over the other interfaces.
All three interfaces can run concurrently on the one Honeywell system. The interfaces are:
• BACnet Direct Client (Point Server) Interface, referred to as BACnet Direct
Client interface.
• BACnet Client (Scan Task) Interface, referred to as BACnet Client interface,
previously called BACnet Controller.
• BACnet Server

BACnet Direct Client Interface


Select the BACnet Direct Client interface if you want the Honeywell server to act as the
master system integrator for other Honeywell or third-party BACnet devices, controllers or
specialty equipment which have high levels of compliance to the BACnet standard.
This interface makes use of point server technology which allows points to be
discovered, greatly reducing the engineering effort required to set up a system. It also
supports all the BACnet object types and all their standard and optional properties natively
(without mapping into fixed point types). Finally it uses a dynamic scanning strategy based
on what has recently been shown on operator stations, reducing bandwidth requirements.
As the BACnet objects are modeled natively this interface requires the BACnet device to
perform its own intrinsic alarming. The interface can support devices which do not have
intrinsic alarming but you will need to set up server scripts to generate any alarms in place
of the BACnet device generating the alarms.

BACnet Client (Scan Task) Interface


Select the BACnet Client (Scan Task) interface (BACnet Client interface, formerly
known as the BACnet controller) if you want the Honeywell server to act as the master
system integrator for other Honeywell or third-party BACnet devices, controllers or
specialty equipment which have lower levels of compliance to the BACnet standard.
This interface makes use of scan task technology which has a fixed set of
standard point that are been mapped to BACnet device and object properties. It uses a
fixed scanning strategy based on the capabilities of the BACnet device.
As the BACnet objects are modeled using standard analog, status and accumulator points,
simple BACnet devices can have the alarming and control functionality of any other scan
task interface.

BACnet Interface Reference 5


1 – Getting Started

BACnet Server
Select this interface if you want the Honeywell server to act as a peer amongst other
BACnet subsystems in a facility (for example, where Security, Life Safety and HVAC are
independently tendered). In this case the Honeywell server acts as a BACnet gateway. The
Honeywell server communicates with various controllers using proprietary protocols and
serves this information up to other BACnet clients.

6
Setting up BACstac Software

Setting up BACstac Software


Whichever interface you decide to use you will need to ensure that the Cimetrics
BACstac Gateway Protocol has been setup on the server.

Prerequisites
• You have the Honeywell server CD.
• You must be logged on as a Windows administrator.
• You have installed the NDIS driver for the computer’s Ethernet adapter.

Considerations
You can install BACstac before or after installing the Honeywell server.

To install the BACstac Software:


1 Log into the system using an account with Administrator privileges launch
the Control Panel Network applet.
2 Run Network and Dial-up Connections, open Local Area Connection
properties dialog box.
3 Select the Protocols tab.
4 Click Add… and Have Disk...
5 Type the path to BACstac subdirectory on the CD and select BACstac
Protocol.
6 The Properties dialog box will be displayed with the default ports. If you
have multiple Ethernet network adaptors or would like to setup BACnet/IP then
refer to the following sections.
7 Click Close.
BACstac starts immediately.

Setting up BACnet/Ethernet
After installing the BACstac software the following default ports will have been set up:
attached physical Ethernet port #1 to the network #1 with default NIC*; attached virtual
port #2 to the network #2.
For most installations, the only fields in this table, which need to be modified are
the network numbers. Each network segment in a BACnet internetwork must be assigned a
single unique network number. Each of the routers directly attached to a network segment
contains this network number in their routing tables.

BACnet Interface Reference 7


1 – Getting Started

To set the network number of a BACnet/Ethernet port:


1 Select the Ethernet port and then click Edit.
2 Change the network number and then click OK.
If you have more than one physical Ethernet network adaptor on the server you
may need to change which network adaptor BACstac will use (it can only support
communicating out of one adaptor).

To bind BACstac to a different Ethernet adaptor:


1 In the Control Panel run the Network and Dial-up Connections applet.
2 Display the Properties dialog box for every Local Area Connection.
3 In the Components list check BACstac Protocol if this Connection is the one
to be used by the BACstac or clear it otherwise.

Setting up BACnet/IP
To use BACnet on an IP network you will need to add a BACnet/IP port. This port can be
setup in one of three ways.
• A regular BACnet/IP port. This is used to communicate to a single BACnet/IP
subnet.
• A BACnet/IP port and a BBMD device. This is used to set up the server to act as a
BACnet Broadcast Management Device (BBMD). A BBMD is used to propagate
broadcast messages to another IP subnet, allowing a BACnet network to span
multiple IP subnets.
• An FD port and FD device. This is used to request that the specified remote
BBMD include this port in the broadcasts for the BACnet/IP network.

To Add a BACnet/IP port


1 Click Add from the BACstac Gateway Protocol Properties dialog box.
2 Select BACnet/IP.
3 Set the port number and network number leaving the IP Address and UDP
Port unless they need changing.
4 Set the properties on the BBMD property sheet if you whish the server to act
as a BBMD.
5 Set the properties on the Foreign Device property sheet if you wish to
request a remote BBDM to include this port on broadcasts.
6 Click OK.

8
Protocol Implementation Conformance Statement for BACnet Client and Server

Protocol Implementation Conformance Statement for


BACnet Client and Server
The Protocol Implementation Conformance Statement aims to summarize the
capabilities of a BACnet system in a standard way. The following details describe
the standardized device profiles and services supported by the Honeywell BACnet
interface.

Date: 30 April 2003


Vendor Name: Honeywell
Product Name: Enterprise Buildings Integrator
Product Model Number: EBI R300
Applications Software Version: R300
Firmware Revision: N/A
BACnet Protocol Revision: 1

Product Description
Honeywell Enterprise Buildings Integrator (EBI) is a product suite covering
multiple building applications. It is made up of three key components which can
be provided individually or as an integrated system to meet all your building or
facilities needs:
Honeywell Security Manager is a state of the art security product providing,
Access Control, Intruder Detection, Surveillance and Advanced Security
Applications.
Honeywell Building Manager is our premier Building Management offering
providing HVAC Control, outstanding reliability, advanced applications as well as
comprehensive integration to a variety of systems found within a facility.
Honeywell Life Safety Manager is our advanced Life Safety management solution
to meet your critical safety needs.

BACnet Interface Reference 9


1 – Getting Started

BACnet Standardized Device Profile


BACnet Direct Client (Point Server)
(Essentially equivalent to Operator Workstation (B-OWS))

BIBBs Supported
ReadProperty-A (DS-RP-A) Yes
ReadPropertyMultiple-A (DS-RPM-A) Yes
WriteProperty-A (DS-WP-A) Yes
WritePropertyMultiple-A (DS-WPM-A) Yes
COV-A (DS-COV-A) Yes
COV Unsubscribed-A (DS-COVU-A) Yes
COV Property-A (DS-COVP-A) Yes
Alarm and Event-Notification-A (AE-N-A) Yes
Alarm and Event-ACK-A (AE-ACK-A) Yes
Alarm and Event-Summary-A (AE-ASUM-A) Yes
Event-Enrolment Summary-A (AE-ESUM-A)
Alarm and Event-Information-A (AE-INFO-A) Yes
Alarm and Event-LifeSafety-A (AE-LS-A) Yes
Scheduling - A (SCHED-A)
Viewing and Modifying Trends – A (T-VMT-A)
Automated Trend Retrieval – A (T-ATR-A)
Dynamic Device Binding - A (DM-DDB-A) Yes
Dynamic Object Binding – A (DM-DOB-A) Yes
DeviceCommunicationControl - A (DM-DCC-A) Yes
TimeSynchronization – A (DM-TS-A) Yes
UTCTimeSynchronization – A (DM-UTC-A) Yes
ReinitializeDevice - A (DM-RD-A) Yes
Backup and Restore – A (DM-BR-A)
Connection Establishment - A (NM-CE-A) Yes

10
Protocol Implementation Conformance Statement for BACnet Client and Server

BACnet Client (Scan Task)

BIBBs Supported
ReadProperty-A (DS-RP-A) Yes
ReadPropertyMultiple-A (DS-RPM-A)
WriteProperty-A (DS-WP-A) Yes
WritePropertyMultiple-A (DS-WPM-A)
COV-A (DS-COV-A) Yes
COV Unsubscribed-A (DS-COVU-A)
COV Property-A (DS-COVP-A)
Alarm and Event-Notification-A (AE-N-A)
Alarm and Event-ACK-A (AE-ACK-A)
Alarm and Event-Summary-A (AE-ASUM-A)
Event-Enrolment Summary-A (AE-ESUM-A)
Alarm and Event-Information-A (AE-INFO-A)
Alarm and Event-LifeSafety-A (AE-LS-A)
Scheduling - A (SCHED-A)
Viewing and Modifying Trends – A (T-VMT-A)
Automated Trend Retrieval – A (T-ATR-A)
Dynamic Device Binding - A (DM-DDB-A) Yes
Dynamic Object Binding – A (DM-DOB-A)
DeviceCommunicationControl - A (DM-DCC-A)
TimeSynchronization – A (DM-TS-A)
UTCTimeSynchronization – A (DM-UTC-A)
ReinitializeDevice - A (DM-RD-A)
Backup and Restore – A (DM-BR-A)
Connection Establishment - A (NM-CE-A) Yes

BACnet Interface Reference 11


1 – Getting Started

BACnet Server (equivalent to BACnet Gateway (B-GW))

BIBBs Supported
ReadProperty-B (DS-RP-B) Yes
ReadPropertyMultiple-B (DS-RPM-B) Yes
WriteProperty-B (DS-WP-B) Yes
WritePropertyMultiple-B (DS-WPM-B) Yes
COV-B (DS-COV-B) Yes
COV Unsubscribed-B (DS-COVU-B) Yes
COV Property-A (DS-COVP-B)
Alarm and Event-Notification-B (AE-N-B) Yes
Alarm and Event-ACK-B (AE-ACK-B) Yes
Alarm and Event-Summary-B (AE-ASUM-B) Yes
Event-Summary-B (AE-ESUM-B)
Alarm and Event-Information-A (AE-INFO-N)
Alarm and Event-LifeSafety-A (AE-LS-B)
Scheduling - B (SCHED-B)
Viewing and Modifying Trends – B (T-VMT-B)
Automated Trend Retrieval – B (T-ATR-B)
Dynamic Device Binding - B (DM-DDB-B) Yes
Dynamic Object Binding - B (DM-DOB-B) Yes
DeviceCommunicationControl - B (DM-DCC-B)
TimeSynchronization – B (DM-TS-B) Yes
UTCTimeSynchronization – B (DM-UTC-B)
ReinitializeDevice – B (DM-RD-B)

Additional BACnet Interoperability Building Blocks Supported

Additional Client BIBBs supported Supported


List Manipulation-B (DM-LM-B) Yes
Object Creation and Deletion – B (DM-OCD-B) Yes

12
Protocol Implementation Conformance Statement for BACnet Client and Server

Segmentation Capability

Functionality Supported Window Size


Segmented Requests Supported Yes
Segmented Responses Supported Yes

Networking Options

Networking Options Supported


BACnet/IP Broadcast Management Device Yes
(BBMD)
Router, Clause 6 - List all routing configurations,
e.g., ARCNET-Ethernet, Ethernet-MS/TP, etc.
Annex H, BACnet Tunneling Router over IP Yes

Character Sets Supported


Indicating support for multiple character sets does not imply that they can all be
supported simultaneously.

Character Set Supported


ANSI X3.4 Yes
/Microsoft DBCS
IBM
ISO 8859-1
ISO 10646 (UCS-2)
ISO 10646 (ICS-4)
JIS C 6226

BACnet Interface Reference 13


1 – Getting Started

Data Link Layer Options

Data Link Layer Supported


BACnet IP, (Annex J) Yes
BACnet IP, (Annex J), Foreign Device Yes
ISO 8802-3, Ethernet (Clause 7) Yes
ASTM 878.1, 2.5 Mb. ARCNET (Clause 8)
ASTM 878.1, RS-485 ARCNET (Clause 8),
baud rate(s)
MS/TP master (Clause 9), baud rate(s):
MS/TP slave (Clause 9), baud rate(s):
Point-To-Point, EIA 232 (Clause 10), baud
rate(s):
Point-To-Point, modem, (Clause 10),
baud rate(s):
LonTalk, (Clause 11), medium:
Other:

Gateway to:

Access Controllers:
PCSC MicroLPM, MicroALM, and MicroELV
PCSC IQ and Ultimate access control panels
Honeywell Security Electronics 800 series and 4100 series controllers
Honeywell FS90 AMC
Honeywell Elevator (Lift) Access Controller
Honeywell Tema Line
Security Controllers:
Honeywell SMP or R1200 (Pacific)
Aplex 100E
Tecom Challenger
Honeywell I9000
Honeywell FS90 Plus

14
Protocol Implementation Conformance Statement for BACnet Client and Server

Fritz Fuss (Europe)


Life Safety Controllers:
Honeywell FS90 Plus
Honeywell XLS 200 and XLS 1000
Building Management Controllers:
Honeywell EXCEL 5000 suite of controllers via scan task
Honeywell EXCEL 5000 suite of controllers via Point Server
BACnet compatible controllers
Honeywell LonMark Controllers
Honeywell R7044
PLCs:
Honeywell LCS620 PLCs
Modbus Modicon 984, 584 PLCs
Allen Bradley PLC2, PLC5, SLC5/xx PLCs
UMC 800

BACnet Interface Reference 15


1 – Getting Started

BACnet-specific Terms
ASHRAE
American Society of Heating, Refrigeration, and Air-Conditioning
Engineers.
BACnet
Building Automation and Control Network. A protocol standard developed
by ASHRAE to allow open communications.
BACnet Device
A system on the BACnet network that can support BACnet Services and BACnet
Objects.
BACnet Network
Network of computers that obey the BACnet protocol standard.
BACnet Objects
An abstract data structure used to represent information on the network.
All BACnet objects are referenced by its object identifier which is unique within the
BACnet device. When combined with the system-wide unique object identifier of
the BACnet Device, a BACnet object can be accessed from anywhere in the control
system network.
BACnet Services
Application Layer services used to manage communication over the BACnet
network.
BACstac
Software by Cimetrics that the server uses to communicate over the
standard Ethernet LAN to comply to the BACnet standard.
COV
Change of Value.
Device Instance
On a BACnet network, every device (including the server) must have a unique 22-bit
number to identify itself.
Hardware Diagnostic Scan
One scan per controller every diagnostic period for automatic recovery
from communications failure with the controller.

16
BACnet-specific Terms

Object Identifier
All BACnet objects are identified by a 10-bit object type and a 22-bit object
instance. An object identifier is unique within the BACnet device.
Object Type
A 10-bit number identifying the type of object. For example, Analog
Input = 0, Analog Output = 1, Multi-state Input = 13, Device = 8 and so
on. This forms part of the object identifier.
Object Instance
A 22-bit number identifying the instance of an object within a BACnet device. This
forms part of the object identifier.
Periodic Data Acquisition Scan
A defined regular interval in which the server database acquires
information from the data tables in the PLC and processes the values as
point parameters. For the source address, the scan period assigned should
reflect both the rate at which the value held in memory changes and its
importance to the process (critical or non-critical). There is one periodic
data acquisition scan per scan packet.
Property Identifier
All BACnet objects have attributes that describe the object. These attributes are
known as properties and are identified by a number. As part of the configuration of
BACnet points, you must know the identifier number that refers to the server
parameter such as a PV, OP or SP. See the BACnet Standard for details.
PICs
Protocol Implementation Conformance Statement. A document that is part
of the BACnet Standard, which gives an overview of the services and objects that are
supported in the device.

BACnet Interface Reference 17


1 – Getting Started

18
2 BACnet Direct Client Interface
Setup
This chapter describes how to set up the BACnet Direct Client Interface. It assumes that
you have already installed the BACstac software and connected the server to the BACnet
network.
The following table lists the steps for connecting and configuring a BACnet Direct Client
Interface. Complete each step before commencing the next step.

Step: Go to:
Define a BACnet point server to the Honeywell server page 20
Discover devices and objects page 22
Build schematics page 28
Test communications page 42

BACnet Interface Reference 19


2 – BACnet Direct Client Interface Setup

Defining a BACnet Point Server


You need to define the BACnet point server in Station so that Honeywell server can
communicate with BACnet devices.

Prerequisites
• You must be logged onto Station with mngr privileges.
• The BACnet Point Server service must be started.

To define the point server:


1 Click the Point Servers icon on the System Configuration Menu to call
up the Point Severs display.
2 Click an empty record to call up the Configuration tab of the Point Server
detail display.
3 Select BACnet as the Point Server Type and click Configure.
4 Configure the point server properties as appropriate.
5 Click Area Assignment to call up the Areas display.
6 Specify the Area and Description for each area used by the point server. In
each case, select BACnet from the Server list. Honeywell server should start
communicating with the point server.
7 Return to previous display (showing the configuration details for the point
server) and click the Status tab to check that point server is communicating
with the Honeywell server.
Note It may take some time—up to 30 seconds—before it is apparent that
communication has been established.

Property Description
Point Server Type Select BACnet.
Network Name The TCP/IP name of the computer on which the BACnet
point server resides.
Alias The name the Honeywell server uses for the BACnet point
server. The alias is automatically generated.
If you change the alias or have more than one BACnet point
server, contact your local Honeywell TAC for information on
configuring the alias for the BACnet point server.
Abbreviation The abbreviation that appears in alarm and event
listings.

20
Defining a BACnet Point Server

Property Description
Architecture Select the checkbox if the point server is connected via
a dual network.

BACnet Interface Reference 21


2 – BACnet Direct Client Interface Setup

Discovering Devices and Objects

Point Naming Conventions


BACnet objects are uniquely identified within a particular BACnet device by a 32-bit
numeric “object identifier.” While this expedites access over the network, their use by
human operators would be highly impractical. Therefore, BACnet also allows each object to
be referenced by an “object name”.
The standard, however, only specifies a minimum length of one printable character for the
object name and does not even require that it be writable, i.e.,modifiable, once a device is
commissioned. This was done to accommodate very simple devices, such as might be
employed as unitary or application specific controllers.
To cater for these constraints on BACnet object names, the Honeywell server provides two
approaches to naming the points which reference BACnet objects.

Explicit Point Name


An explicit point name is used where the point name explicitly implies the BACnet object it
is referring to. This can be used where the BACnet object name or BACnet object identifier
is meaningful enough to describe the object.
The format of the explicit point name is as follows:
• ObjectRef@DeviceRef to reference a BACnet object
• DeviceRef to reference a BACnet device
Where:
DeviceRef = DeviceName or DEVDeviceIdentifier
DeviceIdentifier = 22-bit numeric instance number of the
BACnet device
ObjectRef = ObjectName or ObjectTypeIDObjectIdentifier
ObjectName = Name of the BACnet object
ObjectIdentifier = 22-bit numeric instance number of the
BACnet object
ObjectTypeID = See table below

22
Discovering Devices and Objects

BACnet Object Type ObjectTypeID BACnet Object Type ObjectTypeID


ANALOG_INPUT AI GROUP GRP
ANALOG_OUTPUT AO LIFESAFETY POINT LSP
ANALOG_VALUE AV LIFESAFETY ZONE LSZ
AVERAGING AVG LOOP LP
BINARY_INPUT BI MULTISTATE_INPUT MSI
BINARY_OUTPUT BO MULTISTATE_OUTPUT MSO
BINARY_VALUE BV MULTISTATE_VALUE MSV
CALENDAR CAL NOTIFICATION_CLASS NC
COMMAND CMD PROGRAM PRG
DEVICE DEV SCHEDULE SCH
EVENT_ENROLMENT EE TRENDLOG TL
FILE FL

Table 2.1 BACnet Object Types and ObjectTypeIDs

For example, a BACnet device (with identifier 102100 and name “AirCon1”) may have a
BACnet Analog Input object (with identifier 23 and name “RoomTemp”).
Each of the following point names would explicitly reference this object
• RoomTemp@AirCon1
• RoomTemp@DEV102100
• AI23@AirCon1
• AI23@DEV102100
Note Once a BACnet object has been referenced via a particular point naming
scheme it must always be referenced by the same scheme. To use a different scheme
you need to delete the old point name first and then rediscover the point using the
new scheme.

Arbitrary Point Name


Sometimes the BACnet object name or object identifier are not very meaningful to an
operator. This may arise where the site has a standard naming convention for all points to
follow. An example of this is the FACILITY/SYSTEM/POINT (FSP) naming scheme. A
point named “BLDG226/AHU1/MA_TEMP” would mean the facility is Building 226, the
system is Air Handler Unit 1, and the point is the mixed air temperature.

BACnet Interface Reference 23


2 – BACnet Direct Client Interface Setup

To cater for arbitrary point naming schemes, it is possible to “rename” a BACnet object to
have any valid point name using Quick Builder. This makes it easy to manage a consistent
naming scheme within Quick Builder.
The way Quick Builder keeps track of the BACnet object being referenced by the arbitrarily
named point is through a technical address. The format of the technical address in Quick
Builder is as follows.

ControllerName ItemType InstanceNumber


Where:
ControllerName = Point name of the BACnet device point
ItemType = Type of the BACnet object
InstanceNumber = 22-bit numeric instance number of the
BACnet object

For example, a BACnet device (with identifier 102100 and name “AirCon1”) may have a
BACnet Analog Input object (with identifier 23 and name “RoomTemp”).
The device could be represented by the following point
• Rooftop/AirCon1
The object could be represented by the following point
• Floor1/ConfRoom1A/Temperature
With a technical address of
• Rooftop/AirCon1 AnalogInput 23
Note A point can only be renamed after it has been discovered in Quick Builder
and before it has been downloaded to the Honeywell server. To rename a point you
need to delete the old point name first, re-discover the object using Quick Builder
and then rename it.

Discovering Points Online


Once you have defined a BACnet Point Server and connected it up to a BACnet network
you can discover points without any configuration using Station.
To discover a point online using Station:
1 Using the command zone of Station, type in the name of the point.
2 Press F12 or <Detail> to request the system to search for the point

24
Discovering Devices and Objects

3 The system will then ask the BACnet Point Server to request a Who-Has service on
the BACnet network. If any BACnet devices respond then the point is created and its
Point Detail page will be shown.
You can also discover points online by simply referring to the explicit point name wherever
you would normally refer to a point. This may be done when building a custom display
using Display Builder, assigning a point to a trend using the Trend Configuration Page,
assigning a point to history using the History Assignment page etc.
Note Only explicit point names can be used to discover points online. If you wish
to use arbitrary point names you will need to use Quick Builder.

Discovering points using Quick Builder


When you are working on a larger project it may be more convenient to discover and
manage the set of BACnet points using Quick Builder. This tool provides an easy way to set
the Area or other properties of a set of points quickly.

Prerequisites
• The computer where you are running Quick Builder must have the BACnet protocol
stack installed as well as network access to the BACnet network.
• You must have a Quick Builder project that has a BACnet device type and BACnet
point components enabled.
• The BACnet Point Server service must be stopped.
• Any BACnet Point Server related points already in the server database must be
deleted before downloading discovered points. See “Deleting and Renaming Points”
on page 27.

To discover points using Quick Builder:


1 Select Tools ⇒ QB BACnet Discovery Wizard.
2 Click Next.
3 Select the BACnet devices you want to have points discovered from.
4 Type the area code to be assigned to the points you want discovered. The area code
must be the same area code assigned to the BACnet point server.
5 Click Next.
6 Select the types of BACnet objects you want to discover, then click Discover.
7 A summary of the objects that have been discovered will be displayed. Click Finish.
8 Any BACnet devices that have been discovered are added to the project as
controllers. Any BACnet objects that have been discovered are added to the project
as points.

BACnet Interface Reference 25


2 – BACnet Direct Client Interface Setup

9 After the controllers and points have been discovered you may want to rename them
to something more meaningful than their default BACnet object names. You can also
set their Area, Description, History Assignment, Control Level and other various
parameters. Once you are happy with the settings, download the points to the
Honeywell server and they will be created.

Manually Building Points Using Quick Builder


If you do not have a network connection to the BACnet network from your Quick Builder
PC, you can still create BACnet points manually.

To manually create a controller using Quick Builder


1 Select Edit ⇒ Add Items.
2 Select Controller from the combobox.
3 Select BACnet Interface from the list of Item Types
4 Click OK.
5 Complete the Technical Address of the Controller by entering the Instance Number.
6 Assign the same area code as the BACnet point server.

To manually create a point using Quick Builder


1 Select Edit ⇒ Add Items.
2 Select Point from the combobox
3 Select BACnet Point from the list of Item Types
4 Click OK.
5 Complete the Technical Address of the point by selecting the Controller, Item Type
and Instance Number.
6 Assign the same area code as the BACnet point server.
Once you are happy with the settings, download the points to the Honeywell server and
they will be created.

Downloading and Uploading Points Using Quick Builder


Points that have been discovered or manually created in Quick Builder need to be
downloaded to the Honeywell server before an operator can use them.

To download points:
1 Select Tools ⇒ Download.
2 Select the scope of points to download.
3 If you are only downloading BACnet points there is no need to rebuild the scan
tables. Deselect Rebuild Scan Tables to shorten the time to download.

26
Discovering Devices and Objects

4 Click OK.
You can manage points that have been created online using Quick Builder as well. To do
this you will need to upload all the points from the Honeywell server database into the
Quick Builder project.

To upload points:
1 Select Tools ⇒ Upload.
2 Select the scope of points to upload.
3 Click OK.

Deleting and Renaming Points


To delete a point that has been discovered online you will need to upload the points into
Quick Builder, use Quick Builder to delete the point and then download the deletion.
To delete a point that has been discovered or manually created in Quick Builder you will
need to delete the point in Quick Builder and then download the deletion.
To rename a point that has been discovered online you will need to upload the point into
Quick Builder, use Quick Builder to delete the point and then download the deletion. You
will then need to either discover or manually create the point in Quick Builder, rename the
point and then download the new point.

BACnet Interface Reference 27


2 – BACnet Direct Client Interface Setup

Building Schematics
When you use the BACnet Direct Client, all of the BACnet objects are represented natively
in the Honeywell server. This means that any of the standard or optional properties of the
BACnet object can be referenced as a parameter of the point in the Honeywell server.
For example a BACnet Analog will have the following parameters:

BACnet Analog Input Point Properties


ObjectIdentifier_Number OutOfService NotificationClass
ObjectName UpdateInterval HighLimit
ObjectType Units LowLimit
PresentValue MinPresValue Deadband
Description MaxPresValue LimitEnable
DeviceType Resolution EventEnable
StatusFlags CovIncrement AckedTransitions
EventState TimeDelay EventTimeStamp
Reliability NotifyType

In most cases when you are building schematics you will be referring to the PresentValue
property of a BACnet Point. To obtain a full list of the parameter names of each of the
BACnet object types you will need to refer to the ANSI/ASHRAE Standard - BACnet
135-2001.
To determine how to reference these parameters on a schematic you can refer to the system
displays provided with the Honeywell server. The BACnet point detail displays refer to
nearly all of the BACnet properties and have a filename like
sysDtlBACnetXXXXXX.dsp where XXXXX is the type of BACnet ObjectTypeID, for
example, sysDtlBACnetAI.dsp. For a list of ObjectTypeIDs, see Table 2.1, “BACnet
Object Types and ObjectTypeIDs,” on page 23.

28
3 BACnet Client (Scan Task)
Interface Setup
This chapter describes how to set up the BACnet Client Interface.
The following table lists the steps for setting up the BACnet Client Interface. Complete
each step before commencing the next step.

Step: Go to:
Using BACnet page 45
Connect the cables from the server to the BACnet controller page 7
Define channels using Quick Builder page 33
Define controllers using Quick Builder page 35
Download channel and controller definitions to the server
Test communications page 42
Troubleshooting communication errors page 43
Define points with Quick Builder page 37

BACnet Interface Reference 29


3 – BACnet Client (Scan Task) Interface Setup

Architectures
To communicate with BACnet devices using the BACnet Client interface you will need to
define a BACnet controller using Quick Builder. The BACnet controller can be defined as
one of two types. A virtual controller, or a directly-mapped controller.
You will also need to define a BACnet channel using Quick Builder. The BACnet channel
can have any mix of virtual or directly-mapped BACnet controllers.

Virtual Controller
The following figure shows the concept of a virtual controller.

Server 3rd Party System


Ethernet
BACnet Client
BACnet Server
Interface

BACnet Channel Object (BI,1) BACnet device with


Object (BI,2) instance = 100

BACnet VIRTUAL DI point 1


Controller BACnet device with
DI point 2 Object (AI,1)
instance = 101
Device instance = -1
AI point 3
DI point 4
DI point 5 Object (BI,1) BACnet device with
Object (MI,1) instance = 102
AO point 6

Object (AO,1) BACnet device with


instance = 103

Figure 3.1 Virtual Controller


The virtual BACnet controller can have server points that map to BACnet objects
that exist in any BACnet Server devices. For example, it is possible to build a
server point accessing the present value of a (Binary Input, Instance 1) on a
BACnet Server with device instance=100, while having another server point on
the same virtual controller accessing the present value of an (Analog Input,
Instance 1) on another BACnet Server with device instance=101. This is useful
when the number of BACnet Server devices exceeds maximum number of
controllers on the server – which is usually 255.

30
Architectures

To configure a virtual BACnet controller, the Device Instance property in Quick


Builder is set to “-1”, and the point build source address contains the device
instance number of the device that holds the BACnet object.

Directly-mapped Controller
The following figure shows the concept of a directly-mapped BACnet controller
on the Server:

Server 3rd Party System


Ethernet
BACnet Client
BACnet Server
Interface

BACnet Channel
BACnet Direct
DI point 1 Object (BI,1) BACnet device with
Controller 1
DI point 2 Object (BI,2) instance = 100
Device instance = 100

BACnet Direct
Controller 2 BACnet device with
AI point 3 Object (AI,1)
instance = 101
Device instance = 101

BACnet Direct
DI point 4 Object (BI,1) BACnet device with
Controller 3
Device instance = 102 DI point 5 Object (MI,1) instance = 102

BACnet Direct
Controller 4 AO point 6 Object (AO,1) BACnet device with
Device instance = 103 instance = 103

Figure 3.2 Directly-Mapped Controller


The directly-mapped controller can only have server points that map directly to
the corresponding BACnet objects that exist in one BACnet Server device. For
example, it is possible to build a server point accessing the present value of a
(Binary Input, Instance 1) on device 100 and another server point accessing the
present value of a (Binary Input, Instance 2) on that same device. Hence it is not
possible to build another server point accessing an object of another BACnet
device other than device 100.
To configure a directly-mapped BACnet controller, the Device Instance property
in Quick Builder is set to the BACnet device instance (100). The point build
source address contains the same device instance number.

BACnet Interface Reference 31


3 – BACnet Client (Scan Task) Interface Setup

BACnet Controller Configuration and Addressing


This chapter describes how to configure a BACnet controller using Quick Builder. You will
also need to have a project which has the following Quick Builder component enabled:
Other ⇒ Device ⇒ BACnet
For each configuration procedure, there is detailed information covering all
supported BACnet models.

For details about: Go to:


Defining a BACnet channel page 33
Defining a BACnet controller page 35
Defining an address for a point parameter value page 37
Optimizing scanning performance page 39

32
Defining a BACnet Channel

Defining a BACnet Channel


You need to define a channel for the connection the server uses to communicate
with BACnet controllers.
To define a channel using Quick Builder:
1 Click to add a channel.
2 In the Add Items dialog box, select Channel as the item and BACnet as the
channel type.
3 Enter the channel details on the Main property page for the channel. For a
description of the properties, see BACnet Channel Main Properties.

BACnet Channel Main Properties


The Main tab defines the basic properties for a BACnet channel.

Property Description
Name The unique name of the channel. A maximum of 10
alphanumeric characters (no spaces or double quotes).
Description (Optional) A description of the channel. 30 characters
maximum, including spaces.
Marginal Alarm Limit The communications alarm marginal limit at which the
channel is declared to be marginal. When this limit is
reached, a high priority alarm is generated. A channel
barometer monitors the total number of requests and
the number of times the controller did not respond or
response was incorrect. The barometer increments by 2
or more, depending on the error and decrements for
each good call.
To calculate an acceptable limit, multiply the square
root of the number of controllers on the channel by the
Marginal Alarm Limit defined for those controllers.
(Normally, you specify the same value for all controllers
on a channel). For example, if there are 9 controllers on
the channel and their Marginal Alarm Limit is set to
25, the value would be [ 3 is square root ] x 25= 75.

BACnet Interface Reference 33


3 – BACnet Client (Scan Task) Interface Setup

Property Description
Fail Alarm Limit The communications alarm fail limit at which the
channel is declared to have failed. When this barometer
limit is reached, an urgent alarm is generated.
Set this to double the value specified for the channel
Marginal Alarm Limit.
Maximum Number of The number of requests that the Honeywell server can send to
Concurrent Requests the controller at the same time. The default value is 20. Adjust
this number depending on the type of controller, as well as the
network traffic.
Typically, there are at least two requests per point
during the synchronization phase (for example, when
the channel is put in service).
If you are connected to low performance BACnet servers, this
value should be decreased to 10-12.
If you are connected to high performance BACnet servers and
a high performance LAN, this value can be increased up to 80.
Try different values to tune the connection. It may take
more than one attempt to optimally tune your system.
Item Type Shows the type channel type.
Last Modified Shows the date of the most recent modification to this
channel’s property details.
Last Downloaded Shows the date that the item was last downloaded to the
server.
Item Number The unique item number currently assigned to this
item.You can change the item number if you need to
match your current server database configuration. The
number must be between 1 and the maximum number
of channels allowed for your system.

34
Defining a BACnet Controller

Defining a BACnet Controller


You need to define a controller to describe each BACnet on a channel.
To define a controller using Quick Builder:
1 Click to add a controller.
2 In the Add Items dialog box, select Controller as the item and BACnet as the
controller type.
3 Enter the controller details on the Main property page for the controller.

BACnet Controller Main Properties


The Main tab defines the basic properties for a BACnet controller.

Property Description
Name The unique name of the controller. A maximum of 10
alphanumeric characters (no spaces or double quotes).
For LAN connected controllers, the name must not
contain underscore ( _ ) characters. This name is used
to look up the IP address in the TCP/IP database if you
do not specify an IP Address property.
Description (Optional) A description for this controller. A maximum
of 30 characters, including spaces.
Channel Name The name of the channel on which the controller
communicates. You need to have already defined the
channel in order for it’s name to appear in the list.
Marginal Alarm Limit The communications alarm marginal limit at which the
controller is declared to be marginal. When this value is
reached, a high priority alarm is generated. This limit
applies to the controller barometer which monitors the
total number of requests to the controller and the
number of times the controller did not respond or
response was incorrect. The barometer increments by 2
or more, depending on the error and decrements for
each good call. The default value is 25.

BACnet Interface Reference 35


3 – BACnet Client (Scan Task) Interface Setup

Property Description
Fail Alarm Limit The communications alarm fail limit at which the
controller is declared to have failed. When this value is
reached, an urgent alarm is generated.
Set this to double the value specified for the controller
Marginal Alarm Limit.
Device Instance The unique device instance number for the BACnet
Server device. If you want this controller to be directly
mapped, then this number must be >= 0 and must
match the device number of the BACnet Server device.
If it is a virtual controller then this number must be -1.
Enable Confirmed COV The type of change of value (COV) notification that is
Notification used for this controller. It can either be “confirmed” or
“unconfirmed”. A confirmed notification means that
when a COV Notification is sent to the scan task, it must
send an acknowledgement. For unconfirmed
notifications, no acknowledgement is required. By
default COV Notification is “unconfirmed”.
If the BACnet Server device does not support COV
Notification then the Honeywell BACnet Client shall not
perform a subscribe COV request. In this case, it is
recommended that a periodic scanning strategy is used.
A scanning period is defined in the point configuration
section of the Quick Builder.
Item Type Shows the controller’s type.
Last Modified Shows the date of the most recent modification to this
channel’s property details.
Last Downloaded Shows the date that the item was last downloaded to the
server.
Item Number The unique item number currently assigned to this
item.You can change the item number if you need to
match your current server database configuration. The
number must be between 1 and the maximum number
of channels allowed for your system.

36
Defining a BACnet Address for a Point Parameter Value

Defining a BACnet Address for a Point Parameter Value

Entering an Address
For source, and destination addresses the format for a BACnet controller address is:
ControllerName Location

Part Description
ControllerName The name of the BACnet controller.
Location The location in the controller where the value is
recorded. See “Location Syntax” on page 37.

If you would like help when defining an address, click next to Address to
display Address Builder. For details, see the help.

Location Syntax
The format for the location is:
DeviceInstanceNumber ObjectType ObjectInstance
PropertyIdentifier

Part Description
DeviceInstanceNumber A 7-digit unique device instance number of the BACnet
Server device of where the object can be found.
For a virtual controller, this number must match the
BACnet Server device and must be >= 0.
For a directly-mapped controller, the device number
can be either -1 or match the BACnet device instance number.
During the Quick Builder download, or a backbuild, the device
instance number is automatically set to be equal to the instance
number entered during the controller configuration.

BACnet Interface Reference 37


3 – BACnet Client (Scan Task) Interface Setup

Part Description
ObjectType The type of the BACnet object, the valid entries are:
• AI – Analog Input
• AO – Analog Output
• AV – Analog Value
• BI – Binary Input
• BO – Binary Output
• BV – Binary Value
• DV – Device Object (Note that the Device Object
does not support Change Of Value. Consequently, if
scanning is required, periodic scanning must be
used.)
• MI – Multi-state Input
• MO – Multi-state Output
ObjectInstance A 7-digit number that uniquely identifies the object
within the BACnet Server device.
PropertyIdentifier The attribute identifier of the BACnet object. For
example, the Present Value Identifier is “85”.
See the BACnet Standard for a full list of this mapping. You
must specify a property identifier corresponding to an
attribute that is either a enumerated, integer, or real value.
Values of date, array type, or any other kind cannot be read by
the BACnet Client.

38
Optimizing Scanning Performance

Optimizing Scanning Performance


The maximum amount of data that can be acquired from a controller is influenced by the
rate of sending scan packets to the server. An understanding of BACnet scan packets will
help you configure points so that optimal data acquisition performance is achieved by
maximizing the amount of data acquired with each scan packet.
The scan packets that have been built can be listed by using the list scan utility,
lisscn. Listing scan packets helps verify the scanning strategy. See the
Configuration Guide for your server for details about lisscn.

Scanning Period
If the BACnet Server device does not support COV Notification or a back-up scanning
strategy is required, a periodic scanning of the point can be achieved by selecting a scanning
period in Quick Builder. To optimize performance, a strategy must be employed whereby
periodic scanning is evenly dispersed among points in the controller and the points with a
faster scan rate are the more “critical” points.

BACnet Interface Reference 39


3 – BACnet Client (Scan Task) Interface Setup

40
4 Server and Station Tasks for
BACnet
This chapter describes tasks for the BACnet interface that you perform either on the server
or from any Station.

For details about: Go to:


Testing communications with the server page 42
Troubleshooting scanning errors page 43

BACnet Interface Reference 41


4 – Server and Station Tasks for BACnet

Testing Communications with a BACnet Device


You use the BACnet test utility, bactst, to test communications between the Honeywell
server and a BACnet device. You only need the Cimetrics BACstac software to run bactst.
Before testing:
• Ensure the BACnet Server is running and have BACnet objects defined.
• Ensure the Ethernet connection is active.
To run the utility:
1 Open a Command Prompt window.
2 Type bactst and press <Enter>.
Follow the directions as prompted.

Example 1 To initialize bactst for communications, type whois to determine the


BACnet Server devices available on the Ethernet.
2 If more than one device is visible, select the appropriate one to talk to. Type
choose n, where n is the number of the device that was printed as a result
of the “whois” request.
3 Do a read property request of an object. For example, to read the Present
Value property of an analog input object with instance 1000. Type
readp 0 1000 85.

42
Troubleshooting BACnet Client Interface Scanning Errors

Troubleshooting BACnet Client Interface Scanning Errors


If the Point Detail display for a point shows a bad value (indicated by inverse
video), the point might built with an address that is syntactically valid but not
configured in the controller.
The controller responds to a request to read this address with an NAK message.
Note that NAK messages received in response to a read request by the server do
not contribute to the error count of the controller or channel.
NAK messages received in response to a write request by the server result in an
operator message being sent to the Station as well as contributing to the
controller’s error count.
Any NAK messages received are printed in the server error log (which can be
viewed via the Server Diagnostics Program Group).
If NAK messages occur, check the relevant point address to ensure there are no
references to addresses in the controller that are not actually configured within
the controller.
If the Point Detail display for a point shows a bad value (indicated by inverse
video).
• The point might built with an address that is syntactically valid but not
configured in the controller. Use bactst to determine if the point can be read
from the BACnet Server device with the correct point addressing entered in
Quick Builder. Remember that the BACnet Client on the server can only
read properties that are of the enumerated, integer or real values. Arrays,
date, and other types cannot be read into the server point attributes.
• There is a problem with the actual field value. The BACnet Server may be
running and sending in good communications but cannot communicate
with the raw scan task that is driving the actual field value. Check with the
raw scan task that the field value can be read in.
• The BACnet Server software is not running. Check this with bactst by
performing a “whois” request and perform read property on some BACnet
objects.

BACnet Interface Reference 43


4 – Server and Station Tasks for BACnet

If the point has been controlled and there is a control error (indicated by an
urgent alarm).
• The BACnet Server is not running. Check this with bactst by performing a
whois request and perform some write property on the BACnet objects.
• The field value may have been written to the physical controller but the raw
scan task existing on the BACnet Server device has a delayed periodic
scanning period so the point is not updated fast enough. Either you can
improve the scanning period on the BACnet Server side or you can increase
the response timeout for the controller on the server via Quick Builder.
The point is not updated with the correct field values or is not updated at all.
• The BACnet Client internal tables are out of synchronization with the
BACnet Server objects. Put the channel out-of-service and back in-service to
rebuild the internal tables.
• The BACnet Server COV mechanism is not functioning. Restart the BACnet
Server device (on the other computer, not the Honeywell server computer) and put
the channel back in service to reinitialize the COV subscriptions.

Other types of errors


You can turn on debugging paranoids and footprints for the scan task so that
errors are captured in a log file.
To turn on the debugging paranoids:
1 At the command prompt type
setpar /pg:BACSCN /pl:100 /CHN: chnnn
where nn is the channel number
To turn on the footprints for the scan task:
1 Type fileio on the command prompt
2 Enter file 22 for the channel table
3 Enter the channel number when prompted for the record
4 Enter word 2
5 Enter 2 for hex
6 Turn on the 10th bit of this word.
7 Enter yes to write to the file
8 Press <Enter> 3 times to exit.
When the error occurs, send the file honeywell\server\data\log.txt to
the nearest Honeywell office.

44
5 Using the BACnet Server
It is possible to use the BACnet Server option on its own, or in conjunction with the
BACnet Client. However, the Cimetrics BACstac software must be installed first, and the
computer restarted before the BACnet Server can function.
The BACnet Server software maps Honeywell server points into BACnet objects. Not all
BACnet object properties are mapped one-to-one, in which case the best interpretation of
the property is matched to the Honeywell server point attribute. There is a section on
Honeywell server point mappings to BACnet objects.
The BACnet Server operates over Ethernet and IP and supports the objects listed in the
“Protocol Implementation Conformance Statement for BACnet Client and Server” on
page 9.

BACnet Interface Reference 45


5 – Using the BACnet Server

Discovering Points with the BACnet Server


There are potentially 65000 points on the Honeywell server. Typically only a few hundred
or even less are required to be mapped as BACnet objects.
There are two methods by which the BACnet Server makes a Honeywell server point a
BACnet object.

Using the whohas Method


If the BACnet Client (on another Honeywell system or a third-party system) performs a
whohas <Honeywell server pointname>.<Honeywell server
parameter> or a
whohas <Honeywell server pointname>
request, the BACnet Server instantiates a BACnet object that maps to this Honeywell server
point and parameter.

Example “whohas AnalogPoint1.SP” shall create an AO instance 1 BACnet object that the
Present Value property always looks at the SP parameter only. The result of this
request is the “I-Have AO 1” response.
“whohas AnalogPoint1” shall create an AO instance 1 BACnet object that the
Present Value property maps to the PV parameter on a read property and maps to
the SP or OP parameter on a write property request.

Once a whohas request is performed, the BACnet Server retains this mapping
indefinitely. Next time the computer is restarted, there is no need to repeat the
whohas discovery process.

Using the bacnetbld Utility


The second discovery process is used if the BACnet Client does not support
“whohas” and/or there are many Honeywell server points to map.
Run the “bacnetbld <filename>” utility from the command prompt. <filename> is
a text file containing all the Honeywell server points that are required to be mapped as
BACnet objects.

46
Discovering Points with the BACnet Server

The contents of this file may be:


• AnalogPoint1.PV
• AnalogPoint2
• DoorPoint.SP
• AirHandler
• RoomTemperature
There is a <filename>.errlog file that is printed and viewable to show the result of
this utility.

Flexible Points
A flexible point must be configured on the Honeywell server to allow BACnet server
support before it can be mapped to a BACnet object.
Before using whohas and bacnetbld, check that the flexible point:
• Is sourced from a point server that supports BACnet object mapping.
• Has been built on the Honeywell server with BACnet server support nominated. The
way that BACnet server support is configured depends on the type of point server
interface the flexible point is served from, for example, EXCEL 5000 Direct uses
Quick Builder. See the relevant controller reference for more information.
When using whohas and bacnetbld, flexible points can only be discovered as
<Honeywell server pointname> not
<Honeywell server pointname>.<Honeywell server parameter>.
Some BACnet clients might timeout on a whohas request for flexible points. In this case
use bacnetbld to first discover these points.
If the point server does not support BACnet object mapping, you need to build a derived
point so that the flexible point information can be mapped indirectly to a BACnet object.
See the Configuration Guide for information about building derived points.

BACnet Interface Reference 47


5 – Using the BACnet Server

Rules that Determine the BACnet Object Type for


Standard Points
The BACnet Server uses the following rules to determine what type of BACnet
object (that is AI, AO, AV, BI, MI etc.) to map the Honeywell server standard point to. This
mapping is also applicable for derived points.

When a Parameter Value is Entered (for example, “whohas


AnalogPoint.SP”)
The following table shows how the BACnet Object type is derived from the scan
type, range, point parameter and the tag type.

Tag Type/ PV MD OP SP A1 A2 A3 A4
Point Parameter
0 Status Points BI1 or BO BO1 or N/A N/A N/A N/A N/A
2
BV or BV2 or
MI3 MO3
1 Analog Points AI or MO AO or AO or AO or AO or AO or AO or
2 2 2 2 2 2
AV AV AV AV AV AV AV2
2 Accumulators AI or N/A N/A N/A N/A N/A N/A N/A
2
AV
3 Access Points MI N/A N/A N/A N/A N/A N/A N/A
1 If the range of the point is from 0 - 1 (i.e. two states) then the object is of type Binary.
2 If the scan type is < 2 (i.e. has no hardware address), then the object is of type Binary
Value or Analog Value.
3 If the range of the point is greater than 2 then the object is of type Multi-state.

48
Rules that Determine the BACnet Object Type for Standard Points

The following abbreviations were used in the previous table:

Abbreviation Meaning
BI, BO, BV Binary Input, Binary Output, Binary Value
AI, AO, AV Analog Input, Analog Output, Analog Value
MI, MO Multi-state input, Multi-state output
N/A Not applicable

When a Parameter Value is Omitted (for example, “whohas AnalogPoint”)

PV SP OP Ax BACnet Object Type


Status Point ✓ N/A ✗ N/A MI or BI or BV
✗ N/A ✓ N/A MO or BO
Analog Point ✓ ✗ ✗ ✗ AI or AV
✗ ✓ ✓ ✓ AO or AV
Accum. Point ✓ N/A N/A N/A AI or AV
Access Point ✓ N/A N/A N/A MI
✓ – an address (either field or database) has been defined for this parameter
N/A – not applicable for this type of point
✗ – no address defined for this parameter

Example For a Honeywell server status point, if:


• the PV is defined as a field address and the number of states is 2, then it will
be a BI object
• the PV is a database address, then it will be a BV object
• the number of states is greater than 2, then it will become a MI object.
For a Honeywell server analog point, if:
• any one of the SP, OP, Ax (i.e. A1-A4) parameters are defined and it has a
field address then it will be a AO object
• the point has a database address, then it will be a AV object.

BACnet Interface Reference 49


5 – Using the BACnet Server

Determining the Parameters for Read/Write Requests


Read Property Write Property
Analog Input PV PV
Analog Output PV, SP, or OP SP or OP
Analog Value PV, SP, or OP SP or OP
Binary Input PV PV
Binary Output PV, OP OP
Binary Value PV, OP OP
Multi-state Input PV PV
Multi-state Output PV OP

For example, on a Read Property of Present Value request of an Analog Output


object, if the corresponding Honeywell server point has a field address defined for the PV,
the PV will be returned. However, if the PV has no field address and the SP has a field
address, the SP will be returned. Likewise, if the PV and the SP has no field address and the
OP does have a field address, the OP will be returned.
A similar strategy is employed for the Write Property to a Present Value. In the
case of an Analog Output object, a Write Property will write to the SP by default,
and to the OP if no SP field address is defined.

50
Rules that Determine the BACnet Object Type for Flexible Points

Rules that Determine the BACnet Object Type for Flexible


Points
When a flexible point is configured to map to a BACnet object, the rules used to define the
mapping are unique for each point server and flexible point type. A flexible point that
supports BACnet object mapping must have a parameter definition called BACnetType, the
value of which indicates which XML definition describes this object mapping. These XML
definitions are contained in XML files located in the \server\data\bacnet folder
that must reside on the Honeywell server.

Example The room temperature read from an EXCEL 5000 Direct Analog Input point called
“RoomTemp” is required to be served from the Honeywell server to a third-party BACnet
client. In Quick Builder the RoomTemp point is configured as a BACnet object of type
Analog Input, which is then downloaded to the Honeywell server. (See the Honeywell
EXCEL 5000 Interface Reference for more information.)
From the XML definition, the BACnet server translates RoomTemp.PointValue to the
PresentValue property of the particular AI object instance created to represent the point
RoomTemp.

Translation of flexible point parameters to BACnet object properties is defined uniquely by


an XML definition for each point server interface and flexible point type. Do not attempt
to modify the XML definition files.
A subset of BACnet object properties are determined directly by the BACnet server
regardless of the point server type. The determination of these properties is fixed. The
following table lists these properties, which are common to all flexible points.

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R
Description CharacterString OR
Event_State BACnetEventState R
Time_Delay Unsigned OR
Notification Class Unsigned OR

Table 5.1 Common Properties for BACnet Objects Mapped from Flexible Points

BACnet Interface Reference 51


5 – Using the BACnet Server

Property Identifier Property Datatype Code


Acked_Transitions BACnetEventTransitionBits OR
Notify_Type BACnetNotifyType OR

Table 5.1 Common Properties for BACnet Objects Mapped from Flexible Points

52
Honeywell Server Point Mapping to BACnet Objects

Honeywell Server Point Mapping to BACnet Objects


The description for each BACnet Object includes a table summary that lists the
property identifier, the datatype of the property, some comments or example
data, and one of the following:
• OR – indicates that the property is optional and is readable using BACnet
services
• OW – indicates that the property is optional and is readable and writable
using BACnet services
• R – indicates that the property is mandatory and readable using BACnet
services
• W – indicates that the property is mandatory, readable, and writable using
BACnet services.
Each property in the supported BACnet standard objects is designated one of the
above codes. When a property is designated an OR or an OW, ASHRAE has
indicated that the property is optional to the BACnet object and it is up to the
user to include these properties in their development. Therefore, any OR or OW
means that the property has been included in this development.
The value of R or OR properties may be examined through the use of the
ReadProperty service. When a property is designated as W or OW, the value of
the property can be changed through the use of the WriteProperty service. The
value of W or OW properties may also be examined through the use the
ReadProperty service. Any R or OR properties may be changed to be writable if
required in future.
Each object has a set of attributes defined as properties. These properties have an
associated enumerated value which can be found in Section 21 of the BACnet Standard.
The following topics describe the mapping for the different BACnet objects.

Device Object
The Device Object type defines a standardized object whose properties represent
the externally visible characteristics of a BACnet Device. The Honeywell server is therefore
called a BACnet Device. There is one Device Object in each BACnet Device. A Device
Object is referenced by its Object_Identifier property, which is not only unique to the
BACnet Device that maintains this object but is also unique throughout the BACnet
internetwork. The object and its supported properties in this development are summarized
in the following table.

BACnet Interface Reference 53


5 – Using the BACnet Server

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R
System_Status BACnetDeviceStatus R
Vendor_Name CharacterString R
Vendor_Identifier Unsigned16 R
Model_Name CharacterString R
Firmware_Revision CharacterString R
Application_Software_Version CharacterString R
Location CharacterString OW
Description CharacterString OR
Protocol_Version Unsigned R
Protocol_Conformance_Class Unsigned(1..6) R
Protocol_Services_Supported BACnetServicesSupported R
Protocol_Object_Types_Supported BACnetObjectTypesSupported R
Object_List BACnetARRAY[N] of ObjectIdentifier R
Max_APDU_Length_Accepted Unsigned R
Segmentation_Supported BACnetSegmentation R
Local_Time Time OR
Local_Date Date OR
UTC_Offset INTEGER OR
Daylight_Savings_Status BOOLEAN OR
APDU_Segment_Timeout Unsigned R
APDU_Timeout Unsigned R
Number_of_APDU_Retries Unsigned R
Device_Address_Binding List of BACnetAddressBinding R

Table 5.2 Supported Properties of the Device Object

54
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Description


Object_Identifier BACnetObjectIdentifier is a numeric code that is
used to identify the object. For a Device Object, this
identifier is unique internetwork-wide. For other
objects, it is only unique to the BACnet-device. The
instance number defaults to the system number
identity that comes with the Honeywell Software License
Certificate. This may be changed user if required.
Object_Name Name of the object of type CharacterString that is
unique internetwork-wide for Device Object. For
other objects, it is only unique to the
BACnet-device. This defaults to the network
host-name of the Honeywell server.
Object_Type Indicates membership in a particular object type
class. For example, DEVICE or ANALOG_INPUT.
System_Status Reflects the current physical and logical status of the
BACnet Device. Possibilities are: {OPERATIONAL,
OPERATIONAL_READ_ONLY,
DOWNLOAD_REQUIRED,
DOWNLOAD_IN_PROGRESS,
NON_OPERATIONAL}. For Honeywell server, only
OPERATIONAL or NON_OPERATIONAL is
relevant.
Vendor_Name Identifies the manufacturer. This is defaulted to
Honeywell.
Vendor_Identifier This is a unique vendor identifier assigned by
ASHRAE. Honeywell is number 17.
Model_Name This is the name of the system, such as “Enterprise
Buildings Integrator”.
Firmware_Revision This is the release version of the Honeywell server system.
Applicaton_Software_Version This is the version of the BACstac® software used
in this development.
Location Indicates the physical location of the device. This is
blank by default and can be set during
commissioning.
Description This is the release date of the Server.

Table 5.3 Property Descriptions of the Device Object

BACnet Interface Reference 55


5 – Using the BACnet Server

Property Identifier Description


Protocol_Version Represents the version of the BACnet protocol
supported.
Protocol_Conformance_Class This development conforms to class 4.
Protocol_Services_Supported Indicates which standard services are supported.
Protocol_Object_Types_Supported Indicates which objects are supported in this
development.
Object_List Lists the object and its identifiers that are accessible
within the device. The Device Object and
Notification Class is always shown here. This list
will change continuously since Point objects are
created dynamically.
Max_APDU_Length_Accepted Maximum number of octets that may be contained
in a single, indivisible application layer protocol
data unit. This value is >= 50. The value is also
constrained by the underlying data link technology.
This is defaulted by the BACstac® software.
Segmentation_Supported Indicates support of segmentation of messages.
Possibilities are: {SEGMENTED_BOTH,
SEGMENTED_TRANSMIT,SEGMENTED_RECEIVE,
NO_SEGMENTATION}.
Local_Time Indicates the local time of the Server.
Local_Date Indicates the date of the Server.
UTC_Offset Indicates the number of minutes (-720+720) offset
between local standard time and Universal Time
Coordinated time.
Daylight_Savings_Status Indicates whether Daylight Saving is supported
(TRUE or FALSE).
APDU_Segment_Timeout Amount of time in ms between retransmission of
APDU segment. This value is non-zero if the
property Number_Of_APDU_Retries is non-zero.
For reliable communications, all BACnet-devices on
the network should have this value the same. This
is defaulted by the BACstac® software.

Table 5.3 Property Descriptions of the Device Object (Continued)

56
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Description


APDU_Timeout Amount of time in ms between retransmissions of
an APDU requiring acknowledgment for which no
acknowledgment has been received. Default is
3000ms and can be changed dynamically via the
Write Property Services. This value is non-zero if the
property Number_Of_APDU_Retries is non-zero.
For reliable communications, all BACnet-devices on
the network should have this value the same. This
is defaulted by the BACstac® software.
Number_Of_APDU_Retries Indicates the maximum number of times that an
APDU is retransmitted. Default is 0. A value of 0
means that the device does not perform retries.
Device_Address_Bindings This is a list of BACnetAddressBinding, each of
which consists of an ObjectIdentifier of the Device
Object and a BACnet device address in the form of
BACnetAddress. Entries in this list identify the actual
device addresses that are used when the remote
device must be accessed via a BACnet service
request. The list may be empty if no device
identifier-device address bindings are currently
known to the device. For Honeywell server, this list is
empty.
The optional components of the Device Object
Properties are chosen to verify times between the
Honeywell server and the third-party Server (for example,
XFi). It is up to the third-party system to determine what
is to be done with the time information.

Table 5.3 Property Descriptions of the Device Object (Continued)

Analog Input Object


The Analog Input Object type defines a standardized object whose properties
represent the externally visible characteristics of a analog input. The object and
its supported properties in this development are summarized in the following
table.

BACnet Interface Reference 57


5 – Using the BACnet Server

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R
Present_Value REAL R1
Description CharacterString OR
Device_Type CharacterString OR
Status_Flags BACnetStatusFlags R
Event_State BACnetEventState R
Reliability BACnetReliability OR
Out_of_Service BOOLEAN R
Update_Interval Unsigned OR
Units BACnetEngineeringUnits R
Min_Present_Value REAL OR
Max_Present_Value REAL OR
Resolution REAL OR
COV_Increment REAL OR2
Time_Delay Unsigned OR3
Notification Class Unsigned OR3
High_Limit REAL OR3
Low_Limit REAL OR3
Deadband REAL OR3
Limit_Enable BACnetLimitEnable OR3
Event_Enable BACnetEventTransitionBits OR3
Acked_Transitions BACnetEventTransitionBits OR3
Notify_Type BACnetNotifyType OR3
1 This property is required to be Writable if Out_of_Service is TRUE.
2 This property is required if COV Reporting is supported.
3 These properties are required if Intrinsic Reporting is supported.

Table 5.4 Supported Properties of the Analog Input Object

58
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Description


Object_Identifier Unique numeric number used to identify the object.
For all points, the instance number is incremented as
objects are created.
Object_Name Unique name for the object. For all points, the name
is the same as the Honeywell server wide point name and
the parameter.
Object_Type Indicates the object class. For analog input this is
ANALOG_INPUT.
Present_Value Indicates the current value in engineering units for
analog points.
Description This is point description of the associated Honeywell server
point.
Device_Type This is the type of the controller the associated Honeywell
server point is connected to.
Status_Flags Represents four boolean flags that indicate the
general health of a point. Three of the flags are
associated with the values of other properties of this
object. The four flags are:
• IN_ALARM, the values being:
FALSE(0) if Event_State = NORMAL, else TRUE(1).
• FAULT, the values being:
TRUE if Reliability not equal to
NO_FAULT_DETECTED, else FALSE.
• OVERRIDDEN. This is set to TRUE when the
point is put in Out of Scan by the Honeywell server.
• OUT_OF_SERVICE. This is the same value as
Out_Of_Service property.
Event_State The event state of the object: {Normal, Fault,
OffNormal, High Limit, Low Limit}. This is always
NORMAL if intrinsic reporting is not supported.

Table 5.5 Property Descriptions of the Analog Input Object With Standard Point Types

BACnet Interface Reference 59


5 – Using the BACnet Server

Property Identifier Description


Reliability Provides an indication of whether the Present_Value
is reliable as far as the BACnet-device can determine,
and if not, why.
• No_Fault_Detected. Point on scan and not BAD
value.
• No_Sensor, Open_Loop, Shorted_Loop. Not
applicable to Honeywell server.
• Over_Range, Under_Range. If PV is over the
low/high limit.
• Unreliable_Other. Point is on scan and BAD
value.
Out_Of_Service If the point MD (mode) parameter is “Manual” this
property is set. If MD is “auto” or in other states, it is
cleared.
This property is writable to allow BACnet Clients to
send control to a point on the Honeywell system.
Update_Interval Indicates the maximum period of time between
updates to the PV in hundredths of a second. This is
set to be the “PVPERIOD” of the point. If no
PVPERIOD is specified, the value is 0.
Units Indicates the measurement units of this object, and is
mapped to the equivalent Honeywell server engineering
units of the associated point.
Min_Pres_Value, Max_Pres_Value Indicates the lowest/highest number in engineering
units that can be reliably obtained for the
Present_Value of this object. For the Honeywell server, this
is set to the Range.
Resolution Indicates the smallest recognizable change in
Present_Value. This is the Honeywell analog point drift
deadband.
COV_Increment Minimum change in PV that causes a
COVNotification issued to subscribers. This defaults
to be the same as the resolution but the value can be
changed by the user.

Table 5.5 Property Descriptions of the Analog Input Object With Standard Point Types

60
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Description


Time_Delay Specifies the minimum time in seconds that the PV
must remain outside the band of High_Limit and
Low_Limit before a TO_OFFNORMAL event is
generated, or within the same band (taking in
consideration the DeadBand) before a TO_NORMAL
event is generated. Since the Server has no concept
of this property, the value can be set by the user. The
default is 0 seconds.
Notification_Class Specifies the notification class to be used when
handling and generating event notifications for this
object. This property implicitly refers to a Notification
Class Object that has a Notification_Class property
with the same value. The default is 0 (no notification
class), and can be changed by the user.
High_Limit Specifies a limit that the PV must exceed before an
event is generated. This is to the PV high limit
defined for the point on the Server. If no PV high
limit is defined, this value defaults to the high value
of the range.
Low_Limit Specifies a limit that the PV must fall below before an
event is generated. This is set to the PV low limit
defined for the point on the Server. If no PV low limit
is defined, this value defaults to the low value of the
range.
DeadBand Specifies a range between High_Limit and Low_Limit
which the PV must remain for a TO_NORMAL event
to be generated. This is set to the analog alarm
deadband of the Server point.
Limit_Enable Conveys two flags that separately enable and disable
reporting of High and Low Limit off-normal and
return to normal events. If the Server point has its
alarm disabled, then the value is {FALSE, FALSE}. If
alarm is enabled, then the value is determined by the
priority of the alarm selection. If the priority is
“Journal”, then the flag for the corresponding limit is
turned off. If the priority is not equal to “Journal”,
then the flag is turned on for the corresponding limit.

Table 5.5 Property Descriptions of the Analog Input Object With Standard Point Types

BACnet Interface Reference 61


5 – Using the BACnet Server

Property Identifier Description


Event_Enable Conveys three flags that separately enable and
disable reporting of TO_OFFNORMAL, TO-FAULT,
and TO_NORMAL events. The default is {TRUE,
TRUE, TRUE}, and can be changed by the user.
Acked_Transitions Conveys three flags that separately indicate the
receipt of acknowledgments for TO_OFFNORMAL,
TO_FAULT, and TO_NORMAL events. The default is
{FALSE, FALSE, FALSE}, and can be changed by the
user.
Notify_Type Conveys whether notifications generated are to be
ALARMS or EVENTS. The default is EVENTS, and can
be changed by the user.
In the BACnet standard, the Present_Value is
required to be writable when the object is Out of
Service for the purposes of simulating a fixed
condition or for testing purposes. The standard also
states that other functions that depend on the state of
the Present_Value properties shall respond to
changes made to this property as if the changes had
occurred in the physical input.

Table 5.5 Property Descriptions of the Analog Input Object With Standard Point Types

Analog Output and Analog Value Objects


The Analog Output and the Analog Value Object type defines a standardized
object whose properties represent the externally visible characteristics of an
analog output and an analog value respectively. An “analog value” is a software
point residing in the memory of the BACnet device.
Both objects have the same supported properties in this development and are
summarized in the following table. Any property identifiers not described below
follows the same philosophy as described in the Analog Input Object.

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R

Table 5.6 Property Identifier for Analog Output and Analog Value Objects

62
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Property Datatype Code


Present_Value REAL W
Description CharacterString OR
Device_Type CharacterString OR
Status_Flags BACnetStatusFlags R
Event_State BACnetEventState R
Reliability BACnetReliability OR
Out_of_Service BOOLEAN R
Units BACnetEngineeringUnits R
Min_Present_Value REAL OR1
Max_Present_Value REAL OR1
Resolution REAL OR1
Priority_Array BACnetPriorityArray R
Relinquish_Default REAL R
COV_Increment REAL OR2
Time_Delay Unsigned OR3
Notification_Class Unsigned OR3
High_Limit REAL OR3
Low_Limit REAL OR3
Deadband REAL OR3
Limit_Enable BACnetLimitEnable OR3
Event_Enable BACnetEventTransitionBits OR3
Acked_Transitions BACnetEventTransitionBits OR3
Notify_Type BACnetNotifyType OR3
1 These properties are present if the object is Analog Output.
2 This property is required if COV Reporting is supported.
3 These properties are required if Intrinsic Reporting is supported.

Table 5.6 Property Identifier for Analog Output and Analog Value Objects (Continued)

BACnet Interface Reference 63


5 – Using the BACnet Server

Property Identifier Description


Priority_Array Array of prioritized values. Follows the standard BACnet priority
mechanism described in Section 19 of the BACnet Standard.
Relinquish_Default Default value to be used for the PV when all command priority
values in the Priority_Array property have NULL value. See
Section 19 of the standard. For the Honeywell server, when all elements
in the Priority_Array are NULL, the Relinquish_Default will be the same
as the Present_Value.
Binary Input The Binary Input object type defines a standardized object whose
properties represent the externally visible characteristics of a
binary input. A binary input object is a physical device or
hardware input that can be in only one of two states. A Polarity
property in this object determines the application-level logical
states of the object. Digital points with only two possible states in
the Honeywell server are represented with these Binary Objects.
The Binary Input Object properties supported in this
development are summarized in Table 5.8, “Binary Input Object
Properties,” on page 64. Any property identifiers not described below
follow the same philosophy as described in the Analog Input Object.

Table 5.7 Property Descriptions for the Analog Output and Analog Value Objects

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R
Present_Value BACnetBinaryPV R1
Description CharacterString OR
Device_Type CharacterString OR
Status_Flags BACnetStatusFlags R
Event_State BACnetEventState R
Reliability BACnetReliability OR
Out_of_Service BOOLEAN R
Polarity BACnetPolarity R

Table 5.8 Binary Input Object Properties

64
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Property Datatype Code


Active_Text CharacterString OR
InActive_Text CharacterString OR
Time_Delay Unsigned OR2
Notification_Class Unsigned OR2
Alarm_Value BACnetBinaryPV OR2
Event_Enable BACnetEventTransitionBits OR2
Acked_Transitions BACnetEventTransitionBits OR2
Notify_Type BACnetNotifyType OR2
1 This property is required to be Writable if Out_of_Service is TRUE.
2 These properties are required if Intrinsic Reporting is supported.

Table 5.8 Binary Input Object Properties (Continued)

Property Identifier Description


Present_Value Logical state of the binary point, either ACTIVE or INACTIVE.
Polarity Indicates the relationship between the physical state and the
logical state of the point. Polarity can be NORMAL or REVERSE.
Since the Honeywell server already has a polarity mechanism, this is set
to NORMAL to avoid the confusion of reversing the polarity twice.
Inactive_Text Represents a human-readable description of the INACTIVE state
of the PV. This is equivalent to the Server text for the ‘0’ state.
Active_Text Represents a human-readable description of the ACTIVE state of
the PV. This is equivalent to the Server text for the ‘1’ state.
Time_Delay Specifies the minimum time in seconds during which the PV must
remain equal to the Alarm_Value before a TO_OFFNORMAL
event is generated, or remain not equal to Alarm_Value before a
TO_NORMAL event is generated. Since the Honeywell server has no
concept of this property, the value can be set by the user.
Alarm_Value Specifies the value that the PV must have before an event is
generated. For the Honeywell server, this value is the alarm state of the
digital point. If both states are being alarmed by the Honeywell server,
then the state with the most highest priority is chosen. If both have the
same priority, then the first state (state 0) is chosen.

Table 5.9 Property Descriptions for the Binary Input Objects With Standard Point Types

BACnet Interface Reference 65


5 – Using the BACnet Server

Binary Output and Binary Value (Pseudo Binary Points)


The Binary Output or Binary Value object type defines a standardized object
whose properties represent the externally visible characteristics of a binary
output/binary value. A binary object is a physical device or hardware output that
can be in only one of two states.
The object’s Polarity property determines the application-level logical states of the
object. A “binary value” is a control system parameter residing in the memory of
the BACnet Device. Digital points with only two states in the Honeywell server are
represented with these Binary Objects.
The Binary Output and Binary Value Objects properties supported in this
development are summarized in the following table. Any property identifiers not
described here follows the same philosophy as described in the Analog Input
Object.

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R
Present_Value BACnetBinaryPV W1R2
Description CharacterString OR
Device_Type CharacterString OR
Status_Flags BACnetStatusFlags R
Event_State BACnetEventState R
Reliability BACnetReliability OR
Out_of_Service BOOLEAN R
Polarity BACnetPolarity R
Active_Text CharacterString OR
InActive_Text CharacterString OR
Priority_Array BACnetPriorityArray R
Relinquish_Default BACnetBinaryPV R
Time_Delay Unsigned OR3
Notification_Class Unsigned OR3
Alarm_Value BACnetBinaryPV OR3

Table 5.10 Binary Output and Binary Value Object Properties

66
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Property Datatype Code


Event_Enable BACnetEventTransitionBits OR3
Acked_Transitions BACnetEventTransitionBits OR3
Notify_Type BACnetNotifyType OR3
1 This property is be Writable if object is of type Binary Output.
2 This property is Writable if Out_of_Service is TRUE and object is Binary Value.
3 These properties are required if Intrinsic Reporting is supported.

Table 5.10 Binary Output and Binary Value Object Properties (Continued)

Multi-state Input
The Multi-state Input Output object type defines a standardized object whose
Present_Value represents the result of an algorithmic process within the BACnet
Device in which the object resides. Since the algorithmic process itself is a local
matter and is not defined by the protocol, multi-state inputs are used to represent
the Honeywell server digital input points that have more than 2 states (there are a
maximum of 8 states). The Multi-state Input object type and its properties are summarized
in the following table.
Note Do not confuse the Present_Value state with the Event_State
property, which reflects the offnormal state of the Multi-State Input. Any
property identifiers not described here follows the same philosophy as
described in other BACnet Objects.

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R
Present_Value Unsigned R1
Description CharacterString OR
Device_Type CharacterString OR
Status_Flags BACnetStatusFlags R
Event_State BACnetEventState R
Reliability BACnetReliability OR

Table 5.11 Multi-State Input Properties

BACnet Interface Reference 67


5 – Using the BACnet Server

Property Identifier Property Datatype Code


Out_of_Service BOOLEAN R
Number_of_States Unsigned R
State_Text BACnetARRAY[N] of CharacterString OR
Time_Delay Unsigned OR2
Notification_Class Unsigned OR2
Alarm_Values List of Unsigned OR2
Fault_Values List of Unsigned OR2
Event_Enable BACnetEventTransitionBits OR2
Acked_Transitions BACnetEventTransitionBits OR2
Notify_Type BACnetNotifyType OR2
1 This property is required to be Writable if Out_of_Service is TRUE.
2 These properties are required if Intrinsic Reporting is supported.

Table 5.11 Multi-State Input Properties (Continued)

Property Identifier Description


Present_Value Reflects the logical state of the input which can be one of ‘n’
states, where ‘n’ is defined in Number_Of_States. PV is always
greater than 0.

Table 5.12 Property Description for Multi-State Input Objects with Standard Point Types

68
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Description


Object Name The object name of a Multi-state input is represented differently
if it maps to a Honeywell server access point. Since there are no
parameters for card and cardholder information in the BACnet standard
types, a strategy has been devised to notify clients whether a card has
been granted access or denied access. This information is relayed when
requested by the read property, or can also be subscribed as a COV.
Card Number: 12 characters,
Technology Type: 4 characters, (SE, uLPM, or FS90)
Access State: 7 characters, (Access or Denied)
Reason Access or Denied: 20 characters,
Cardholder Name: 32 characters,
Access Point Descriptor: 40 characters
For example, an object name field may look like:
123456789012, SE, Access, Granted, John Smith, Door Level 1
The Object Name field is not writable for an access point.
Number_Of_States Defines the number of states that the PV may have. This is
determined from the Server digital point.
State_Text Array of CharacterString representing descriptions of all possible
states of the PV. This is determined from the Server digital point.
Alarm_Values Specifies any states that PV must equal before a
TO_OFFNORMAL event is generated. This is made equivalent to
the states that have their alarms enabled (priority must not be
“Journal”) in the Server point.
Fault_Values Specifies any states that PV must equal before a TO_FAULT event
is generated. Since the Server has no concept of this property, this
is defaulted to no states.

Table 5.12 Property Description for Multi-State Input Objects with Standard Point Types

BACnet Interface Reference 69


5 – Using the BACnet Server

Multi-state Output
The Multi-state Output object type defines a standardized object whose properties
represent the desired state of one or more physical outputs or processes within the BACnet
Device in which the object resides. For example, a particular state may represent the
active/inactive condition of several physical outputs or perhaps the value of an analog
output. The Present_Value property is an unsigned integer number representing the state.
The State_Text property associates a description with each state.
Since the algorithmic process is a local matter and is not defined by the protocol,
multi-state outputs are used to represent the Honeywell server digital output points that
have more than 2 states (there are a maximum of 8 states). The Multi-state Output object
type and its properties are summarized in the following table. Any property identifiers not
described here follow the same philosophy as described in other BACnet Objects.

Property Identifier Property Datatype Code


Object_Identifier BACnetObjectIdentifier R
Object_Name CharacterString R
Object_Type BACnetObjectType R
Present_Value Unsigned W
Description CharacterString OR
Device_Type CharacterString OR
Status_Flags BACnetStatusFlags R
Event_State BACnetEventState R
Reliability BACnetReliability OR
Out_of_Service BOOLEAN R
Number_of_States Unsigned R
State_Text BACnetARRAY[N] of CharacterString OR
Priority_Array BACnetPriorityArray R
Relinquish_Default Unsigned R
Time_Delay Unsigned OR1
Notification_Class Unsigned OR1
Feedback_Value Unsigned OR1
Event_Enable BACnetEventTransitionBits OR1
Acked_Transitions BACnetEventTransitionBits OR1

Table 5.13 Multi-State Output Object Properties

70
Honeywell Server Point Mapping to BACnet Objects

Property Identifier Property Datatype Code


Notify_Type BACnetNotifyType OR1
1 These properties are required if Intrinsic Reporting is supported.

Table 5.13 Multi-State Output Object Properties (Continued)

Property Identifier Description


Feedback_Value Indicates the status of a feedback value from which the PV must
differ before a TO_OFFNORMAL event is generated.

Table 5.14 Property Description for Multi-State Output Object With Standard Point Types

BACnet Interface Reference 71


5 – Using the BACnet Server

72
Index

Index

A D
architectures supported, 30 directly-mapped controller, 31
documentation, 4
B
BACnet M
architectures, 30 mapping BACnet points, 45
channel, defining, 33
configuration steps, 29
connecting to the server, 7
O
controller, defining, 35 object type, determining, 48
documentation, 4 objects, mapping, 53
mapping points, 45
models supported, 5
object type, determining, 48 P
objects, mapping, 53 point discovery process, 46
point discovery process, 46 point parameter address, defining, 37
point parameter address, 37
properties
scanning, optimizing performance, 39
channel, 33
server on the Honeywell server, 45
controller, 35
testing communications, 42
troubleshooting, 43
BACnet Direct Client S
configuration steps, 19 scanning, optimizing performance, 39
bactst, using, 42 server, connecting to, 7

C T
channel properties troubleshooting communication errors, 43
Main tab, 33
channel, defining, 33 V
communications, testing, 42
virtual controller, 30
configuring BACnet, steps for, 29
controller
defining, 35
directly-mapped, 31
virtual, 30
controller properties
Main tab, 35

BACnet Interface Reference Index - 1

Вам также может понравиться