Ultrasonic Sensor Network: Target Localization With Passive Self-Localization
Ultrasonic Sensor Network: Target Localization With Passive Self-Localization
Abstract
1 Introduction
Absolute positioning of flying robots is extemely important for free range path
tracking, reactive navigation, as well as automatic control [1]. With flying robots,
localization systems using inertial sensors and GPS suffer from problems in some
scenarios like inverted flights and aerobatic maneuvers [1]. Using computer vision
suffers from slow update rate.
Deploying ultrasonic sensor networks to solve this problem offers an attractive so-
lution, providing high update rate, high accuracy and robustness using redundancy
in the sensors. Each sensor is equipped with an ultrasonic receiver, some computing
power, and a wireless link to central computer. A pulse emitted from the trans-
mitter on the flying robot, is received by some of the sensors who report the pulse
arrival time to the central computer. In absence of RF-link between ultrasonic
transmitter and sensors, time-of-flight (TOF) information is not available, and the
position is estimated using pulse arrival times.
Ultrasonic sensors have been use in localization of robots [2,4,5,6]. Problems ad-
dressed include estimating variable speed of sound, and combining data from differ-
ent types of sensors,etc. However, in almost all of them, the following problems are
∗
Ashutosh Saxena ([email protected]). Project being pursued under Prof. An-
drew Ng ([email protected]) in AI-Robotics Lab.
(a) Receiver (b) Transmitter
not addressed: a) Very unreliable arrival times because of large distances involved
and noise, resulting in a large number of outliers, b) Unknown ultrasonic sensor
node locations, c) No RF-synchronization between transmitter and receiver. Using
redundancy from higher number of sensors, allows to reliably estimate the position
if the robot in these scenarios.
Most sensor network algorithms require knowledge of sensor node locations, which is
not always practical. Network localization algorithms exist, but some of them need
special beacon nodes with known locations, and others need nodes to communicate
with each other using sound and RF signals. Passive sensor network localization
techniques are promising. Bayesian network [6]approach to passive localization is
not applicable in practical scenarios of single target localization because the pulses
are not well dispersed (in fact they lie on a particular trajectory) and only a small
subset of nodes receive the pulses.
We use Weighted Multi-Dimensional Scaling (WMDS), with minimization over pulse
arrival time as well. Outliers are removed by finding a 3-dimensional locally linear
[3] manifold in a subset of space of arrival times from all the sensors. Once the
sensors are localized, the algorithm switches to Extended Kalman Filtering (EKF)
mode for position estimates of the target. A variable length observation vector is
used and consistent innovations from each subset of available observed arrival times
are used to update the position.
2 Localizer Structure
3 System Model
For the nth pulse, the arrival time at sensor m (= 1, ..., M ) is given by
tm (n) = t0 + nT + Dm (n)/c (1)
Dm (n) = ||x(n) − sm || (2)
Dk1 (n) − Dk2 (n) = c(tk1 (n) − tk2 (n)) (3)
where, T is the beacon firing cycle time (variable), t0 is the firing time of first
pulse, c is the speed of sound in air (variable but can be modeled). Dm (n) is the
euclidean distance of the target when nth was fired from sensor m. Note, that in
third equation, taking differences of the distances between two sensors results in
cancellation of firing time of the pulse. Thus, if we are using more sensors, then the
time-of-flight is not needed.
4 Algorithm
The localization process consists of two parts
1. : Pulse Detection: The noise level and the pulse energy level vary. To take
care of this, and ensure that low energy pulses are also detected, we put a
adaptive threshold based on total signal energy and pulse energy.
Figure 3: 1-D manifold in 2-D space for 2 sensors and robot moving along a straight
line
Now, we can apply weighted Multi-Dimensional Scaling (MDS) with t0 (0) as the
parameter, and minimize the error by varying t0 (0) according to a iterative method
(Gradient Descent). A version of weighted MDS (iterative) is used, with weights
correspoinding to Dxs set to zero.
6 Target Localization
We use Extended Kalman Filter (EKF) for estimating the n-dimensional state of
the system, denoted x, given a set of measurements in m dimensional vector y.
The state vector consists of robot position (x, y, z), and the speed of sound (c).
x=( x y z c )
y = ( t2 − t1 t3 − t1 ... tM − t1 )
If a particular sensor knows that it has not received the pulse, we do not include
that particular sensor in that state update, removing that arrival time from the
observation vector, and the corresponding matrices.
The number of arrival times required for estimating the position
P6 is 4. We have to
choose 4 out of 6 observations. This gives us a maximum of i=4 6 Ci = 22 choices
for the observation vector to choose from. The following heuristic will be used to
optimally choose the observation vector
Figure 4: Variable Length Observation vector. First arrival time is spurious after
inital few seconds. Second one is good almost all of the times.
Figure 5: Numerous false peaks are there. Initially, there are no false peaks; but as
Helicopter moves far away, the false peaks are detected
6.2 State Transition equations
The variance matrices for state and measurement noise are Q and R are estimated
beforehand statistically, to avoid time delay in online estimation. The predicted
error covariance matrix P is initialized to a high value because of uncertaintities in
prediction of state in the beginning. The state prediction is done, predicted error
covariance matrix is calculated. Innovation is calculated, and if it exceeds a certain
threshold, the observation is rejected. The threshold may be decreased as time
passes. The innovation is added to predicted state with a Kalman gain. Then the
error covariance matrix is re-computed.
The algorithm may diverge because of spurious arrival times, which cannot be
detected in the beginning. In the beginning the error covariance matrices are high
because of uncertaintities in the state. As the samples start to come, the EKF
converges. However, in presence of spurious samples, this may never happen. We
need an algorithm for removal of those spurious signals.
Some samples are collected in the beginning, and locally linear neighbors are clus-
tered together as in [3]. These have a high probability of being correct samples are
fed to the Kalman filter with weak threshold for spurious sample check. Once, the
EKF converges, the samples are fed directly to the EKF.
7 Results
7.1 Simulation Results
The error found was 3.5 cm using 2 ultrasonic sensors, and robot moving in 1
dimension.
The arrival times were detected, and the spurious arrival times are removed (Figure
7.2.3).
The results of localization of helicopter are shown in the figure. The position is
shown in meters (Figure 7.2.4). Estimated error is about 15 cm.
References
[1] Andrew Y. Ng, Adam Coates, Mark Diel, Varun Ganapathi, Jamie Schulte, Ben Tse,
Eric Berger and Eric Liang, Inverted autonomous helicopter flight via reinforcement learn-
ing, In International Symposium on Experimental Robotics, 2004.
[2] Michael R McCarthy, et. al., RF Free Ultrasonic Positioning, Proc. IEEE ISWC 2003.
[3] Ashutosh Saxena, Abhinav Gupta and Amitabha Mukerjee, Non-Linear Dimensionality
Reduction by Locally Linear Isomaps, In Lecture Notes in Computer Science (Proceedings
of 11th International Conference on Neural Information Processing- ICONIP 2004)
[4] Ching-Chih, A Localization System of a Mobile Robot by Fusing Dead-Recknoning and
Ultrasonic Measurements, IEEE Trans Instr Measurement, vol 47, no 5, Oct 1998
[5] Lindsay Kleeman, Optimal Estimation of Position and Heading for Mobile Robots
Using Ultrasonic Beacons and Dead-reckoning, IEEE 1992
[6] Rahul Biswas and Sebastian Thrun, A Passive Approach to Sensor Network Localiza-
tion, unpublished, 2005.