A network of small,
low cost sensor nodes with basic functionality, spread out in an area for
sensing specific parameters of the environment and with wireless links is
generally termed as a Wireless sensor network (WSN). Each node in a WSN usually
consists of an independent power source, a sensor unit, a transceiver unit and
a processing unit making each wireless sensor node autonomous. This enables
large scale distribution of these nodes over larger areas for better and faster
data gathering. Recent technological advances have made manufacture of small,
low cost sensors nodes technologically and economically feasible 1.
Characteristics of WSN, like mobility of nodes, ease of addition
or removal nodes to the network, heterogeneity of the nodes and ability to cope
with node failure, ensure a wide range of application of wireless sensor
networks. Precision Agriculture,
Environmental Monitoring, Vehicle Tracking, Health care Monitoring, Smart
Buildings, Military Applications, Animal Tracking are few applications of WSNs
2. The information gathered by the wireless sensor nodes, in certain
applications, becomes useful only when locations from where the data has been
collected is known. Hence, Localisation of wireless sensor nodes is essential,
especially for applications like tracking intruders in battlefield, locating
objects in building, determining their number, positions, and movements,
emergency response applications, industrial and environmental monitoring 3.
algorithms have been developed for localization of nodes in a WSN. Global
Positioning System (GPS) is currently the most commonly used positioning
systems in the world 4. However, GPS cannot be used in applications where the
wireless sensor nodes are small and it is not feasible to configure each node
with GPS and in applications where the nodes are spread out in indoors and are
heavily dense. Hence many other algorithms are used for such situations. These
algorithms can be broadly classified into Range based and Range free algorithms.
Time of Signal Arrival (TOA), Time Difference of Signal Arrival (TDOA), Angle
of Arrival and Received Signal Strength Indicator (RSSI) are few range based
localization algorithms. RSSI based localisation is more popular because it is
simple and does not require any sophisticated hardware 5.
Unlike in outdoor,
localization parameters would not remain constant in complex indoor
environments. The wireless signal is more severely affected by multipath error,
diffraction, obstacles, the direction of antennas and other factors 6.
Because of these, a huge amount of noise would be added to RSSI and would result
in error in localization. To reduce the error, feedback error control using
multiplicative distance-correction factor, Time Window Statistics, UWB Ranging and other techniques are used
789. However, all these techniques increase the computational time
required for localization.
In this paper, we discuss how the error in localization of nodes can be
reduced with help of neural networks. We first train the neural network in our
environment and then use this trained neural network for error correction. We
also compare the performance of localization with different parameters.
Estimating distance from RSSI
RSSI based localization
algorithms estimate the distance of a node from a given node, which transmits a
signal, by measuring the power of the signal received by the receiving node.
The node which transmits the signal are static and are aware of their location.
These nodes are called anchor nodes or beacon nodes. If the power received by a
node which is at a given distance from an anchor node is known, then the power
at a distance d is given as follows
Where Pr is the power received at a
distance d from the anchor node, A is the power received at a unit
distance from the anchor node and np
is the transmission factor whose value describes the environment and
is different from place to place. The parameters A and np are
constant over a given area for outdoor environment, but they vary considerably
over short distances in an indoor environment. Hence, for indoor localization,
the environment has to divided into smaller areas over which the parameters A and np can be considered constant. Each area would have a
different value for the parameters and can be estimated experimentally 4.
Once the parameters A and np are known, the distance of
a node from the anchor node by the following equation:
Predicting the location with the measured distances.
To predict the
location of a node, in a two-dimensional area, distances has to be measures
from at least three anchor nodes which do not fall in the same line. With the
locations of these anchor nodes, location of the node is the point of
intersection of the three circles, drawn with the anchor nodes as centre and
radius equal to the distances of the node from the anchor nodes. If (xa, ya), (xb,
yb) and (xc, yc) are the coordinates of three anchor nodes and da, db, dc
are the distances of a node from these anchor nodes respectively, then the
coordinates of the node (x, y) is estimated by solving the equations:
In case of a
three-dimensional localization, distances of the node from 4 anchor nodes,
which do not fall on the same plane has to be measured. Location can be
estimated by finding the intersection of the four spheres formed from the
Considering effects of noise.
Due to the presence
of noise in the signals, randomness in the indoor environment and other factors
introduce error in the distances measured by the nodes and the location data
sent by the anchor nodes. Due to these errors, the constant distance circle
from the anchor nodes a, b and c may not meet at a common point as shown in
fig1. Which means the equations may not have a single point solution. Hence, we
estimate the location to the point of intersection of lines l, m
and n, which are lines obtained by
connecting the points of intersection of a pair of circles. Equations of l, m
and n can be obtained by taking the
difference of equations 4 3, 5 4 and 3 5 respectively. Solving the so obtained
equations would give the estimated location of the node 10.
Error correction using neural networks