Abstract:
A computer implemented method for automatically switching communication protocols. The method includes detecting a user input, determining, based on the user input, a first communication protocol needed to address the user input, and creating a virtualized network wherein devices that use a second communication protocol are represented via virtualized devices according to the first communication protocol.

Description:
FIELD 
     This disclosure generally relates to a device and method for controlling multiple devices connected to two or more different network protocols, wherein one of the protocols can be a building automation and control network (BACnet). 
     BACKGROUND 
     A heating, ventilation, and air conditioning (HVAC) system can have devices that use different types of connections (e.g., communication protocols) for controlling an environment of a building (or a zone of the building). For example, a HVAC system in a building may have a non-BACnet network (e.g., a network having a protocol that is different from the BACnet protocol) connected to multiple non-BACnet devices, and a BACnet network connection to various state-of-the-art BACnet devices. 
     SUMMARY 
     An embodiment is a device for automatic communication protocol switching between devices connected to one or more computer network system(s) (e.g., for, but not limited to, a HVAC system). The device includes a processor, a network interface connected to the processor, and a memory connected to the processor, including computer-readable and processor executable computer instructions for translating a first communication protocol to a second communication protocol based on a type of data received via the network interface. The type of data can be, for example, a user action, which includes but are not limited by an input made by a user and an output request made by the user. The user can be an end user and/or a technician. 
     An embodiment of a computer implemented method for automatically switching communication protocols includes detecting a user input, determining, based on the user input, a first communication protocol needed to address the user input, and creating a virtualized network, wherein devices that use a second communication protocol are represented via virtualized devices according to the first communication protocol. The creating step can be on-the-fly, in real time, based on the user&#39;s input. An embodiment of the method can include creating the virtualized network on-the-fly (e.g., in real time, as the user&#39;s input is received). 
     An embodiment of a device for automatic communication protocol switching between devices connected to a computer network system includes a processor; a network interface connected to the processor; and a memory connected to the processor, including computer-readable and processor executable computer instructions for translating a first communication protocol to a second communication protocol based on a type of data received via the network interface. The computer network system can include a HVAC system. 
     In an embodiment, the first communication protocol is a BACnet protocol, and the second communication protocol is a non-BACnet protocol. 
     In another embodiment, the first communication protocol is a non-BACnet protocol, and the second communication protocol is a BACnet protocol. 
     The processor can receive data according to a first communication protocol via the network interface, and the processor can execute the computer instructions and translates the data received from the first communication protocol to the second communication protocol. 
     Further, the processor can transmit the data using the second communication protocol to another device via the network interface. 
     An embodiment of a computer network system includes a network; a first computer network device connected to the network, wherein the computer network device is configured to use a first communication protocol; a virtualized network creating device connected to the network, wherein the virtualized network creating device is connected to the first computer network device and creates a virtual computer network device in a computer-readable memory, wherein the virtualized network creating device automatically translates an interaction with the virtual computer network device via the virtualized network creating device to an interaction with the first computer network device. 
     In an embodiment of the computer network system, the virtualized network creating device is configured to provide a user interface for receiving a user input for communicating with the virtual computer network device. 
     In an embodiment of the computer network system, the user interface does not allow user input to the first computer device using the first communication protocol. 
     Another embodiment of the computer network system further includes a second computer network device connected to the network, wherein the second computer network device is configured to use a second communication protocol. 
     In an embodiment, the virtualized network creating device is configured to receive data from the second computer network device and then automatically switch the data from the second communication protocol to the first communication protocol. 
     In an embodiment, the virtualized network creating device is configured to receive data from the first computer network device and then automatically switch the data from the first communication protocol to the second communication protocol. 
     In an embodiment, the first communication protocol is a BACnet protocol, and the second communication protocol is a non-BACnet protocol. 
     In an embodiment, the first communication protocol is a non-BACnet protocol, and the second communication protocol is a BACnet protocol. 
     In an embodiment, the computer network system further comprises a HVAC system. 
     An embodiment of a computer implemented method for automatically switching communication protocols includes the steps of detecting a user input to a computer device connected to a network; determining, based on the user input, a first communication protocol needed to address the user input; and creating a virtualized network wherein devices that use a second communication protocol are represented via virtualized devices according to the first communication protocol. 
     An embodiment of the method includes the first communication protocol being a BACnet protocol. 
     In an embodiment of the method, the first communication protocol is a non-BACnet protocol. 
     In an embodiment of the method, the second communication protocol is a BACnet protocol. 
     In an embodiment of the method, the second communication protocol is a non-BACnet protocol. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  illustrates an exemplary diagram of an embodiment of two types of networks. 
         FIG. 2  illustrates an exemplary diagram of a single virtual network of the two networks shown in  FIG. 1  according to an embodiment. 
         FIG. 3  illustrates an exemplary diagram of an embodiment of two types of networks. 
         FIG. 4  illustrates an exemplary diagram of a single virtual network of the two networks shown in  FIG. 3  according to an embodiment. 
         FIG. 5  illustrates an exemplary diagram of an embodiment of two types of networks. 
         FIG. 6  illustrates an exemplary diagram of a single virtual network of the two networks shown in  FIG. 5  according to an embodiment. 
     
    
    
     DETAILED DESCRIPTION 
     The embodiments disclosed are directed towards a device and method for automated switching of communication protocol based on a user action in regards to a computer network system, which includes, but is not limited to, a HVAC system. For example, in regards to a HVAC system, the embodiments are directed towards automated switching of communication protocols for devices that use different communication protocols (e.g., BACnet protocol and non-BACnet protocol). BACnet Objects have a standard protocol (i.e., BACnet protocol) for communicating data therebetween. Generally, devices using non-BACnet communication protocols (e.g., a proprietary protocol) may not be able to communicate with BACnet Objects directly. For example, a controller that communicates to devices via the proprietary protocol may require more bandwidth to pass a given amount of information than a controller communicating to a BACnet device via BACnet protocol. 
     The device and method disclosed are directed to automatically conserving bandwidth during communication across two or more different communication protocols, by automatically switching communication protocols based on user action. 
     For example, embodiments of the device and method are directed to connecting devices that use different protocols and creating a single virtual network, and providing a user with a single (virtual or semi-virtual) network-type, so that from the user&#39;s perspective, there is only one type of network (e.g., a BACnet network, a propriety network, etc.) and one type of devices (BACnet devices, propriety protocol devices, etc.) that the user is interacting with. In other embodiments, there can be more than one type of network and/or more than one type of devices that the user can interact with. 
     The device and method provides for automatic switching of protocols based on the user&#39;s interaction with the BACnet Objects and/or other non-BACnet devices (or devices that use a communication protocol that is not BACnet protocol). 
       FIG. 1  shows a network  100  of a computer network system (e.g., a HVAC system) with a plurality of first type communication protocol devices (e.g., BACnet devices)  101 ,  102 ,  103 ,  104 . The network  100  includes an automatic switch device  105  connected to a second type communication protocol device  106  (e.g., a non-BACnet device, such as a device that uses a proprietary communication protocol). The network  100  includes another automatic switch device  107  connected to a plurality of second type communication protocol devices  108 ,  109 ,  110  (e.g., non-BACnet devices, such as devices that use a proprietary communication protocol). One or more of the automatic switch devices  105 ,  107  can be gateway devices. 
       FIG. 2  shows a virtual network  200  of the computer network system shown in  FIG. 1 . The virtual network  200  is called “virtual” because the network  200  includes one or more virtualized devices. The plurality of first type communication protocol devices  101 ,  102 ,  103 ,  104  can remain as they are (i.e., they are not virtualized), because the virtual network  200  continues to use the first type communication protocol. The virtual network  200  includes virtual device  206 , which is a virtualized version of the second type communication protocol device  106  (shown in  FIG. 1 ). The second type communication protocol device  106  is invisible in the virtual network  200 . By the term “invisible” means that a user interacting with the virtual network  200  can be unaware that the virtual device  206  is in fact a virtual representation of the second type communication protocol device  106  in the network  200 , and the user can be unaware that the network  200  is a virtual network. 
     The automatic switch device  105  carries out the necessary conversion and/or translation of communication between the second type communication protocol device  106  and the first type communication protocol network (e.g., the network  100 ) as needed by a user action with the computer network system. For example, for a computer network system that is a HVAC system, a proprietary protocol may require more bandwidth to communicate information than the BACnet protocol. If a user action does not need to use the larger bandwidth to communicate a particular information, then the automatic switch device  105  performs a method of switching the communication protocol to BACnet protocol so that a subset of the total bandwidth is used during the information communication to the user. That is, unnecessary bandwidth is not used in the network, which speeds up the communication speed and alleviates network traffic from communicating unnecessary and/or unrequested bandwidth and/or data. 
     The automatic switch device  105  carries out the necessary conversion and/or translation of communication between the network  100  and the second type communication protocol device  106  as needed by a user action with the computer network system. Thus, the automatic switch device  105  can act as a creator of the virtual device  206  in the virtual network  200 . 
     The automatic switch device  107  is configured to carry out the necessary conversion and/or translation of communication between the second type communication protocol devices  108 ,  109 ,  110  and the first type communication protocol network (e.g., the network  100 ) as needed by a user action with the computer network system. The automatic switch device  107  carries out the necessary conversion and/or translation of communication between the network  100  and the second type communication protocol devices  108 ,  109 ,  110  as needed by a user action with the computer network system. Thus, the automatic switch device  107  can act as a creator of the virtual devices  208 ,  209 ,  210  in the virtual network  200 . 
     Advantageously, a user can be aware of the virtual network  200  and not be aware of the fact that there are second type communication protocol devices  106 ,  108 ,  109 ,  110  connected to the network of the computer network system. Further, the user can be unaware that there are automatic switch devices  105 ,  107  connected to the network  200 . Accordingly, the automatic switch devices  105 ,  107  can be designated as virtualized network creating devices. 
       FIG. 3  shows a network  300  of a computer network system (e.g., a HVAC system) with a first type communication protocol device  301  (e.g., BACnet device). The network  300  includes an automatic switch device  302  connected to a second type communication protocol device  303  (e.g., device using a non-BACnet protocol). 
       FIG. 4  shows a virtual network  400  of the computer network system shown in  FIG. 3 . The second type communication protocol device  303  remains as it is, because the virtual network  400  is the second type communication protocol representation of the network  300 . That is, the virtual network  400  uses the second type communication protocol (e.g., non-BACnet protocol, proprietary protocol, etc.). The virtual network  400  includes a virtual device  401 , which is a virtualized version of the first type communication protocol device  301  (shown in  FIG. 3 ). The first type communication protocol device  301  is invisible in the virtual network  400 . 
     The automatic switch device  302  carries out the necessary conversion and/or translation of communication between the first type communication protocol device  301  and the second type communication protocol network  400  as needed by a user action with the computer network system. 
     Advantageously, a user can be aware of the virtual network  400  and not be aware of the fact that there is a first type communication protocol device  301  connected to the network of the computer network system. Further, the user can be unaware that there is the automatic switch device  302  that is connected to the network  400 . Accordingly, the automatic switch device  302  can be designated as a virtualized network creating device. 
     An example of the automatic switch device (e.g.,  105 ,  107 ,  302 ) is a controller that is connected to a network of the computer network system. An example of the automatic switch device  105 ,  107 ,  302  is a technician&#39;s service tool device (e.g., a mobile computer device including specialized hardware and/or software for HVAC) that is connected to a network of the computer network system (e.g., HVAC system). 
       FIG. 5  shows a network  500  of a computer network system (e.g., HVAC system) connected with a service tool device  501 , which is generally used by a technician for installing and/or servicing the computer network system. The network  500  includes first type communication protocol devices  502 ,  503  (e.g., BACnet devices). The network  500  includes second type communication protocol devices  504 ,  505  (e.g., devices using a non-BACnet communication protocol). 
     When the service tool device  501  “sees” the network  500 , the service tool device  501  virtualizes the network  500  into a virtual network  600  shown in  FIG. 6 . The service tool device  501  has a user interface which displays and provides information about the network  500  in such a way that the technician is aware of the virtual network  600 , and not the real structure of the network  500 . Accordingly, the technician interacts with the virtual network  600  via the service tool device  501 , and the service tool device  501  converts and/or translates user action of the technician and communicates the user action to the network  500  and devices  502 ,  503 ,  504 ,  506  connected on the network  500 . Accordingly, the service tool device  501  can be designated as a virtualized network creating device. 
     The virtual network  600  uses the first type communication protocol. Thus, the virtual network  600  provided to the technician by the service tool device  501  includes the devices  502 ,  503  and virtual devices  604 ,  605 . The virtual device  604  is a virtualized version of device  504 . The virtual device  605  is a virtualized version of device  505 . The virtual devices  604 ,  605  reside only in the service tool device  501  (e.g., processor and/or memory of the service tool device  501 ). The virtual network  600  may use the second type communication protocol, wherein the appropriate devices are virtualized by the service tool device  501 . 
     The service tool device  501  is configured with hardware and/or software for carrying out the necessary conversion and/or translation of communication between the second type communication protocol devices  504 ,  505  and the first type communication protocol network  600  as needed by the technician and/or the service tool device  501  (e.g., user action). 
     Advantageously, the technician can be aware of and interact with the virtual network  600  and not with two different types of communication protocols. This can advantageously speed up the technician&#39;s duties in interacting with and/or communicating with the computer network system. 
     When creating a virtual device in a virtualized network, and/or during use of the virtual network, there may be a situation where a device on the network cannot itself provide the information necessary using the communication protocol of the virtual network. In such situations, the communication protocol can be switched to another communication protocol, as needed, in order to attempt to communicate (e.g., obtain) the necessary information. 
     For example, a BACnet communication with a controller may fail because a BACnet property ID is not implemented or the controller uses an older firmware where the required BACnet property ID is not available on the controller. The service tool device  501  can have stored therein (e.g., in a memory) the appropriate property ID for the controller and/or other devices as needed. Then, the service tool device  501  can assign the appropriate property ID to the virtualized controller and/or other devices. Further, the service tool device  501  can switch communication protocol to a different communication protocol automatically to communicate with the controller and/or devices for retrieving appropriate information needed in order to identify that the appropriate property ID should be for creating the virtual device in the virtual network  600 . Thus, the communication protocol switching can be performed on-the-fly automatically as needed. 
     With regard to the foregoing description, it is to be understood that changes may be made in detail without departing from the scope of the present invention. It is intended that the specification and depicted embodiment to be considered exemplary only, with a true scope and spirit of the invention being indicated by the broad meaning of the claims.