Abstract:
A method of communication between devices of a building management system ( 1 ) over a token ring network, comprising the steps of: a first device receiving ( 101 ) the token ( 2 ) for the token ring network; the first device, in response to receiving the token ( 2 ), broadcasting ( 105 ) a request message over the network; a second device, in response to receiving the request message over the network, sending a command message to a receiving device over the network; and the first device passing ( 107 ) the token ( 2 ) for the token ring network to a subsequent device on the network.

Description:
[0001]    This application claims priority to GB 1419789.1, filed Nov. 6, 2014. 
       FIELD OF THE INVENTION 
       [0002]    The present invention concerns building management systems, that is a system comprising heating, ventilation and air conditioning (HVAC) devices, lighting, security, associated control devices and the like for managing the internal environment of a building. More particularly, but not exclusively, the invention concerns methods and devices for communicating over a building management system network. 
       BACKGROUND OF THE INVENTION 
       [0003]    It is common for the devices of a building management system to communicate using a token ring network, such as a network using the BACnet™ protocol. In a token ring network, a token is passed in turn among the devices on the network, with a device only being allowed to transmit on the network when it is in possession of the token. 
         [0004]    Traditionally, the speed of communication between devices in a building management system has not been of particular importance, and consequently networks such as BACnet™ have not been designed to ensure fast communication. However, modern building management systems may now include devices controlled by control devices, for which a user will expect an immediate response, requiring that the communication time between the devices is sufficiently small. For example, a user may be able to control a set of electric window blinds using a control panel, and in this case a significant delay between pushing a button on the control panel and the blinds taking the required action will cause annoyance to the user. 
         [0005]    A medium-sized building management system may comprise 64 devices that can communicate via the network. If the average delay in passing the token between devices in the network is 4.5 ms, which is not unusually slow, this leads to a time taken for the token to complete a circuit of the devices of the network of 290 ms. In addition, a control device might take 50 ms to acquire an input signal in response to a user pressing a button on a control panel, and 75 ms to execute internal logic to produce a message to send over the network. A device receiving the message then may take 75 ms to execute internal logic and then take the required action. This results in a potential delay of the order of 400 ms, and more for building management systems with more devices, which is sufficiently long to cause annoyance to a user. Ideally a maximum potential delay would be 250 ms, giving a maximum time for communication between devices of 50 ms. 
         [0006]    The present invention seeks to mitigate the above-mentioned problems. Alternatively and/or additionally, the present invention seeks to provide improved methods and devices for communicating over a building management system network. 
       SUMMARY OF THE INVENTION 
       [0007]    In accordance with a first embodiment of the invention there is provided a method of communication between devices of a building management system over a token ring network, comprising the steps of: 
         [0008]    a first device receiving the token for the token ring network; 
         [0009]    the first device, in response to receiving the token, broadcasting a request message over the network; 
         [0010]    a second device, in response to receiving the request message over the network, sending a command message to a receiving device over the network; 
         [0011]    the first device passing the token for the token ring network to a subsequent device on the network. 
         [0012]    In this way, a second device that has a message that it wishes to send is able to send it in response to the first device sending the request message, and does not need to wait until it receives the token for the token ring network. This allows time-sensitive messages to be sent with a sufficiently small delay to not cause annoyance to a user. As the token is passed around the devices on the network, each device can broadcast a request message so providing an opportunity for other devices to send a time-sensitive message. 
         [0013]    Preferably, the first device waits a predetermined token passing period before passing the token to the subsequent device. This provides a period during which other device can respond to the request message. Preferably, the predetermined token passing period is between 20 ms and 30 ms. More preferably, the predetermined token passing period is 25 ms. However, it will be appreciated that any other appropriate predetermined token passing period could be used in accordance with the invention. 
         [0014]    Preferably, the first device passes the token to the subsequent device in response to the second device sending the command message to the receiving device over the network. This avoids any unnecessary delay after a device has responded to the request device. 
         [0015]    Preferably, the first device broadcasts the request message over the network only if a predetermined request message period has passed since a request message was last broadcast over the network. This prevents the network being overloaded due to request messages being sent too frequently. Preferably, the predetermined request message period is 40 ms to 60 ms. More preferably, the predetermined request message period is 50 ms. 
         [0016]    Preferably, the first device transmits a message to another device over the network prior to broadcasting the request message over the network. This allows the first device to send its own message prior to allowing another device to send a message in response to the request message. 
         [0017]    Preferably, the second device, in response to receiving the request message over the network, waits a predetermined command message period before sending the command message to the receiving device. In this case, advantageously the predetermined command message period is calculated using the MAC address of the device. This allows each device on the network to wait a unique predetermined command message period before sending a command message. The predetermined command message period may be 195 μs multiplied by the MAC address, for example. Alternatively any other device-specific value can be used to calculate a unique predetermined command message period. Alternatively, any other suitable period may be used, for example a randomly-chosen period. Advantageously, the second device after waiting the predetermined command message period checks if any other device is sending a message over the network, and in the case that another device is sending a message, does not send the command message to the receiving device. This helps prevent two devices sending a command message at the same time or sufficiently closely to cause a clash, in which case neither message may be successful. Advantageously, the messages contain a unique ID, which allows the receiving device to identify and filter out repeats of a message that has been received multiple times. 
         [0018]    Advantageously, the second device in response to receiving the token sends the command message again to the receiving device. This provides a backup should the command message when originally sent fail, for example due to a clash of messages. 
         [0019]    In accordance with a second embodiment of the invention there is provided a building management device arranged to communicate with other devices of a building management system over a token ring network, the device being arranged to: 
         [0020]    receive the token for the token ring network; 
         [0021]    in response to receiving the token, broadcast a request message over the network; 
         [0022]    pass the token for the token ring network to a subsequent device on the network. 
         [0023]    Preferably, the building management device is further arranged to wait a predetermined token passing period before passing the token to the subsequent device. Preferably, the predetermined token passing period is between 20 ms and 30 ms. 
         [0024]    Preferably, the building management device is further arranged to pass the token to the subsequent device in response to another device sending a command message to a receiving device over the network. 
         [0025]    Preferably, the building management device is further arranged to broadcast the request message over the network only if a predetermined request message period has passed since a request message was last broadcast over the network. 
         [0026]    Preferably, the predetermined request message period is 40 ms to 60 ms. However, it will be appreciated that any other appropriate predetermined request message period could be used in accordance with the invention. 
         [0027]    Preferably, the building management device is further arranged to transmit a message to another device over the network prior to broadcasting the request message over the network. 
         [0028]    Preferably, the building management device is further arranged, in response to receiving a request message over the network, to send a command message to a receiving device over the network. 
         [0029]    In accordance with a third embodiment of the invention there is provided a building management device arranged to communicate with other devices of a building management system over a token ring network, the device being arranged, in response to receiving a request message over the network, to send a command message to a receiving device over the network. 
         [0030]    Preferably, the building management device is further arranged, in response to receiving the request message over the network, to wait a predetermined command message period before sending the command message to the receiving device. In this case, advantageously the predetermined command message period is calculated using the MAC address of the device. Advantageously, the building management device is further arranged, after waiting the predetermined command message period, to check if any other device is sending a message over the network, and in the case that another device is sending a message, to not send the command message to the receiving device. 
         [0031]    Advantageously, the building management device is further arranged, in response to receiving the token, to send the command message again to the receiving device. 
         [0032]    In accordance with a fourth embodiment of the invention there is provided a building management system comprising:
       a token ring network;       
 
         [0034]    at least one building management device as described above; 
         [0035]    at least one building management device as described above. 
         [0036]    In accordance with a fifth embodiment of the invention there is provided a computer program product arranged, when executed on a computing device, to perform any of the methods described above. 
         [0037]    In accordance with a sixth embodiment of the invention there is provided a computer program product arranged, when executed on a computing device, to provide any of the building management devices described above. 
         [0038]    It will of course be appreciated that features described in relation to one aspect of the present invention may be incorporated into other aspects of the present invention. For example, the method of the invention may incorporate any of the features described with reference to the apparatus of the invention and vice versa. 
     
    
     
       DESCRIPTION OF THE DRAWINGS 
         [0039]    Embodiments of the present invention will now be described by way of example only with reference to the accompanying schematic drawings of which: 
           [0040]      FIG. 1  shows a building management system in accordance with an embodiment of the invention; 
           [0041]      FIG. 2  is a flowchart showing the operation of a building management device of  FIG. 1  on receipt of the token of the token ring network; and 
           [0042]      FIG. 3  is a flowchart showing the operation of a building management device of  FIG. 1  in response to a request message broadcast by another device. 
       
    
    
     DETAILED DESCRIPTION 
       [0043]    A building management system in accordance with an embodiment of the invention is shown in  FIG. 1 . The building management system  1  comprises building management devices  11  to  16 , which are part of a token ring network, as indicated by the dashed arrows from building management device  11  to  12 ,  12  to  13 ,  13  to  14 ,  14  to  16 ,  15  to  16 , and from  16  back to  11 . The token  2  of the token ring network is possessed by the building management device  11 . 
         [0044]    Building management devices  13  and  14  are in communication with control panels  13   a  and  14   a  respectively, using which a user send commands to control the building management system, for example by pressing a button to instruct a set of electric window blinds to open. Building management devices  12  and  16  are in communication with environmental control devices  12   a  and  16   a  respectively, which in the present example are electric window blinds. 
         [0045]    The operation of the building management devices of the building management system  1  is now described with reference to the flowcharts of  FIGS. 2 and 3 . In the present example, the building management device  11  wishes to send a non-time-sensitive message to the building management device  15 . This may occur when, for example, a device wished to provide a periodic report of local environmental conditions (e.g. temperature) to a management system. The building management device  13  wishes to send a time-sensitive message to the building management device  16 , for example to operate the electric window blinds in response to a user pressing a button on the control panel  13   a . Similarly, the building management device  14  wishes to send a time-sensitive message to the building management device  12 . 
         [0046]      FIG. 2  describes the operation of a device of the building management system  1  on receipt of the token  2  of the token ring network. The operation of the building management device  11  in this situation is now described. First, the building management device  11  receives the token (step  101 ). The building management device  11  then determined whether it has any messages to send (step  102 ). As discussed above, in the present example the building management device  11  wishes to send a non-time-sensitive message to the building management device  15 , and so it does so (step  103 ) as indicted by the thick arrow  21  in  FIG. 1 . As the message is non-time-sensitive, the building management device  11  is able to wait until receiving the token  2  before sending the message, without any delay causing annoyance to a user. 
         [0047]    The building management device  11  then checks whether 25 ms has passed since the last request message was broadcast on the network (step  104 ). If it has not, it passes the token to the subsequent device in the network (step  107 ) and then its current operation has completed (step  108 ). By only sending a request message if 25 ms has passed, this helps prevent the network becoming overloaded with request messages and command messages sent in response. 
         [0048]    Otherwise, the building management device  11  broadcasts a request message on the network (step  105 ), as indicated by the thick arrow  22  in  FIG. 1 . The building management device  11  then waits until 25 ms have passed or a response to the request message has been made by another device on the network (step  106 ). In the present example another device will respond to the request message, as described in more detail below. 
         [0049]    In response to the command message in response to the request message being made, the building management device  11  passes the token to the subsequent device in the network (step  107 ), in the words building management device  12 , and then its current operation has completed (step  108 ). 
         [0050]      FIG. 3  describes the operation of a device of the building management system  1  in response to a request message being broadcast on the network. The operation of the building management device  14  in this situation, in particular in response to the building management device  11  broadcasting the request message as described above, is now described. First, the building management device  14  receives the request message (step  201 ). The building management device  14  then determined whether it has any messages to send (step  202 ). As discussed above, in the present example the building management device  14  wishes to send a time-sensitive message to the building management device  12 . The building management device  14  then waits a pre-determined time period (step  203 ). The pre-determined time period is determined by multiplying its media access control (MAC) address (the address that uniquely identifies it on the network) with a time period of 195 μs. (It is noted that MAC addresses of devices on networks that use the BACnet protocol are 8 bits only.) In this way, different devices of the building management system  1  will usually wait different pre-determined time periods. In this example, the 8-bit MAC address for the building management device  14  is 20, and so the building management device  14  waits 3.9 ms. 
         [0051]    After waiting the pre-determined time period, the building management device  14  checks whether any other devices have responded to the response message (step  204 ). In the present example, no other devices have responded. The building management device  14  then sends its message to the receiving device (step  205 ), the building management device  12 , as indicated by the thick arrow  23  in  FIG. 1 . In this way, the building management device  14  is able to send its time-sensitive message to the building management device  12  without having to wait until it is passed the token  2  of the token ring network. The current operation of the building management device  14  has then completed (step  206 ). 
         [0052]    The operation of the building management device  13  in response to the building management device  11  broadcasting the request message is now described. As with the building management device  14 , first the building management device  13  receives the request message (step  201 ). The building management device  13  then determines that it wishes to send a time-sensitive message to the building management device  16  (step  202 ). The building management device  13  then waits a pre-determined time period (step  203 ). In this case, the 8-bit MAC address for the building management device  13  is 30, and so the pre-determined time period is 5.85 ms. 
         [0053]    After waiting the pre-determined time period, the building management device  13  checks whether any other devices have responded to the response message (step  204 ). In this case, the building management device  14  has sent its time-sensitive message (as it waited only a 3.9 ms before attempting to send a message). Consequently, the building management device  13  does not send its message to the building management device  16  (as indicated by the dashed arrow  24  in  FIG. 1 ), but instead its current operation has completed (step  206 ). 
         [0054]    In this way, the building management device  13  does not send a message that clashes with the message of the building management device  14 , which could cause neither message to be successful. 
         [0055]    Once the token  2  has been passed to building management device  12 , it will operate as described in  FIG. 2 . In particular, it will broadcast a request message. At this stage, assuming no other devices on the network respond to the request message before it attempts to do so, the building management device  14  can now send its time-sensitive message. (The building management device  14  has already now sent its time-sensitive message, and so will not send a message in response to the broadcast message unless it has a new message to send.) Assuming the building management device  13  is able to send its message, the delay caused by not sending its message in response to the previous request message is only the time it takes for the token  2  to be passed from building management device  11  to building management device  12 , i.e. around 25 ms, so considerably less than the time it will take for the token  2  to be passed to building management device  13 . 
         [0056]    Once the token  2  has been passed to building management device  13 , it will send its time-sensitive message to building management device  16 , even if it has already done so in response to a request message. Similarly, building management device  14  will send its time-sensitive message to building management device  12  when it is passed the token  2 . This ensures that a device is able to send its message even if it is never the first to send a message in response to a request message. It also provides a backup should a message sent in response to a request message fail, for example due to a clash of messages. 
         [0057]    Whilst the present invention has been described and illustrated with reference to particular embodiments, it will be appreciated by those of ordinary skill in the art that the invention lends itself to many different variations not specifically illustrated herein. By way of example only, certain possible variations will now be described. 
         [0058]    Where in the foregoing description, integers or elements are mentioned which have known, obvious or foreseeable equivalents, then such equivalents are herein incorporated as if individually set forth. Reference should be made to the claims for determining the true scope of the present invention, which should be construed so as to encompass any such equivalents. It will also be appreciated by the reader that integers or features of the invention that are described as preferable, advantageous, convenient or the like are optional and do not limit the scope of the independent claims. Moreover, it is to be understood that such optional integers or features, whilst of possible benefit in some embodiments of the invention, may not be desirable, and may therefore be absent, in other embodiments.