Abstract: The present invention relates to a system (100) for grouping one or more devices and a method thereof. The system (100) transmits a request to each of the one or more devices. Further, the system (100) collects information corresponding to the one or more adjacent devices from each of the one or more devices. Further, the system (100) creates a graph based on the collected information corresponding to the one or more adjacent devices. The system (100) identifies one or more pairs of parent-child group, from the one or more devices, based on the graph, each pair of the parent-child group comprises a single parent associated with a plurality of childs. Further, the system (100) assigning a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group. [To be published with FIG. 3B]
Description:
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See Section 10 and Rule 13)
Title of Invention:
A SYSTEM FOR GROUPING ONE OR MORE DEVICES AND A METHOD THEREOF
APPLICANT:
PROBUS SMART THINGS PVT. LTD
An Indian entity having address as:
63, IIIrd Floor, DaSIDC Complex, Phase-I,
Okhla Industrial Area, New Delhi- 110020
The following specification particularly describes the invention and the manner in which it is to be performed.
CROSS-REFERENCE TO RELATED APPLICATIONS AND PRIORITY
[0001] The present application does not claim priority from any other patent application.
TECHNICAL FIELD
[0002] The presently disclosed embodiments are related, in general, to grouping one or more devices. More particularly, the presently disclosed embodiments are related to a system for grouping one or more devices and a method thereof.
BACKGROUND
[0003] This section is intended to introduce the reader to various aspects of art (the relevant technical field or area of knowledge to which the invention pertains), which may be related to various aspects of the present disclosure that are described or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present disclosure. Accordingly, it should be understood that these statements in this background section are to be read in this light, and not as admissions of prior art. Similarly, a problem mentioned in the background section.
[0004] In many networked environments, particularly those involving distributed systems, IoT networks, or wireless device groups, efficient data communication and resource allocation are essential. Devices within these networks must be organized in a structured manner to ensure effective communication while optimizing power consumption, bandwidth utilization, and connection stability. A common approach to structuring such networks involves grouping devices into parent-child relationships, where parent nodes manage communication with a set of child nodes. Grouping allows for improved coordination and load balancing, but designing an optimal grouping mechanism remains a significant challenge.
[0005] The limitations of dynamic grouping approaches become particularly evident in environments that require stability and predictability. Systems that frequently restructure their groups may experience delays, disruptions, and inconsistencies in data communication. Moreover, dynamic models often fail to consider the global optimization of group formation, instead focusing on local, incremental adjustments that may not yield the most efficient distribution of device connectivity. In cases where stability and efficiency are crucial, a more structured and deterministic approach is needed to ensure that groups are optimally formed while maintaining long-term reliability.
[0006] Furthermore, ensuring proper connectivity in large-scale IoT deployments can become more complex, particularly when devices are scattered over large geographic areas. The range of cellular networks is much broader than that of Bluetooth, but a limited number of devices can be connected to cellular infrastructure due to resource constraints. Devices that fall outside of the cellular coverage area may experience poor performance or lose connectivity altogether. This requires careful planning of where and how to position cellular-enabled devices to ensure consistent connectivity while avoiding network overload. In addition, maintaining a balanced number of Bluetooth and cellular devices is crucial to prevent network congestion and ensure that devices continue to operate efficiently without overloading the communication infrastructure.
[0007] Battery consumption is another key concern in designing a communication topology. Bluetooth Low Energy (BLE) devices are inherently power-efficient, which makes them ideal for applications requiring long battery life, such as remote sensors or wearable devices. However, the extended use of mesh networks to bridge BLE’s range limitations can increase the energy consumption of individual devices as they act as relays, leading to faster battery drain. On the other hand, cellular enabled devices typically consume more power, particularly during long-range communication, and the battery life of these devices can be significantly affected when connected to a cellular network for extended periods. The challenge is to balance power consumption while maintaining an efficient and reliable communication infrastructure that supports a large number of devices over time.
[0008] The cost of maintaining a network that integrates both BLE and cellular devices also presents a significant challenge. The operational and infrastructure costs for cellular devices are generally higher due to the need for more advanced hardware and a more complex communication backhaul. BLE devices, while more cost-effective in terms of deployment and maintenance, may require additional infrastructure to ensure adequate communication range, especially when using mesh networks to extend BLE’s limited range. The system must efficiently manage these costs while ensuring that the topology meets the communication needs of all connected devices.
[0009] Additionally, existing grouping techniques may not effectively maximize the number of parent nodes while minimizing the number of child nodes. Many algorithms prioritize local optimizations, assigning Slaves to the nearest available Masters without considering the overall network topology and potential grouping efficiency. This can result in an uneven distribution of parent nodes, inefficient bandwidth usage, and reduced overall network performance. Furthermore, traditional methods that rely on continuous, real-time updates may not be suitable for networks where frequent reconfigurations introduce unnecessary overhead and instability.
[0010] Further one of the challenges with existing single-master grouping methods is the single point of failure problem. If a master node fails, all slave nodes connected to it lose network access, leading to complete communication breakdown in that group. This dependency on a single parent node creates a vulnerability in mission-critical applications where continuous connectivity is required. In environments such as industrial automation, IoT deployments, and smart cities, such failures can lead to significant disruptions, loss of data, and system inefficiencies. Additionally, maintaining a reliable network infrastructure requires high maintenance costs, especially when using dedicated connection towers to facilitate communication between devices.
[0011] Existing solutions propose a two-level grouping model that organizes devices into Masters and Super Masters, with Slaves dynamically assigned to the nearest available Master. The selection of masters is based on factors such as Wi-Fi signal strength and battery capacity, and the groups continuously evolve based on real-time diagnostics from network nodes. These methods employ greedy-like approach, prioritizing the best signal strength for master selection and attaching the nearest slaves to form groups. However, these solutions fail to disclose certain key aspects relevant to improved grouping methodologies. It does not consider alternative methods of group formation that optimize the balance between Masters and Slaves across the entire network graph. Additionally, these conventional solutions do not address non-dynamic grouping approaches that provide stability by avoiding continuous real-time updates. Furthermore, it does not incorporate graph-based iteration techniques for determining efficient group structures. These omissions leave gaps in optimizing grouping efficiency, stability, and computational overhead in networked environments.
[0012] In view of the above, addressing the aforementioned technical challenges requires an improved solution for grouping the one or more devices.
[0013] Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of described systems with some aspects of the present disclosure, as set forth in the remainder of the present application and with reference to the drawings.
SUMMARY
[0014] This summary is provided to introduce concepts related to a system for grouping one or more devices and a method thereof and the concepts are further described below in the detailed description. This summary is not intended to identify essential features of the claimed subject matter nor is it intended for use in determining or limiting the scope of the claimed subject matter.
[0015] According to embodiments illustrated herein, a system for grouping one or more devices is disclosed. Further, the system may comprise a processor and a memory communicatively coupled with the processor. Further, the memory may be configured to store programmed instructions that cause the processor to perform the following operations. Further, the processor may be configured to transmit a request to each of the one or more devices. Further, each device from the one or more devices is within a predefined communication range to one or more adjacent devices from the one or more devices. Further, the processor may be configured to collect information corresponding to the one or more adjacent devices from each of the one or more devices. Further, the processor may be configured to create a graph based on the collected information corresponding to the one or more adjacent devices. Further, the processor may be configured to identify one or more pairs of patent-child group, from the one or more devices, based on the graph. Further, each pair of the parent-child group may comprise a single parent associated with a plurality of childs. Further, the processor may be configured to assign a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group. Further, the processor may be configured to assign a second communication channel from the one or more communication channels to each child from the one or more pairs of the patent-child group.
[0016] According to embodiments illustrated herein, a method for grouping the one or more devices is disclosed. Further, the method may be implemented by an electronic device including the processor and the memory communicatively coupled to the processor, with the memory configured to store processor-executable programmed instructions. Further, the method may comprise a step of transmitting the request to each of the one or more devices. Further, each device from the one or more devices may be within the predefined communication range to one or more adjacent devices from the one or more devices. Further, the method may comprise a step of collecting information corresponding to the one or more adjacent devices from each of the one or more devices. Further, the method may comprise a step of creating a graph based on the collected information that may be corresponding to the one or more adjacent devices. Further, the method may comprise a step of identifying the one or more pairs of parent-child group, from the one or more devices, based on the graph. Further, each pair of the parent-child group may comprise the single parent associated with a plurality of childs. Further, the method may comprise a step of assigning the first communication channel from the one or more communication channels to each parent from the one or more pairs of the parent-child group, and the second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group.
[0017] According to embodiments illustrated herein, a non-transitory computer-readable storage medium having stored thereon, a set of computer-executable instructions causing a computer comprising one or more processors to perform steps. Further, a step may comprise of transmitting the request to each of the one or more devices. Further, each device from the one or more devices may be within the predefined communication range to the one or more adjacent devices from the one or more devices. Further, a step may comprise of collecting information corresponding to the one or more adjacent devices from each of the one or more devices. Further, a step may comprise of creating the graph based on the collected information corresponding to the one or more adjacent devices. Further, a step may comprise of identifying one or more pairs of parent-child group, from the one or more devices, based on the graph. Further, each pair of the parent-child group may comprise the single parent associated with the plurality of childs. Further, a step may comprise of assigning the first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group, and the second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group.
[0018] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
BRIEF DESCRIPTION OF DRAWINGS
[0019] The accompanying drawings illustrate the various embodiments of systems, methods, and other aspects of the disclosure. Any person with ordinary skills in art will appreciate that the illustrated element boundaries (e.g., boxes, groups of boxes, or other shapes) in the figures represent one example of the boundaries. In some examples, one element may be designed as multiple elements, or multiple elements may be designed as one element. In some examples, an element shown as an internal component of one element may be implemented as an external component in another, and vice versa. Further, the elements may not be drawn to scale.
[0020] Various embodiments will hereinafter be described in accordance with the appended drawings, which are provided to illustrate and not to limit the scope in any manner, wherein similar designations denote similar elements, and in which:
[0021] FIG. 1 is a block diagram that illustrates a system (100) for grouping one or more devices, in accordance with an embodiment of present subject matter.
[0022] FIG. 2 is a block diagram that illustrates various components of an application server (104) configured for performing steps of grouping the one or more devices, in accordance with an embodiment of the present subject matter.
[0023] FIG. 3A illustrates a conventional system for grouping of the one or more devices.
[0024] FIG, 3B illustrates a system (300) for grouping the one or more devices, in accordance with an embodiment of the present subject matter.
[0025] FIG. 4 is a flowchart that illustrates a method (400) for grouping the one or more devices, in accordance with an embodiment of the present subject matter.
[0026] FIG. 5 illustrates a block diagram (500) of an exemplary computer system for implementing embodiments consistent with the present subject matter.
DETAILED DESCRIPTION
[0027] The present disclosure may be best understood with reference to the detailed figures and description set forth herein. Various embodiments are discussed below with reference to the figures. However, those skilled in the art will readily appreciate that the detailed descriptions given herein with respect to the figures are simply for explanatory purposes as the methods and systems may extend beyond the described embodiments. For example, the teachings presented, and the needs of a particular application may yield multiple alternative and suitable approaches to implement the functionality of any detail described herein. Therefore, any approach may extend beyond the particular implementation choices in the following embodiments described and shown.
[0028] References to “one embodiment,” “at least one embodiment,” “an embodiment,” “one example,” “an example,” “for example,” and so on indicate that the embodiment(s) or example(s) may include a particular feature, structure, characteristic, property, element, or limitation but that not every embodiment or example necessarily includes that particular feature, structure, characteristic, property, element, or limitation. Further, repeated use of the phrase “in an embodiment” does not necessarily refer to the same embodiment. The terms “comprise”, “comprising”, “include(s)”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, system or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or system or method. In other words, one or more elements in a system or apparatus preceded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or apparatus. Further, the terms “portable device”, “measuring device”, or any other variations thereof, are intended to cover a similar device.
[0029] An objective of the present disclosure is to provide a system for grouping one or more devices within a predefined communication range.
[0030] Another objective of the present disclosure is to enable the transmission of requests to each device in the group to obtain information about adjacent devices.
[0031] Another objective of the present disclosure is to facilitate the collection of information corresponding to adjacent devices from each device in the group.
[0032] Yet another objective of the present disclosure is to create a graph based on the collected information, which represents the relationships between devices in the group.
[0033] Yet another objective of the present disclosure is to dynamically adjust the grouping of devices based on real-time information about the adjacent devices within the predefined communication range.
[0034] Yet another objective of the present disclosure is to provide an efficient method for determining the optimal parent-child relationships for improved network management and communication stability.
[0035] Yet another objective of the present disclosure is to reduce interference and congestion within a device network by assigning separate communication channels to parent and child devices.
[0036] Yet another objective of the present disclosure is to enable scalability in the device grouping process, allowing for the addition of new devices to the system without disrupting existing groupings.
[0037] Yet another objective of the present disclosure is to enable seamless communication between devices in the system by ensuring that each parent and child device is assigned an appropriate communication channel based on the network structure.
[0038] Yet another objective of the present disclosure is to increase the overall throughput of the network by efficiently distributing communication resources across parent-child device groups.
[0039] Yet another objective of the present disclosure is to allow for automatic reconfiguration of device groupings in response to changes in the network, such as devices moving out of or into communication range.
[0040] Yet another objective of the present disclosure is to improve the energy efficiency of the system by optimizing communication channel assignments and minimizing unnecessary transmissions.
[0041] Yet another objective of the present disclosure is to provide a robust mechanism for handling communication failures or disruptions by allowing for the reconfiguration of parent-child groups and communication channels in real time.
[0042] Yet another objective of the present disclosure is to improve the overall security of the device network by ensuring that communication channels are dynamically assigned and isolated based on the identified parent-child relationships.
[0043] FIG. 1 is a block diagram that illustrates a system (100) for grouping one or more devices, in accordance with an embodiment of present subject matter. The system (100) typically includes a database server (102), an application server (104), a communication network (106), and one or more portable devices (108). The database server (102), the application server (104), and the one or more portable devices (108) are typically communicatively coupled with each other via the communication network (106). In an embodiment, the application server (104) may communicate with the database server (102), and the one or more portable devices (108) using one or more protocols such as, but not limited to, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP)/User Datagram Protocol (UDP), Wireless Application Protocol (WAP), Bluetooth Low Energy (BLE), and the like, to communicate with one another.
[0044] In one embodiment, the database server (102) may refer to a computing device configured to store data related to application, a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group, a second communication channel from one or more communication channels to each child from the one or more pairs of the parent-child group, one or more pairs of parent-child group from the one or more devices, collected information of the adjacent devices from the one or more devices and a combination thereof.
[0045] In an embodiment, the database server (102) may include a special purpose operating system specifically configured to perform one or more database operations on the stored content. Examples of database operations may include, but are not limited to, Select, Insert, Update, and Delete. In an embodiment, the database server (102) may include hardware that may be configured to perform one or more predetermined operations. In an embodiment, the database server (102) may be realized through various technologies such as, but not limited to, Microsoft® SQL Server, Oracle®, IBM DB2®, Microsoft Access®, PostgreSQL®, MySQL®, SQLite®, distributed database technology and the like. In an embodiment, the database server (102) may be configured to utilize the application server (104) for grouping the one or more devices.
[0046] A person with ordinary skills in art will understand that the scope of the disclosure is not limited to the database server (102) as a separate entity. In an embodiment, the functionalities of the database server (102) can be integrated into the application server (104) or into the one or more portable devices (108).
[0047] In an embodiment, the application server (104) may refer to a computing device or a software framework hosting the application or a software service. In an embodiment, the application server (104) may be implemented to execute procedures such as, but not limited to, programs, routines, or scripts stored in one or more memories for supporting the hosted application or the software service. In an embodiment, the hosted application or the software service may be configured to perform one or more predetermined operations. The application server (104) may be realized through various types of application servers such as, but are not limited to, a Java application server, a .NET framework application server, a Base4 application server, a PHP framework application server, or any other application server framework.
[0048] In an embodiment, the application server (104) may be configured to utilize the database server (102) and the one or more measuring device (108), in conjunction, for grouping one or more devices. In an implementation, the application server (104) may be configured to transmit a request to each of the one or more devices. In one embodiment, the application server (104) may be configured to collect information corresponding to the one or more adjacent devices from each of the one or more devices. Further, the application server (104) may be configured to create a graph based on the collected information corresponding to the one or more adjacent devices. Further, the application server (104) may be configured to identify one or more pairs of parent-child group, from the one or more devices, based on the graph. Further, the application server (104) may be configured to assign a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent child group and a second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group.
[0049] In an embodiment, the communication network (106) may correspond to a communication medium through which the application server (104), the database server (102), and the one or more measuring device (108) may communicate with each other. Such a communication may be performed in accordance with various wired and wireless communication protocols. Examples of such wired and wireless communication protocols include, but are not limited to, Transmission Control Protocol and Internet Protocol (TCP/IP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), Wireless Application Protocol (WAP), File Transfer Protocol (FTP), ZigBee, EDGE, infrared IR), IEEE 802.11, 802.16, 2G, 3G, 4G, 5G, 6G, 7G cellular communication protocols, and/or Bluetooth (BT) communication protocols. The communication network (106) may either be a dedicated network or a shared network. Further, the communication network (106) may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like. The communication network (106) may include, but is not limited to, the Internet, intranet, a cloud network, a Wireless Fidelity (Wi-Fi) network, a Wireless Local Area Network (WLAN), a Local Area Network (LAN), a cable network, the wireless network, a telephone network (e.g., Analog, Digital, POTS, PSTN, ISDN, xDSL), a telephone line (POTS), a Metropolitan Area Network (MAN), an electronic positioning network, an X.25 network, an optical network (e.g., PON), a satellite network (e.g., VSAT), a packet-switched network, a circuit-switched network, a public network, a private network, and/or other wired or wireless communications network configured to carry data.
[0050] In an embodiment, the one or more portable devices (108) may refer to one of a utility meter, electricity meter, gas meter, water meter, hybrid meters, digital meter, prepaid meter, postpaid meter, residential meter, commercial meter, industrial meter, sensor used by a user. The one or more portable devices (108) may comprise of one or more processors and one or more memory. The one or more memories may include computer readable code that may be executable by one or more processors to perform predetermined operations. In an embodiment, the one or more portable devices (108) may present a web user interface for the execution of the grouping of the one or more devices using the application server (104). Example web user interfaces presented on the one or more portable devices (108) to display information about the data. Examples of the one or more portable devices (108) may include, but are not limited to, a personal computer, a laptop, a computer desktop, a personal digital assistant (PDA), a mobile device, a tablet, or any other computing device.
[0051] The system (100) can be implemented using hardware, software, or a combination of both, which includes using where suitable, one or more computer programs, mobile applications, or “apps” by deploying either on-premises over the corresponding computing terminals or virtually over cloud infrastructure. The system (100) may include various micro-services or groups of independent computer programs which can act independently in collaboration with other micro-services. The system (100) may also interact with a third-party or external computer system. Internally, the system (100) may be the central processor of all scheduled events for grouping one or more devices of the system.
[0052] FIG. 2 illustrates a block diagram illustrating various components of the application server (104) configured for performing stepwise grouping of one or more devices, in accordance with an embodiment of the present subject matter. Further, the FIG. 2 is explained in conjunction with the FIG. 1. Here the application server (104) preferably includes a processor (202), a memory (204), a transceiver (206), an Input/Output (208), a transmitting unit (210), a collection unit (212), an identification unit (214) and a user interface (UI) unit (216). The processor (202) is further preferably communicatively coupled to the memory (204), the transceiver (206), the Input/Output unit (208), the transmitting unit (210), the collection unit (212), the identification unit (214), the UI unit (216), while the transceiver (206) is preferably communicatively coupled to the communication network (106).
[0053] The processor (202) comprises suitable logic, circuitry, interfaces, and/or code that may be configured to execute a set of instructions stored in the memory (204), and may be implemented based on several processor technologies known in the art. The processor (202) works in coordination with the transceiver (206), the Input/Output unit (208), the transmitting unit (210), the collecting unit (212), the identification unit (214), and the UI unit (216). Examples of the processor (202) include, but not limited to, standard microprocessor, microcontroller, central processing unit (CPU), an X86-based processor, a Reduced Instruction Set Computing (RISC) processor, an Application- Specific Integrated Circuit (ASIC) processor, and a Complex Instruction Set Computing (CISC) processor, distributed or cloud processing unit, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions and/or other processing logic that accommodates the requirements of the present invention.
[0054] The memory (204) comprises suitable logic, circuitry, interfaces, and/or code that may be configured to store the set of instructions, which are executed by the processor (202). Preferably, the memory (204) is configured to store one or more programs, routines, or scripts that are executed in coordination with the processor (202). Additionally, the memory (204) may include any computer-readable medium or computer program product known in the art including, for example, volatile memory, such as static random-access memory (SRAM) and dynamic random-access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, a Hard Disk Drive (HDD), flash memories, Secure Digital (SD) card, Solid State Disks (SSD), optical disks, magnetic tapes, memory cards, virtual memory and distributed cloud storage. The memory (204) may be removable, non-removable, or a combination thereof. Further, the memory (204) may include routines, programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types. The memory (204) may include programs or coded instructions that supplement applications and functions of the system (100). In one embodiment, the memory (204), amongst other things, serves as a repository for storing data processed, received, and generated by one or more of the programs or the coded instructions. In yet another embodiment, the memory (204) may be managed under a federated structure that enables adaptability and responsiveness of the application server (104).
[0055] The transceiver (206) comprises suitable logic, circuitry, interfaces, and/or code that may be configured to receive, process or transmit information, data or signals, which are stored by the memory (204) and executed by the processor (202). The transceiver (206) is preferably configured to receive, process or transmit, one or more programs, routines, or scripts that are executed in coordination with the processor (202). The transceiver (206) is preferably communicatively coupled to the communication network (106) of the system (100) for communicating all the information, data, signal, programs, routines or scripts through the network. The transceiver (206) may be configured to receive a request for grouping the one or more devices.
[0056] The transceiver (206) may implement one or more known technologies to support wired or wireless communication with the communication network (106). In an embodiment, the transceiver (206) may include, but is not limited to, an antenna, a radio frequency (RF) transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a Universal Serial Bus (USB) device, a coder-decoder (CODEC) chipset, a subscriber identity module (SIM) card, and/or a local buffer. Also, the transceiver (206) may communicate via wireless communication with networks, such as the Internet, an Intranet and/or a wireless network, such as a cellular telephone network, a wireless local area network (LAN) and/or a metropolitan area network (MAN). Accordingly, the wireless communication may use any of a plurality of communication standards, protocols and technologies, such as: Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g and/or IEEE 802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocol for email, instant messaging, and/or Short Message Service (SMS).
[0057] The input/output (I/O) unit (208) comprises suitable logic, circuitry, interfaces, and/or code that may be configured to receive or present information. The input/output unit (208) comprises various input and output devices that are configured to communicate with the processor (202). Examples of the input devices include, but are not limited to, a keyboard, a mouse, a joystick, a touch screen, a microphone, a camera, and/or a docking station. Examples of the output devices include, but are not limited to, a display screen and/or a speaker. The I/O unit (208) may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O unit (208) may allow the system (100) to interact with the user directly or through the portable devices (108). Further, the I/O unit (208) may enable the system (100) to communicate with other computing devices, such as web servers and external data servers (not shown). The I/O unit (208) can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. The I/O unit (208) may include one or more ports for connecting a number of devices to one another or to another server. In one embodiment, the I/O unit (208) allows the application server (104) to be logically coupled to other portable devices (108), some of which may be built in. Illustrative components include tablets, mobile phones, desktop computers, wireless devices, etc.
[0058] In one embodiment, the input/output (I/O) unit (208) of the application server (104) may be configured for assigning a first communication channel from the one or more communications channels to each parent from the one or more pairs of the parent-child group. Further, the input/output (I/O) unit (208) of the application server (104) may be configured for assigning a second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group. Further, the first communication channel may be different from the second communication channel. In an exemplary embodiment, the first communication channel may correspond to a 4G communication channel. Further, the second communication channel may correspond to the BLE communication channel.
[0059] Further, the user interface (UI) unit (216) of the application server (104), is disclosed. In an embodiment, the UI unit (216) of the application server (104) may include, but not limited to an application interface, a web interface, a graphical user interface (GUI) and a touch user interface. The UI unit (216) may be configured to enable a user to interact with the system (100) via one or more portable devices (108).
[0060] In another embodiment, the transmitting unit (210) of the application server (104) is disclosed. Further, the transmitting unit (210) may be configured to transmit a request to each of the one or more devices. Further, each device from the one or more devices may be within a predefined communication range to one or more adjacent devices from the one or more devices. Further, the request to a first device from the one or more devices correspond to a command to publish information that may corresponding to the one or more adjacent devices that may be present within the predefined communication range to first device. Further, the information may correspond to the one or more adjacent devices that may comprises at least one of device name, device identifier, device type, distance, communication strength, connectivity status, diagnostic data, or a combination thereof. In an exemplary embodiment, the information that may corresponding to the one or more adjacent devices may be stored for 24 hours. Further, a list of diagnostic data may be stored in a database. Further, the information may correspond to the one pr more adjacent devices that may be connected for a predefined period time. Further, the information may correspond to the one or more adjacent devices may be stored in the memory. Further, each of the one or more devices may be connected to the one or more adjacent devices using the one or more communication channels. Further, the one or more communication channels may correspond to at least one of short-range communication, Bluetooth, Bluetooth Low Energy (BLE), long range communication, cellular communication, LTE, 4G, 5G, or a combination thereof. Further, the one or more devices may correspond to one of a utility meter, electricity, meter, gas meter, water meter, hybrid meters, digital meter, prepaid meter, postpaid meter, residential meter, commercial meter, industrial meter, sensor and a combination thereof.
[0061] In one embodiment, the collection unit (212) of the application server (104) is disclosed. The collection unit (212) comprises suitable logic, circuitry, interfaces, and/or code that may be configured to receive or present information. Further, the collection unit (212) may be configured to collect information that may correspond to the one or more adjacent devices from each of the one or more devices. In an embodiment, the information corresponding to the one or more adjacent devices are collected for a predetermined period of time. Further, a graph may be created based on the collected information that may correspond to the one or more adjacent devices. Further, the graph may be created after expiry of the predetermined period of time. Further, the graph may comprise one or more nodes and one or more edges connecting the one or more nodes. Further, the first node from the one or more nodes may correspond to a device from the one or more devices connected to one or more adjacent devices. Further, the one or more edges may correspond to the information that may correspond to the one or more adjacent devices from each of the one or more devices. Further, the processor (202) is configured to collect an updated information corresponding to the one or more devices within a predefined time period. The updated information is accounting for changes in one of device availability, connectivity status, communication strength, and a combination thereof. Further, the processor (202) is configured to update the graph based on the updated information.
[0062] In another embodiment, the identification unit (214) of the application server (104) is disclosed. Further, comprises suitable logic, circuitry, interfaces, and/or code that may be configured to receive or present information. Further, the identification unit (214) may be configured to identify one or more pairs of parent-child group, from the one or more devices, based on the graph. Further, each pair of the parent-child group may comprise a single parent that may be associated with a plurality of childs. Further, each device from the one or more devices may be associated with a parent-to-child ratio. Further, the parent-to-child ration may be configured to indicate a maximum number of child devices connected to a single parent device. Further, identifying the one or more pairs of the parent-child group may be performed in adherence to the parent-to-child ratio that may be associated with each device from the one or more devices. Further, identifying the one or more pairs of the parent-child group may correspond to identifying minimum number of parent devices from the one or more devices and associating a maximum number of child devices to each of the parent devices.
[0063] In one embodiment, the identification unit (214) may be configured to identify the one or more pairs of the parent-child group may be performed by traversing the graph using Depth-first search (DFS) traversal technique. In an exemplary embodiment, the process begins by selecting an initial node, often the root or starting point of the graph. Further, the DFS traversal technique explores each node by recursively visiting its adjacent nodes, marking them as "visited" to avoid revisiting and creating cycles. As the traversal progresses, each node acts as a parent when it connects to an unvisited adjacent node, which may then considered a child. This parent-child relationship is recorded, and the DFS traversal technique continues the search recursively until it reaches leaf nodes, where no further unvisited adjacent nodes exist. Further, the DFS traversal technique may be configured to explore other paths and continues to identify more parent-child pairs. The process repeats until all nodes in the graph are visited, and all parent-child relationships are identified. Further, the DFS may be particularly efficient for hierarchical structures because it ensures that every path in the graph is explored systematically, making it well-suited for this kind of identification. The traversal also includes backtracking to ensure every possible path nay be covered, and the identified relationships are stored in a data structure like a list or set. The DFS technique ensures that the identification unit (214) effectively identifies and records all parent-child pairs in the graph by following the depth-first approach.
[0064] In yet another embodiment, the one or more pairs of the parent-child group may be identified based on one or more parameters. Further, the one or more pairs of the parent-child groups may be identified based on one or more parameters. Further, the one or more parameters may comprise at least one of device connectivity, range, power consumption, bandwidth requirements, or a combination thereof. Further, each child from a pair of the parent-child group may be connected to a parent of the parent-child group via the second communication channel. Further, each parent from the one or more pairs of the parent-child group may be connected to the system (100) via the first communication.
[0065] Referring to FIG. 3A, a conventional system (306) for grouping one or more devices is illustrated, in accordance with an embodiment of the present subject matter. Further, the conventional system (306) is structured to operate with a server (301) and one or more portable devices (302a, 302b, ..., 302n). Further, the one or more portable devices (302a, 302b, ..., 302n) may be directly connected to the server (301) via cellular communication network. Further, the one or more portable devices (302a, 302b, ..., 302n) may comprises at least one of utility meters, gas meters, water meters, hybrid meters, digital meters, prepaid meters, postpaid meters, residential meters, commercial meters, or industrial meters, or sensors, or a combination thereof.
[0066] However, the drawbacks of the conventional meter system (306) may include significant limitations in scalability and fault tolerance. The lack of a hierarchical structure in device communication leads to an inefficient allocation of resources, where the server (301) bears a disproportionate load from handling direct communication with each individual measuring device (302a, 302b, ..., 302n). Further, the conventional system (306) may increases the risk of system overload, particularly in large-scale deployments where the number of devices is extensive, requiring substantial computational resources for processing and managing data traffic. Additionally, the absence of inter-device communication means that in the event of a failure of one measuring device (302a, 302b, ..., 302n), the conventional system (306) may not provide alternative paths for transmitting the data from the affected device. Further, the lack of redundancy may cause delays or data loss, affecting overall system reliability. Additionally, the increased power consumption of each device results in shorter device lifespans, contributing to higher maintenance and operational costs over time.
[0067] In this conventional system (306), there is no master-slave relationship defined between the portable devices (302a, 302b, ..., 302n). This lack of structured hierarchy may lead to an increased load on the server (301). The absence of a master-slave configuration can result in higher power consumption, as each measuring device (302a, 302b, ..., 302n) consumes more energy to communicate directly with the server (301).
[0068] Additionally, in the conventional system (306), the portable devices (302a, 302b, ..., 302n) are not interconnected with each other. They do not have predefined knowledge of the communication range of other devices in the system, which may hinder efficient data transmission and coordination between devices.
[0069] The failure of the server (301) in the conventional system (306) poses another significant risk. As the central point of communication and data aggregation, the server (301) failure can disrupt the entire system, resulting in the loss of connectivity and data from the one or more portable devices (302a, 302b, ..., 302n). Further, the single point of failure may be a critical vulnerability, particularly in mission-critical applications where continuous monitoring and data collection are essential. Further, because the conventional system (306) does not leverage adaptive or dynamic grouping mechanisms for devices, it may lack the flexibility to reconfigure or optimize the network based on real-time conditions. As a result, the conventional system (306) may suffer from reduced efficiency, especially as device density increases or environmental conditions change.
[0070] FIG. 3B illustrates an optimized hierarchical system (300) designed for efficient communication and grouping of multiple devices using a parent-child structure. Further, the one or more portable devices (303, 304, 305) may be configured to communicate directly with a server (308). This system (300) establishes structured connectivity, reducing bandwidth consumption, enhancing scalability, and optimizing network efficiency. Further, the server (308) act as a primary data management unit, responsible for overseeing device interactions, processing collected information, and ensuring smooth communication between different device groups. Further, the system (300) may optimize the assignment of communication roles based on the collected data, ensuring efficient use of resources. Further, the one or more user devices may be categorized into multiple parent-child groups (303, 304, and 305), each may contain a parent device that manages several child devices. Further, the one or more parent devices (303, 304, and 305) may act as intermediaries, facilitating communication between the child devices (303a, 303b, 303c, 303n; 304a, 304b; 305a, 305b, 305c) and the server (308).
[0071] The server (301) may transmit a request to each of the one or more portable devices (303, 304, and 305). Further, the request to one or more portable devices (108) may correspond to publish information regarding the corresponding adjacent one or more portable devices (108). Further, the server (308) may identify the parent from one or more parent-child groups. Further, the parent may communicate with the server (308) with the first communication channel. In an embodiment, the parent may communicate with the server (308) via 4G network. Further, the parent may be connected to the plurality of childs on the one or more portable devices (108). Further, the parent and their corresponding child may be connected via Bluetooth Low Energy (BLE).
[0072] For instance, the one or more portable devices (303, 304, 305, …, n) may be grouped together based on the predefined communication range. Further, the one or more portable devices (303, 304, 305, …, n) may form the groups of two, three, four one or more devices (303, 304, 305, …, n) or a combination thereof. For example, each measuring device from the one or more portable devices (303 a, 303 b, 303 c, …, 303 n) may send the location information along with the predefined communication range to one or more adjacent devices from the one or more devices. Further, the measuring device (303) may be adjacent to the measuring device (303 a), the measuring device (303 b), the measuring device (303 c) and the measuring device (303 n). Further, the measuring device (303b) may be adjacent to the measuring device (303), the measuring device (303 a), and the measuring device (303 c). Similarly, the measuring device (303 a) may be adjacent to the measuring device (303), (303 n), and so on. Further, based on the one or more adjacent devices information the most common device from the one or more portable devices (303 a, 303b, 303c, …, 303 n) may be set as a Master device (303) and the other adjacent portable devices (303 a, 303b, 303c, …, 303 n) may be set as Slave devices. In an exemplary embodiment, the master device (303) and one or more slave devices (303 a, 303b, 303c, …, 303 n) may be connected with the master device (303) via a short-range Bluetooth communication (BLE). in a related environment, the master device (303) may communicate with the server (308) via a 4G communication.
[0073] Additionally, if the master device (303, 305, 304) fails or shuts down, then the system (300) may run the one or more techniques to generate a new Master and Slave device. Further, the one or more technique may correspond to a graph technique, depth first search (DFS), breath first search (BFS), or a combination thereof. Further, the system (300) may treat the master devices (303, 304, 305) as a parent and their respective slave devices (303a, 303b, 303c , …, 303n) as a child node.
[0074] A person skilled in the art will understand that the scope of the disclosure should not be limited to a single domain and using the aforementioned techniques. Further, the examples provided in supra are for illustrative purposes and should not be construed to limit the scope of the disclosure.
[0075] Referring to FIG. 4, a flowchart that illustrates a method (400) for grouping the one or more devices, in accordance with at least one embodiment of the present subject matter. The method (400) may be implemented by the application server (104) including the processor (202) and the memory (204) communicatively coupled to the processor (202) and the memory (204) is configured to store processor-executable programmed instructions, caused the processor (202) to perform the following steps.
[0076] At step (402), the processor (202) may be configured to transmit a request to each of the one or more devices. Further, each device from the one or more devices is within a predefined communication range to one or more adjacent devices from the one or more devices.
[0077] At step (404), the processor (202) may be configured to collect information corresponding to the one or more adjacent devices from each of the one or more devices.
[0078] At step (406), the processor (202) may be configured to create a graph based on the collected information that may correspond to the one or more adjacent devices.
[0079] At step (408), the processor (202) may be configured to identify one or more pairs of parent-child group, from the one or more devices based on the graph and wherein each pair of the parent-child group may comprises a single parent associated with a plurality of childs.
[0080] At step (410), the processor (202) may be configured to assign a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group, and a second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group.
[0081] Let us delve into a detailed working example of the present disclosure.
[0082] Example 01: ABC Utilities, a leading provider of electricity, gas, and water meters, has implemented a cutting-edge smart metering network to enhance the efficiency of monitoring and managing energy consumption across both residential and commercial customer segments.
[0083] The system begins by transmitting requests to each utility meter device within the network. Each meter, strategically positioned at different customer locations, sends out communication signals to nearby devices within its defined communication range. The request issued by the system prompts each device to publish vital information about its adjacent devices that it can detect, such as the device name, device identifier, connectivity status, communication strength, and distance from adjacent devices. This data is captured and stored in the system's memory over a specified time period, ensuring that accurate and comprehensive information is collected from all devices. By accumulating this data, the system ensures that it has enough insight into the network topology to proceed with further analysis.
[0084] Once the data from the various devices is collected, the system proceeds to construct a communication network graph. This graph is composed of nodes and edges, where each node represents a device in the network and each edge represents the relationship or connection between devices. The edges are defined by attributes like communication strength, proximity, and connectivity status. This graph is instrumental for visualizing how the devices are connected and helps the system understand the communication dynamics of the entire network. Through the graph, the system can identify which devices are in close proximity to each other and which devices are best suited to serve as parent or child devices based on their connectivity and the role they will play in the communication hierarchy.
[0085] With the communication graph in hand, the system proceeds to the next step: identifying the optimal parent-child groupings within the network. This task involves taking into account several important parameters such as device connectivity, range, power consumption, and bandwidth requirements. The system uses this information to identify the minimum number of parent devices necessary to manage a predefined maximum number of child devices, adhering to a parent-to-child ratio. This ensures that no parent device becomes overloaded, thus optimizing the entire network’s operational efficiency. The identified parent-child groupings allow the system to balance the network by ensuring that the child devices, which require less power and bandwidth, are properly assigned to parent devices that can handle the communication demands of multiple child devices.
[0086] Once the parent-child groupings have been established, the system proceeds to assign communication channels. The parent devices are assigned a high-capacity communication channel (e.g., 4G or LTE) to handle the communication with the central control system, which is responsible for monitoring and managing the entire network. Meanwhile, the child devices are assigned a lower-power, short-range communication channel, such as Bluetooth Low Energy (BLE), which enables efficient communication with their corresponding parent devices. This differentiation in communication channels ensures that the high-bandwidth communication required for system-level operations does not interfere with the more localized, low-energy communication between parent-child devices. As a result, the system can minimize congestion and optimize the overall communication infrastructure.
[0087] The smart metering system is designed to be dynamic, allowing it to adapt to real-time changes in the network. For example, if a device moves out of range or a communication failure occurs between devices, the system can automatically reassign the device to a new parent group to maintain connectivity. Additionally, if a device experiences communication degradation due to poor signal strength or other issues, the system can trigger an alert to notify the network operator. In response to this, the system can take corrective actions such as reassigning communication channels, adjusting the parent-child relationships, or reconfiguring the network topology to restore optimal communication performance. This adaptability is crucial for ensuring that the network continues to function smoothly even as devices are added, moved, or removed from the system.
[0088] As the system operates, real-time monitoring ensures that the devices remain connected and that the communication channels are continuously optimized. The system monitors parameters such as connectivity strength, power usage, and bandwidth consumption to identify potential inefficiencies or network issues before they become critical. By intelligently managing the parent-child relationships and communication channels, the system can maintain a high level of performance while minimizing interference and ensuring that devices use resources efficiently. The result is a robust, scalable, and energy-efficient smart metering network that can adapt to changing conditions and meet the needs of diverse customer locations, whether residential, commercial, or industrial.
[0089] After the deployment of the smart metering system, the system generates a comprehensive performance report that provides valuable insights into the network’s efficiency and identifies potential areas for improvement. The report includes key performance indicators such as the communication range of each device, the average data transfer rate, and the overall health of the network. It also highlights any performance bottlenecks and provides recommendations for optimizing the network in future iterations. This data-driven approach not only enables ABC Utilities to maintain optimal network performance but also helps reduce operational costs by ensuring that resources are only allocated when and where they are needed. By dynamically adjusting the device groupings and communication channels based on real-time data, ABC Utilities achieves an efficient and cost-effective solution for managing its smart metering infrastructure.
[0090] Overall, the disclosed system not only optimizes the grouping and communication management of devices within a smart metering network but also enhances the scalability and efficiency of network operations during periods of high-demand or change. By intelligently grouping devices, dynamically assigning communication channels, and continuously monitoring the network's performance, the system ensures seamless connectivity between devices and reduces the risk of network congestion or failure. This allows for uninterrupted service delivery and optimal resource allocation even as new devices are added or as network conditions change. Furthermore, by leveraging real-time data collection, graph-based analysis, and adaptive parent-child relationships, the system anticipates potential communication bottlenecks before they can impact network performance. The proactive and adaptable nature of the system enhances the reliability of utility metering operations, fostering trust in the smart metering infrastructure while maximizing overall efficiency. As a result, businesses can confidently manage the complexity of large-scale, distributed networks, ensuring optimal performance, minimizing operational costs, and maintaining continuous service availability across diverse customer locations.
[0091] A person skilled in the art will understand that the scope of the disclosure is not limited to scenarios based on the aforementioned factors and using the aforementioned techniques, and that the examples provided do not limit the scope of the disclosure.
[0092] FIG. 5 illustrates a block diagram of an exemplary computer system (501) for implementing embodiments consistent with the present disclosure.
[0093] Variations of computer system (501) may be used for grouping the one or more devices. The computer system (501) may comprise a central processing unit (“CPU” or “processor”) (502). The processor (502) may comprise at least one data processor for executing program components for executing user or system generated requests. A user may include a person, a person using a device such as those included in this disclosure, or such a device itself. Additionally, the processor (502) may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating point units, graphics processing units, digital signal processing units, or the like. In various implementations the processor (502) may include a microprocessor, such as AMD Athlon, Duron or Opteron, ARM’s application, embedded or secure processors, IBM PowerPC, Intel’s Core, Itanium, Xeon, Celeron or other line of processors, for example. Accordingly, the processor (502) may be implemented using mainframe, distributed processor, multi-core, parallel, grid, or other architectures. Some embodiments may utilize embedded technologies like application-specific integrated circuits (ASICs), digital signal processors (DSPs), or Field Programmable Gate Arrays (FPGAs), for example.
[0094] Processor (502) may be disposed in communication with one or more input/output (I/O) devices via I/O interface (503). Accordingly, the I/O interface (503) may employ communication protocols/methods such as, without limitation, audio, analog, digital, monoaural, RCA, stereo, IEEE-1394, serial bus, universal serial bus (USB), infrared, PS/2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (HDMI), RF antennas, S-Video, VGA, IEEE 802.n /b/g/n/x, Bluetooth, cellular (e.g., code-division multiple access (CDMA), high-speed packet access (HSPA+), global system for mobile communications (GSM), long-term evolution (LTE), WiMAX, or the like, for example.
[0095] Using the I/O interface (503), the computer system (501) may communicate with one or more I/O devices. For example, the input device (504) may be an antenna, keyboard, mouse, joystick, (infrared) remote control, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touchpad, trackball, sensor (e.g., accelerometer, light sensor, GPS, gyroscope, proximity sensor, or the like), stylus, scanner, storage device, transceiver, video device/source, or visors, for example. Likewise, an output device (505) may be a user’s smartphone, tablet, cell phone, laptop, printer, computer desktop, fax machine, video display (e.g., cathode ray tube (CRT), liquid crystal display (LCD), light- emitting diode (LED), plasma, or the like), or audio speaker, for example. In some embodiments, a transceiver (506) may be disposed in connection with the processor (502). The transceiver (506) may facilitate various types of wireless transmission or reception. For example, the transceiver (506) may include an antenna operatively connected to a transceiver chip (example devices include the Texas Instruments® WiLink WL1283, Broadcom® BCM4750IUB8, Infineon Technologies® X-Gold 618-PMB9800, or the like), providing IEEE 802.11a/b/g/n, Bluetooth, FM, global positioning system (GPS), and/or 2G/3G/5G/6G HSDPA/HSUPA communications, for example.
[0096] In some embodiments, the processor (502) may be disposed in communication with a communication network (508) via a network interface (507). The network interface (507) is adapted to communicate with the communication network (508). The network interface (507) may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), transmission control protocol/internet protocol (TCP/IP), token ring, or IEEE 802.11a/b/g/n/x, for example. The communication network (508) may include, without limitation, a direct interconnection, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), or the Internet, for example. Using the network interface (507) and the communication network (508), the computer system (501) may communicate with devices such as shown as a laptop (509) or a mobile/cellular phone (510). Other exemplary devices may include, without limitation, personal computer(s), server(s), fax machines, printers, scanners, various mobile devices such as cellular telephones, smartphones (e.g., Apple iPhone, Blackberry, Android-based phones, etc.), tablet computers, desktop computers, eBook readers (Amazon Kindle, Nook, etc.), laptop computers, notebooks, gaming consoles (Microsoft Xbox, Nintendo DS, Sony PlayStation, etc.), or the like. In some embodiments, the computer system (501) may itself embody one or more of these devices.
[0097] In some embodiments, the processor (502) may be disposed in communication with one or more memory devices (e.g., RAM 413, ROM 414, etc.) via a storage interface (512). The storage interface (512) may connect to memory devices including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as serial advanced technology attachment (SATA), integrated drive electronics (IDE), IEEE-1394, universal serial bus (USB), fiber channel, small computer systems interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, redundant array of independent discs (RAID), solid-state memory devices, or solid-state drives, for example.
[0098] The memory devices may store a collection of program or database components, including, without limitation, an operating system (516), user interface application (517), web browser (518), mail client/server (519), user/application data (520) (e.g., any data variables or data records discussed in this disclosure) for example. The operating system (516) may facilitate resource management and operation of the computer system (501). Examples of operating systems include, without limitation, Apple Macintosh OS X, UNIX, Unix-like system distributions (e.g., Berkeley Software Distribution (BSD), FreeBSD, NetBSD, OpenBSD, etc.), Linux distributions (e.g., Red Hat, Ubuntu, Kubuntu, etc.), IBM OS/2, Microsoft Windows (XP, Vista/7/8, etc.), Apple iOS, Google Android, Blackberry OS, or the like.
[0099] The user interface (517) is for facilitating the display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities. For example, user interfaces (517) may provide computer interaction interface elements on a display system operatively connected to the computer system (501), such as cursors, icons, check boxes, menus, scrollers, windows, or widgets, for example. Graphical user interfaces (GUIs) may be employed, including, without limitation, Apple Macintosh operating systems’ Aqua, IBM OS/2, Microsoft Windows (e.g., Aero, Metro, etc.), Unix X-Windows, or web interface libraries (e.g., ActiveX, Java, JavaScript, AJAX, HTML, Adobe Flash, etc.), for example.
[00100] In some embodiments, the computer system (501) may implement a web browser (518) stored program component. The web browser (518) may be a hypertext viewing application, such as Microsoft Internet Explorer, Google Chrome, Mozilla Firefox, Apple Safari, or Microsoft Edge, for example. Secure web browsing may be provided using HTTPS (secure hypertext transport protocol), secure sockets layer (SSL), Transport Layer Security (TLS), or the like. Web browsers may utilize facilities such as AJAX, DHTML, Adobe Flash, JavaScript, Java, or application programming interfaces (APIs), for example. In some embodiments the computer system (501) may implement a mail client/server (519) stored program component. The mail server (519) may be an Internet mail server such as Microsoft Exchange, or the like. The mail server may utilize facilities such as ASP, ActiveX, ANSI C++/C#, Microsoft .NET, CGI scripts, Java, JavaScript, PERL, PHP, Python, or WebObjects, for example. The mail server (519) may utilize communication protocols such as internet message access protocol (IMAP), messaging application programming interface (MAPI), Microsoft Exchange, post office protocol (POP), simple mail transfer protocol (SMTP), or the like. In some embodiments, the computer system (501) may implement a mail client (520) stored program component. The mail client (520) may be a mail viewing application, such as Apple Mail, Microsoft Entourage, Microsoft Outlook, or Mozilla Thunderbird.
[00101] In some embodiments, the computer system (501) may store user/application data (521), such as the data, variables, records, or the like as described in this disclosure. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase, for example. Alternatively, such databases may be implemented using standardized data structures, such as an array, hash, linked list, struct, structured text file (e.g., JSON, XML), table, or as object-oriented databases (e.g., using ObjectStore, Poet, Zope, etc.). Such databases may be consolidated or distributed, sometimes among the various computer systems discussed above in this disclosure. It is to be understood that the structure and operation of any computer or database component may be combined, consolidated, or distributed in any working combination.
[00102] Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present invention. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., non-transitory. Examples include Random Access Memory (RAM), Read- Only Memory (ROM), volatile memory, non-volatile memory, hard drives, Compact Disc (CD) ROMs, Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.
[00103] The present disclosure addresses the inefficiencies and limitations of traditional device grouping and communication management methods, which often rely on static configurations and manual processes for establishing device hierarchies, assigning communication channels, and monitoring network performance. These traditional methods result in delays, inaccuracies, and resource inefficiencies, particularly when managing large-scale networks with dynamic, real-time conditions. Conventional systems often fail to optimize device groupings and communication channel assignments based on evolving network conditions, leading to network congestion, communication failures, and suboptimal resource allocation. Moreover, these systems lack real-time adaptability, meaning they struggle to handle fluctuations in device proximity, connectivity, and power consumption, which can occur unexpectedly. By relying on static device groupings and predefined communication strategies, traditional approaches fail to account for dynamic variations in the network, resulting in underutilized resources or overloaded devices, especially when traffic patterns or device statuses change.
[00104] Further, to overcome the challenges associated with static device groupings and manual communication management, the disclosed system introduces an automated approach for dynamically grouping devices and assigning communication channels in real time. By leveraging a processor to receive event-triggered requests from devices within the network, the system eliminates the need for manual intervention in establishing parent-child relationships and optimizing communication configurations. The processor automatically analyzes device data such as proximity, connectivity, and power consumption using real-time information and predefined parameters to determine the optimal groupings and communication channels. This dynamic approach ensures efficient resource allocation, enhances system adaptability, and prevents overloading of devices or network congestion. Additionally, by continuously monitoring the network and comparing device performance against dynamically calculated thresholds, the system improves reliability and responsiveness to sudden changes in network conditions, optimizing scalability and maintaining seamless communication across a distributed device network.
[00105] Further, the automation-driven solution ensures seamless and accurate device grouping and communication management, significantly reducing delays and operational overhead. By replacing manual configuration and grouping processes with predefined rules and automated workflows, the system delivers faster optimization of device networks, minimizes errors, and effortlessly scales to accommodate varying network conditions and device loads. The integration of real-time monitoring ensures consistent and reliable performance evaluation, enhancing the stability and efficiency of communication across the device network. Through the adoption of this system, the disclosed solution provides a robust, scalable, and efficient approach to overcoming the challenges posed by traditional device grouping methods, ensuring optimal network performance and resource allocation in dynamic, real-world environments.
[00106] Various embodiments of the disclosure encompass numerous advantages, including methods and systems for grouping the one or more devices. The disclosed method and system have several technical advantages, including but not limited to the following:
• Dynamic Device Grouping Based on Real-Time Data: The disclosed system provides a grouping by dynamically analyzing real-time data from each device and its adjacent devices within a predefined communication range. This dynamic grouping is more efficient than traditional methods, which often rely on static device configurations. By leveraging collected device data, such as communication strength, connectivity status, and device type, the system adapts to changes in the network environment, ensuring optimized groupings and improving network efficiency.
• Graph-Based Device Network Representation: The system utilizes a graph-based representation of the device network, where nodes represent devices, and edges represent relationships such as communication strength and proximity. This graph model allows for more effective network management by visualizing device connectivity, facilitating the identification of optimal parent-child device relationships.
• Automatic Parent-Child Device Grouping with Optimized Ratios: The system automatically identifies optimal parent-child groupings based on a predefined parent-to-child ratio for each device, ensuring that each parent device is not overloaded, and that the communication network remains efficient. The algorithm adapts to changing network conditions, allowing for the most efficient distribution of child devices across parent devices.
• Multi-Channel Communication for Enhanced Efficiency: The system assigns different communication channels to parent and child devices, where parent devices use long-range communication channels (e.g., 4G or LTE) and child devices use short-range communication channels (e.g., BLE). This approach allows for efficient utilization of communication resources by segregating traffic based on the role and range of devices.
• Scalable Communication Channels for Diverse Devices: The system supports a wide variety of communication technologies, including short-range communications (e.g., Bluetooth, BLE) and long-range communications (e.g., 4G, LTE, 5G). This scalability ensures that the system can be deployed in diverse environments, ranging from local networks to wide-area networks, while maintaining performance and reliability.
• Real-Time Monitoring and Adaptation: The system continuously monitors the connectivity and performance of devices within the network, ensuring that any changes in device proximity, connectivity, or status are immediately accounted for. This real-time monitoring allows the system to adjust the parent-child relationships and communication channels as needed, ensuring continuous and optimal network operation.
• Optimized Resource Allocation: The system efficiently allocates resources by dynamically grouping devices and assigning communication channels based on real-time data and predefined parameters. This approach optimizes bandwidth usage, minimizes power consumption, and prevents overloading of devices and network resources.
• Support for Various Device Types: The system is designed to support a wide range of devices, including utility meters (e.g., electricity, gas, water meters) and hybrid meters, enabling its use in diverse applications such as smart metering, industrial monitoring, and home automation.
• Increased Network Reliability and Performance: By grouping devices based on real-time data and assigning communication channels based on device roles (parent or child), the system enhances the overall reliability and performance of the network. The automated, adaptive approach reduces the risk of communication failures and ensures that devices remain connected even under varying network conditions.
[00107] In summary, the system addresses the technical challenges of grouping the one or more devices by providing a highly automated, scalable, and intelligent approach. By leveraging real-time data collection, dynamic device groupings, and intelligent parent-child device assignments, the system ensures optimal network performance and resource allocation. The integration of advanced algorithms, such as Depth-First Search (DFS) for identifying optimal groupings and multi-channel communication for efficient data transfer, ensures minimal delays, enhanced reliability, and seamless operation across diverse devices. Additionally, the system’s ability to adapt to network changes in real-time, along with its flexible support for various communication protocols, enables it to handle high device densities and complex environments. This approach improves system scalability, reduces operational costs, and ensures uninterrupted service, thereby enhancing user satisfaction and operational efficiency in industries ranging from smart metering to industrial IoT applications.
[00108] The claimed invention of a system for grouping one or more devices involves tangible components, processes, and functionalities that interact to achieve specific technical outcomes. The system integrates various elements such as processors, memory, databases, modelling, real-time fast processing, unnecessary data omitting and informed displaying techniques to effectively group the one or more devices.
[00109] The present disclosure introduces a non-trivial combination of technologies and methodologies that provide a technical solution for a technical problem. While individual components like processors, databases, encryption, authorization and authentication are well-known in the field of computer science, their integration into a comprehensive system for grouping one or more devices brings about improvement and technical advancement in the field of smart meters and other related services.
[00110] In light of the above-mentioned advantages and the technical advancements provided by the disclosed method and system for grouping of one or more devices, the claimed steps as discussed above are not routine, conventional, or well understood in the art, as the claimed steps enable the following solutions to the existing problems in conventional technologies. Further, the claimed steps clearly bring an improvement in the functioning of the device itself as the claimed steps provide a technical solution to a technical problem.
[00111] The present disclosure may be realized in hardware, or a combination of hardware and software. The present disclosure may be realized in a centralized fashion, in at least one computer system, or in a distributed fashion, where different elements may be spread across several interconnected computer systems. A computer system or other apparatus adapted for carrying out the methods described herein may be suited. A combination of hardware and software may be a general-purpose computer system with a computer program that, when loaded and executed, may control the computer system such that it carries out the methods described herein. The present disclosure may be realized in hardware that comprises a portion of an integrated circuit that also performs other functions.
[00112] A person with ordinary skills in the art will appreciate that the systems, modules, and sub-modules have been illustrated and explained to serve as examples and should not be considered limiting in any manner. It will be further appreciated that the variants of the above disclosed system elements, modules, and other features and functions, or alternatives thereof, may be combined to create other different systems or applications.
[00113] Those skilled in the art will appreciate that any of the aforementioned steps and/or system modules may be suitably replaced, reordered, or removed, and additional steps and/or system modules may be inserted, depending on the needs of a particular application. In addition, the systems of the aforementioned embodiments may be implemented using a wide variety of suitable processes and system modules, and are not limited to any particular computer hardware, software, middleware, firmware, microcode, and the like. The claims can encompass embodiments for hardware and software, or a combination thereof.
[00114] While the present disclosure has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made, and equivalents may be substituted without departing from the scope of the present disclosure. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present disclosure without departing from its scope. Therefore, it is intended that the present disclosure is not limited to the particular embodiment disclosed, but that the present disclosure will include all embodiments falling within the scope of the appended claims.
, Claims:WE CLAIM:
1. A system (100) for grouping one or more devices, wherein the system (100) comprises:
a processor (202);
a memory (204) communicatively coupled with the processor (202), wherein the memory (204) is configured to store one or more executable instructions that, when executed by the processor (202), cause the processor (202) to:
transmit (402) a request to each of the one or more devices, wherein each device from the one or more devices is within a predefined communication range to one or more adjacent devices from the one or more devices;
collect (404) information corresponding to the one or more adjacent devices from each of the one or more devices;
create (406) a graph based on the collected information corresponding to the one or more adjacent devices;
identify (408) one or more pairs of parent-child group, from the one or more devices, based on the graph, wherein each pair of the parent-child group comprises a single parent associated with a plurality of childs; and
assigning (410) a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group, and a second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group.
2. The system (100) as claimed in claim 1, wherein the request to a first device from the one or more devices corresponds to a command to publish information corresponding to the one or more adjacent devices present within the predefined communication range to the first device.
3. The system (100) as claimed in claim 1,
wherein the information corresponding to the one or more adjacent devices comprises at least one of device name, device identifier, device type, distance, communication strength, connectivity status, diagnostic data, or a combination thereof;
wherein the information corresponding to the one or more adjacent devices are collected for a predetermined period of time;
wherein the information corresponding to the one or more adjacent devices is stored in the memory (204).
4. The system (100) as claimed in claim 3,
wherein the graph is created after expiry of the predetermined period of time;
wherein the graph comprises one or more nodes and one or more edges connecting the one or more nodes;
wherein a first node from the one or more nodes corresponds to a device from the one or more device, connected to one or more adjacent devices;
wherein the one or more edges corresponds to the information corresponding to the one or more adjacent devices from each of the one or more devices.
5. The system (100) as claimed in claim 1,
wherein each device from the one or more devices is associated with a parent-to-child ratio,
wherein the parent-to-child ratio indicates a maximum number of child devices connected to a single parent device,
wherein identifying the one or more pairs of the parent-child group is performed in adherence to the parent-to-child ratio associated with each device from the one or more devices,
wherein identifying the one or more pairs of the parent-child group corresponds to identifying minimum number of parent devices from the one or more devices and associating a maximum number of child devices to each of the parent devices.
6. The system (100) as claimed in claim 1, wherein identifying the one or more pairs of the parent-child group is performed by traversing the graph using Depth-first search (DFS) traversal technique; wherein the one or more pairs of the parent-child group are identified based on one or more parameters; wherein the one or more parameters comprises at least one of device connectivity, range, power consumption, bandwidth requirements, or a combination thereof.
7. The system (100) as claimed in claim 1, wherein the first communication channel is different from the second communication channel, wherein the first communication channel corresponds to one of 4G, Narrow band (NB) IoT communication channel, and the second communication channel corresponds to one of BLE, 2.4Ghz communication channel.
8. The system (100) as claimed in claim 1, wherein each child from a pair of the parent-child group is connected to a parent of the parent-child group, via the second communication channel; wherein each parent from the one or more pairs of parent-child group is connected to the system (100), via the first communication channel.
9. The system (100) as claimed in claim 1, wherein each of the one or more devices comprises the one or more communication channels; wherein the one or more communication channels correspond to at least one of short-range communication, Bluetooth, Bluetooth Low Energy (BLE), long range communication, cellular communication, LTE, 4G, 5G, or a combination thereof.
10. The system (100) as claimed in claim 3, wherein the one or more devices are connected to the one or more adjacent devices using the one or more communication channels.
11. The system (100) as claimed in claim 1, wherein the processor (202) is configured to collect an updated information corresponding to the one or more devices within a predefined time period accounting for changes in one of device availability, connectivity status, communication strength, and a combination thereof, wherein the processor (202) is configured to update the graph based on the updated information.
12. The system (100) as claimed in claim 1, wherein the one or more devices corresponds to one of a utility meter, electricity, meter, gas meter, water meter, hybrid meters, digital meter, prepaid meter, postpaid meter, residential meter, commercial meter, industrial meter, sensors and a combination thereof.
13. A method (400) for grouping one or more devices, wherein the method (400) comprising:
transmitting (402), by a processor (202), a request to each of the one or more devices, wherein each device from the one or more devices is within a predefined communication range to one or more adjacent devices from the one or more devices;
collecting (404), by the processor (202), information corresponding to the one or more adjacent devices from each of the one or more devices;
creating (406), by the processor (202), a graph based on the collected information corresponding to the one or more adjacent devices;
identifying (408), by the processor (202), one or more pairs of parent-child group, from the one or more devices, based on the graph, wherein each pair of the parent-child group comprises a single parent associated with a plurality of childs; and
assigning (410), by the processor (202), a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group, and a second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group.
14. A non-transitory computer-readable storage medium having stored thereon, a set of computer-executable instructions causing a computer comprising one or more processors to perform steps comprising:
transmitting (402) a request to each of the one or more devices, wherein each device from the one or more devices is within a predefined communication range to one or more adjacent devices from the one or more devices;
collecting (404) information corresponding to the one or more adjacent devices from each of the one or more devices;
creating (406) a graph based on the collected information corresponding to the one or more adjacent devices;
identifying (408) one or more pairs of parent-child group, from the one or more devices, based on the graph; wherein each pair of the parent-child group comprises a single parent associated with a plurality of childs; and
assigning (410) a first communication channel from one or more communication channels to each parent from the one or more pairs of the parent-child group, and a second communication channel from the one or more communication channels to each child from the one or more pairs of the parent-child group.
Dated this 09th day of May 2025
ABHIJEET GIDDE
AGENT FOR THE APPLICANT
IN/PA- 4407
| # | Name | Date |
|---|---|---|
| 1 | 202511045148-STATEMENT OF UNDERTAKING (FORM 3) [09-05-2025(online)].pdf | 2025-05-09 |
| 2 | 202511045148-STARTUP [09-05-2025(online)].pdf | 2025-05-09 |
| 3 | 202511045148-REQUEST FOR EARLY PUBLICATION(FORM-9) [09-05-2025(online)].pdf | 2025-05-09 |
| 4 | 202511045148-POWER OF AUTHORITY [09-05-2025(online)].pdf | 2025-05-09 |
| 5 | 202511045148-FORM28 [09-05-2025(online)].pdf | 2025-05-09 |
| 6 | 202511045148-FORM-9 [09-05-2025(online)].pdf | 2025-05-09 |
| 7 | 202511045148-FORM FOR STARTUP [09-05-2025(online)].pdf | 2025-05-09 |
| 8 | 202511045148-FORM FOR SMALL ENTITY(FORM-28) [09-05-2025(online)].pdf | 2025-05-09 |
| 9 | 202511045148-FORM 18A [09-05-2025(online)].pdf | 2025-05-09 |
| 10 | 202511045148-FORM 1 [09-05-2025(online)].pdf | 2025-05-09 |
| 11 | 202511045148-FIGURE OF ABSTRACT [09-05-2025(online)].pdf | 2025-05-09 |
| 12 | 202511045148-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [09-05-2025(online)].pdf | 2025-05-09 |
| 13 | 202511045148-EVIDENCE FOR REGISTRATION UNDER SSI [09-05-2025(online)].pdf | 2025-05-09 |
| 14 | 202511045148-DRAWINGS [09-05-2025(online)].pdf | 2025-05-09 |
| 15 | 202511045148-DECLARATION OF INVENTORSHIP (FORM 5) [09-05-2025(online)].pdf | 2025-05-09 |
| 16 | 202511045148-COMPLETE SPECIFICATION [09-05-2025(online)].pdf | 2025-05-09 |
| 17 | 202511045148-FORM28 [01-07-2025(online)].pdf | 2025-07-01 |
| 18 | 202511045148-FORM FOR STARTUP [01-07-2025(online)].pdf | 2025-07-01 |
| 19 | 202511045148-EVIDENCE FOR REGISTRATION UNDER SSI [01-07-2025(online)].pdf | 2025-07-01 |
| 20 | 202511045148-Covering Letter [01-07-2025(online)].pdf | 2025-07-01 |
| 21 | 202511045148-FORM 3 [22-07-2025(online)].pdf | 2025-07-22 |
| 22 | 202511045148-FER.pdf | 2025-08-01 |
| 23 | 202511045148-FORM 3 [01-10-2025(online)].pdf | 2025-10-01 |
| 24 | 202511045148-Proof of Right [03-11-2025(online)].pdf | 2025-11-03 |
| 25 | 202511045148-FER_SER_REPLY [24-11-2025(online)].pdf | 2025-11-24 |
| 1 | 202511045148_SearchStrategyNew_E_SearchStrategyE_24-07-2025.pdf |