The present invention relates generally to radio location and, in particular, to a method and apparatus for determining the location of nodes within a wireless communication network.
Many large wireless networks are composed of multiple sub-networks. An example of a sub-network is a ‘piconet’ or Personal Area Network (PAN), in which radio communication is performed in accordance with the Bluetooth protocol.
In many applications with large wireless networks having at most one reference node in each piconet, there is a need to know the relative locations of the nodes within a piconet. Once this information is obtained, is it easier to locate a node in the wireless network with multiple piconets and also to route information in the network. Traditional location technology is not well suited for enabling a node in a piconet to discover its location relative to peer nodes in the same piconet. Even when this technology can be used, it requires extensive computation to solve the associated equations and generally requires some pre-deployment characterization of the environment. The pre-deployment characterization may not be practical in many applications, especially those with changing environments. The only simple method requiring no pre-deployment measurements is the proximity method, which requires ‘proximity’ of the node to the reference nodes. If a node is linked to at most one reference node, the proximity method uses the reference node location as the estimated location of the node. This does not help finding the relative locations of the nodes in a piconet.
The accompanying figures, in which like reference numerals refer to identical or functionally similar elements throughout the separate views and which together with the detailed description below are incorporated in and form part of the specification, serve to further illustrate various embodiments and to explain various principles and advantages all in accordance with the present invention.
Before describing in detail embodiments that are in accordance with the present invention, it should be observed that the embodiments reside primarily in combinations of method steps and apparatus components related to node location in a wireless network. Accordingly, the apparatus components and method steps have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.
In this document, relational terms such as first and second, top and bottom, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms “comprises,” “comprising,” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element preceded by “comprises . . . a” does not, without more constraints, preclude the existence of additional identical elements in the process, method, article, or apparatus that comprises the element.
It will be appreciated that embodiments of the invention described herein may comprise one or more conventional processors and unique stored program instructions that control the one or more processors to implement, in conjunction with certain non-processor circuits, some, most, or all of the functions of node location in a wireless network described herein. The non-processor circuits may include, but are not limited to, a radio receiver, a radio transmitter, signal drivers, clock circuits, power source circuits, and user input devices. As such, these functions may be interpreted as a method to perform node location in a wireless network. Alternatively, some or all functions could be implemented by a state machine that has no stored program instructions, or in one or more application specific integrated circuits (ASICs), in which each function or some combinations of certain of the functions are implemented as custom logic. Of course, a combination of the two approaches could be used. Thus, methods and means for these functions have been described herein. Further, it is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by, for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein will be readily capable of generating such software instructions and programs and ICs with minimal experimentation.
The present invention relates to a method and apparatus for determining the relative locations of nodes in a wireless network, such as a piconet, without any need for pre-deployment measurement or equation solving.
The invention is described below with reference to an embodiment in a piconet. However, the invention is not limited to piconets and may be used in other wireless networks.
The present invention relates to a method and apparatus for determining the relative locations of nodes in a wireless network. In accordance with one embodiment of the method, a list of neighboring nodes of a master node of the wireless network is generated and, from this list, a list of independent nodes is generated. An adjacency table for the independent nodes is then generated by examining the neighbors of dependent nodes. Two independent nodes are determined to be adjacent nodes only if they are the only neighboring nodes of a dependent node. Relative locations of nodes in wireless network may be determined from the adjacency table. The list of independent nodes may be generated by generating a ranking list of nodes in the list of neighboring nodes and then, for each successively selected node in the ranking list, determining the selected node to be an independent node if no other independent node is a neighbor of the selected node.
In one embodiment, the ranking list of nodes in the list of neighboring nodes may be generated by, for each selected node of the list of neighboring nodes of the master node, determining the number of nodes that are neighbors of both the selected node and the master node and then ranking the list of nodes in the list of neighboring nodes in accordance to the number of nodes that are neighbors of both the selected node and the master node. A node having the smallest number of nodes that are neighbors of both the selected node and the master node is positioned first in the ranking list.
In a further embodiment, the ranking list of nodes in the list of neighboring nodes is generated by, for each selected node of the list of neighboring nodes of the master node, determining the path loss between the selected node and the master node and ranking the list of nodes in the list of neighboring nodes in accordance to the path loss between the selected node and the master node. A node having the largest path loss is positioned first in the ranking list.
The invention also relates to a method for determining relative locations of nodes in wireless network. The method includes (1) generating a list of neighboring nodes of a master node of the wireless network, (2) generating, from the list of neighboring nodes, a list of independent nodes and (3) a first neighboring node of the master node determining its relative location by determining which independent nodes are neighboring nodes. The master node may transmit the list of independent node to the first neighboring node.
The present invention also relates to a wireless network that has a master node and a set of neighboring nodes, operable to communicate with the master node. The master node is operable to select, from the set of neighboring nodes, a set of independent nodes, where no independent node is a neighbor of any other independent node and to determine which nodes of the set of independent nodes are adjacent to one another. The master node may also be operable to determine the relative location a selected node of the set of neighboring nodes by determining which independent nodes are neighbors of the selected node. In addition, a node of the set of neighboring nodes may be operable to determine its own relative location, in the network, by determining which independent nodes are its neighbors.
A piconet has a ‘star’ structure, with each node able to communicate directly with a master node, also called the piconet controller (PNC). In the description below, the master node is designated as node ND1. The nodes in direct communication with the master node are called neighboring nodes, or simply ‘neighbors’, of the master node. The location of the master node may or may not be known. During normal operation of the network, each node in the piconet establishes a neighbor list as part of networking requirements. Once the neighbor lists are established, relative locations of the nodes in the network can be identified as shown in the flow chart of
Note that table is symmetric, so only the upper or lower triangular section needs to be filled and/or stored.
In the adjacency table, a value ‘1’ indicates that the nodes are adjacent and a value ‘0’ indicates that the nodes are not adjacent.
The node ND1 can determine each node's relative location or relative orientation from the adjacency table.
At the end of the process, the node ND1 will have found n−1 mutually ‘independent’ neighbors, ND2, ND3, . . . , NDn, with the property that they are not neighbors of each other but together their neighbors cover all the neighbors of ND1. The set {ND2, ND3, . . . , NDn} is called the independent node set and any node in this set is called an independent node.
Any node in the network can determine its relative location by looking at which independent nodes are on its neighbor list.
The determination of relative locations of nodes in wireless network is begun by generating a list of neighboring nodes of a master node of the wireless network and generating, from the list of neighboring nodes, a list of independent nodes. An adjacency table for the independent nodes is then generated by examining the neighbors of dependent nodes. Two independent nodes are determined to be adjacent nodes if only if they are the only neighboring nodes of a dependent node. Relative locations of nodes in wireless network are determined from the adjacency table.
The list of independent nodes may be formed by generating a ranking list of nodes in the list of neighboring nodes, and, for each successively selected node in the ranking list, determining the selected node to be an independent node if no other independent node is a neighbor of the selected node.
The ranking list of nodes in the list of neighboring nodes may be generated by, for each selected node of the list of neighboring nodes of the master node, determining the number of nodes that are neighbors of both the selected node and the master node, and ranking the list of nodes in the list of neighboring nodes in accordance to the number of nodes that are neighbors of both the selected node and the master node. A node having the smallest number of nodes that are neighbors of both the selected node and the master node is positioned first in the ranking list.
In a further embodiment the ranking list of nodes in the list of neighboring nodes is generated by, for each selected node of the list of neighboring nodes of the master node, determining the path loss between the selected node and the master node, and ranking the list of nodes in the list of neighboring nodes in accordance to the path loss between the selected node and the master node. A node having the largest path loss is positioned first in the ranking list.
A neighboring node of the master node may determine its relative location by determining which independent nodes are neighboring nodes. The list of independent nodes may be transmitted from the master node to the neighboring node.
An exemplary network illustrating independent nodes is shown in
The adjacency table for the network is determined by asking each node if any of the independent nodes is a neighbor. The adjacency table may then be used to determine relative locations of nodes in the network.
In the foregoing specification, specific embodiments of the present invention have been described. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the present invention as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present invention. The benefits, advantages, solutions to problems, and any element(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential features or elements of any or all the claims. The invention is defined solely by the appended claims including any amendments made during the pendency of this application and all equivalents of those claims as issued.