Research Article | Open Access
An Anchor-Free Localization Scheme with Kalman Filtering in ZigBee Sensor Network
A localization scheme for wireless sensor networks is proposed and its performances are investigated in this paper. The proposed scheme is an anchor-free scheme, in which no geometrical information of sensor nodes is required for their localization. Thus, only local interaction among sensor nodes is used to estimate their locations. This scheme employs the link quality indicator and hop count between sensor nodes for location estimation. A weighted averaging and Kalman filtering schemes are incorporated in order to reduce the effects of the measurement errors in the obtained values of the link quality indicator. We performed experiments by implementing the proposed scheme on ZigBee sensor modules. The results of our experiments indicate that estimation could be successfully performed for networks comprising four sensor nodes.
A wireless sensor network (WSN) is a network that consists of many sensor nodes. Each sensor node has sensing devices, a processor, and a battery. Communications among sensor nodes are typically conducted via radio frequency (RF) signals. Localization is a process of estimating the location of each sensor node in a WSN. It has potential applications such as environmental monitoring, human and object tracking, and human interfacing.
Several approaches based on communication between sensor nodes have been proposed to achieve localization in WSNs [1–5]; many of these approaches involve the use of anchor nodes to implement localization. Anchor nodes are sensor nodes whose location coordinates are set either manually or by using a global positioning system (GPS). The use of anchor nodes facilitates localization; however, this technique has an inherent drawback in that localization cannot be achieved if some of the anchor nodes accidentally break down, even if the remaining nodes continue to function. In addition, GPS-based configuration of anchor nodes is ineffective in indoor environments where RF signals from satellites cannot reach. Hence, investigating localization schemes without anchor nodes, that is, anchor-free localizations, becomes important, for the abovementioned applications and also for supporting the functionalities of anchor-based localization schemes. Several researches concerning anchor-free localization schemes have been proposed [6–9]; however, many of the proposed schemes are evaluated only by computer simulations and there are only a few investigations for anchor-free localization with experiments in the real world .
We have previously proposed an anchor-free localization scheme and implemented it on a ZigBee (IEEE 802.15.4) sensor module . The scheme uses a link quality indicator (LQI), which is proportional to the distance between two distinct nodes, as well as the hop count for location estimation. A two-dimensional structure is then constructed at the host computer connected to the sink node. Furthermore, we conducted estimation experiments on networks comprising three and four sensor nodes. The result showed the localization was successfully achieved; however, this scheme has low robustness against variations in the LQI. The measured LQI values tended to fluctuate under circumstances such as being inside a building, even when the sensor nodes were stable, owing to the reflection of RF signal.
Thus, we also have presented an improved scheme for localization in order to handle fluctuations in LQI values . This scheme calculates a weighted average over several candidates of estimated sensor locations on the basis of error-prone LQI values, which corresponds to a Lagrangian point among the candidates. The experimental results showed the accuracy of localization was improved by this scheme. But this scheme does not improve the measured LQI values that may contain time-dependent errors. Thus, there would be a potential to achieve localization with higher robustness, by introducing a scheme of removing errors in LQI time sequence values.
In this paper, we propose a scheme that improves localization of sensor nodes, based on the scheme proposed in [11, 12], and evaluate the performance of this proposed scheme on a sensor network with ZigBee sensor nodes. This scheme employs a Kalman filter [13, 14], which is extensively used in signal processing and control, for estimating the correct LQI values from the noisy LQI values in measurement.
This paper is organized as follows. In the following section, the elements and structure assumed in this paper are described. The basic estimation scheme from LQI values is also explained. Then, in Section 3, schemes for improving accuracy of localization based on this basic estimation scheme are described. A Kalman filtering scheme for estimating LQI values is formulated in this section. The performances for estimation are explored in Section 4 through the experiments using ZigBee sensor nodes. We finish with discussion and conclusion in Section 5.
2.1. Network Structure
Figure 1 shows the structure of the sensor network used in this paper. The network consists of several sensor nodes and at least one sink node where information is collected. The sensor nodes employed for localization are in a two-dimensional space, and each of them exchanges the LQI value, which is calculated on the basis of the strength of the signal received from other nodes, with neighboring nodes. The LQI is used for estimating the distance between two communicating nodes. In the process of exchanging the LQI, the hop count, which is the number of nodes traversed during communication between two nodes, is obtained.
The LQI and hop count are sent to a sink sensor node, and the localization process is carried out at the host computer associated with the sink node. The estimation results are displayed at this host computer and can be transmitted to all the sensor nodes. The LQI and hop count are periodically collected for estimating the sensor node locations; thus, the proposed scheme can deal with movements of sensor nodes.
In many localization schemes, the distance between two nodes is obtained on the basis of the received signal strength indicator (RSSI) [15–17], which is calculated on the basis of the strength of the received signals. However, the RSSI tends to get affected by environmental conditions such as reflections from metallic surfaces and superposition of electromagnetic fields. Thus, the RSSI is not as reliable as the LQI for estimating the distance between sensor nodes. It is known that there is a high correlation between the LQI and the distance between sensor nodes . Based on these reasons, in the proposed scheme, the LQI is employed for estimating the distance between sensor nodes.
2.2. Localization Procedure
First, we recapitulate the scheme proposed in  by using a simple network shown in Figure 2. This network consists of five sensor nodes, and the sink node is omitted in this figure for simplicity of explanation. Figure 2(a) depicts the configuration of the network in which the identifications of nodes are attached. The solid lines between nodes represent their connectivities, that is, the sensor nodes connected along this line can communicate among themselves. For example, nodes A, B, and C can communicate and share information such as LQI values among themselves, but nodes A and D cannot communicate directly. Furthermore, node E can communicate only with node B.
(a) Configuration of the network with five nodes
(b) Localization for three nodes
(c) Connecting the fourth node
(d) Connecting the fifth node
The first step of localization is to choose three nodes that can communicate among themselves and to from a triangle-shaped network of these nodes. In this example, a group of nodes A, B, and C is chosen for the network (Figure 2(b)). The LQI values for these nodes can be measured through their communication, and thus the distances among these nodes can also be estimated by determining the relation between the distances and the resultant LQI values. The distances among these nodes are denoted by , , and , which correspond to the distance between nodes A and B, B and C, and C and A, respectively. When one of the nodes is virtually located at a particular position (e.g., ), the locations for the other two nodes can be calculated on the basis of their distances to that node.
Subsequently, each node in the remaining group of nodes is chosen and connected to the base triangle network. The chosen node is a node that can communicate with the two nodes in the base triangle. In the example in Figure 2(a), node D is the target node because it can communicate with nodes B and C. Two candidates can arise on connecting the node to the triangle, as shown in Figure 2(c) (nodes D1 and D2), but according to the connectivities of nodes, only one of these candidates can be selected. The location of node D can be determined if the locations of nodes in the triangle are already set.
Finally, the nodes that can communicate to only one node are connected to the network, for example, node E in Figure 2(d). The locations of such nodes are set appropriately such that the connectivity of the network remains unchanged. As in the example in Figure 2(d), node E should be set at an arbitrary location such that this node is not directly connected to nodes A, C, and D.
2.3. Determining the Location of Nodes in Triangle Network
This section describes a procedure for determining the locations of sensor nodes on the basis of the collected information. As described in the previous section, the relative coordinates of three sensor nodes can be determined provided that these nodes can communicate with one another directly and that the distances between them are known. We cannot utilize information about the direction of an RF signal received from the sensor node, because the antenna used is undirectional.
When a triangle is constructed using three sensor nodes, the location and orientation of one node, that is, the first node, are virtually determined. This is due to a lack of anchor nodes, whose exact (absolute) locations are known. For the same reason, the orientation of the entire network in the two-dimensional space should be virtually determined. The location of the second node can be determined by either the first or second node because the distance between the first and second nodes is known.
The location of the third node is determined as follows. Let the coordinates of the first node (node A) and second node (node B) be and , respectively, such that . Further, let the coordinates of the third node (node C), which have to be calculated, be . The distances , , and denote the distances between nodes A and B, B and C, and C and A, respectively.
(1) When , the angle shown in Figure 3(a) is calculated as The direction is calculated as On the basis of these angles, there exist two candidates for node C, denoted by and , calculated as
and are symmetric to each other with respect to line AB (see Figure 3(a)); one of them is selected on the basis of its connectivity to the other nodes, as described in the previous section.
(2) When , the candidates for node C (Figure 3(b)) and their coordinates are as follows:
(3) When , the candidates for node C and their coordinates (Figure 3(c)) are as follows: Thus, the locations of the sensor nodes can be calculated in this way when the relative distances between the three nodes are given.
3. Schemes for Improving Localization Accuracy
In the scheme described in the previous section, it is assumed that measuring the LQI values helps obtain the accurate distance between nodes. However, the measured LQI values can fluctuate due to reflections of RF signals or obstacles, humidity in air, and so on. Thus, it is possible that the location of nodes cannot be accurately determined owing to fluctuations in LQI values. The following sections describe the schemes for the improvements of localization accuracy from two points of view. One is to achieve more accurate estimation based on the noisy LQI values in measurement, and the other is to estimate more accurate LQI values from the noisy LQI time sequences.
3.1. Geometrical Calculation Scheme on Location Candidates
This section describes an improvement scheme based on geometrical calculation obtained from the candidates of sensor locations estimated from the noisy LQI values . Figure 4 shows a simple example of four nodes whose locations are not determined. In this example, the distances between the nodes are measured as and , as obtained from the LQI values. It is impossible to achieve localization on the basis of these values, due to the contradiction among the geographical relations of nodes. Assuming that , , and are correctly estimated, the localization result is shown in Figure 4(a), where the resultant distance between nodes C and D does not match the measured one. Similar results can be obtained, as shown in Figures 4(b) and 4(c), where the distances between nodes B and D and nodes A and D, respectively, are incorrect.
Therefore, a scheme for improving the accuracy of the localization of nodes is presented in . This scheme calculates the locations of nodes by estimating the weighted average of the candidate locations of nodes. The measured LQI value tends to be affected more by the environment when the distance between nodes is longer than when it is shorter, due to RF signals from a node traveling in the air.
This scheme first calculates the possible locations of nodes when connecting them to the network. In the case of the four-node network in Figure 4, the possible locations of node D are calculated. Let the possible locations of node D be , , and for the configurations in Figures 4(a), 4(b), and 4(c), respectively. Then, the lengths of the base triangles are calculated. In the case in Figure 4, the lengths of triangles ABD, ACD, and BCD are , , and , respectively. The location of nodes is calculated from the candidate locations and lengths such that higher weight is assigned for the candidate location with a smaller length of the triangle network. In the case in Figure 4, the location of node D, denoted by , is calculated as where This averaging process calculates a so-called Lagrangian point from the estimated locations of candidates.
3.2. Kalman Filtering Scheme for Improving LQI
The LQI values obtained in the network varies in time even if there is no noise effects to the network, due to the movements of sensor nodes. Also, there should be several noise sources in and around the network, such as turbulence by other RF signals, reflections of RF signals, and noises in the sensor node itself. The LQI values are prone to be affected by these noise sources, thus it is effective to incorporate a scheme to improve the LQI by removing such effects. This section presents a scheme for estimating the correct LQI values from their noisy values, based on Kalman filtering that has been extensively used in the various problems in engineering, such as control, communication, and adaptive signal processing [13, 14].
Let be a LQI value at time between a pair of sensor nodes, treated as a probabilistic variable before its observation. Due to the movement of sensor nodes, this value can be represented as where is a variation of between the time and by the sensor movements.
Then, let be a LQI value at time obtained by observing LQI(). This is also a probabilistic variable and described as where is an error imposed in the observation of .
There should be assumptions for initial state of , that is, , , and . In this paper, we assume that these variables follow the normal distribution with their own averages and variances. This means that , , and , where , , , , , are set to constant values. By using these parameters, an expectation and variance of , and , respectively, can be formulated as follows: where For each observed time , an estimated LQI value is obtained by . It is important to make appropriate configurations of as a variance of LQI values, as a variance of changes of LQI values, and as a variance of error in observing LQI values, because the performance of the estimation system depends on these configurations.
4. Experimental Results
4.1. Experimental Setup
The proposed schemes were implemented on a Renesas YCSCZB2A2NN evaluation board. This board consists of a microcontroller M16C/28 (M30281FCHP, ROM 128 KB, RAM 12 KB) and RF-IC (FreeScale MC13202), and it is powered by external batteries. It can be operated as a full function device (FFD) that is compliant with the IEEE 802.15.4 standard so that it functions as both a coordinator and router. The sink node and sensor nodes in our implementation function as a coordinator and routers, respectively. Owing to the functionality of the sensor nodes, the sink node can collect information from the sensor nodes in the network if it can communicate with at least one sensor node. The system was provided with a mechanism for measuring LQI values. A configuration of this board is shown in Figure 5. No directional antennas were attached to the board in our implementation.
Location estimation experiments were performed in an indoor environment. The sensor network used in this paper comprised one sink node and four sensor nodes. In order to avoid collisions in communications among the sensor nodes, we set the communication periods of for all sensor nodes to 100 (ms). Two localization schemes were used for the performance evaluations: one was a conventional scheme  described in Section 3.1, and the other was the conventional scheme with an additional step of Kalman filtering described in Section 3.2, which was denoted as the proposed scheme.
4.2. Experiments for Distance-LQI Relation
In order to determine the relation between the distance between nodes and its LQI value, we preliminarily conducted experiments. Two sensor nodes were used for these experiments, and the actual distance between them was measured with a laser range finder. First the relation between nodes’ distance and its LQI value is investigated in an RF anechoic chamber, in order to exclude the reflections of RF signals by the sensor modules and the effects by RF signals other than the sensor modules. Figure 6 shows LQI values with respect to the distance between nodes. When the distance increased, its LQI value decreased, and the experimental relation between LQI () and distance (m) can be well approximated as in the range of .
We then conducted the same experiment in various indoor environments to find the parameters for our Kalman filter. The obtained LQI values follow a normal distribution and its average and variance are and , respectively. These values were set to the parameters in , that is, and , respectively. We assumed that the distance change for the movement of sensor nodes was at most 0.2 (m) during the communications for obtaining LQIs. In this case the averaged change of LQI value was 7.0 from (12), thus we set the parameters in so that and . The parameters in were empirically set, such that and .
4.3. Results for Estimating Locations
We then conducted localization experiments for a network with four sensor nodes, in which each of these nodes was occasionally moved. The sensor nodes were firstly placed at the vertices of a square with edge (m), as shown in Figure 7(a) and thus the exact locations of the nodes were , , , and for the node A, B, C, and D, respectively. After a certain number of seconds, one of the nodes is moved to the center of the square, as shown in Figure 7(b) where node A is the target of movement. The sequence of the movement used in the experiments are shown in Figure 8, where each dot in this figure represents a sensor node. Each configuration is deployed for 20 seconds and then one of the nodes is moved to/from the center in one second.
An example of the localization results are shown in Figure 9, which is obtained in the first configuration in the sequence in Figure 8. The locations of nodes estimated using the conventional scheme are denoted by a circle with dotted lines. From this result, the locations of nodes are different from the placed ones; particularly the location of node C, marked as , is very different. It is clear that the estimated locations (triangle with dashed lines) are relatively close to the placed ones using the proposed scheme, and hence the proposed scheme gives more accurate estimation. Other configurations in the same sequence of sensor movements are shown in Figure 10, and for many of these configurations the proposed scheme can estimate the locations similar to the placed locations.
(a) 2nd configuration
(b) 3rd configuration
(c) 4th configuration
(d) 5th configuration
(e) 6th configuration
(f) 7th configuration
(g) 8th configuration
(h) 9th configuration
To quantitatively evaluate the localization performance, we introduce the localization errors between configurations. The localization error is defined as where are the coordinates of a placed sensor node and is its estimated coordinates. The symbols A, B, C, and D denote the four sensor nodes. This quantity represents the squared error for the coordinates of placed and estimated nodes, and thus a smaller value of yields more accurate localization. Figure 11 shows the localization errors, calculated from the configurations in Figures 9 and 10. In many configurations, the errors by the conventional and proposed schemes seems to be comparative, but there are cases that the proposed scheme can achieve the errors much lower than the conventional scheme, for example, for the configuration numbers 1, 2, and 3. Similar tendencies can be found in the configurations obtained by another experiment, shown in Figure 12.
5. Discussion and Conclusion
We proposed an improved localization scheme for wireless sensor networks and implemented it on a ZigBee sensor module. This scheme employs the LQI and hop count to estimate the structure of the sensor network. By applying a Kalman filter to estimate the correct LQI values from the obtained one, in addition to calculating the weighted average of candidate locations, more accurate locations can be estimated under inaccurate LQI values among nodes.
The effect of Kalman filter could be found in the cases that the estimation error became a rather large value, which might be the result of sensor nodes being moved. In our experiments, the number of moving nodes was small, that is, at most one, thus experiments such that multiple sensor nodes move simultaneously should be necessary. The Kalman filtering scheme in this paper assumes that the fluctuations in the LQI values follow the normal distribution, and in our experiments with indoor environments the observed LQI values follow it. It is necessary to improve our filtering scheme in order to cope with various distributions of the fluctuations.
This distance- (LQI-) based localization scheme has inherent limitations for the estimation. One limitation is that there can be several candidates for an estimated location, that is, ambiguous configurations. An example of ambiguous configurations is shown in Figure 13, where our schemes cannot distinguish the estimated locations. The relationships of nodes’ distances in these configurations are identical. In our experiments, these mirror configurations are excluded by hand in order to evaluate the estimation errors between the proposed and conventional schemes.
The second limitation concerns the coordinates of nodes’ locations. These coordinates are called relative, in the sense that no global coordinates and orientation can be obtained by this scheme. Hence, it is necessary to acquire at least two global coordinates of sensor nodes for accomplishing all global coordinates and orientation of sensor nodes. Accumulating the estimating errors in large-scaled and nonmeshed networks is also an issue for this scheme. Thus, it is important to adopt another types of information for improving the accuracy in localization, as well as to evaluate the performances of the proposed scheme with a lot of sensor nodes. Incorporating other localizing schemes with this proposed scheme, such as introducing anchor nodes, is also a challenging problem.
The authors would like to express thier gratitude to Professor Kenichi Hatakeyama, Professor Satoru Aikawa, and Dr. Shinichiro Yamamoto who are with Systems Engineering Laboratory, Graduate School of Engineering, University of Hyogo, for providing an experimental environment in radio frequency anechoic chamber. This study was financially supported by the Japan Society for the Promotion of Science (Grant-in-Aids for Young Scientists (B) 24700227 and Scientific Research (C) 23500286).
- J. Bachrach and C. Taylor, “Localization in sensor networks,” in Handbook of Sensor Networks: Algorithms and Architectures, I. Stojmenovic, Ed., vol. 1, Wiley, 2005.
- R. L. Moses, D. Krishnamurthy, and R. M. Patterson, “A self-localization method for wireless sensor networks,” EURASIP Journal on Applied Signal Processing, vol. 2003, no. 4, pp. 348–358, 2003.
- T. He, C. Huang, B. M. Blum, J. A. Stankovic, and T. Abdelzaher, “Range-free localization schemes for large scale sensor networks,” in Proceedings of the 9th Annual International Conference on Mobile Computing and Networking (MobiCom '03), pp. 81–95, September 2003.
- K. F. Ssu, C. H. Ou, and H. C. Jiau, “Localization with mobile anchor points in wireless sensor networks,” IEEE Transactions on Vehicular Technology, vol. 54, no. 3, pp. 1187–1197, 2005.
- G. Mao, B. Fidan, and B. D. O. Anderson, “Wireless sensor network localization techniques,” Computer Networks, vol. 51, no. 10, pp. 2529–2553, 2007.
- N. B. Priyantha, H. Balakrishnan, E. Demaine, and S. Teller, “Anchor-free distributed localization in sensor networks,” Tech. Rep., MIT Laboratory for Computer Science, 2003.
- M. Vojdani and M. Dehghan, “Localization in anchor less wireless sensor network,” in Proceedings of the International Conference on Computer Engineering and Applications, vol. 2, pp. 365–369, 2011.
- A. Youssef, A. Agrawala, and M. Younis, “Accurate anchor-free node localization in wireless sensor networks,” in Proceedings of the 1st IEEE Workshop on Information Assurance in Wireless Sensor Networks (WSNIA '05), 2005.
- S. Lederer, Y. Wang, and J. Gao, “Connectivity-based localization of large scale sensor networks with complex shape,” in Procedings of the 27th Annual IEEE Conference on Computer Communications (INFOCOM '08), pp. 789–797, 2008.
- Z. Pei, Z. Deng, S. Xu, and X. Xu, “Anchor-free localization method for mobile targets in coal mine wireless sensor networks,” Sensors, vol. 9, pp. 2836–2850, 2009.
- J. Ohtsuka, T. Isokawa, A. Saitoh et al., “Implementing localization scheme on ZigBee wireless sensor network,” in Proceedings of the SICE Annual Conference (SICE2010), pp. 1195–1199, August 2010.
- S. Motomura, T. Isokawa, J. Ohtsuka et al., “On Improvement of anchor-free localization in ZigBee sensor network,” in Proceedings of 3rd International Conference on Networking and Computing, pp. 362–366, 2012.
- R. E. Kalman, “A new approach to linear filtering and prediction problems,” Transaction of the ASME of Basic Engineering, pp. 35–45, 1960.
- R. G. Brown, Introduction to Random Signals and Applied Kalman Filtering, John Wiley & Sons, New York, USA, 2nd edition, 1992.
- V. Seshadri, G. V. Záruba, and M. Huber, “A bayesian sampling approach to in-door localization of wireless devices using received signal strength indication,” in Proceedings of the 3rd IEEE International Conference on Pervasive Computing and Communications (PerCom '05), pp. 75–84, March 2005.
- M. Sugano, T. Kawazoe, Y. Ohta, and M. Murata, “Indoor localization system using RSSI measurement of wireless sensor network based on ZigBee standard,” in Proceedings of the IASTED International Conference on Wireless Sensor Networks, July 2006.
- X. Shen, Z. Wang, P. Jiang, R. Lin, and Y. Sun, “Connectivity and RSSI based localization scheme for wireless sensor networks,” in Proceedings of the International Conference on Intelligent Computing (ICIC '05), pp. 578–587, August 2005.
- J. Blumenthal, R. Grossmann, F. Golatowski, and D. Timmermann, “Weighted centroid localization in ZigBee-based sensor networks,” in Proceedings of the IEEE International Symposium on Intelligent Signal Processing (WISP '07), pp. 1–6, October 2007.
Copyright © 2013 Teijiro Isokawa et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.