This invention relates generally to wireless communication, and more particularly to ranging and positioning in wireless networks of nodes.
Public, medical, commercial, robotic and military applications can be enhanced with static or mobile wireless sensor nodes (sensors for sensing an environment and transceivers for communicating sensed data). In many such applications, accurate positioning of the nodes is an important task. As used herein, the term positioning means to determine the coordinates or locations of the nodes.
Accurate positioning needs to deal with varying propagation delays in wireless channels, as well as software and hardware design limitations. A Global positioning system (GPS) can provide acceptable accuracies outdoors. Indoors, the accuracies of the GPS is severely degraded by multipath propagation, and a probability of non-line of sight (NLOS) conditions because the GPS needs to have LOS to at least four GPS satellites.
Distributed positioning methods iteratively determine a ranging estimate by sharing range and position information among nodes using either direct ranging (DR) or extended ranging (ER). The distinction is based on the method used to estimate distance between anchor nodes (anchors) at known positions, and sensor node (sensors) at unknown positions.
In DR, the sensor only obtains direct range estimates to anchors. When the sensor has range measurements to three or four anchors, it is possible to obtain a two- or three-dimensional position estimate for the sensor. Then, the sensor can be transformed to another anchor.
In ER, the sensors estimate the distances between each other and a set of anchors. The sensors obtain the distance estimate through a variety of methods, including counting the number of hops along the wireless route to the anchors, measuring the distances to the anchors, and adding all distances of the route, or obtain a geometric estimate of the distance by relying on the relative position of adjacent nodes.
DR is more accurate because the range error between nodes is measured directly and thus positioning error propagation is minimized. However, DR requires a minimum anchor node density.
ER is less accurate because the distance to an anchor is not always directly measured. Instead, some distances are estimated by either the number of hops or geometric estimation. Although ER has less stringent density requirements, positioning error propagation is a problem. Location estimations of nodes further away from the anchor nodes generally have more error than the nodes that are in direct communication contact with the anchor nodes.
It is desired to minimize positioning error propagation while performing extended ranging.
The embodiments of the invention provide an iterative and distributed method for minimizing positioning error propagation in a wireless sensor network (WSN). The method integrates and uses weighted quality information for ranging estimates and position estimates to minimize local errors during each iterative step.
The WSN includes an initial set of anchors at known locations, and a set of sensors at unknown locations. Ranges, from each sensor to at least three of the anchors, determine a position, an anchor ranging weight, and an anchor position weight.
For each anchor, the anchor ranging weight and the anchor position weight form a combined weight. A weighted least square (WLS) function for the positions and the combined weights is minimized to determine a position of the sensor, and a sensor position weight.
The sensor is identified as being a member of a set of candidate anchor nodes, and the candidate anchor node with a largest sensor position weight is selected to be transformed to another anchor to minimize propagation of errors in the positions of the set of sensors.
The initial anchor nodes can be different than sensor nodes. For example, the anchor nodes are transceivers permanently placed at strategic known locations in a particular environment to facilitate our node positioning. In addition, the initial anchor nodes can have a greater transmit power and receive sensitivity then the sensor nodes to maximize ranging coverage.
The sensor nodes can be mobile, and battery operated at reduced power and transmission range compared to the initial anchor nodes.
We estimate coordinates {circumflex over (θ)}n=({circumflex over (x)}n, ŷn)T of the sensor nodes 102 at unknown positions from the coordinates θm=(xm, ym)T of the anchor nodes 101 at the known positions, where m ε[−M, 0] and n ε[1, N] respectively. Herein, the symbol “̂” means an estimate.
The nodes 101-102 cooperate to estimate the coordinates of the sensors 102. In two-way time-of-arrival (TOA) ranging, a distance between a transmitter and a receiver is estimated as the time for the ranging signal to make the round trip divided by two and multiplied by the speed of electromagnetic wave in free space. In received-signal-strength (RSS) based ranging, a distance between the transmitter antenna and receiver antenna can be estimated based on the estimated path-loss.
In distributed cooperative positioning, sensors that are within direct range of at least 3 or 4 anchors can estimate their 2- or 3-dimensional position, and then assist other sensors in their positioning processes. This iterative, distributed, and cooperative positioning has two major challenges.
The first is inherit in the ranging technology and its performance in a given propagation environment. A TOA-based ranging can be significantly degraded in non-LOS (NLOS) environments due to biased estimates that ultimately degrade the positioning performance. A RSS-based ranging can also be significantly degraded in NLOS environment or deep fading channels. Second, the positioning errors can be propagated in a distributed method due to ranging errors, and the geometry and density of the network.
Some sensors experience ranging errors on some of the links due to the LOS barriers 103 and geometrical constraints, which results in a degree of uncertainty in their position estimates. As the sensors transform into anchors, the error in their position is propagated to other nodes in the network, along with the ranging and geometry errors. Eventually, if there is no control, the positioning errors are significantly compounded, making the estimates at distances essentially useless.
In general, the WSN has R range measurements, which can be corrupted by different range errors. In a distributed positioning approach, the corrupted range measurements can impact the accuracy of the position during each iteration.
Formally, a TOA based estimate of the range between the ith and the jth nodes is {circumflex over (τ)}ijτij+ζij, where τij is an actual range between the nodes, and ζij is a corrupting error. Typically, the range is expressed in terms of a range distance
{circumflex over (d)}
ij
=d
ij
+z
ij+εij,
where dij=vτij is the distance between the nodes i and j, v is a speed of signal propagation, dij=√{square root over ((xi−xj)2+(yi−yj)2)}{square root over ((xi−xj)2+(yi−yj)2)}, zij is a zero mean measurement error, and εij is a ranging error. For LOS ranging, we assume the ranging error εij is zero.
We provide a method that operate at ranging and distributed positioning levels. At the ranging level, NLOS conditions are identified, and the impact of the corresponding erroneous ranging data are reduced to minimize the propagation of positioning errors. At the distributed positioning level, error propagation is minimizing at each node, and during sensor-to-anchor transformations.
Distributed Cooperation Positioning while Minimizing Propagation of Positioning Errors
The effect of the radio frequency (RF) propagation channel on the TOA estimation is always a problem, whether outdoors or indoors, although indoors, the problem is more likely to occur. The problem is even more challenging for iterative distributed methods, where the range errors affecting a single node also directly impact subsequent positioning performance at other nodes, and eventually, the entire WSN. Therefore, we assess and quantify the quality of the TOA-based ranges to be integrated into the position estimation, and transform sensors to anchors accordingly.
In
In the WSN 100, each sensor 102 estimates its position by ranging to K anchors 101, where K is at least 3 or 4 for two- and three-dimensional positioning.
For each sensor node, an anchor is associated with a range weight and a position weight {wkTOA, wkPOS}, where kε[1, K]. The weights quantify the quality of the range and position values of each anchor.
The anchor ranging weight wTOA can be determined using various channel condition classification methods that quantify the quality of the channel. The anchor position weight wPOS is a quantitative quality of the anchor position estimate.
Channel Classification
Several channel condition classification methods are known.
Channel statistics, such as root mean square (RMS) delay spread, can be used to identify NLOS channels. That method is computationally complex, and energy inefficient, because multiple range measurements are needed per channel to determine the channel statistics.
Frequency diversity can also be used to identify NLOS channels. Based on channel measurements in a typical indoor environment, the variation of time-of-arrival (TOA) estimation, across different frequency sub-bands, has a positive correlation with the channel condition. That approach requires a frequency hopping capable radio frequency (RF) transmitter end, which increases cost, complexity, and power consumption. It is also difficult to isolate the frequency dependency of the antennas from the channel, which directly impacts the effectiveness of that approach.
Running variance is another method for channel condition identification. That method computes the variance of subsequent range estimates, and compares the variances with a predetermined threshold to detect LOS and NLOS channels. That method has a high computation complexity, and is energy inefficient.
A change of signal-to-noise (SNR) method detects sudden change of the SNR to determine whether the channel is changing between LOS and NLOS.
Joint TOA/RSS (received signal strength) method detects the conditional probability that whether a channel is LOS or NLOS given both the TOA and received signal strength estimation.
The estimated coordinates {circumflex over (θ)}n=({circumflex over (x)}n, ŷn)T of the sensor n are determined by minimizing a weighted least square (WLS) regression function
E[{circumflex over (θ)}]=[{circumflex over (d)}−F({circumflex over (θ)})]TW[{circumflex over (d)}−F({circumflex over (θ)})],
where {circumflex over (d)} is the range measurement vector to the anchors 102, F({circumflex over (θ)}) is a vector of estimated distances
F({circumflex over (θ)})=[({circumflex over (x)}−{circumflex over (x)}1)2+(ŷ−ŷ1)2, . . . , ({circumflex over (x)}−{circumflex over (x)}K)2+(ŷ−ŷK)2]T,
where ({circumflex over (x)}k, ŷk)T are the coordinates of the kth anchor, and T denotes the transpose operation. The coordinates are exact for the initial anchors in the set, but can be corrupted for candidate anchors that were transformed from sensors.
A diagonal matrix W=diag(ψ1, . . . , ψK) stores the weights ψi that combine the range and position weights {wkTOA, wkPOS}, for the anchor k.
Then, the position of the sensor node can be obtained by evaluating a linearizing cost function
{circumflex over (θ)}=θ0+(HTWH)−1HTW[{circumflex over (d)}−F(θ0)],
where θ0 is an initialization linearization point, and H is a Jacobian matrix of the distance vector F.
Our method is iterative and distributed. The method performs range and position weighting by incorporating the confidence or quality of the estimates.
As shown in
One indicator of the quality (weight wnPOS) of position estimation is the inverse of the covariance of position estimates as
where trace the sum of the elements on the main diagonal of the covariance matrix Cn=(HTw−1H)−1 of the position coordinates {circumflex over (θ)}n=({circumflex over (x)}n, ŷn)T. This implies a larger covariance of the position yields a lower confidence or position weight.
Then, the WLS 320 determines the coordinates {circumflex over (θ)}n=({circumflex over (x)}n, ŷn)T of the node n, and the position weight wnPOS for the sensor n.
After the sensor estimates the coordinates {circumflex over (θ)}n=({circumflex over (x)}n, ŷn)T of its position, and the corresponding sensor position weight wnPOS, the sensor becomes a member of the set of candidate anchors 330.
For each iteration, the candidate anchor with the largest confidence or sensor position weight 340 is selected 350 to be transformed 360 from sensor to anchor. In a large WSN, there can be multiple disjoint sets candidate anchors as position data are propagated. Therefore, a given iteration might involve several sensor-to-anchor transformations 360.
Then, the newly transformed (t) anchor updates its status ID from sensor to anchor, and broadcasts 370 the coordinates {circumflex over (θ)}t=({circumflex over (x)}t, ŷt)T of its position, and the sensor position weight wtPOS. This process iterates 380 until all sensors are transformed to anchors. In this way, the propagation error is minimized throughout the entire WSN.
The invention determines reliable and accurate positions of nodes in a wireless sensor network, particular if the positions are determined in an iterative and distributive manner. The positioning method assesses the quality of range estimates, and integrates range information to obtain accurate position estimates and reduce position error propagation by assigning confidence metrics to the position information.
In conventional WSN with over 100 nodes, positioning information beyond 80 meters the initial anchors has significant positioning errors, and is essentially useless. The invention solves this problem.
Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications may be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.