US20150163095A1 - Approach for automatically setting the device instance of a bacnet device - Google Patents
Approach for automatically setting the device instance of a bacnet device Download PDFInfo
- Publication number
- US20150163095A1 US20150163095A1 US14/629,377 US201514629377A US2015163095A1 US 20150163095 A1 US20150163095 A1 US 20150163095A1 US 201514629377 A US201514629377 A US 201514629377A US 2015163095 A1 US2015163095 A1 US 2015163095A1
- Authority
- US
- United States
- Prior art keywords
- controller
- device instance
- network
- global controller
- setting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5038—Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
Definitions
- the invention pertains to network devices and particularly to BACnet devices.
- the invention is an approach for automatically setting the device instance of a device such as a unitary controller without reliance on a router and/or global controller or something such as a special extension to an associated router and/or global controller.
- the approach may be implementable entirely in the unitary controller.
- FIG. 1 is a diagram of a layout for setting an instance of a BACnet device.
- BACnet building automation and control network
- BACnet building automation and control network
- ANSI American National Standards Institute
- BACnet unitary controllers (unitaries) on MS/TP (master-slave/token-passing) networks
- BACnet router from an Ethernet to that MS/TP network.
- the Ethernet and the MS/TP network may be regarded as BACnet LANs (local-area networks).
- the router device instance may be used as a basis for the other devices on that MS/TP network. For example, if the router has a device instance of 10000, the unitary controllers may automatically determine their device instances to be 10001, 10002, 10003, and so on. This computation may be based on an MAC (media access control) address of the MS/TP device, which is unique on that MS/TP network.
- MAC media access control
- the first version is suitable for system designs where BACnet routers may have just one MS/TP network.
- the second version accounts for routers that may have multiple MS/TP networks.
- the present approach can be used entirely without any special BACnet extensions to the router/global controller (global) itself.
- the global controller may generally include a router.
- the present approach may be implemented entirely in the unitary controller. What is needed is for the unitary controller to implement an algorithm indicated herein.
- a goal of the first version may be that unitary controllers reconfigure their device instances to be equal to (global controller device instance)+(unitary MAC address).
- This scheme differs from other approaches in that virtually all of the logic for doing the auto-addressing is in the unitary rather than in the global controller and/or router.
- a goal of the second version is that unitary controllers reconfigure their device instances to be equal to (global controller device instance)+(global controller MAC address ⁇ 120)*100+(unitary MAC address).
- the “100” may be regarded as spacing among the global controllers so that there is “room” for unitary controller device instances.
- FIG. 1 is a diagram of the present approach for setting an instance of a BACnet device.
- Router or controller 11 may provide an “I Am” message which indicates “I am 1000” on a line 12 .
- LAN or line 13 may be an MS/TP network.
- Other unitary controllers may be connected to line 13 .
- Other new device instances, which follow in the same manner, may equal 1003, 1004 . . . 1000+n, where n is a total number of unitary controllers on line or network 13 .
- the network needs to be configured as in the following.
- global controllers that are to support auto-addressing should have, for example, an MS/TP MAC address in the range 120-127.
- the unitaries may look for an “I-Am” message from MAC address 120-127 to determine what their own device instances should be. Not having any device with an MS/TP MAC address in the range 120-127 effectively disables the feature for that MS/TP network.
- unitary controllers that support this feature will not communicate if they have a MAC address in the range 120-127. Having a MAC address in the range 120-127 effectively disables the device's MS/TP. This should prevent an auto-addressing device from scrambling the others' device instances.
- MAC addresses for the unitaries may be limited to the range 1 . . . 119 and the MAC addresses for the globals may be limited to the range 120 . . . 127.
- the MAC address 0 cannot be used for anything because it results in no offset from the global. Other numbers or ranges of numbers may be used in MAC addresses for the unitaries and the globals.
- the globals must be addressed such that there is “room” for the unitary device instances. This means that the globals could be addressed 100, 200, 300, and so on, and support up to 99 unitaries. Technically, the globals could be spaced at 200, 400, 600, and so on, and support up to 127 unitaries. In many practical situations, the spacing may range from 50 to 300. Since it is recommended not to go over 80 unitaries per MS/TP, spacing globals in intervals of 100 should be fine.
- device 100 may be the router to unitaries 100001, 100002, 100003, and so on.
- device 100 may be the router to unitaries 100001, 100002, 100003, and so on.
- Global controllers with multiple MS/TP networks need to be configured such that a global controller has a different MAC address on each of the MS/TP networks. This separates the ranges of the devices.
- Auto addressing may occur when a unitary listens to an “I-Am” message coming from a global controller.
- the global controller emits a device instance that is different from what the unitary has stored in flash, the unitary may update its own copy and re-address itself.
- auto-addressing may be forced by doing anything that causes the global to emit an “I-Am” message.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
An approach for automatically setting the device instance of a device such as a unitary controller without reliance on a router and/or global controller, or something like a special extension to an associated router and/or global controller. The approach may be implementable entirely by logic in the unitary controller.
Description
- This application is a continuation of U.S. patent application Ser. No. 12/435,993, filed May 5, 2009, and entitled “AN APPROACH FOR AUTOMATICALLY SETTING THE DEVICE INSTANCE OF A BACNET DEVICE”.
- The invention pertains to network devices and particularly to BACnet devices.
- The invention is an approach for automatically setting the device instance of a device such as a unitary controller without reliance on a router and/or global controller or something such as a special extension to an associated router and/or global controller. The approach may be implementable entirely in the unitary controller.
-
FIG. 1 is a diagram of a layout for setting an instance of a BACnet device. - It may take an installer some time to manually set the device instance on a BACnet (building automation and control network) device. In some cases, a special tool may be required to do the device instance. The present approach indicates how the device can automatically choose a reasonable device instance. BACnet is a non-proprietary open protocol communication protocol and system developed by the American Society of Heating Refrigeration Air-Conditioning Engineers (ASHRAE) and adopted by the American National Standards Institute (ANSI) as an ANSI/ASHRAE Standard 135-1995.
- For BACnet unitary controllers (unitaries) on MS/TP (master-slave/token-passing) networks, there is often a BACnet router from an Ethernet to that MS/TP network. The Ethernet and the MS/TP network may be regarded as BACnet LANs (local-area networks). The router device instance may be used as a basis for the other devices on that MS/TP network. For example, if the router has a device instance of 10000, the unitary controllers may automatically determine their device instances to be 10001, 10002, 10003, and so on. This computation may be based on an MAC (media access control) address of the MS/TP device, which is unique on that MS/TP network.
- Two versions of the present approach are noted. The first version is suitable for system designs where BACnet routers may have just one MS/TP network. The second version accounts for routers that may have multiple MS/TP networks.
- A benefit of the present approach is that it can be used entirely without any special BACnet extensions to the router/global controller (global) itself. The global controller may generally include a router. The present approach may be implemented entirely in the unitary controller. What is needed is for the unitary controller to implement an algorithm indicated herein.
- As noted, the present approach is for automatically addressing unitaries. A goal of the first version may be that unitary controllers reconfigure their device instances to be equal to (global controller device instance)+(unitary MAC address). This scheme differs from other approaches in that virtually all of the logic for doing the auto-addressing is in the unitary rather than in the global controller and/or router.
- A goal of the second version is that unitary controllers reconfigure their device instances to be equal to (global controller device instance)+(global controller MAC address−120)*100+(unitary MAC address). The “100” may be regarded as spacing among the global controllers so that there is “room” for unitary controller device instances.
-
FIG. 1 is a diagram of the present approach for setting an instance of a BACnet device. A BACnet router and/orglobal controller 11 may have a device instance, DG=1000. Router orcontroller 11 may provide an “I Am” message which indicates “I am 1000” on aline 12. Router orcontroller 11 may provide on a line orLAN 13 an indication “MAC MG=120”. LAN orline 13 may be an MS/TP network. Aunitary controller 14, which is connected toline 13, may have “MAC M1=1”, and aunitary controller 15, which also is connected toline 13, may have “MAC M2=2”. Other unitary controllers may be connected toline 13. A new device instance forunitary controller 14 may equal “DG+(MG−120)*100+M1=1001”. The new device instance forunitary controller 15 may equal “DG+(MG−120)*100+M2=1002”. Other new device instances, which follow in the same manner, may equal 1003, 1004 . . . 1000+n, where n is a total number of unitary controllers on line ornetwork 13. - The network needs to be configured as in the following. First, global controllers that are to support auto-addressing should have, for example, an MS/TP MAC address in the range 120-127. The unitaries may look for an “I-Am” message from MAC address 120-127 to determine what their own device instances should be. Not having any device with an MS/TP MAC address in the range 120-127 effectively disables the feature for that MS/TP network.
- Second, unitary controllers that support this feature will not communicate if they have a MAC address in the range 120-127. Having a MAC address in the range 120-127 effectively disables the device's MS/TP. This should prevent an auto-addressing device from scrambling the others' device instances. In either case, MAC addresses for the unitaries may be limited to the
range 1 . . . 119 and the MAC addresses for the globals may be limited to therange 120 . . . 127. The MAC address 0 cannot be used for anything because it results in no offset from the global. Other numbers or ranges of numbers may be used in MAC addresses for the unitaries and the globals. - Third, global controllers must be addressed such that there is “room” for the unitary device instances. This means that the globals could be addressed 100, 200, 300, and so on, and support up to 99 unitaries. Technically, the globals could be spaced at 200, 400, 600, and so on, and support up to 127 unitaries. In many practical situations, the spacing may range from 50 to 300. Since it is recommended not to go over 80 unitaries per MS/TP, spacing globals in intervals of 100 should be fine.
- Some engineers may prefer to prefix the unitary device instance with the global device instance. For example, device 100 may be the router to unitaries 100001, 100002, 100003, and so on. One can get a very similar result by addressing globals with instances 100000, 200000, and so on. The only difference here is that the globals have large numbers rather than the smaller numbers in the 100's.
- Global controllers with multiple MS/TP networks need to be configured such that a global controller has a different MAC address on each of the MS/TP networks. This separates the ranges of the devices.
- The approach may work as noted in the following. Auto addressing may occur when a unitary listens to an “I-Am” message coming from a global controller. When the global controller emits a device instance that is different from what the unitary has stored in flash, the unitary may update its own copy and re-address itself. In systems with such devices, auto-addressing may be forced by doing anything that causes the global to emit an “I-Am” message.
- In the present specification, some of the matter may be of a hypothetical or prophetic nature although stated in another manner or tense.
- Although the invention has been described with respect to at least one illustrative example, many variations and modifications will become apparent to those skilled in the art upon reading the present specification. It is therefore the intention that the appended claims be interpreted as broadly as possible in view of the prior art to include all such variations and modifications.
Claims (20)
1. A method for setting a device instance setting of a unitary controller, comprising:
receiving via a network port of a unitary controller a global controller identifier;
setting the device instance setting of the unitary controller to a device instance that is based, at least in part, on the received global controller identifier; and
using the device instance setting when subsequently communicating on a building control network via the network port of the unitary controller.
2. The method of claim 1 , wherein the unitary controller has a default device instance, and wherein the setting step sets the device instance setting of the unitary controller to a device instance that is based, at least in part, on the received global controller identifier and the default device instance.
3. The method of claim 2 , wherein the default device instance comprises a MAC address.
4. The method of claim 2 , further comprising:
receiving via the network port of the unitary controller a global controller MAC address; and
wherein the device instance is set based, at least in part, on the received global controller identifier, the default device instance, and the received global controller MAC address.
5. The method of claim 1 , wherein the device instance setting is stored in a flash memory of the unitary controller, and the setting step updates the device instance setting in the flash memory.
6. The method of claim 1 , further comprising:
receiving via the network port of the unitary controller a global controller MAC address; and
wherein the device instance is set based, at least in part, on the received global controller identifier and the received global controller MAC address.
7. The method of claim 1 , wherein the global controller identifier is provided by a global controller via the building control network.
8. The method of claim 1 , wherein the network port of a unitary controller communicates using a BACnet master-slave/token-passing protocol.
9. The method of claim 1 , wherein the global controller identifier is provided by a router via the building control network.
10. A control unit for use in a building automation system, comprising:
a network port for communicating on a building control network;
a non-volatile memory for storing a device instance setting, wherein the device instance setting is used as a network address for the control unit when communicating on the building control network;
a controller coupled to the network port and non-volatile memory, the controller configured to:
receive via the network port a global controller identifier;
set the device instance setting in the non-volatile memory to a device instance that is based, at least in part, on the received global controller identifier; and
use the device instance setting when subsequently communicating on the building control network via the network port.
11. The control unit of claim 10 , wherein the control unit has a default device instance, and wherein the controller of the control unit is configured to set the device instance setting in the non-volatile memory to a device instance that is based, at least in part, on the received global controller identifier and the default device instance.
12. The control unit of claim 11 , wherein the default device instance comprises a MAC address.
13. The control unit of claim 11 , wherein the controller is further configured to:
receive via the network port a global controller MAC address; and
set the device instance based, at least in part, on the received global controller identifier, the default device instance, and the received global controller MAC address.
14. The control unit of claim 10 , wherein the controller is further configured to:
receive via the network port a global controller MAC address; and
set the device instance based, at least in part, on the received global controller identifier and the received global controller MAC address.
15. The control unit of claim 10 , wherein the global controller identifier is provided by a global controller via the building control network.
16. The control unit of claim 10 , wherein the network port is configured to communicate using a BACnet master-slave/token-passing protocol.
17. The control unit of claim 10 , wherein the global controller identifier is provided by a router via the building control network.
18. A control unit for use in a building automation system, comprising:
a network port for communicating on a building control network; and
a controller coupled to the network port, the controller configured to receive a seed value via the network port and to self-generate a unique device instance setting that is based on the seed value, wherein the unique device instance setting is used as a network address for the control unit when subsequently communicating on the building control network.
19. The control unit of claim 18 , wherein the seed value comprises a global controller identifier that is provided by a global controller on the building control network.
20. The control unit of claim 18 , wherein the controller is configured to self-generate the unique device instance setting based, at least in part, on the seed value and a locally stored default device instance.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/629,377 US20150163095A1 (en) | 2009-05-05 | 2015-02-23 | Approach for automatically setting the device instance of a bacnet device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/435,993 US8965994B2 (en) | 2009-05-05 | 2009-05-05 | Approach for automatically setting the device instance of a BACnet device |
US14/629,377 US20150163095A1 (en) | 2009-05-05 | 2015-02-23 | Approach for automatically setting the device instance of a bacnet device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/435,993 Continuation US8965994B2 (en) | 2009-05-05 | 2009-05-05 | Approach for automatically setting the device instance of a BACnet device |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150163095A1 true US20150163095A1 (en) | 2015-06-11 |
Family
ID=43062847
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/435,993 Active 2032-08-12 US8965994B2 (en) | 2009-05-05 | 2009-05-05 | Approach for automatically setting the device instance of a BACnet device |
US14/629,377 Abandoned US20150163095A1 (en) | 2009-05-05 | 2015-02-23 | Approach for automatically setting the device instance of a bacnet device |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/435,993 Active 2032-08-12 US8965994B2 (en) | 2009-05-05 | 2009-05-05 | Approach for automatically setting the device instance of a BACnet device |
Country Status (1)
Country | Link |
---|---|
US (2) | US8965994B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9100397B2 (en) * | 2012-07-23 | 2015-08-04 | Honeywell International Inc. | BACnet MS/TP automatic MAC addressing |
US9568204B2 (en) | 2013-01-31 | 2017-02-14 | Johnson Controls Technology Company | Systems and methods for rapid disturbance detection and response |
US20150039752A1 (en) * | 2013-07-30 | 2015-02-05 | Edward Hague | Advanced BACNet router |
US9581985B2 (en) | 2014-02-21 | 2017-02-28 | Johnson Controls Technology Company | Systems and methods for auto-commissioning and self-diagnostics |
US9835347B2 (en) | 2014-12-08 | 2017-12-05 | Johnson Controls Technology Company | State-based control in an air handling unit |
US10728053B2 (en) | 2017-03-21 | 2020-07-28 | ODIN Building Automation Systems, LLC | System and method for remote monitoring and controlling of building automation devices |
US11359950B2 (en) | 2019-12-10 | 2022-06-14 | Johnson Controls Tyco IP Holdings LLP | Reduced length valve assembly with ultrasonic flow sensor |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060002394A1 (en) * | 2004-06-30 | 2006-01-05 | Shinichi Kuranari | Route computing system |
US20090271001A1 (en) * | 2008-04-28 | 2009-10-29 | Kmc Controls, Inc. | BACnet Protocol MS/TP Automatic MAC Addressing |
US20090287736A1 (en) * | 2008-05-16 | 2009-11-19 | Tac, Llc | BACnet Communication Status Objects and Methods of Determining Communication Status of BACnet Devices |
US20100040055A1 (en) * | 2008-08-12 | 2010-02-18 | Cisco Technology, Inc. | System for binding a device to a gateway to regulate service theft through cloning |
US20100142535A1 (en) * | 2008-12-09 | 2010-06-10 | Tac Ab | Building Control System |
US7801150B1 (en) * | 2006-02-14 | 2010-09-21 | Juniper Networks, Inc. | Multiple media access control (MAC) addresses |
-
2009
- 2009-05-05 US US12/435,993 patent/US8965994B2/en active Active
-
2015
- 2015-02-23 US US14/629,377 patent/US20150163095A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060002394A1 (en) * | 2004-06-30 | 2006-01-05 | Shinichi Kuranari | Route computing system |
US7801150B1 (en) * | 2006-02-14 | 2010-09-21 | Juniper Networks, Inc. | Multiple media access control (MAC) addresses |
US20090271001A1 (en) * | 2008-04-28 | 2009-10-29 | Kmc Controls, Inc. | BACnet Protocol MS/TP Automatic MAC Addressing |
US20090287736A1 (en) * | 2008-05-16 | 2009-11-19 | Tac, Llc | BACnet Communication Status Objects and Methods of Determining Communication Status of BACnet Devices |
US20100040055A1 (en) * | 2008-08-12 | 2010-02-18 | Cisco Technology, Inc. | System for binding a device to a gateway to regulate service theft through cloning |
US20100142535A1 (en) * | 2008-12-09 | 2010-06-10 | Tac Ab | Building Control System |
Also Published As
Publication number | Publication date |
---|---|
US8965994B2 (en) | 2015-02-24 |
US20100286799A1 (en) | 2010-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150163095A1 (en) | Approach for automatically setting the device instance of a bacnet device | |
US10743390B2 (en) | Out-of-the-box commissioning of a control system | |
CN101663878B (en) | Extensions to ipv6 neighbor discovery protocol for automated prefix delegation | |
CN100534101C (en) | Method and device for allocation of network terminal device addresses in a profinet-io network | |
US20100067374A1 (en) | Reducing Flooding in a Bridged Network | |
US20130275566A1 (en) | Method for Configuring One or More Devices in an Ethernet-Based Communication Network | |
US20130173868A1 (en) | Generation of Activation List for Memory Translation and Memory Access Protection in Industrial Ethernet Standard | |
CN107249048B (en) | Air conditioning system and address allocation method and device thereof | |
EP2092689A1 (en) | Network device location and configuration | |
JP2006524014A (en) | Method and apparatus for configuring a router port | |
EP3245763B1 (en) | Adaptive recovery from node failures in a network system | |
JP2009186144A (en) | Air conditioning system and address setting method | |
US20150358278A1 (en) | Allocation of Network Addresses for Network Subscribers | |
US10313201B2 (en) | Modular control device of an industrial automation system, and method for configuring the modular control device | |
WO2015127643A1 (en) | Method and communication node for learning mac address in a layer-2 communication network | |
CN108873827A (en) | Production line computer system and its network setting method | |
KR20130037116A (en) | Air conditioner and communication method of the same | |
CN108810881B (en) | Network distribution method, equipment and system | |
US20060079999A1 (en) | Building management with remote configuration | |
EP2979434B1 (en) | Method and system for assigning a location-based address to a network-node | |
US10594551B2 (en) | Modular industrial automation device and method for configuring a modular industrial automation device | |
JP6436393B2 (en) | Management device, communication control method, and communication control program | |
JP2006246223A (en) | Method and system for automatically setting address of network equipment | |
CN103460649A (en) | Connection setting information administration system | |
US8429254B2 (en) | Method for networkable device communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |