Professional Documents
Culture Documents
Us 7761563
Us 7761563
(54) BACNET COMMUNICATION STATUS 6.850,978 B2 * 2/2005 Springmeyer et al. ....... TO9,224
OBJECTS AND METHODS OF 7,693.987 B2 * 4/2010 Hong et al. ................. TO9,224
DETERMINING COMMUNICATION STATUS 2004/0059814 A1* 3/2004 Komiya et al. .............. TO9,224
OF BACNET DEVICES 2005, OO27811 A1 2/2005 Kraft
2007/0055758 A1 3/2007 McCoy et al.
(75) Inventors: David Shike, Rockton, IL (US); Mike 2008/O195757 A1* 8, 2008 Kim et al. ................... 709/245
Wilson, Roscoe, IL (US); Rick Koch, 2009/000661 1 A1* 1/2009 Hong et al. ................. TO9,224
Machesney Park, IL (US)
(73) Assignee: Schneider Electric Buildings AB,
Malmö (SE) OTHER PUBLICATIONS
(*) Notice: Subject to any disclaimer, the term of this Bill Swan, The Language of BACnet R-Objects, Properties and Ser
patent is extended or adjusted under 35 titlers from website dated May 12, 2008, 10 pages, pp.
U.S.C. 154(b) by 281 days. - IU, WWW. Alerton.com.
(Continued)
(21) Appl. No.: 12/132,723
Primary Examiner Phuoc Nguyen
(22) Filed: Jun. 4, 2008 (74) Attorney, Agent, or Firm Reinhart Boerner Van Deuren
P.C.
(65) Prior Publication Data
US 2009/0287736A1 Nov. 19, 2009 (57) ABSTRACT
Related U.S. Application Data BACnet objects and methods for efficiently monitoring the
(60) Provisional application No. 61/053,909, filed on May communication status of networks and devices in a building
16, 2008. automation and control system are presented. A pair of bus
communication status objects, including a server object and a
(51) Int. Cl. client object, provide the communication status of an MS/TP
G06F 5/73 (2006.01) network as an OCTET String transmitted only upon a change
(52) U.S. Cl. ....................... 709/224; 709/203; 709/223; of value (COV) of the communication status of a device on the
709/227 network. Individual devices may be monitored with a device
(58) Field of Classification Search ................. 709/203, communication status object, in conjunction with or apart
709/223, 224, 227 from the bus communication status objects. For MS/TP
See application file for complete search history. devices, automatic configuration and monitoring in a control
ler is provided. For other devices, a user interface is provided
(56) References Cited through a graphical tool to allow configuration to specify the
U.S. PATENT DOCUMENTS desired device and/or network for monitoring.
5,916,306 A 6, 1999 Ruiz
6,104,963 A 8, 2000 Cebasek et al. 8 Claims, 8 Drawing Sheets
1 14
124
N-118
138 40 3Ahet Dewce 2
112
BACfa avies
BACnet Dewice 4
US 7,761,563 B2
Page 2
1OO
114
124
118 104
138
140 BACnet Device 2
106
112
BACnet Device 3
108
BACnet Dewice 4
11 O
FIG. 1
U.S. Patent Jul. 20, 2010 Sheet 2 of 8 US 7,761,563 B2
124 122
SubscribeCOW
Confirmed COWNotification
FIG. 2
U.S. Patent Jul. 20, 2010 Sheet 3 of 8 US 7,761,563 B2
100'
114
138 14O
104
106
112
108
110
FIG 3
U.S. Patent Jul. 20, 2010 Sheet 4 of 8 US 7,761,563 B2
150
FIG. 4
152
FIG. 5
U.S. Patent Jul. 20, 2010 Sheet 5 of 8 US 7,761,563 B2
154
F.G. 6
156
Status id=1099)
FIG. 7
U.S. Patent Jul. 20, 2010 Sheet 6 of 8 US 7,761,563 B2
158
O Network
FIG. 8
160
FG. 9
U.S. Patent Jul. 20, 2010 Sheet 7 of 8 US 7,761,563 B2
162
FIG 10
164
Status (net=888,eth=00-01-fo-00-4a-95) x
FIG 11
U.S. Patent Jul. 20, 2010 Sheet 8 of 8 US 7,761,563 B2
166
168
Status net=31,mstp=3 X
F.G. 13
US 7,761,563 B2
1. 2
BACNET COMMUNICATION STATUS as additional inventive features, will be apparent from the
OBJECTS AND METHODS OF description of embodiments of the invention provided herein.
DETERMINING COMMUNICATION STATUS
OF BACNET DEVICES BRIEF SUMMARY OF THE INVENTION
FIELD OF THE INVENTION Embodiments of the present invention provide new and
improved systems and methods for efficiently monitoring
This invention generally relates to building automation and and/or sharing the communication status of BACnet devices
control network (BACnet) data communications protocol, and/or networks. More particularly, embodiments of the
and more particularly to proprietary BACnet objects and 10 present invention provide new and improved BACnet objects
methods for communications monitoring. and methods for efficiently monitoring and/or sharing the
communication status of BACnet devices and/or networks.
BACKGROUND OF THE INVENTION In one embodiment, the invention provides a pair of pro
prietary BACnet objects that expose and determine the com
Modem buildings and building complexes utilize complex 15 munications status of a network of BACnet MSTP devices.
building automation and control systems that typically Preferably, this information is utilized to form a BACnet
include hundreds of distributed components, controllers, sen OCTETSTRING value. Changes in communication status of
sors, etc., often from various manufacturers. Such automation any device on the MS/TP network is identified as a change of
and control systems include heating, ventilating, and air value (COV) of the OCTET STRING. Controllers which
conditioning (HVAC) control, lighting control, access con desire or need to monitor the communications status of one or
trol, and fire detection and Suppression systems, etc. more MS/TP networks utilize a client object that subscribes to
To ensure that these various systems work correctly, it is the server object for the MS/TP network(s) of interest. The
imperative that the components and controllers utilized in controller for the MS/TP network utilizes a known process to
Such systems are able to communicate with each other to monitor the communications on its network as the token is
share information and control signals. If all of the compo 25 passed from device to device. In the event a change in com
nents were sourced from a single manufacturer, Such inte munications status occurs on the MS/TP network, a BACnet
grated communication, likely from a proprietary communi server object monitoring the network notifies each subscrib
cation protocol, would be assured. Unfortunately, this is not ing client object with a COV. Notification message.
the reality in modem systems. As such, it is necessary that, at In an embodiment of the present invention, a device com
least externally of the devices themselves, a common com 30 munications status object is created for each BACnet device
munications protocol is used. For the building and automa for which the communications status is monitored. In an
tion control market, this common protocol is the Building embodiment that utilizes the client and server bus communi
Automation Control Network (BACnet) communication pro cations status objects, the device communication status
tocol. Since its development, BACnet has been adopted by the objects are populated by the client bus communications status
American National Standards Institute (ANSI) as ANSI/ 35 object. This eliminates the necessity of pinging the remote
ASHRAE Standard 135-1995 and by the International Stan BACnet devices for their status, and therefore greatly reduces
dards Organization (ISO) as ISO 16484-5 in 2003. the network bandwidth used. In embodiments wherein client
BACnet is a flexible, object oriented approach to commu and server bus communication status objects are not used,
nications protocol. It utilizes objects, properties and services remote BACnet device communication status monitoring is
to represent data and actions available in the building auto 40 still enabled by the use of the device communication status
mation system. Within the BACnet protocol, there are also objects, although pinging will be required. Automated cre
defined a number of data link/physical layers over which and ation of such device communication status objects for MS/TP
how communications pass, including ARCNET (ANSI/ATA devices, as well as interactive creation of device communica
878.1), Ethernet, BACnet/IP, Point-To-Point over RS-232, tion status objects for Ethernet, BACnet/IP and MS/TP
Master-Slave/Token-Passing (MS/TP) over RS-485, etc. 45 devices is also provided with the support of interactive user
With many of these, communications and control timing and interface Screens.
communications bandwidth can become problematic as more Other aspects, objectives and advantages of the invention
and more devices are included in the building automation and will become more apparent from the following detailed
control system. description when taken in conjunction with the accompany
As an example, many systems, e.g. in fire control systems 50 ing drawings.
governed by Underwriters Laboratory (UL) standard UL 864
Control Units and Accessories for Fire Alarm Systems, there BRIEF DESCRIPTION OF THE DRAWINGS
is a requirement for notification of the failure of a component
of the system within a certain amount of time. While BACnet The accompanying drawings incorporated in and forming
provides for a method of determining the operational com 55 a part of the specification illustrate several aspects of the
munication status of a device, requiring the periodic pinging present invention and, together with the description, serve to
of all system components at a rate to satisfy Such a require explain the principles of the invention. In the drawings:
ment uses up a Substantial amount of bandwidth available, FIG. 1 is a simplified single line BACnet topology diagram
particularly when communications occurs over an MS/TP illustrating features of an embodiment of the present inven
communications bus. This problem becomes acute as the size 60 tion;
and complexity of the system grows. FIG. 2 is a simplified communications diagram illustrating
AS Such, there is a need in the art for a system and method communications message flow between two BACnet objects
of monitoring the communication status of devices on a BAC constructed in accordance with an embodiment of the present
net network that allows prompt detection of communications invention;
failures without using excessive communications bandwidth. 65 FIG.3 is a simplified single line BACnet topology diagram
Embodiments of the invention provide such systems and illustrating features of an alternate embodiment of the present
methods. These and other advantages of the invention, as well invention;
US 7,761,563 B2
3 4
FIG. 4 illustrates one embodiment of a user interface pro Turning now specifically to FIG. 1, there is illustrated a
vided in accordance with an embodiment of the present simplified building automation control system 100 utilizing
invention for selection of network communication monitor the BACnet communications protocol. In this exemplary sys
ing: tem 100, a BACnet Controller102, such as the TAC MicroNet
FIG. 5 illustrates an embodiment of a BACnet status indi BACnet MNB-1000 Plant Controller available from the
cator corresponding to a BACnet object configured via the assignee of the instant application, provides communications
user interface of FIG. 4; Support and routing functionality between physical networks,
FIG. 6 illustrates one embodiment of a user interface pro as well as operational control and coordination of the various
vided in accordance with an embodiment of the present BACnet devices 104, 106, 108, 110 on its BACnet MS/TP
invention for selection of device communication monitoring; 10
communications bus 112. Such BACnet devices 104, 106,
FIG. 7 illustrates an embodiment of a BACnet status indi
cator corresponding to a BACnet object configured via the 108, 110 may include the TAC MicroNet BACnet MNB-300
user interface of FIG. 6; Unitary Controller, the TAC MicroNet BACnet MNB-V1
FIG. 8 illustrates one embodiment of a user interface pro Cooling Controller, the TAC MicroNet BACnet MNB-V2
vided in accordance with an embodiment of the present 15 Deluxe Controller, etc.
invention for selection of BACnet/IP network communica As illustrated, the BACnet Controller 102 also provides
tion monitoring; communications via an Ethernet TCP/IP and/or BACnet/IP
FIG. 9 illustrates an embodiment of a BACnet status indi bus 114. The system 100 may also include a PC workstation
cator corresponding to a BACnet object configured via the 116 with Enterprise Server and WorkPlace Tech Tool soft
user interface of FIG. 8: ware, also available through the assignee of the instant appli
FIG. 10 illustrates one embodiment of a user interface cation. This bus 114 may also serve as a conduit for commu
provided in accordance with an embodiment of the present nications with a remote controller 118, such as a TAC
invention for selection of Ethernet communication monitor MicroNet BACnet MNB-1000 Plant Controller, etc.
ing:
FIG. 11 illustrates an embodiment of a BACnet status 25
Within the controller 102, a network communications sta
indicator corresponding to a BACnet object configured via tus process 120 operates to monitor the token passing com
the user interface of FIG. 10; munications for the devices 104, 106, 108, 110 on its com
FIG. 12 illustrates one embodiment of a user interface munications bus 112. In this way and as recognized by those
provided in accordance with an embodiment of the present skilled in the art, the controller 102 is able to automatically
invention for selection of MS/TP communication monitor 30 determine the communications status of the devices 104,106,
ing; and 108, 110 on its network 112 without requiring any pinging of
FIG. 13 illustrates an embodiment of a BACnet status those devices 104,106, 108, 110.
indicator corresponding to a BACnet object configured via With this knowledge in the controller 102, an embodiment
the user interface of FIG. 12. of the present invention provides a pair of proprietary BACnet
While the invention will be described in connection with 35 objects, the Bus Communications Status Server object 122
certain preferred embodiments, there is no intent to limit it to resident in controller 102 and the Bus Communications Sta
those embodiments. On the contrary, the intent is to cover all tus Client object 124 resident in the controller 118, that allow
alternatives, modifications and equivalents as included within these two controllers 102, 118 to efficiently share the com
the spirit and scope of the invention as defined by the munications status of an entire BACnet MS/TP network 112
appended claims. 40
without requiring pinging of each of the devices 104, 106,
DETAILED DESCRIPTION OF THE INVENTION 108, 110 on that network 112.
The MS/TP Bus Communications Status Server Object
In the description that follows, the invention will be 122 is a proprietary BACnet object that exposes the commu
described in terms of various embodiments in exemplary 45 nications status of a network 112 of BACnet MS/TP devices
operating environments of a building automation control sys 104,106, 108, 110 as a BACnet OCTET STRING value. The
tem. However, these embodiments are presented by way of BACnet Object Identifier property of an MS/TP Bus Com
example and not by way of limitation, and the full scope the munications Status Server Object 122 corresponds to the
invention is hereby reserved. Specifically, the objects and BACnet network number of the MS/TP bus 112 represented
methods described below may find applicability in various 50 by the object 122. The following table describes the proper
operating environments and with various communications ties of an embodiment of an MS/TP Bus Communications
protocols. Status Server Object 122:
-continued
Property Datatype Access Description
Present Value OctetString, 16 read only Indica (S he communications status of the devices
bytes on the local MSTP bus. For example, a value of
&HFFFFOOOOOOOOOOOOOOOOOOOOOOOOOOOO
indicates hat 16 devices at MSTP addresses 0
through 15 are communicating normally. A value of
&HF8FFOOOOOOOOOOOOOOOOOOOOOOOOOOOO
indicates hat there is no device communicating at
MSFTP a dress 4.
Status Flags.IN ALARM BACnetStatus read only This stan ard BACnet property will is always
Flags FALS E, since the Event State property is not
Supported.
Status Flags. FAULT read only This stan ard BACnet property is always FALSE,
since he Reliability property is not supported.
Status Flags.OVERRIDDEN read only This s 8 ard BACnet property is always FALSE,
since Present Value is not writable.
Status Flags.Out Of Service read only This s 8 ard BACnet property is always FALSE
since he Out Of Service property is not supported.
The MS/TP Bus Communications Status Client Object 124 (COV), the client object 124 will receive a notification 132,
is also a proprietary BACnet object. The following table from the standard BACnet communications service Con
describes the properties of an embodiment of an MS/TP Bus firmedCOVNotification, from the server object 122 whenever
Communications Status Client Object 124: a change in value (COV) of the OCTET STRING occurs,
As illustrated in FIG. 2, when an MS/TP Bus Communi which is indicative of the change in communication status of
cations Status Client Object 124 is configured by its host 5 5 one or more of the devices on its network. The Client object
controller 118 with the BACnet network number of a desired 124 then provides the transmitted information to its host
BACnet MS/TP network 112, the Client object 124 uses controller 118, and more specifically to the controller's
standard BACnet communications services (Who-Has and device communication status objects 134,136, 138,140 illus
SubscribecOV) to automatically locate and subscribe to the 6O trated in FIG. 1.
Server object 122 representing the communications status of In addition or as an alternate to the configuration illustrated
the desired BACnet MS/TP network 112. Specifically, the in FIG. 1 wherein the client and server objects 124, 122 are
client object 124 broadcasts 126 a Who-Has request specify utilized, the physical device communication status objects
ing the network number of interest. The server object 122 for 134, 136, 138,140 may also be used in a system 100' without
that network responds 128 with an I-Have message. The 65 these other objects, such as illustrated in FIG. 3. In such a
client object 124 then issues 130 a SubscribecOV request to configuration, the device communication status objects 134,
the server object 122. Once subscribed to the change of value 136, 138,140 provide the field engineer with a quick means of
US 7,761,563 B2
7 8
setting up communications status monitoring in a building MAC address configuration properties set sequentially from 0
control system, e.g. in an HVAC control system, a Smoke to 127. The BACnet network number inputs of all 129 objects
control system, etc. will be connected to a single input of the custom object via a
These physical device communication status objects 134, buffer object. The custom object may also contain appropriate
136, 138, 140 can be used in two ways: to track the commu 5 logic objects.
nication status of a specific device 104, 106, 108, 110 in a As an example of a procedure that can be used by field
BACnet network 112; or to track the communication status of personnel to set up device communication monitoring in an
a group of devices by “background ORing the outputs of a exemplary smoke control application using the TAC MNB
group of physical device communication status objects 134, 1000 Plant Controller, field personnel would first add an
136, 138,140 located in the host controller 118. This mode is 10
instance of the above custom object to the communications
accomplished by setting the Monitored Device Address prop monitoring MNB-1000 application for each MS/TP network
erty of the object to all 0xFFs as will be discussed below. to be monitored. Then they would set the network number
Monitoring a single BACnet device 104 on the BACnet input of each custom object to the BACnet network number of
network 112 is accomplished by explicitly specifying either the target MS/TP network. The field engineer would then
the BACnet network number and MAC or the device object 15
open each custom object and delete the MS/TP Device Com
instance number of the device to be monitored. The BACnet
network number is either an object input or an object con munication Status Objects corresponding to devices that are
figuration depending on the embodiment of the physical not relevant to smoke control. They would also delete the
MS/TP Device Communication Status Object corresponding
device communication status object. The MAC address or to the host device. Custom objects for communications moni
device object instance is specified as object configuration(s). toring of devices on Ethernet or BACnet/IP networks would
To configure an object to monitor a group of devices, the have to be set up manually using Universal Device Commu
MAC address configuration is set to 0xFFs. A Physical nication Status Objects to be discussed more fully below with
Device Communication Status object with its MAC configu regard to FIGS. 4-13. OR the outputs of all the communica
ration set to 0xFFs will scan the host Device database for
tions monitoring custom objects and Universal Device Com
other devices with the same network number. If any devices 25
munication Status Objects would provide a system-wide
with the same network number are offline, the output of the communications status value. The field engineer would use a
scanning Physical Device Communication Status object will commissioning tool to set the BACnet network numbers of
be set to indicate offline status.
the plant controllers to correspond to the network numbers set
In one embodiment of the present invention, there are two in the preceding steps. The field engineer would then set the
types of physical device communication status objects. An ' address DIP switches of the MS/TP devices to the values
MS/TP Device Communications Status Object will have a
two-byte MAC address configuration property and be capable remaining from the third step described above. Finally, the
field engineer would use the commissioning tools existing
of monitoring MS/TP master devices only. A Universal mechanism to set the device instance numbers of all devices.
Device Communications Status Object will have eight bytes Instance numbers are not relevant to the Physical Device
for MAC address configuration, so it will be able to monitor Communication Status Object approach.
BACnet devices on various BACnet network types (excluding With the above description in hand, details of the MS/TP
MS/TP slave devices). These control objects will be exposed Device Communications
to the BACnet network as BACnet Background Binary Value indication of whether orStatus Object, which provides an
not the communication channel
(BV) objects. The BV object’s Present Value will represent
the Comm. Status output of the associated control object. The 40 between the object’s host device and some remote MS/TP
BACnet network number input will be exposed as a condi device is operational, will now be discussed. As indicated
tionally writable proprietary property. The MAC address con above, this object can also be configured to indicate the com
figuration properties will be exposed as writable proprietary munication status of a group of devices on a given MS/TP
properties. network. In one embodiment, the control object type number
This approach relies on a re-usable MS/TP network tem 45 is 89. The String Table for one embodiment is as follows:
plate custom object in WPT. This custom object would be
used for monitoring a group of devices on a given physical
BACnet MS/TP network. The network number is limited to BACnet
the range of 0-16383. Network 0 is used to monitor the local String Object Property Description
MS/TP network. The template custom object will contain 129 50
Object Name none WPT object name, ignored
MS/TP Device Communication Status Objects. One of the by the controller
MS/TP Device Communication Status Objects will have its
MAC address configuration property set to 0xFF and its out
put connected to a custom object output. The other 128 Physi The Configuration Properties table for this embodiment is
cal Device Communication Status Objects will have their as follows:
Control BACnet
Object Object
Property Property Class Description
Enable Ole Digital This configuration property controls whether or not a
BACnet background BACnet object is created. A background
BACnet object allows other properties of the
communications status object to be accessed via BACnet
services.
O - BACnet object is not created
1 - BACnet object is created
The default value is 1.
Note: The Status output of the communications status
object indicates the communications status of the
monitored device regardless of whether or not a
background BACnet object is created.
Monitored proprietary Unsigned This configuration specifies the BACnet Network
Device (830), Word Number of the device(s) to be monitored by this object.
BACnet Unsigned, Valid values are whole numbers in the range of 0 to
Network writable 65534. Zero is used to monitor devices on the locally
Number connected network of the type specified in the Monitored
Device Address Type property. An invalid value for this
input (65535) causes the Status output of the control
object to indicate Offline. This property is not used by
the controller when Monitored Device Address Type is 4.
Monitored proprietary Analog Enumeration values as follows:
Device (831), 1 - MSTP
Address Enumerated, 2 - Ethernet
Type writable 3 - BACnet IP
4 - Device ID
5 - Scan Mode
After this changing this property via BACnet to a value
in the range 1 to 4, a new valid Monitored Device
Address must also be written. The value of this property
cannot be changed to or from 5 via BACnet.
When Monitored Device Address Type is 4 (Device ID
mode), the control object ignores the Monitored Device
BACnet Network Number and monitors the specified
US 7,761,563 B2
15 16
-continued
Control BACnet
Object Object
Property Property Class Description
device only. Note: Device Communication Status
Objects in Device ID mode cannot be scanned by another
Device Communication Status Object in Scan Mode.
When Monitored Device Address Type is 5 (Scan Mode),
the control object ignores the Monitored Device Address
and scans the host controller's application database for
other Device Communication Status Objects with Device
Address Type in the range 1 to 3 and with the same
Monitored Device BACnet Network Number value as
this object. If any of the objects found indicate an offline
status, the output of this object will be set to indicate
offline status.
Monitored proprietary 8 octets This configuration property specifies the MAC address of
Device (832), the device to be monitored by this object. This property
Address OctetString, is exposed via BACnet as an OctetString, with length and
writable valid values as a function of the Monitored Device
Address Type property as follows.
Address Type Length Valid Values
1 - MSFTP 1 OxOO to 0x7F
2 - Ethernet 6 OxOOOOOOOOOOOO to
0xFFFFFFFFFFFF
3 - BACnet IP 6 OxOOOOOOOOOOOO to
0xFFFFFFFFFFFF
4 - Device ID 4 OxOOOOOOOO to OxOO3FFFFE
5 - Scan Mode don't care don't care
An invalid value for this property causes the Status
output of the control object to indicate Offline.
The BACnet OctetString is left justified within the 8
bytes allocated in the application database for this
property. Two bytes are reserved following the
maximum length OctetString to accommodate future
MAC address types.
35
In this embodiment there are no control object inputs. The
control object outputs table is as follows:
BACnet Object
Output Property Type Class Description
Status Present Value, Digital This output tracks the communication
BACnetBinaryPV status of the device(s) this object is
enumeration, monitoring. Online status is indicated by
read only Present Value and Status output values of
Zero. Offline status is indicated by a
Present Value of 1 and a Status output
value of 100. If a communications status
object is configured to monitor the host device,
the Status output indicates Offline.
The Device Status object is configured differently than the The way in which the BACnet object’s name is assigned to
other objects. Normally, when a user double-clicks an object, the Device Status object is different from the MSTP Status
the Device Properties dialog box appears, allowing the user to 45 object discussed previously. The system uses the name that is
configure the various properties. With the Device Status defined within WPTech for the object, as the BACnet object
object, however, double-clicking its shape opens the Moni name. This name can be uniquely identified by right-clicking
tored Device for DevStat dialog box. This dialog serves as the the object and selecting Customize from the shortcut menu. It
interface by which the user configures this object. This inter is recommended that the name utilize some sort of naming
face has been designed to facilitate object configuration, and 50 convention that will make it intuitive when learned by other
the configurable items in the dialog box may not necessarily BACnet devices. For instance, when the object is used to
be recognizable as the properties. For reference, the affected monitor the status of a complete MS/TP network, it could be
properties are: Monitored Device BACnet Network Number; named “MSTPNet 11864, where “11864' is the network
Monitored Device Address Type: Monitored Device Address. number. In a case where an object is setup for monitoring a
Monitoring a single BACnet device on the MS/TP, Ether 55 specific IP device by instance number, an example might be
net, or BACnet/IP network is accomplished by explicitly “DevIP 11000, where “11000' is the instance number.
specifying, as object configurations, one or more of the fol As may now be apparent from the foregoing description,
lowing items: BACnet Network Number, MS/TP Address the universal device objects may be user configured, e.g.
(DIP Switch), Ethernet MAC Address, and/or Device through the use of the WorkPlace TechTool available from the
Instance Number. To configure the Device Status object to 60 assignee of the instant application. When a Device Status
monitor a group of MS/TP devices on the same network, object is placed on a drawing using this tool, it appears in its
configure it for Network and define the network number. default mode. Right-clicking the object and choosing the
Next, create an MSTP Status device for each MS/TP control Customize option from the shortcut menu will display the
ler on that network. The Device Status object, when config General and Properties tabs. The General tab provides the
ured in this manner, will locate all MSTP Status objects in the 65 user with the opportunity to change the name associated with
same Plant controller, with the same network number, and the object. This is the name that will also be used for the
logically “OR” them for its output status. BACnet object that is created, if that feature is enabled. The
US 7,761,563 B2
19 20
Properties tab is used to enable or disable the display of cated herein or clearly contradicted by context. The terms
selected properties, below the object. To access the dialog box “comprising.” “having.” “including.” and “containing” are to
used to configure the object, one must double-click the object. be construed as open-ended terms (i.e., meaning “including,
By default, the Monitored Device for DevStatus4 dialog box but not limited to.”) unless otherwise noted. Recitation of
150 will be displayed as illustrated in FIG. 4. ranges of values herein are merely intended to serve as a
When one clicks Network, the information shown on the shorthand method of referring individually to each separate
right side of the dialog box 150 will be configured for defining value falling within the range, unless otherwise indicated
the Network Number. This configuration is used to monitor herein, and each separate value is incorporated into the speci
the status of one or more Device Status or MSTP Status fication as if it were individually recited herein. All methods
objects that have the same network number as the one that is 10 described herein can be performed in any suitable order
set in this example. When compiled and downloaded to the unless otherwise indicated herein or otherwise clearly con
controller, the Tool scans its database for all Device Status tradicted by context. The use of any and all examples, or
and MSTP Status objects that have the same network number, exemplary language (e.g., “Such as”) provided herein, is
and logically “OR’s” them together to determine the example intended merely to better illuminate the invention and does
objects output value. After the object has been configured in 15 not pose a limitation on the scope of the invention unless
this manner, its shape’s appearance 152 will change to reflect otherwise claimed. No language in the specification should be
its network number as illustrated in FIG. 5. construed as indicating any non-claimed element as essential
When one clicks Device ID, the information shown on the to the practice of the invention.
right side of the dialog box 154 will be configured for defining Preferred embodiments of this invention are described
the Device Instance Number as illustrated in FIG. 6. This herein, including the best mode known to the inventors for
configuration is used to monitor the status of one specific carrying out the invention. Variations of those preferred
BACnet controller. After the object has been configured in embodiments may become apparent to those of ordinary skill
this manner, its shape’s appearance 156 will change to reflect in the art upon reading the foregoing description. The inven
its instance number as illustrated in FIG. 7. tors expect skilled artisans to employ such variations as
When one clicks BACnet/IP, the information shown on the 25 appropriate, and the inventors intend for the invention to be
right side of the dialog box 158 will contain three fields: practiced otherwise than as specifically described herein.
Network Number, IP Address, and IP Port as illustrated in Accordingly, this invention includes all modifications and
FIG.8. These need to be defined so that they correctly identify equivalents of the Subject matter recited in the claims
the BACnet/IP device that will be monitored. This configu appended hereto as permitted by applicable law. Moreover,
ration is used to monitor the status of one specific BACnet/IP 30 any combination of the above-described elements in all pos
controller. After the object has been configured in this man sible variations thereof is encompassed by the invention
ner, its shape’s appearance 160 will change to reflect its unless otherwise indicated herein or otherwise clearly con
configuration as illustrated in FIG. 9. tradicted by context.
When one clicks Ethernet, the information shown on the
right side of the dialog box 162 will contain two fields: Net 35 What is claimed is:
work Number and Ethernet MAC Address as illustrated in 1. A method of determining a communication status of at
FIG. 10. These need to be defined so that they properly least one BACnet device, comprising the steps of:
identify the BACnet/Ethernet device that will be monitored. monitoring communication of the at least one BACnet
This configuration is used to monitor the status of one specific device on a local network bus;
BACnet/Ethernet controller. After the object has been config 40
generating by a bus communication status server object an
ured in this manner, its shape’s appearance 164 will change to octet string containing information reflecting the com
reflect its configuration as illustrated in FIG. 11. munication status of the at least one BACnet device;
When one clicks MSFTP, the information shown on the transmitting the octet string upon a change of value (COV)
right side of the dialog box 166 will contain two fields: Net of the octet string indicating a change in the communi
work Number and MS/TP Address DIPSwitch as illustrated 45
cation status of at least one of the at least one BACnet
in FIG. 12. These need to be defined so that they properly device;
identify the BACnet/MSTP device that will be monitored. receiving by a bus communication status client object the
This configuration is used to monitor the status of one specific octet string;
BACnet/MSTP controller. After the object has been config deciphering the octet string to determine the communica
ured in this manner, its shape’s appearance 168 will change to 50
reflect its configuration as illustrated in FIG. 13. tion status of each of the at least one BACnet devices;
In all the cases discussed above (“Network Number.” providing the communication status of each of the at least
“Device Instance Number.” “BACnet/IP “Ethernet, and one BACnet devices to at least one corresponding device
“MS/TP), the Status output of the Device Status object will communication status object; transmitting by the bus
reflect the current communication status of the controller or 55 communication status client object a Who-Has service
network that is defined, where 0 (zero) indicates Online and request identifying the local network bus;
100 indicates Offline. A value of NA indicates a configuration receiving by the bus communication status client object an
problem or conflict. I-Have service response identifying the bus communi
All references, including publications, patent applications, cation status server object for the local network bus; and
and patents cited herein are hereby incorporated by reference 60 transmitting by the bus communication status client object
to the same extent as if each reference were individually and a Subscribe(COV service request to the bus communica
specifically indicated to be incorporated by reference and tion status server object.
were set forth in its entirety herein. 2. The method of claim 1, wherein the local network bus is
The use of the terms “a” and “an and “the' and similar a BACnet MS/TP communications bus, and wherein the step
referents in the context of describing the invention (especially 65 of monitoring communications comprises the step of moni
in the context of the following claims) is to be construed to toring token passing on the BACnet MS/TP communications
cover both the singular and the plural, unless otherwise indi bus.
US 7,761,563 B2
21 22
3. The method of claim 1, further comprising the steps of cation status server object operative to broadcast infor
creating the device communication status object for each of mation regarding communication status of all of the
the at least one BACnet device. BACnet devices on the subnet as monitored by the com
4. A non-transistory computer readable medium having munication status process when a change of value of the
instructions for causing a computer to execute a method com communication status occurs;
prising the steps of: a remotely located BACnet controller in operative commu
monitoring communication of the at least one BACnet nication with the subnet controller, the BACnet control
device on a local network bus; ler exposing a bus communication status client object,
generating by a bus communication status server object an and wherein the bus communication status client object
octet string containing information reflecting the com 10 Subscribes to change of value broadcasts of the bus com
munication status of the at least one BACnet device; munication status server object to determine the com
transmitting the octet string upon a change of value (COV) munication status of all of the BACnet devices on the
of the octet string indicating a change in the communi Subnet; and wherein the bus communication status client
cation status of at least one of the at least one BACnet object locates the bus communication status server
device; 15 object by broadcasting a Who-Has request that specifies
receiving by a bus communication status client object the a subnet number of interest, and wherein the bus com
octet string; munication status server object broadcasts an I-Have
deciphering the octet string to determine the communica message in response to the Who-Has request when the
tion status of each of the at least one BACnet devices; subnet number matches the subnet controller's subnet
and number.
providing the communication status of each of the at least 6. The system of claim 5, wherein the BACnet controller
one BACnet devices to at least one corresponding device further exposes at least one device communication status
communication status object; transmitting by the bus object, the at least one device communication status object
communication status client object a Who-Has service corresponding to the at least one BACnet device on the sub
request identifying the local network bus; 25 net, and wherein the device communication status object
receiving by the bus communication status client object an outputs the communication status of its corresponding BAC
I-Have service response identifying the bus communi net device as determined by the bus communication status
cation status server object for the local network bus; and client object from the information broadcast from the bus
transmitting by the bus communication status client object communication server object.
a Subscribe(COV service request to the bus communica 30 7. The system of claim 5, wherein the bus communication
tion status server object. status client object transmits a Subscribe(COV message to the
5. A BACnet building automation and control system, com bus communication status server object, and thereafter
prising: wherein the bus communication status server object transmits
a subnet controller operatively coupled via a BACnet a ConfirmedCOVNotification message to the bus communi
MS/TP communication bus to at least one BACnet
35 cation status client object when any change in communica
tion status on the Subnet.
device to form a subnet, the subnet controller including 8. The system of claim 5, wherein the information is in the
a BACnet communication status process for monitoring form of an Octet String.
the communication status of the at least one BACnet
device, the Subnet controller exposing a bus communi k k k k k