Control network system
By introducing a hierarchical beacon mechanism in the control device, the problem of control command conflicts in multi-master control systems is solved, dynamic and automatic master control device selection is achieved, and the stability and consistency of the lighting system are ensured.
Patent Information
- Application Number
- CN202080045075.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-06-20
- Filing Date
- 2020-06-15
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2040-06-15
AI Technical Summary
In a multi-master control system, there are conflicts in control commands from different sensor nodes, which lead to confusion and unstable behavior of the lighting system, which is difficult to be effectively solved by existing technologies.
By introducing the concept of hierarchical levels in control devices and using beacon messages for distributed master control device selection, it is ensured that only one control device is selected as the master control device. Messages are sent periodically through the beacon repetition time to monitor the network and dynamically adjust the role of the master control device.
It realizes the effective and automatic selection of the main control device in dynamic and heterogeneous networks, avoids control command conflicts, and ensures the stability and consistency of the lighting control system.
Smart Images

Figure CN114009105B_ABST
Abstract
Description
Technical Field
[0001] The present invention generally relates to a control network system (eg, for lighting control). More specifically, various methods, devices, systems, and computer-readable media related to a multi-master control system are disclosed herein. Background Art
[0002] Digital Addressable Lighting Interface (DALI) is a standard communication protocol and network-based system for lighting control. DALI controls the communication flow between lighting drivers / devices (DALI control devices) and lighting controllers (DALI control devices) that form a DALI network. A DALI network must be powered by a mains supply. The DALI system is specified by the technical standards IEC 62386 and IEC 60929, which are incorporated by reference.
[0003] The DALI protocol is evolving to meet the demands of Internet of Things (IoT) applications. The new DALI Sensor Ready (SR) interface builds on the DALI architecture. It uses a digital interface to connect nodes (sensors) and SR drivers. This interface provides node power and enables digital bidirectional communication based on DALI-2. By integrating sensor power, energy metering, and diagnostics within the luminaire, rather than externally as previously required, the SR interface simplifies luminaire design, manufacturing, and installation. Furthermore, the DALI SR protocol enriches the next generation of lighting applications by enabling the use of diverse sensor data in lighting control systems.
[0004] EP3319377A1 relates to an anchor master management method for use in a neighbor awareness network. The method includes: receiving, by a first node, a first synchronization beacon frame sent by a second node, wherein the first synchronization beacon frame carries first anchor master information, the first anchor master information including a first anchor master level (AMR), the first AMR including first media access control (MAC) address information, the anchor master information in the first node including a second AMR, and the second AMR including second MAC address information; updating, by the first node, the anchor master information in the first node based on the first anchor master information when the first AMR is lower than the second AMR, the first MAC address information and the second MAC address information are the same, and the master level (MR) of the first node is higher than the first AMR; and transmitting, by the first node, a second synchronization beacon frame when a preset node state of the first node is in sync, or skipping transmitting synchronization beacon frames when the preset node state of the first node is in an unsynchronized state, thereby resolving the problem of excessive consumption of air interface resources.
[0005] US2016150465A1 relates to a method of an electronic device, comprising: performing a first operation to transmit a discovery signal in an interval between a first discovery window and a second discovery window; and performing a second operation to adjust the first operation based on a situation of the electronic device.
[0006] US2014313966A1 relates to a method for communicating in a Neighbor Awareness Network (NAN). The method includes generating a NAN frame, the NAN frame including one or more of a first address field, a second address field, a third address field, and an information element. The method also includes encoding a NAN identifier in at least one of the first address field, the third address field, and the information element. The method also includes transmitting the NAN frame.
[0007] US2015006633A1 operates in a peer-to-peer communication environment. This environment consists of one or more clusters of peer devices, where the devices in a single cluster are organized into a logical hierarchy under an anchor master (at the root of the hierarchy) and any number of synchronization masters; the remaining devices are non-master devices. Synchronization parameters established by the anchor master and propagated throughout the hierarchy enable clustered devices to rendezvous, discover peers and services, and communicate among themselves. The anchor master can adjust synchronization parameters to avoid conflicts with other hierarchies.
[0008] “Trends in smart lighting for the Internet of Things” by Jorge Higuera et al. deals with the design and implementation of IoT-based smart lighting systems for different applications using different IoT-centric lighting architectures. Summary of the Invention
[0009] In light of the foregoing, the present disclosure relates to methods, apparatuses, systems, computer programs, and computer-readable media for selecting a master control device among one or more control devices in a control system, thereby resolving potential conflicts in control commands from different sensor nodes from different perspectives. More specifically, various computer-readable media (transitory and non-transitory), methods, systems, and apparatuses are provided to facilitate master control device selection via a hierarchically correlated beaconing approach.
[0010] According to a first aspect of the present invention, there is provided a control device configured to connect to a lighting control network, wherein at most one control device is elected as a master control device, which is allowed to periodically send beacon messages at every beacon repetition time, and to send commands to control devices in the lighting control network, wherein the control device comprises: a memory; a communication subsystem configured to: send a local beacon message (having information of a local hierarchy level associated with the control device itself) within a first time period to announce the presence of the control device to devices on the network; and monitor the network during the first time period to detect potential beacon messages from other devices on the network; a controller configured to evaluate whether the control device is to be elected as the master control device based on the potential beacon messages detected by the communication subsystem during the first time period; wherein the first time period starts when the control device connects to the network, and the first time period is longer than the beacon repetition time.
[0011] In one example, the control network is a lighting control network, and more preferably it is a DALI network or a DALI-SR network. Given that more and more sensors can be connected to the same lighting fixture, depending on the various arrangements, types and capabilities of the sensors, different decisions can be made based on the input from the individual sensor nodes. In a smart lighting control system, sensor nodes as input devices can be incorporated into control devices on the lighting control network to provide autonomous and intuitive control to the lights. However, too much control, especially different control, from more than one control device can cause confusion to the lighting system or control devices on the implementation. To avoid this situation, it is necessary to allow only one control device or application controller to take the responsibility of the system as the master control device (by first distinguishing the priority among them according to their functions or capabilities). These functions and capabilities are identified by the hierarchy level of the control devices. Control devices with more functions and capabilities are assigned to a higher hierarchy level. This association can be made during the manufacturing of the devices, or alternatively or additionally can be (re)configured by the user.
[0012] Advantageously, the present invention proposes to incorporate the local hierarchy level associated with the capability of the control device in the beacon message. To implement a distributed multi-master election process, a key step is to let each control device (configured to connect to the network) announce its presence to the whole network by sending a beacon message (having information about its hierarchy level). At the same time, the new control device should also listen to the communication on the network for a certain time period to learn the presence of other control devices in the network.
[0013] In one embodiment, when the control device receives at least one other beacon message through the communication subsystem during a first time period, the controller is also configured to, after the first time period: determine a highest level from the local level and a first set of level levels, the first set of level levels corresponding to the level levels received in at least one other beacon message during the first time period; when the local level is higher than the level levels in the first set, the controller is also configured to select the control device as the master control device and store the local level as the master level in the memory; the communication subsystem is also configured to: as the master control device, periodically send a local beacon message after each beacon repetition time and continuously monitor the network.
[0014] By monitoring the network over a certain period of time, the new controller can gain additional knowledge about the existence of other controllers in the system based on at least one other beacon message received during that period. Because the master controller is selected based on hierarchical level, knowing the hierarchical level of the current master controller and the hierarchical level of the new controller allows the new controller to make a local decision on whether it can become the new master controller. Therefore, from a system perspective, master controller selection is achieved in a distributed manner.
[0015] In another embodiment, when the local stratum level is not higher than any stratum level in the first set, the controller is further configured to store in memory a highest stratum level received from at least one other beacon message; and the communication subsystem is further configured to continuously monitor the network.
[0016] If a control device does not have a higher hierarchy level than other control devices in the network, it will primarily act as a slave, providing data in response to queries from the master. Because all control devices are hot-swappable, the control network can be completely dynamic. It's possible that the current master control device is later removed from the network or fails in some way. Therefore, it's necessary for control devices that are no longer acting as masters to continue monitoring the network, responding to queries from the master, or handling the situation in which the current master is removed.
[0017] It is also disclosed that, when the communication subsystem does not receive another beacon message during a first time period, the controller is configured to, after the first time period: select the control device as a master control device and store the local hierarchy level in the memory as the master hierarchy level, and wherein the communication subsystem is further configured to: as the master control device, periodically send a local beacon message after each beacon repetition time and continuously monitor the network.
[0018] By monitoring the network for a certain period of time, if the new control device learns that it is the only control device in the system, it will make itself the master control device and take control of the network.
[0019] Advantageously, the first time period is longer than the second time period. The first time period is used by a new controller to gain an overview of the presence of other controllers in the network, while the second time period corresponds to the master controller's beacon repetition period. This arrangement helps resolve timing accuracy issues among multiple controllers (such as between a master controller and a new controller). During the initialization phase, the new controller monitors the network for a period longer than the beacon repetition period. This allows the new controller to receive at least one periodic beacon from the current master controller without the false impression that it is the only controller in the network, as might occur if the first time period is too short. However, if the first time period is no longer than the beacon repetition period, the disclosed system will still function, albeit with slightly lower efficiency. Since all controllers monitor the network, if a new controller mistakenly begins sending periodic beacons, another controller at a higher level will notice the issue and send another beacon to overrule the new controller. The present invention provides a benefit by dynamically and automatically handling such contention. Therefore, a method that satisfies the aforementioned timing constraints is advantageous.
[0020] The information on the hierarchical level associated with the control device is one of a classification number, a hierarchical index, a group index, and a category index.
[0021] Different classification / hierarchy levels can create an overall structure for organizing DALI control devices, such as based on simple light sensors, light sensors with presence detection, multi-sensor sensors with RF interfaces or GPS capabilities, and supermasters. By indicating the functions or capabilities of the control device associated with the hierarchy level, selecting a master control device among multiple candidates becomes much simpler. Furthermore, given the typically limited data rates on such lighting control networks, it is also a very effective way to distinguish one control device from another.
[0022] In one embodiment, a lighting control network system includes at least one control device and at least one control apparatus according to the present invention, wherein at most one control device is selected as a master control device, and the master control device is allowed to periodically send beacon messages at each beacon repetition time and send commands to at least one control apparatus, wherein at least one control device is configured to select itself as the master control device to periodically send beacon messages including the highest hierarchy level at each beacon repetition time when detecting that its local hierarchy level is the highest hierarchy level in the system; the master control device is also configured to send commands to at least one control apparatus; and at least one control apparatus is configured to execute the commands received from the master control device.
[0023] To avoid conflicts on control commands and / or network communication (e.g. for different measurements and detections at different control devices), it is important to only allow one master control device to be in charge in the system at a time. Since all control devices continuously listen to the network after connection, it is beneficial that the master control device can always query sensing data from other control devices in the network and make lighting control decisions not only based on data from local input devices or sensors, but also based on data from input devices deployed with another control device in the network. In this way, the system can still benefit from a multi-sensor deployment.
[0024] Another aspect of the invention is a method of connecting a lighting control device to a control network, wherein at most one control device is selected as master control device, which is allowed to periodically send beacon messages at every beacon repetition time, and to send commands to control devices in the lighting control network, the method comprising: the control device sending a local beacon message (having information of a local hierarchy level associated with the control device itself) during a first time period to announce the presence of the control device to devices on the network; monitoring the network during the first time period to detect potential beacon messages from other devices on the network; and evaluating whether the control device is to be selected as master control device based on the potential beacon messages detected during the first time period; wherein the first time period starts when the control device connects to the network, and the first time period is longer than the beacon repetition time.
[0025] In one embodiment, when at least one other beacon message is received during the first time period, the method further comprises after the first time period: determining a highest hierarchy level from the local hierarchy level and a first set of hierarchy levels, the first set of hierarchy levels corresponding to hierarchy levels received in the at least one other beacon message during the first time period; selecting the control device as master control device when the local hierarchy level is higher than the hierarchy levels in the first set, and storing the local hierarchy level as master hierarchy level; periodically sending the local beacon message after every beacon repetition time as master control device; and continuously monitoring the network.
[0026] In another embodiment, when the local hierarchy level is not higher than any hierarchy level in the first set, the method further comprises: storing the highest hierarchy level in the first set as master hierarchy level; and continuously monitoring the network.
[0027] In another example of the method, wherein no other beacon message is received during the first time period, the method further comprises after the first time period: selecting the control device as master control device, and storing the local hierarchy level as master hierarchy level; periodically sending the local beacon message after every beacon repetition time as master control device; and continuously monitoring the network.
[0028] In one embodiment, after connecting to the network as a non-master control device, the method further includes: monitoring the network to detect at least one beacon message during a duration of at least twice the beacon repetition time; and upon receiving at least one beacon message: determining a highest level from the stored master level and a second set of level levels, the second set of level levels corresponding to the level levels received in at least one beacon message within a duration of at least twice the beacon repetition time; when the stored master level is not the same as the highest level in the second set, comparing the local level and the highest level in the second set; when the local level is higher than the highest level in the second set, selecting the control device as the master control device and replacing the master level with the local level in the memory; as the master control device, periodically sending a local beacon message after each beacon repetition time; when the local level is not higher than any level in the second set, replacing the master level with the highest level in the second set in the memory.
[0029] During the initialization phase, if a new control device determines that it does not have the highest hierarchy level in the system, it will connect as a non-master control device. Given that all control devices are hot-swappable, after connecting, the non-master control device will continue to monitor the network to verify whether the current master control device is still beaconing on the network and / or whether a new device with a higher hierarchy level has connected. The non-master control device will react accordingly to this new situation and can thus dynamically select a master control device.
[0030] In another example, when at least one beacon message fails to be detected within a duration of at least twice the beacon repetition time, the method further includes, after at least twice the beacon repetition time: selecting the control device as a master control device and replacing the master hierarchy level with the local hierarchy level in the memory; as the master control device, periodically sending a local beacon message after each second time period.
[0031] If a non-master device determines that the current master device is no longer active in the network and does not receive any further beacon messages within a predefined monitoring or evaluation period, it will assume the role of master device. Alternatively, the non-master device could first extend its predefined monitoring or evaluation period if it fails to detect any beacon messages, to ensure that no messages were lost due to conflicts in lower layers of the network (such as the communication layer). Then, if the non-master device still fails to detect such periodic beacons, it will assume the role of master device.
[0032] This is not a problem if there is more than one non-master control device in the system attempting to operate in the same manner and assume the role of master control device upon detecting a failure of the old master control device. As previously mentioned, the disclosed system can handle this situation. Because all control devices continuously monitor the network, if one control device mistakenly begins sending periodic beacons, another control device at a higher level in the system will notice the problem and send another beacon to overrule the first control device.
[0033] In one embodiment, after connecting to the network as a master control device, the method further includes: periodically sending local beacon messages after each beacon repetition time; monitoring the network in the interval of each beacon repetition time between two adjacent beacon messages; and when the communication subsystem receives at least one other beacon message from at least one other control device, the method further includes the following steps: determining the highest hierarchy level from the stored master hierarchy level and a third set of hierarchy levels, the third set of hierarchy levels corresponding to the hierarchy level received in at least one other beacon message; if the highest hierarchy level in the third set is higher than the stored master hierarchy level, stopping the periodic sending of local beacon messages and replacing the master hierarchy level with the highest hierarchy level in the third set in the memory.
[0034] A master control device operates slightly differently from a non-master control device. First, the master control device needs to regularly send out periodic beacons to announce its control of the system. Simultaneously, it monitors the network during each beacon interval to detect the connection of a new control device with a higher or lower hierarchy level. If a new device with a higher hierarchy level appears, the current master control device relinquishes control by ceasing transmission of periodic beacons, and the new device takes over by sending new periodic beacons. On the other hand, if a new device with a lower hierarchy level connects, the master control device becomes aware of its presence and capabilities, and can then communicate with the new device as the master control device.
[0035] The disclosed methods for new devices, as well as for connected control devices (as either non-master or master), establish a complete process for handling system dynamics in an efficient and rapid manner. Advantageously, the control devices can also be configured to implement the steps of the methods described herein.
[0036] The invention may also be implemented in a computer program comprising code means for causing a computer to carry out the method for selecting a master control device when the program is executed by the computer.
[0037] The present invention can also be implemented in a computer program comprising code means which, when executed by a computer, causes the computer to execute a method for controlling a device as a new control device or as a control device after being connected to a network (as a non-master control device or a master control device). BRIEF DESCRIPTION OF THE DRAWINGS
[0038] In the drawings, like reference numerals generally refer to the same parts throughout the different views. Also, the drawings are not necessarily to scale, emphasis instead generally being placed upon illustrating the principles of the invention.
[0039] Figure 1 A control network system having a plurality of control devices, control apparatuses, power supplies and mains is shown;
[0040] Figure 2 schematically depicts example components of a control device;
[0041] Figure 3 illustrates a periodic beacon message from a master control device, wherein the associated hierarchy level is included in the message;
[0042] Figure 4 A flow chart showing a method performed on a new control device to connect to a network;
[0043] Figure 5 A flow chart showing a method performed on a non-master control device;
[0044] Figure 6 A flow chart showing a method performed on a master control device;
[0045] Figure 7 A state diagram of a control device is shown. DETAILED DESCRIPTION
[0046] Now based on Figure 1Various embodiments of the present invention are described using a control network system 100 as shown. The control network system 100 includes at least one control device 200a, 200b, and 200c and at least one control apparatus 300, with a power supply 310 and a mains 320 connected to the control apparatus 300. Control devices are deployed within the control network system to generate commands, while control apparatuses are deployed to implement the commands from the control devices. Because different control devices can be deployed at different locations in the system and connected to different sensors and actuators, different commands can be generated. To avoid conflicts with control commands from the control apparatuses, it is important to allow only one master control apparatus to be active in the system at a time and to send commands to the control apparatuses. All other control apparatuses should only respond to communications initiated by the master control apparatus, such as queries for sensory data or other commands. Because all control apparatuses are hot-swappable and can be connected to or removed from a control network (such as a DALI network) at any time, applicants have recognized and appreciated the benefits of implementing a master control apparatus selection mechanism.
[0047] In view of the foregoing, various embodiments and implementations of the present invention are directed to enabling distributed master control device selection via a beaconing process incorporating hierarchical levels in a control network system, preferably a lighting control network system or a DALI network.
[0048] Figure 1 FIG2 shows an overview of a control network system 100. The figure illustrates that more than one control device 300 can be connected to the system 100, and similarly, multiple control devices 200 can be connected. Because each control device 200a, 200b, 200c can make decisions about how to control the control device 300, the presence of more than one control device 200a, 200b, 200c can result in conflicting commands to the control device 300. In the lighting control example, one control device may issue a command to "turn on" a light, while another control device may issue a command to "turn off" the light. This can lead to race conditions and / or erratic behavior.
[0049] Various embodiments of devices, methods, computer programs, and computer-readable media are disclosed for selecting a master control device to facilitate a distributed and efficient master selection process suitable for dynamic and heterogeneous networks. The dynamic nature of the network may arise from the fact that all devices are hot-swappable and may even fail. The heterogeneous nature of the network may arise from the fact that different control devices may support completely different functions and capabilities. This may be the case when one control device or application controller has more processing power than another. It may also be the case when one control device is connected to more input devices, sensors, or actuators, and these auxiliary devices extend the functionality of the control device.
[0050] Figure 2 Example components of a control device are schematically depicted. As a very basic setup shown in the figure, the control device 200 includes a controller 210, a memory 220, and a communication subsystem 230. The communication subsystem 230 may also include a transmitter and receiver pair, or an integrated transceiver. Depending on the type of control network, in the case of a DALI bus, the control device may also include a physical interface to connect to the bus, and an optional bus power supply. As previously mentioned, the control device may also be coupled to one or more sensors or other input devices, which can provide data to the control device to allow it to make decisions and send commands to the control device.
[0051] Now refer to Figure 3 For a new control device configured to connect to the control network, during the initialization phase, the communication subsystem is configured to send a beacon message containing information about the local hierarchy level 410 associated with the control device within a first time period to announce itself to other devices on the network 110. Furthermore, the communication subsystem monitors the network during the first time period to obtain an overview of the presence of other control devices on the network, particularly the hierarchy levels of those devices. In this way, the new control device can locally assess whether it is qualified to take charge of the system as a master control device.
[0052] As the master control device, it can query data from other control devices in the system, combine the queried data with data from local sensors, actuators, and input devices, process the data, and generate commands for the control devices in the system. Figure 3 A periodic beacon message 400 from a master control device is illustrated, wherein an associated hierarchy level 410 is included in the message 400. Such a beacon message is repeated at each second time period 420 or each beacon repetition time.
[0053] The hierarchy level indicates the functionality and capabilities of a control device and can be one of a classification number, a hierarchy index, a group index, and a category index. A control device can be assigned a hierarchy level during manufacturing, and the user can also assign the hierarchy level during use and later update the hierarchy level in different user scenarios or with different configurations. In one example, the hierarchy level of a control device comprises information about the type of sensor or input device coupled to it. In another example, the hierarchy level indicates the processing power or memory size of the device. Therefore, a higher hierarchy level also indicates a more powerful and / or capable control device, which also becomes a more suitable candidate for being a master control device.
[0054] The control device with the highest hierarchy level in the system should regularly broadcast this periodic message to announce its control of the system. By incorporating the highest hierarchy level into the periodic beacon, confusion among multiple control devices regarding which device is the master control device is resolved. This reduces the likelihood of control devices receiving conflicting commands.
[0055] In the present invention, conflicts due to simultaneous transmissions from more than one control device are not considered. This is because the communication layers of the control network, such as the physical (PHY) layer or the media access control (MAC) layer, typically provide mechanisms for conflict avoidance. For example, in the DALI standard IEC 62386-101, conflict avoidance, conflict detection, and conflict recovery mechanisms are defined in the method of operation of a multi-master transmitter sending forward frames. In CAN, data transmission uses a lossless bit-by-bit arbitration method with contention resolution. For wireless control networks, listen-before-talk or carrier sense multiple access (CSMA) is typically used. Therefore, conflicts in messages do not need to be considered in the disclosed invention, which deals with the system from the perspective above the PHY layer or the MAC layer. Therefore, although in Figure 3 In the embodiment of the present invention, the periodic beacon message 400 is illustrated with a fixed interval 420, a second time period or a beacon repetition time, but there may be small variations in the time when the master control device sends such periodic beacons. Such small variations may be caused by decisions made by the communication layer of the control network to avoid conflicts.
[0056] Figure 4 A flow chart of a method 500 performed on a new control device to connect to a network is shown. In step S501, the new control device sends a local beacon message during a first time period, the local beacon message having information at a local hierarchy level associated with the control device itself, in order to announce the presence of the control device to other devices on the network. In order to gain knowledge about the presence of other control devices, in step S502, the new control device monitors the network during the first time period to detect potential beacon messages from other devices on the network. If the new control device wishes to operate as a non-control device due to power limitations, energy saving targets, or some other reason, it may opt out of the competition to act as the master control device. Otherwise, in step S503, the new control device should perform a local evaluation based on at least one other beacon message received from another control device during the first time period.
[0057] If the new control device receives at least one other beacon message, then in step S504, the new control device determines a highest stratum level from the local stratum level and a first set of stratum levels, the first set of stratum levels corresponding to the stratum levels received in the at least one other beacon message during the first time period. In one embodiment of this step, the new control device first records the highest stratum level contained in the at least one other beacon message received during the first time period, and then compares the local stratum level with the recorded highest stratum level received from other control devices on the network.
[0058] If the comparison performed in step S505 is positive (which means that the local hierarchy level is higher than the remaining hierarchy levels), the new control device will become the new master control device by storing the local hierarchy level as the master hierarchy level in step S506, periodically sending local beacon messages as the master control device after each second time period in step S507, and continuously monitoring the network in step S508.
[0059] If the comparison performed in step S505 is negative (which means that the local hierarchy level is not higher than the remaining hierarchy levels), the new control device will make itself a non-master control device by storing the highest hierarchy level in the first set as the master hierarchy level in step S509 and then continuously monitoring the network in step S510.
[0060] It may also happen in step 503 that the new control device learns that no beacon message has been received from another control device, and then it will also follow steps S506 - S508 to assume the role of the master control device and operate as the master control device.
[0061] Considering that all control devices are hot-swappable, it is necessary to continue monitoring the network as a master control device as well as non-master control devices to handle such a highly dynamic network environment.
[0062] Preferably, the first time period is longer than the second time period. During the first time period, the new controller attempts to obtain a complete and accurate overview of the other controllers in the network, while the second time period corresponds to the master controller's beacon repetition time. This arrangement helps address timing accuracy issues among multiple controllers (such as clock drift between the master and new controllers), as well as the aforementioned minor timing variations occasionally imposed by the communication layer for collision avoidance. This constraint makes the method more efficient, but the system can also handle situations where the first time period is actually shorter than the second time period (the beacon repetition time). In this case, the new controller may initially make an incorrect decision and send periodic beacons as the new master controller. Since all other controllers are also continuously monitoring the network, controllers at higher hierarchical levels will also attempt to overrule the new controller by sending periodic beacon messages. The system can then correct any temporary erroneous decision made by the new controller due to the short first time period.
[0063] Figure 5 A flowchart illustrates a method 600 performed on a non-master control device after connecting to a control network. As the network continues to be monitored, in step S601, the non-master control device updates its assessment within a time window or duration that is at least twice the second time period. This time window or duration is configured such that if there are active control devices in the system, the non-master control device should be able to receive at least one beacon message from the master control device, regardless of various timing variations. Then, in step S602, the non-master control device performs an assessment based on the reception during this time window or duration.
[0064] If at least one beacon message is received, in step S602, the non-master device first determines the highest hierarchy level from a stored master hierarchy level and a second set of hierarchy levels, the second set of hierarchy levels corresponding to hierarchy levels received in at least one beacon message within a duration at least twice the second time period. In step S604, if the stored master hierarchy level is the same as the highest hierarchy level in the second set, this means the original master device is still active, and the non-master device proceeds to the next evaluation cycle. If the stored master hierarchy level is different from the highest hierarchy level in the second set, this may indicate that a new control device with a higher hierarchy level than the current master device has been connected, or that the current master device is no longer active and a new control device has been connected. In step S605, the non-master device further compares its local hierarchy level with the highest hierarchy level in the second set. In step S606, if the comparison indicates that the local hierarchy level is higher, the non-master device concludes that the original master device is no longer active and has the highest hierarchy level in the system. Then, in step S607, the non-master control device replaces the stored master hierarchy level with its local hierarchy level, and in step S608, periodically transmits a local beacon message as the master control device after each second time period. On the other hand, if the non-master control device learns in step S606 that the local hierarchy level is not higher than any hierarchy level in the second set, this means that a new master control device has appeared, and it will simply update the locally recorded master hierarchy level by replacing the master hierarchy level in memory with the highest hierarchy level in the second set, as illustrated in step S609.
[0065] If no beacon message is received, then in step S602 the non-master control device assumes that it becomes the only control device in the system, and it will then follow the same steps as S607 and S608 to operate as the new master control device.
[0066] Similarly, Figure 6A flowchart of a method 700 performed on a master control device is shown. As a normal routine for acting as a master control device, in step S701, the master control device periodically transmits a local beacon message after each second time period to announce its highest hierarchy level and control of the system. To obtain updated information about newly connected control devices, in step S702, the master control device monitors the network during each second time period, or in the interval between beacon transmissions. In step S703, the master control device may or may not detect any additional beacon messages. If no additional beacon messages are detected, this means no new control devices have connected, the master control device still holds the highest hierarchy level in the system, and it will continue its normal operations (returning to step S701). If the master control device does receive one or more beacon messages in step S703, it will perform further evaluation in step S704 to determine the highest hierarchy level from among the stored master hierarchy level and a third set of hierarchy levels, the third set of hierarchy levels corresponding to the hierarchy levels received in at least one other beacon message. In step S705, the master control device evaluates whether any of the newly received hierarchy levels is higher than the current master hierarchy level (or its local hierarchy level). If so, the master control device will relinquish its control by first stopping periodically sending local beacon messages in step S706 and then replacing the master hierarchy level in memory with the highest hierarchy level in the third set in step S707.
[0067] In the above, Figure 4 、 Figure 5 and Figure 6 Depicted as separate processes. Figure 4 It's about new control devices connected to the network. Figure 5 It is about control devices operating as non-master control devices. Figure 6 It is about the control device operating as the master control device. It should be recognized that these processes are linked to each other in a more complete state machine. Figure 4 In the example, S507 and S508 determine that the new control device is connected as the master control device, and it will then continue from S701 in its new role. Figure 6 Similarly, S510 determines that a new control device is connected as a non-master control device, and then it will continue from S601 Figure 5 The same is true for the non-master control device that undergoes a new evaluation in step S608 to become the new master control device, and the new master control device then proceeds to step S701. Conversely, step S601 is the next step after S707, at which point the original master control device relinquishes control and becomes a non-master control device.
[0068] In order to provide an overview of the possible state transitions of a new control device that is configured to be connected to the control network, Figure 7 The following diagram shows a state diagram for a control device. Three states are defined: the new control device state (NC), the master control device state (MC), and the non-master control device state (NM). The state machine begins in the NC state, where the new control device is configured to connect to the network. After connecting, the new control device transitions to the MC state or the NM state, depending on its local hierarchical level and the hierarchical levels of other coexisting control devices. The following transition conditions are defined:
[0069] c1 represents a condition for the new control device to assume the role of the master control device. This condition may be that the new control device does not receive another beacon message during the first time period. c1 may also be that the new control device does receive at least one other beacon message during the first time period, but the local level of the new control device is higher than a level in the first set of level levels, and the first set of level levels corresponds to the level level received in the at least one other beacon message during the first time period.
[0070] -c2 represents a condition for the new control device to play the role of a non-master control device, wherein the new control device receives at least one other beacon message during the first time period and the local hierarchy level of the new control device is not higher than any hierarchy level in the first set of hierarchy levels.
[0071] c3 indicates a condition for maintaining a non-master device in the same state. The non-master device monitors the network for a duration at least twice the beacon repetition time. c3 can be a periodic beacon received regularly from the master device; c3 can also be another new control device with a higher stratum level than the current master device announcing its presence; c3 can also be a condition where the non-master device's local stratum level is no higher than any stratum level in a second set of stratum levels, the second set of stratum levels corresponding to stratum levels received in at least one beacon message for a duration at least twice the second time period.
[0072] -c4 indicates a condition that causes a non-master device to switch to a master device. This condition may be that the non-master device fails to detect at least one beacon message for a duration that is at least twice the second time period. Alternatively, the non-master device does detect at least one beacon message for a duration that is at least twice the second time period, but its local hierarchy level is higher than the highest hierarchy level in the second set of hierarchy levels.
[0073] -c5 indicates a condition for maintaining the master control device in the same state. This condition may be that the master control device does not detect another beacon message during each beacon repetition time interval. Alternatively, this condition may be that the master control device detects at least one other beacon message during the beacon repetition time, but the master control device's local hierarchy level is higher than the highest hierarchy level in a third set of hierarchy levels, the third set of hierarchy levels corresponding to the hierarchy level received in at least one other beacon message.
[0074] -c6 indicates the conditions that cause the master device to switch to a non-master device. This switching occurs when the master device detects at least one other beacon message during the beacon repetition time, and the highest level in the third set of levels is higher than the master device's local level.
[0075] Operating as a master control device may consume more power for periodic beacon transmission, data querying, processing, and command transmission. It is also possible that a control device may choose to operate as a non-master control device due to power limitations or other reasons. This also means that the control device does not send periodic beacons, even though it has the highest hierarchy level in the system. Or the former master control device may stop sending periodic beacons at some point for similar reasons. As illustrated in steps S508 and S510, choosing to give up becoming the master control device also indicates that the control device will passively monitor the channel and respond when receiving queries or communications from the master control device, without transitioning to another state. This situation will be handled automatically by the system in the same manner as when the master control device is removed from the system or fails.
[0076] The method according to the present invention can be implemented on a computer as a computer-implemented method, or in dedicated hardware, or in a combination of both.
[0077] The executable code of the method according to the present invention may be stored on a computer program product. Examples of computer program products include a memory device, an optical storage device, an integrated circuit, a server, online software, etc. Preferably, the computer program product comprises non-transitory program code means stored on a computer-readable medium for performing the method according to the present invention when the program product is executed on a computer.
[0078] In a preferred example, the computer program comprises computer program code means adapted to perform the steps of the method according to the invention when the computer program is run on a computer.Preferably, the computer program is embodied on a computer readable medium.
[0079] Methods, systems, and computer-readable media (transitory and non-transitory) may also be provided for implementing selected aspects of the above-described embodiments.
[0080] The term "controller" is generally used herein to describe various devices related to functions such as the operation of one or more light sources. A controller can be implemented in a variety of ways (such as, for example, with dedicated hardware) to perform the various functions discussed herein. A "processor" is an example of a controller that employs one or more microprocessors that can be programmed using software (e.g., microcode) to perform the various functions discussed herein. A controller can be implemented with or without a processor, and can also be implemented as a combination of dedicated hardware that performs some functions and a processor (e.g., one or more programmed microprocessors and associated circuitry) that performs other functions. Examples of controller components that may be employed in various embodiments of the present disclosure include, but are not limited to, conventional microprocessors, application-specific integrated circuits (ASICs), and field-programmable gate arrays (FPGAs).
[0081] In various embodiments, a processor or controller may be associated with one or more storage media (collectively referred to herein as "memory," e.g., volatile and non-volatile computer memory such as RAM, PROM, EPROM, and EEPROM, floppy disks, compact disks, magnetic tape, etc.). In some embodiments, the storage media may be encoded with one or more programs that, when executed on one or more processors and / or controllers, perform at least some of the functions discussed herein. The various storage media may be fixed within the processor or controller, or may be transportable such that one or more programs stored thereon can be loaded into the processor or controller in order to implement various aspects of the invention discussed herein. The terms "program" or "computer program" are used herein in a generic sense to refer to any type of computer code (e.g., software or microcode) that can be used to program one or more processors or controllers.
[0082] The term "network" as used herein refers to any interconnection of two or more devices (including controllers or processors) that facilitates the transport of information (e.g., for device control, data storage, video distribution, etc.) between any two or more devices coupled to the network. Moreover, as used herein, the term "network" can refer to a single network or to multiple networks (whether or not connected directly to one another). Further, the term "network" as used herein does not require any specific architecture or communication standard (e.g., wired or wireless, bus, star, tree, mesh, etc.). For lighting control, DALI is one such network-based system, and originally it was referred to as the DALI bus, as specified by technical standards IEC 62386 and IEC 60929. More recently, a wireless extension of DALI is available, which enables DALI networks to communicate via wireless radio frequency communications.
[0083] The indefinite articles "a" and "an," as used herein in the specification and in the claims, unless clearly indicated to the contrary, should be understood to mean "at least one"
[0084] As used herein in the specification and in the claims, "or" should be understood to have the same meaning as "and / or" as defined above. For example, when used in the context of a list of elements, "or" should be understood as meaning elements from the list are included individually, but also in combination and optionally in addition to elements not specifically listed. Only terms clearly indicated to the contrary, such as "only one of" or "exactly one of," or "consisting of," when used in the claims, will refer to the inclusion of exactly one element from a list of elements. In general, the term "or" as used herein unless otherwise indicated to the contrary, is used in the inclusive sense of "and / or" only when the exclusionary term "either" is absolutely necessitated by the context, such as when used in the phrase "either A or B." "Consisting essentially of," when used in the claims, should have the normal meaning as used in the patent law field.
[0085] As used herein in the specification and in the claims, the phrase "at least one," when used in the context of a list of elements, should be understood as meaning at least one of each element in the list, but not necessarily including at least one of every element specifically listed within the phrase, and not excluding elements of the list from being combinable with one another or with other elements not specifically listed within the phrase. This definition also allows that elements specifically identified within the phrase can optionally be present other than the elements specifically identified within the phrase, whether related or unrelated to those elements specifically identified within the phrase.
[0086] It should also be understood that, unless clearly indicated to the contrary, in any methods claimed herein that include more than one step or act, the order of the steps or acts of the method is not necessarily limited to the order in which the steps or acts are recited.
[0087] In the claims, as well as in the specification above, all transitional phrases such as “comprising,” “including,” “carrying,” “having,” “containing,” “involving,” “holding,” “composed of,” and the like are to be understood to be open-ended, i.e., to mean including but not limited to. Only the transitional phrases “consisting of’ and “consisting essentially of’ shall be closed or semi-closed transitional phrases, respectively.
Claims
1. A control device (200, 200a, 200b, 200c), wherein the control device comprises: - memory (220); - Communication subsystem (230); as well as - a controller (210); The control device (200, 200a, 200b, 200c) is characterized in that: The control device (200, 200a, 200b, 200c) is configured to be connected to a lighting control network (110), the lighting control network comprising at least one control device and at least one control apparatus (300), wherein a control device having a highest hierarchical level among the at least one control device is selected as a master control device, the master control device being allowed to periodically send a beacon message at each beacon repetition time (420) and send a command to the at least one control apparatus; Wherein the communication subsystem (230) is configured to: - sending a local beacon message within a first time period, the local beacon message having information about a local hierarchy level (410) associated with the corresponding control device itself, to announce the presence of the corresponding control device to devices on the network (110), and - monitoring the network (110) during the first time period to detect potential beacon messages from other devices on the network (110); The controller (210) is configured to: - evaluating whether the corresponding control device will be selected as the master control device based on a potential beacon message detected by the communication subsystem (230) during the first time period, wherein the evaluation is performed by comparing a local hierarchy level of the corresponding control device with one or more other hierarchy levels, the one or more other hierarchy levels being included in the detected potential beacon message; wherein the first time period begins when the control device (200, 200a, 200b, 200c) is connected to the network (110), and the first time period is longer than the beacon repetition time (420); wherein the control device (200, 200a, 200b, 200c) is configured to, upon detecting that its local hierarchy level is the highest hierarchy level in the system, select itself as the master control device to periodically send a beacon message (400) at each beacon repetition time (420) and send a command to the at least one control device (300), wherein the beacon message includes the highest hierarchy level (410); and wherein the master control device is further configured to send a command to the at least one control device (300); and The at least one control device (300) is configured to execute commands received from the master control device.
2. The control device (200, 200a, 200b, 200c) of claim 1, wherein when at least one other beacon message is received by the communication subsystem during the first time period, the controller is further configured to, after the first time period: - determining a highest stratum level from said local stratum level and a first set of stratum levels, said first set of stratum levels corresponding to stratum levels received in said at least one other beacon message during said first time period; When the local hierarchy level is higher than the hierarchy levels in the first set, - the controller (210) is further configured to select the control device as the master control device and store the local hierarchy level as the master hierarchy level in the memory (220); The communication subsystem (230) is further configured to: - act as the master control device, periodically send a local beacon message after each beacon repetition time, and - Continuously monitoring the network.
3. The control device (200, 200a, 200b, 200c) according to claim 2, wherein when the local hierarchy level is not higher than any hierarchy level in the first set, - the controller (210) is further configured to store in the memory (220) a highest hierarchy level received from the at least one other beacon message; - The communication subsystem (230) is further configured to continuously monitor the network.
4. The control device (200, 200a, 200b, 200c) according to any one of claims 1 to 3, wherein when the communication subsystem does not receive another beacon message during the first time period, the controller (210) is configured to, after the first time period: - selecting the control device as the master control device and storing the local hierarchy level as the master hierarchy level in the memory (220), and Wherein the communication subsystem is further configured to: - acting as the master control device, periodically sending a local beacon message after each beacon repetition time, and - Continuously monitoring the network.
5. The control device (200, 200a, 200b, 200c) according to claim 1, wherein the information on the hierarchical level is one of a classification number, a hierarchical index, a group index and a category index.
6. A lighting control network system (100), comprising at least one control device (200, 200a, 200b, 200c) according to any one of claims 1 to 5 and at least one control apparatus (300), wherein the control device with the highest hierarchical level is selected as a master control device, the master control device being allowed to periodically send beacon messages at each beacon repetition time (420) and send commands to the at least one control apparatus (300), wherein - the at least one control device (200, 200a, 200b, 200c) is configured to, upon detecting that its local hierarchy level is the highest hierarchy level in the system, select itself as the master control device to periodically send a beacon message (400) at each beacon repetition time (420), the beacon message including the highest hierarchy level (410); - the master control device is further configured to send commands to the at least one control device (300); and - said at least one control means (300) being configured to execute commands received from said master control device.
7. A method for connecting a control device (200, 200a, 200b, 200c) to a lighting control network (110), the lighting control network comprising at least one control device and at least one control apparatus (300), wherein a control device having a highest hierarchy level among the at least one control device is selected as a master control device, the master control device being allowed to periodically send a beacon message at each beacon repetition time (420) and to send a command to the at least one control apparatus, the method comprising the control device (200, 200a, 200b, 200c): - sending (S501) a local beacon message within a first time period, the local beacon message having information about a local hierarchy level (410) associated with the control device itself, to announce the presence of the control device to devices on the network (110); - monitoring (S502) the network during the first time period to detect potential beacon messages from other devices on the network (110); as well as - evaluating, based on potential beacon messages detected during the first time period, whether the control device is to be selected as the master control device, wherein the evaluation is performed by comparing a local hierarchy level of the control device with one or more other hierarchy levels, the one or more other hierarchy levels being included in the detected potential beacon messages; wherein the first time period begins when the control device (200, 200a, 200b, 200c) is connected to the network (110), and the first time period is longer than the beacon repetition time (420); wherein the control device (200, 200a, 200b, 200c) selects itself as the master control device when detecting that its local hierarchy level is the highest hierarchy level in the system, to periodically send a beacon message (400) at each beacon repetition time (420) and to send a command to the at least one control device (300), wherein the beacon message includes the highest hierarchy level (410); and wherein the master control device sends a command to the at least one control device; and The at least one control device (300) executes commands received from the master control device.
8. The method according to claim 7, wherein when at least one other beacon message is received (S503) during the first time period, the method further comprises, after the first time period: - determining (S504) a highest stratum level from said local stratum level and a first set of stratum levels, said first set of stratum levels corresponding to stratum levels received in said at least one other beacon message during said first time period; When the local hierarchy level is higher than the hierarchy levels in the first set (S505), - selecting the control device as the master control device and storing (S506) the local hierarchy level as the master hierarchy level; - as the master control device, periodically sending (S507) a local beacon message after each beacon repetition time, and - Continuously monitoring (S508) the network.
9. The method according to claim 8, when the local hierarchy level is not higher than any hierarchy level in the first set (S505), the method further comprising: - storing (S509) the highest hierarchy level in said first set as the main hierarchy level; - Continuously monitoring (S510) the network.
10. The method according to any one of claims 7 to 9, wherein when no further beacon message is received during the first time period (S503), the method further comprises, after the first time period: - selecting the control device as the master control device and storing (S506) the local hierarchy level as the master hierarchy level; - as the master control device, periodically sending (S507) a local beacon message after each beacon repetition time, and - Continuously monitoring (S508) the network.
11. The method according to any one of claims 7 to 9, wherein after connecting to the network as a non-master control device, the method further comprises: - monitoring (S601) the network to detect at least one beacon message for a duration at least twice the beacon repetition time; And upon receiving at least one beacon message (S602): - determining (S603) a highest stratum level from the stored master stratum level and a second set of stratum levels, said second set of stratum levels corresponding to stratum levels received in said at least one beacon message within a duration at least twice said beacon repetition time; When the stored main hierarchy level is not the same as the highest hierarchy level in the second set (S604), - comparing (S605) said local hierarchy level with the highest hierarchy level in said second set; When the local hierarchy level is higher than the highest hierarchy level in the second set (S606), - selecting the control device as the master control device and replacing (S607) the master hierarchy level in a memory with the local hierarchy level; - as the master control device, periodically sending (S608) a local beacon message after each beacon repetition time; When the local hierarchy level is not higher than any hierarchy level in the second set (S606), - replacing (S609) said main hierarchy level in said memory with the highest hierarchy level in said second set.
12. The method according to claim 10, wherein after connecting to the network as a non-master control device, the method further comprises: - monitoring (S601) the network to detect at least one beacon message for a duration at least twice the beacon repetition time; And upon receiving at least one beacon message (S602): - determining (S603) a highest stratum level from the stored master stratum level and a second set of stratum levels, said second set of stratum levels corresponding to stratum levels received in said at least one beacon message within a duration at least twice said beacon repetition time; When the stored main hierarchy level is not the same as the highest hierarchy level in the second set (S604), - comparing (S605) said local hierarchy level with the highest hierarchy level in said second set; When the local hierarchy level is higher than the highest hierarchy level in the second set (S606), - selecting the control device as the master control device and replacing (S607) the master hierarchy level in a memory with the local hierarchy level; - as the master control device, periodically sending (S608) a local beacon message after each beacon repetition time; When the local hierarchy level is not higher than any hierarchy level in the second set (S606), - replacing (S609) said main hierarchy level in said memory with the highest hierarchy level in said second set.
13. The method according to claim 11 , wherein when at least one beacon message cannot be detected within a duration of at least twice the beacon repetition time (S602), the method further comprises, after the at least twice the beacon repetition time: - selecting the control device as the master control device and replacing (S607) the master hierarchy level in the memory with the local hierarchy level; - As the master control device, periodically sending (S608) a local beacon message after each beacon repetition time.
14. The method according to any one of claims 7 to 9, wherein after connecting to the network as the master control device, the method further comprises: - Periodically sending (S701) a local beacon message after each beacon repetition time; - monitoring (S702) the network in an interval of each beacon repetition time between two adjacent beacon messages; and wherein when the communication subsystem receives at least one other beacon message from at least one other control device (S703), the method further comprises the following steps: - determining (S704) a highest stratum level from the stored main stratum level and a third set of stratum levels, said third set of stratum levels corresponding to the stratum levels received in said at least one other beacon message; If the highest hierarchy level in the third set is higher than the stored main hierarchy level (S705), - stop (S706) periodically sending local beacon messages, and - replacing (S707) said main hierarchy level in memory with the highest hierarchy level in said third set.
15. The method according to claim 10, wherein after connecting to the network as the master control device, the method further comprises: - Periodically sending (S701) a local beacon message after each beacon repetition time; - monitoring (S702) the network in an interval of each beacon repetition time between two adjacent beacon messages; and wherein when the communication subsystem receives at least one other beacon message from at least one other control device (S703), the method further comprises the following steps: - determining (S704) a highest stratum level from the stored main stratum level and a third set of stratum levels, said third set of stratum levels corresponding to the stratum levels received in said at least one other beacon message; If the highest hierarchy level in the third set is higher than the stored main hierarchy level (S705), - stop (S706) periodically sending local beacon messages, and - replacing (S707) said main hierarchy level in memory with the highest hierarchy level in said third set.
16. A computer program product comprising a computer program which, when executed by a computer, causes the computer to perform the method according to any one of claims 7 to 15.
Citation Information
Patent Citations
Operating a cluster of peer-to-peer devices
US20150006633A1
Method for transmitting and receiving signals in proximity network and electronic device thereof
US20160150465A1
Systems and methods for identification in a neighborhood aware network
US20140313966A1