You are on page 1of 176

A POSITIONING SYSTEM

WITH NO LINE-OF-SIGHT RESTRICTIONS


FOR CLUTTERED ENVIRONMENTS

A DISSERTATION
SUBMITTED TO THE DEPARTMENT OF AERONAUTICS AND ASTRONAUTICS
AND THE COMMITTEE ON GRADUATE STUDIES
OF STANFORD UNIVERSITY
IN PARTIAL FULFILLMENT OF THE REQUIREMENTS
FOR THE DEGREE OF
DOCTOR OF PHILOSOPHY

Eric A. Prigge
August, 2004

Copyright 2005 by Eric Prigge

I certify that I have read this dissertation and that, in my opinion, it is fully adequate in
scope and quality as a dissertation for the degree of Doctor of Philosophy.

____________________________________
Jonathan P. How, Principal Adviser
Department of Aeronautics and Astronautics

I certify that I have read this dissertation and that, in my opinion, it is fully adequate in
scope and quality as a dissertation for the degree of Doctor of Philosophy.

____________________________________
Stephen M. Rock
Department of Aeronautics and Astronautics

I certify that I have read this dissertation and that, in my opinion, it is fully adequate in
scope and quality as a dissertation for the degree of Doctor of Philosophy.

____________________________________
Robert H. Cannon, Jr.
Department of Aeronautics and Astronautics

Approved for the University Committee on Graduate Studies:

____________________________________

iii


iv

Abstract
Accurate sensing of vehicle position and attitude is a fundamental requirement in
many mobile robot applications, but is a very challenging problem in the cluttered and
unstructured environment of the real world. Many existing indoor positioning systems
are limited in workspace and robustness because they require clear lines-of-sight or do
not provide absolute, drift-free measurements. Examples include overhead vision systems, where an unobstructed view must be maintained between robot and camera, and
inertial systems, where the measurements drift over time.
The research presented in this dissertation provides a new position and attitude
sensing system designed specifically to meet the challenges of operation in a realistic,
cluttered indoor environment, such as that of an office building or warehouse. The system is not limited by line-of-sight restrictions and produces drift-free measurements
throughout an operating area that can span a large building.

Accuracy of several

centimeters and a few degrees is delivered at 10 Hz, even when completely surrounded
by obstacles that would defeat existing approaches. Any number of the small sensor
units can be in operation, all providing estimates in a common reference frame.
This positioning system is based on extremely low frequency magnetic fields,
which have excellent characteristics for penetrating line-of-sight obstructions. Beacons
v

located throughout the workspace create the low-level fields. A sensor unit on the mobile
robot samples the amplitude of the local magnetic field and processes the measurements
to determine its position and attitude.
This research overcomes limitations in existing magnetic-based systems. The design of the signal structure, based on pseudorandom codes, enables the use of multiple,
distributed beacons and greatly expands coverage volume. The development of real-time
identification and correction methods mitigates the impact of distortions caused by materials in the environment. A novel solution algorithm combats both challenges, providing
increased coverage volume and reduced sensitivity to materials. A prototype system was
built to demonstrate these new techniques.
This dissertation first examines the concept for the system and the challenges in
its development. The innovations that enable the system are then detailed, along with the
design of the prototype and results from experimental demonstrations. The positioning
system developed through this research provides an effective solution not only for mobile
robots navigating cluttered environments, but has application in other areas such as object
and personnel tracking, augmented reality, and construction.

vi

To my family,
Julie, Caleb, Rachel, Roger, Sherry, and Gretchen
Thank you for all the love, support, and joy.

vii


viii

Table of Contents
1 Introduction

1.1 Uses for Positioning Systems

1.2 Positioning System Technologies

1.3 Research Goals

1.4 The Distributed Magnetic Local Positioning System

12

1.5 Research Solutions

14

1.6 Contributions

15

1.7 Thesis Roadmap

17

1.8 Summary

18

2 System Concept and Challenges

19

2.1 Magnetic Fields

21

2.1.1 Background

21

2.1.2 Dipole Magnetic Field

22

2.1.3 Interaction with Matter

23

2.1.4 Limitations in the Model

26

ix

2.2 Challenge: Sensitivity to Materials

27

2.2.1 Eddy Field Noise

27

2.2.2 Iron Noise

30

2.3 Challenge: Range

32

2.3.1 Numerous Beacons Distributed throughout Building

33

2.3.2 Further Issues Created by Numerous Beacons

34
35

2.4 DMLP System Concept


2.4.1 Beacon System

35

2.4.2 Sensor Unit

36
38

2.5 Summary

41

3 Signal Architecture
3.1 Signal Architectures Used in Existing Systems

42

3.2 New Signal Architecture Using Pseudorandom Codes

45

3.3 Comparison of Signal Structures

47

3.4 Distinguishing Beacon Fields with the New Signal Structure

49

3.5 Initialization

51

3.6 Optimality of the Signal Architecture

53

3.7 Summary

55
57

4 Eddy Field Noise Mitigation


4.1 Eddy Field Model

57

4.2 Detection and Mitigation Algorithm

62

4.3 Experimental Results

63

4.4 Summary

66

5 Solving for Position and Attitude

67

5.1 Survey of Solution Methods

68

5.2 New Solution Algorithm

70

5.2.1 Problem Statement

70

5.2.2 Position Estimation

72
x

5.2.3 Attitude Estimation

74

5.3 Advantages of the New Solution Algorithm

75

5.4 Summary

81

6 Iron Noise Mitigation

83

6.1 Background

84

6.2 Introduction to the Approach

85

6.3 Iron Noise Model

88

6.4 Detection and Mitigation Algorithm

91

6.5 Experimental Results

93

6.6 Summary

97

7 The Prototype System

99

7.1 Overview

99

7.2 Beacons

100

7.3 Beacon Network

104

7.4 Sensor Box

106

7.5 Processor

108

7.6 Summary

110

8 Experimental Demonstrations

111

8.1 Test Results in an Uncluttered Environment

111

8.2 Test Results with Occlusions

118

8.3 Summary

124

9 Conclusions

127

9.1 Research Overview

127

9.2 Strengths and Limitations of the DMLP System

132

9.3 Future Investigation

134

9.4 Summary

139
xi

Appendix A Examination of an Alternate Signal Architecture

141

A.1 Alternate Signal Architecture

142

A.2 Analysis

143

A.3 Results

144

A.4 Summary

147

Bibliography

149

xii

List of Tables
Table 2.1. Relative permeability of various materials (from [55]).

25

Table 7.1. Pseudorandom codes (written in octal notation) used in the prototype system.

103

Table A.1. For various values of N and U, the average number of duplications in the simulated system is shown. Ten runs were made at each test
point, and the standard deviation of the number of duplications is given in
parentheses. The * designates that at least one of the ten simulations
encountered zero duplications.

145

xiii


xiv

List of Figures
Figure 1.1. In this positioning system, the sensor unit (inset picture) determines its location and attitude to guide the mobile robot throughout the
building.

Figure 1.2. A mobile robot delivering cargo.

Figure 1.3. Sonys Aibo mobile robot for home entertainment.

Figure 1.4. A mobile robot in the Aerospace Robotics Lab at Stanford


surveys the landscape with an on-board camera.

Figure 1.5. Cye personal robot, from Probotics, uses odometry to navigate. Note the wheels designed for minimal slipping.

Figure 1.6. A mobile robot uses the research positioning system to navigate an obstacle course in a cluttered office environment. The inset picture shows real-time position estimates.

11

Figure 1.7. The DMLP system uses a network of beacons to permeate a


building with low frequency magnetic fields.
Figure 1.8.

13

Four research innovations are motivated by the two

fundamental challenges.

15

Figure 2.1. Dipole magnetic field.

23
xv

Figure 2.2. The magnetic field vector measured at location P is the same
with (a) or without (b) the obstacle (for most materials).

24

Figure 2.3. An object in a beacons magnetic field creates a small magnetic field of its own. The vector sum of the two fields is measured at lo25

cation P.
Figure 2.4. Two examples of a sensor and a conductor in a changing beacon magnetic field. In (a), the eddy field causes the sensor to overestimate
the beacon field, while in (b) the eddy field causes the sensor to underes-

29

timate the beacon field.


Figure 2.5. Two examples of a sensor and an iron object in a beacon
magnetic field. In (a), the iron objects field causes the sensor to underestimate the beacon field, while in (b) the iron objects field causes the sen-

31

sor to overestimate the beacon field.


Figure 2.6. Two approaches to building-wide coverage. In (a), a small
number (only one is shown) of powerful beacons; in (b) a large number of
weaker beacons. Several factors dictate that the DMLP system must use
(b), numerous beacons.

33

Figure 2.7. Block diagram of the DMLP sensor signal processing chain.

37

Figure 3.1. Position error (m) versus number of beacons, considering


eddy noise. The TDMA and FDMA signal structures used in existing systems do not extend well to a large number of beacons.

45

Figure 3.2. Example magnetic field versus time, created by a beacon using the pseudorandom code signal structure.

46

Figure 3.3. Position error (m) versus number of beacons, considering


eddy noise. The CDMA structure performs well even with a large number
of beacons.

48

Figure 3.4. Example neighborhoods of beacons.

52

Figure 3.5. A plot of Quality Factor versus beacon neighborhood is important in the initialization process to determine the correct neighborhood.

xvi

53

Figure 3.6. Position error (m) versus number of beacons, considering


eddy noise. The CDMA structure performs nearly as well as a hypothetical optimal structure.

55

Figure 4.1. Creation of eddy fields in the DMLP system. A beacon generates a time-varying magnetic field (a), creating potential differences in
the environment. This induced voltage (b) stimulates current flow (c) in
conductors, which in turn produces eddy fields (d).

59

Figure 4.2. Experiment used to verify the eddy field detection and mitigation technique.

63

Figure 4.3. Experimental results demonstrating the effectiveness of the


eddy field noise mitigation technique. When a metallic plate is placed
near the sensor (at 30 s), the Chapter 3 estimator reports an estimate of the
beacon field (B1z) that is 50% in error, while the Chapter 4 estimator is
only 11% in error. The binary, dimensionless signal eddy indication is
superimposed on the graph to indicate the transition from the Chapter 3 to
the Chapter 4 estimator.

64

Figure 4.4. Comparison of estimator performance with a metallic plate in


various positions and orientations. The Chapter 4 estimator performs better than the Chapter 3 estimator, mitigating eddy field noise by approximately 74%.

65

Figure 5.1. In the DMLP system, the sensor measures the magnetic field
of each nearby beacon. Given these measurements, plus the known beacon locations and parameters, the solution algorithm produces an estimate
of the sensor position and attitude.

71

Figure 5.2. Comparison of existing and new solution methods.

77

Figure 5.3. The coverage volume of one coil is shown in (a). In (b), a
cross section of the coverage volume of three coils is depicted. Volume I
is covered by all three coils, while volume U is covered by one or more
coils.

78

Figure 5.4. Example placement of beacons in a building.

79

xvii

Figure 5.5. A cross section view of the coverage volume of four triplecoil beacons is shown. In (a), existing solution methods may be used. In
(b), the new solution may be used. The new solution algorithm allows the
beacons to be spaced further apart for the same power consumption, while
80

still providing continuous coverage.


Figure 5.6. The placement of beacons is shown for three different cases:
(a) triple-coil beacons and existing solution method A, (b) triple-coil beacons and new solution method B, and (c) single-coil beacons and new solution method B. Case (c) allows 21% more coverage volume (for the
same power consumption) than case (a) while requiring only 1/3 of the
frequency content (lowering eddy noise).

81

Figure 6.1. In this one-dimensional example, the sensor measures the


87

fields produced by two beacons.


Figure 6.2.

An iron mass is placed next to the sensor in the one-

dimensional example. The iron, stimulated by the beacon fields, creates a


field of its own and causes the sensor to overestimate the size of the beacon signals. This iron noise causes error in the position estimate, but its
presence can be detected in the residuals.

87

Figure 6.3. The field produced by the iron in response to beacon i is modeled as a dipole directed along vector Bic.

90

Figure 6.4. The magnitudes of two residual vectors rise measurably as a


ferromagnetic mass is placed near the sensor, triggering an indication that
94

iron noise is present.


Figure 6.5. Once iron is indicated, the effects of iron noise on each vector
component of each beacon signal are estimated.

95

Figure 6.6. An iron mass is placed next to the sensor (at approximately 17
s), causing a 28% error in the estimate of B1x. With the mitigation algorithm, the estimate of B1x is only 7.2% in error.

96

Figure 6.7. The iron mass causes a 30% error in the estimate of B2x. The
mitigation algorithm reduces the error to 13%.
xviii

96

Figure 7.1. A prototype beacon. In the DMLP system, beacons generate


low frequency magnetic field signals that permeate a building.

101

Figure 7.2. Prototype beacons consist of a coil, power amplifier, and a


beacon electronics box (containing the functionality inside the dashed
line).

101

Figure 7.3. Relationship between the command signal, amplifier drive


voltage, and coil current in a prototype beacon.

102

Figure 7.4. The beacon network is used to synchronize and monitor the
105

beacons.
Figure 7.5. The Sync signal, carried by the beacon network to all bea-

105

cons.
Figure 7.6. The prototype sensor box takes vector magnetic field measurements and reports them to the processor. The sensor semiconductors

107

are located under the circle.


Figure 7.7. Block diagram showing the functionality inside the sensor

107

box.
Figure 7.8.

Implementation of the signal processing chain inside the

processor.

109

Figure 8.1. The prototype DMLP system and experiment area.

112

Figure 8.2. A typical experiment. The sensor box (mounted on the tripod)
takes measurements of the magnetic field vector while the laptop computer processes the data to determine position and attitude. The results
can be compared to the grid truth system.

113

Figure 8.3. Graph of position estimates (in the horizontal plane) generated
by the DMLP sensor in nine separate locations.

114

Figure 8.4. The sensor is pulled along a track.

117

Figure 8.5. Sensor X-Y position estimates as it is travels along the grid
lines x=2 m and y=2 m.

117

Figure 8.6. Wider view of the prototype DMLP experiment area, showing
118

the non-ideal environment.


xix

Figure 8.7. The sensor accurately estimates its position and attitude even
though surrounded by over 100 kg of wood and concrete.

119

Figure 8.8. The sensor accurately estimates its position and attitude even
though it is inside two steel bowls (one above and one directly below).

120

Figure 8.9. The sensor maintains accurate position and attitude estimates
even though a substantial cast iron object is placed only centimeters away.

121

Figure 8.10. The sensor generates accurate position and attitude estimates
even inside a steel can.

121

Figure 8.11. The sensor slides along a track through a steel duct.

122

Figure 8.12. Experimental results (X-Y position estimates) while sliding


the sensor along the track shown in Figure 8.10, with and without the steel
duct occlusion. The rectangle represents the location of the occlusion.

122

Figure 8.13. The sensor is moved around on a grid, and various objects
are placed over it, while the estimate of position and attitude is displayed
123

in real time.
Figure 8.14. The DMLP system is used to navigate a robot through a cluttered office environment. The laptop screen (inset picture) displays the

124

position estimates.
Figure 9.1. The DMLP system provides position and attitude sensing even

128

in cluttered environments.
Figure 9.2. Numerous beacons distributed throughout a building create
low frequency magnetic fields.

128

Figure 9.3. The signal architecture presented in Chapter 3 reduces eddy


noise in a system with many beacons.

129

Figure 9.4. Chapter 4 presents an algorithm to detect and further mitigate


129

eddy field noise.


Figure 9.5. Chapter 5 presents an algorithm to estimate the sensor position

130

and attitude.

xx

Figure 9.6. An algorithm to detect and mitigate the effects of ferromagnetic materials is presented in Chapter 6.

130

Figure 9.7. Chapter 7 examines the design of a prototype DMLP system.

131

Figure 9.8. In Chapter 8, experimental results using the prototype DMLP


system demonstrate position and attitude sensing even in cluttered environments. In (a), left, the sensor operates normally even though surrounded by construction materials. In (b), right, a mobile robot uses the
system to navigate a cluttered office environment.

131

Figure 9.9. The DMLP system could be rapidly deployed using emergency vehicles.

135

Figure 9.10. Concept for linear DMLP beacons.

137

Figure 9.11. Concept for distributed metal detection.

139

Figure A.1. The beacons in the simulation are arranged in a regular lattice. Each panel in this lattice has four beacons at its corners.

144

Figure A.2. Predicted position error (m) versus number of beacons, considering eddy noise. The alternate signal structure performs significantly
better than straightforward TDMA and FDMA structures, approaching the
performance of the Chapter 3 CDMA signal architecture.

xxi

146


xxii

1 Introduction
This dissertation describes a positioning system, a means of determining the location and attitude of an object in three dimensions. Accurate sensing of location and attitude is valuable in a wide variety of applications, from tracking firefighters in a burning
building to guiding a cleaning robot across a living room floor. However, the measurement of position and attitude is a very challenging problem in the cluttered real world
(i.e., outside of a structured laboratory environment). The positioning systems that are
currently used are generally limited in workspace and robustness because they require
clear lines-of-sight. For example, an overhead vision system (a common type of robot
positioning system) requires an unobstructed view to be maintained between robot and
camera. Alternatives, such as odometry or inertial systems, do not provide absolute,
drift-free measurements and thus accumulate errors over time and distance.
The research presented in this dissertation provides a new position and attitude
sensing system designed specifically to meet the challenges of operation in a realistic,
cluttered indoor environment, such as that of an office building or warehouse. The system is not limited by line-of-sight restrictions, and produces drift-free measurements
throughout an operating area that can span a large building. Accuracy of several centimeters and a few degrees is delivered at 10 Hz, even when completely surrounded by ob1

stacles that would defeat existing approaches (such as an overhead vision system). The
system is designed so that any number of the small sensor units can be in operation, all
providing position estimates in a common reference frame.
This positioning system is based on extremely low frequency magnetic fields,
which have excellent characteristics for penetrating line-of-sight obstructions. Inexpensive beacons located throughout the workspace are used to create the low-level magnetic
fields. A sensor unit on the mobile robot samples the local magnetic field vector and
processes the measurements to determine its position and attitude.
This thesis covers the system concept, the challenges in its development, and the
research solutions that make it possible. This introductory chapter first expands on the
motivation behind the research effort. The uses for positioning systems, in applications
from robotics and construction to home automation and augmented reality, are briefly
examined. The strengths and limitations of existing positioning systems are then presented, which motivates the design goals for a new, go-anywhere local positioning system. An overview of the system developed through this research, and how it is especially
suited for indoor operation, is then presented. This first chapter only introduces the fundamental challenges and the research solutions that enable the system. A roadmap for the
rest of this work is then provided, directing the reader to further information on the various aspects of the system.
1.1 Uses for Positioning Systems
A positioning system, in this work, describes a means of determining the location
and orientation of an object. An example is depicted in Figure 1.1, where a small sensor
unit (inset picture) can determine its position and attitude, with respect to the buildingfixed coordinate frame, as it is carried throughout the building by the mobile robot. Positioning systems are useful, even required, in a broad range of applications. One example,
the application that served as the primary motivation for this research, is mobile robot
navigation. Mobile robots are no longer just the dream of futurists they can be found
today making significant contributions in a surprising array of tasks. Their use ranges
from the mundane (e.g., automated inspection tasks [1], floor sweepers [2]) to the dangerous (e.g., construction [3], work in hazardous environments [4]). They cut the costs of
2

Figure 1.1. In this positioning system, the sensor unit (inset picture) determines
its location and attitude to guide the mobile robot throughout the building.
routine operations (e.g., delivery in manufacturing plants, office buildings, or hospitals
[5]) and provide services for the elderly [6]. Automated Guided Vehicles (AGVs), such
as the cargo transport shown in Figure 1.2, are heavily used in industrial applications [7].
Mobile robots are also finding their way into a growing number of homes, providing security [8], automation [9], and even entertainment (Figure 1.3). In each of these tasks,
some type of positioning system is essential autonomous mobile robots must have some
means of estimating where they are and which direction they are heading in order to
navigate to their destination.
Demand for position and attitude information is not exclusive to the realm of mobile robots. Knowledge of a persons location is useful in many applications, such as
tracking firefighters, shoppers, and children [10]. Information about the location of an
inanimate object, for example a cargo pallet, can streamline inventory and enable warehouse automation. A positioning system tasked with measuring a persons joint and limb
locations is used for motion capture [11], a staple in the entertainment and medical industries. In the exciting field of augmented reality [12], where a persons visual field of
view is overlaid with extra information, positioning systems are used to track head location and gaze direction. In the construction industry, where measurements are taken re3

Figure 1.2. A mobile robot delivering cargo.


peatedly to find the location for every wall, window, pipe, outlet, and fixture, efficiency
can be improved with a device that can immediately pinpoint its coordinates on the construction site.
These examples only touch upon the diverse ways positioning systems are already
in use. Up-to-date information on the latest applications for positioning systems can be
found in publications such as [13-17]. For a concrete example of how a positioning system can bring value to a specific application, the reader is referred to Chapter 9 of this
thesis. A brief case study is presented there of the potential benefits of a local positioning
system (specifically, the positioning system developed in this research) applied to the International Space Station. In this one example alone, a local positioning system could
prove advantageous in several ways, including automated inspection, easier docking, enhanced astronaut communication (through augmented reality), and improved robotic arm
performance.

Figure 1.3. Sonys Aibo mobile robot for home entertainment.


1.2 Positioning System Technologies
Although accurate sensing of position and attitude is essential for a broad range of
applications, it is still a very challenging problem in the cluttered and unstructured environment of the real world. A variety of technologies have been developed, and used successfully, to provide position and attitude information. However, many of these existing
positioning systems are inherently limited in their workspace and robustness. These limitations generally fall into two main categories: line-of-sight restrictions and lack of absolute, drift-free measurements. A brief overview of existing positioning techniques, and
their limitations, is presented in this section to motivate the usefulness of a new positioning system the focus of this research.
As a first example, consider a common positioning method where cameras are
mounted on the ceiling, tracking LEDs or markings on a robot (an overhead positioning
system) [18, 19]. This straightforward approach provides an accurate estimate of robot
position and orientation as long as an unobstructed view is available. However, when
this technique is taken from a structured laboratory environment into a real office building, the results can be unsatisfactory tables, desks, modular walls, and people may ob5

Figure 1.4. A mobile robot in the Aerospace Robotics Lab at Stanford surveys
the landscape with an on-board camera.
struct the line-of-sight between camera and robot. Thus, the robots workspace may constrained by the limitations of the positioning system (e.g., passable areas declared offlimits simply because the cameras view is blocked). Further, robustness suffers the
system may lose track unexpectedly simply due to the motion of people or objects in the
environment.
Other common positioning techniques reverse the architecture, but the same lineof-sight restrictions still apply. Several methods place the camera on the robot, tracking
markings or features of the building (Figure 1.4). This is an exciting area with much active research [20, 21], and enjoys success in many environments. Fundamentally, however, clear lines-of-sight to the targets are still required. For example, when a robotic
vacuum travels under a bed, the targets in the room (e.g., intersections of walls, corners
of doorframes, etc) are obscured. This technique can also be sensitive to lighting conditions and changes in scenery.
Although line-of-sight restrictions obviously apply to vision-based positioning
systems, this limitation also occurs for many other positioning systems. For example,
6

positioning systems have been developed based on the time-of-flight of ultrasonic pulses
between mobile emitters and receivers fixed to the building [22]. Obstacles, or even air
currents, along the lines-of-sight can cause a delayed signal to be received, or no signal
altogether, distorting the position estimate. Metrology systems based on infrared light
[23] provide incredibly accurate position information. However, again, obstacles block
the beams and limit the systems utility in a cluttered environment.
Finally, line-of-sight restrictions also affect positioning systems based on radio
waves. The most familiar system of this type is the Global Positioning System (GPS),
which has achieved wide success in outdoor applications from aircraft navigation [24] to
farming [25]. GPS receivers use precise timing measurements of the radio frequency
(RF) signals from several satellites to estimate location. Other RF localization systems
use signals from cellular phones [26], digital television broadcasts [27], LORAN stations
[28], broadcast radio stations [29], military communication links [30], Ultra-Wideband
(UWB) transmitters [31], and wireless Ethernet stations [32]. RF systems enjoy long
ranges and low power consumption, but, fundamentally, electromagnetic waves are
blocked by certain line-of-sight obstructions, particularly metallic ones, and delayed, refracted, and attenuated by many others [33, 34].
The positioning techniques presented so far have been limited, it has been argued,
by line-of-sight restrictions. However, another characteristic shared by many of these
systems poses a secondary drawback. Consider the overhead vision system, described
previously, tracking LEDs on a robot moving along the floor. While one LED on the robot is sufficient if only the location is needed, two LEDs are required to determine orientation (considering only one rotational degree of freedom). The further apart these markings are (i.e., the greater the baseline between them), the greater the orientation accuracy.
Similarly, systems based on time of flight measurements (GPS, etc) require multiple antennas, with baselines between them, to produce accurate attitude information. Thus
these systems fundamentally require a certain vehicle size for attitude measurements, no
matter how small the electronics can be made. Therefore, because of this requirement for
a baseline, none of these techniques may be appropriate for determining the attitude of a
small vehicle such as a micro air vehicle.

Figure 1.5. Cye personal robot, from Probotics, uses odometry to navigate. Note
the wheels designed for minimal slipping.
Of course, other types of existing positioning systems avoid line-of-sight restrictions, and baselines, altogether, but these are typically limited because of drift (i.e., errors
in the position estimates accumulate over time and distance). For example, inertial
measurement units integrate acceleration data, and can estimate the position of a vehicle
with no external inputs. However, these position estimates degrade rapidly over time a
robot using this system cannot return to the same location from one maneuver to the next.
Realistically, the position estimate of low cost units can drift by meters over the course of
just a few minutes [35, 36].
Odometry, keeping track of the wheel revolutions of a robot to estimate its motion, is perhaps the most common positioning technique among low-cost mobile robots
(Figure 1.5). The advantage of this method is similar to that of inertial systems the robot can go anywhere, with no requirements for clear lines-of-sight to any part of the
building. However, the position estimate error typically accumulates rapidly in practice, several centimeters of drift can occur after only a few turns, even on a good surface
[37]. Thus, this method is of limited use for a building-wide robotic application.
8

To conclude this brief survey of positioning systems, a final approach must be


discussed that is very interesting, and, in fact, was the inspiration for this research. Positioning systems based on extremely low frequency (ELF) magnetic fields [38, 39] offer
an intriguing alternative because they provide position and attitude sensing with no lineof-sight restrictions and absolute, drift-free measurements. In these systems, beacons
drive current through coils of wire, creating low frequency magnetic fields that have excellent characteristics for penetrating line-of-sight obstructions. A mobile sensor unit can
sample the local magnetic field, distinguish the fields produced by the individual beacons, and then solve for its position and attitude relative to the beacon-fixed frame. As
explained in Chapter 2, the ELF beacon fields are not affected by most types of objects,
so this approach can be used in an environment (such as an office or warehouse) with
many obstructions.
Existing magnetic systems work well in the applications they were designed for,
such as digitizing body motion as an actor moves on a stage. However, two main challenges have prevented existing magnetic field systems from achieving widespread use as
mobile robot positioning systems. The first is their short range. The coverage volume of
existing systems is, at most, on the order of a 10 m sphere room-sized rather than
building-wide. The second challenge is sensitivity to certain types of materials. The
area of operation in a motion capture performance can be well controlled, kept free of
metallic masses which can introduce distortion. The physics underlying these two challenges is introduced later in this chapter, and explored in greater detail in Chapter 2.
Further information about a broad variety of positioning systems can be found in
[40-43].
1.3 Research Goals
All of the positioning system techniques mentioned have merit, and have been
used successfully. However, several limitations have been discussed:

Line-of-sight restrictions (e.g., vision, ultrasound, RF systems)

Drifting measurements (e.g., inertial, odometry systems)

Limited range, sensitivity to materials (e.g., existing magnetic field systems)

Baselines required for attitude information (e.g., overhead vision, GPS)


9

These limitations can be seen as opportunities for improvement. Many applications that
depend on position measurements could benefit from the development of a new positioning system technology that alleviates these restrictions.
The goal of this research, then, is to provide a new position and attitude sensing
system designed specifically to meet the challenges of operation in the cluttered, realworld indoor environment. The system developed through this research, introduced in
the next section and detailed in the rest of this work, has the following characteristics,
which make it especially suited as a practical indoor positioning system:
1. No line-of-sight restrictions. The sensor functions in a cluttered environment
(i.e., even when surrounded by obstacles). Position measurements continue when
an unforeseen obstacle moves into the workspace or the lighting changes. For
automation applications, this means a cleaning robot can travel under a bed or
next to a table. For personnel tracking, the sensor can be conveniently placed in a
pocket, or can track a soldier diving under cover in a military training exercise.
At a construction site, the sensor can be used to find the location to drill a mounting hole, even if it is inside a cabinet.
2. Absolute, drift-free estimates. The position and attitude estimates of all units are
made with respect to the same, building-fixed coordinate frame. Estimates do not
drift over time, enabling a robot to return to the same location after each maneuver.
3. Building-wide coverage. The sensor operates throughout the volume of an entire
apartment complex or office building. The robots are not limited to the roomsized coverage volume of existing magnetic-based systems or constrained to
move only along guide wires [44].
4. Accuracy suitable for robot navigation. The system provides measurements with
accuracy on the order of a few centimeters and degrees at 10 Hz. This makes it
suitable for common mobile robot tasks such as maneuvering through doorways.
The system is sensitive to certain materials, but accuracy of several centimeters is
maintained even when the sensor comes close to a large mass of metallic material.
5. Small, low power sensor. The system makes vector measurements at one point in
space to determine attitude no baselines are required. The electronics in the
10

Figure 1.6. A mobile robot uses the research positioning system to navigate an obstacle course in a cluttered office environment. The inset picture
shows real-time position estimates.
mobile component of the system are small and low power. Thus, this system may
be well suited for micro air vehicles.
6. Potential for no FCC restrictions. The Federal Communications Commission
(FCC) regulates the use of the electromagnetic spectrum in the United States. A
drawback to RF positioning systems is that they may cause interference with other
RF communication or positioning systems (e.g., [45] discusses the potential conflict between UWB and GPS). The system developed in this research does not intentionally radiate electromagnetic waves. Small spurious EM emissions are generated by its operation, but these are at frequencies below where the FCC regulates [46]. Thus, the system may face fewer hurdles in its adoption.
This system, therefore, was designed to be a practical position and attitude sensor
for realistic, cluttered environments. To provide a concrete picture of the type of application this system is targeted for, a brief preview of the system in operation is presented in
11

Figure 1.6. The picture shows a prototype system where a mobile robot is navigating an
obstacle course in a mock office environment. The robot maintains centimeter level
knowledge of position (plotted in the inset picture) at 10 Hz as it travels between desks,
under a table, or through an air-conditioning duct. The small sensor unit on the robot is
completely obscured from the building-fixed components of the system (the beacons) for
much of the route, yet continues to provide drift-free estimates of location and attitude.
So have the challenges of indoor position sensing now been completely solved?
Does this thesis detail the final answer? Of course not like every other positioning system technology, this system has its strengths and weaknesses. In the field of positioning
systems, and typically in engineering in general, no single system is best for all situations. This research provides a solution that can bring value to certain applications, but it
is inappropriate for others. In Chapter 9, after the system has been described in detail,
conclusions are drawn about the pros and cons of the system. Appropriate applications
are described along with scenarios where it is of limited use. Further, several potential
opportunities to improve upon this system are conceived in Chapter 9.
1.4 The Distributed Magnetic Local Positioning System
To meet the research goals and provide positioning service throughout a cluttered
building, a system was developed based on extremely low frequency (ELF) magnetic
fields. Inexpensive beacons located throughout the building create the low-level fields
(smaller than the earths magnetic field). The beacons are approximately the size of a
bicycle wheel, and, since the ELF magnetic fields have excellent characteristics for penetrating line-of-sight obstructions, can be installed in unobtrusive locations, such as the
crawlspace between the ceiling and the floor of the next level. The graphic in Figure 1.7
depicts the beacons in this distributed magnetic local positioning (DMLP) system in a
warehouse.
Using the information from the beacon magnetic fields, a small, low-power sensor
unit can determine its position and orientation anywhere in the building. The sensor unit
samples the local magnetic field (a vector quantity) and distinguishes the components of
the field produced by individual beacons. Measurement of the fields from several beacons, along with the known beacon locations and field shapes, allow the sensor to solve
12

Figure 1.7. The DMLP system uses a network of beacons to permeate a building
with low frequency magnetic fields.
for its position and attitude. The ELF beacon fields are not significantly affected by most
objects in the environment, allowing the sensor and beacons to be separated by the obstructions common in an office or warehouse. The position and attitude estimates are
made with respect to the building-fixed beacons, allowing all sensor units to provide
drift-free position information in a common reference frame.
However, the use of ELF magnetic fields, though vital in obtaining goanywhere performance, introduces two challenges that must be overcome to make a
practical, building-wide positioning system. These two challenges, a fundamentally short
range and a sensitivity to certain materials, have prevented existing positioning systems
from achieving widespread use as robotic position sensors.
The first challenge is that certain materials in the environment may introduce
noise into the measurements. Eddy field noise is caused by the interaction of the beacon
fields with conductive objects. The time-varying magnetic fields induce electric currents
to flow in conductors in the environment. These currents, in turn, create magnetic fields
(eddy fields) of their own, summing with the beacon fields and introducing errors into the
position estimates. Further, ferromagnetic objects (mainly iron and certain types of steel)
cause an additional type of error. When exposed to a magnetic field, such as a beacon
13

field, microscopic regions known as domains respond by growing or shrinking. The result is that the object itself produces a net magnetic field, which superimposes with the
beacon fields and introduces error in the position solution. Chapter 2 provides an indepth examination of these noise sources.
The second challenge is the fundamentally short range of magnetic field systems
the signals generated by the beacons diminish rapidly with distance. When several factors are considered, such as beacon power consumption, dynamic range, and system accuracy, it is apparent that numerous beacons are needed to cover a large building, not just
a few high power beacons. However, neither the signal structure nor the position and attitude solution algorithms that are used in existing systems are suitable for a system with
numerous beacons. Chapter 2 examines this challenge as well.
1.5 Research Solutions
Several innovations were developed through this research [47,48] to confront
these challenges and enable a positioning system uniquely suited for indoor operation.
These innovations can be categorized into four areas: the design of an advantageous signal architecture, the development of a new position and attitude estimation algorithm, and
the identification of two noise correction techniques. The relationship between the fundamental challenges and the research effort are shown in Figure 1.8.
The first research innovation, an alternate signal architecture, attacks both primary
challenges by allowing a large number of beacons to operate at lower overall frequencies
than with alternative signal structures. This allows the positioning system to achieve
building-wide coverage volume with greatly reduced eddy field noise.
The second research innovation is the solution algorithm the nonlinear process
that takes the measurements of the magnetic fields produced by the beacons and returns
an estimate of sensor position and attitude. The new solution algorithm has several advantages over existing methods, but two are particularly useful: the algorithm allows the
use of numerous beacons, and a single beacon coil may be placed at each location. These
advantages enable a building-wide coverage volume, greater efficiency (in terms of coverage volume per power consumption), and reduced eddy field noise.

14

Challenges

Research

Short range requires many


beacons
New signal architecture
(chapter 3)

Need new signal


architecture
Need new solution
algortihm

New solution algorithm


(chapter 5)

Sensitive to certain materials

Eddy field noise


mitigation (chapter 4)

Eddy field noise

Iron noise mitigation


(chapter 6)

Ferromagnetic
distortion

Figure 1.8. Four research innovations are motivated by the two fundamental
challenges.
Although eddy field noise is reduced by both the signal architecture and the solution algorithm, it is not eliminated entirely. In fact, in certain environments, it can still be
one of the largest error sources. Therefore, an algorithm was developed to detect and
correct for eddy field noise. The technique is based on a model of the eddy fields created
by the pseudorandom beacon signals. Experimentally, the correction proves to be quite
successful, reducing the effects of eddy noise by an average of 74%.
Finally, mitigating the distortion caused by ferromagnetic objects proves to be
quite problematic. The effects of this noise cannot be detected through the signal from
any individual beacon. However, this disturbance can be observed by considering a collection of several beacon signals. An algorithm was developed to detect and mitigate this
noise. Experimentally, the method reliably detects the presence of iron distortion, and
provides an average of 40% mitigation.

15

1.6 Contributions
As described in the previous section, this research resulted in several contributions to help further the state-of-the-art in the field of positioning systems. Specifically,
this research has:
1. Pioneered a new type of positioning system especially suited for the cluttered environment of the real world. This marks the first time all of these useful characteristics have been provided in a single positioning system:

No line-of-sight restrictions

Drift-free measurements in a common, absolute frame

Building-wide coverage volume

Accuracy of a few centimeters and degrees

Thus, this research provides a sensing system well suited for mobile robot navigation, and numerous other applications, amid the obstacles that clutter a typical
building.
2. Designed a signal structure that allows a magnetic field positioning system to attain building-wide coverage. This new signal structure, based on pseudorandom
codes, allows the use of numerous beacons while maintaining low eddy field
noise.
3. Developed a new solution algorithm to estimate position and attitude. This new
algorithm enables the use of numerous, distributed beacons, each with only one
coil per beacon. This is shown to significantly increase the coverage volume, increase efficiency (coverage volume per power consumption), and reduce the
amount of eddy field noise.
4. Produced a technique to mitigate eddy field noise. Working within the new signal
structure, this novel algorithm detects the effects of eddy fields and forms a realtime correction. Thus, this algorithm mitigates one of the dominant noise sources
in magnetic field positioning systems.
5. Developed an algorithm to mitigate distortions due to ferromagnetic materials.
This novel algorithm examines the magnetic field measurements for the signature
of ferromagnetic distortion and, if iron noise is detected, characterizes the

16

source and computes a correction. The algorithm reliably detects iron noise and
modestly reduces its effects.
6. Experimentally demonstrated position and attitude sensing in the cluttered real
world. A prototype system verifies the various techniques developed through this
research, and demonstrates a position and attitude sensing system especially
suited for operation in a cluttered environment.
1.7 Thesis Roadmap
The detailed presentation of this research must begin with background information on magnetic fields, the fundamental phenomena of nature used in the positioning
system. The questions often arise: What are magnetic fields? and Why use them as
the basis for this positioning system? Chapter 2 tackles these questions with an introduction to magnetism. Coverage includes how magnetic fields are created and the characteristics that make ELF magnetic fields so appropriate for this local positioning system.
With that background on magnetic fields, Chapter 2 then progresses with a detailed analysis of the challenges to the system. Dominant noise sources, such as eddy
field noise and ferromagnetic distortion, are detailed, from the underlying physics to their
specific effects on the accuracy of the positioning system. The chapter also considers the
second challenge, the intrinsically short range of the signals. Finally, the system concept
is examined in greater detail than the brief preview presented in this chapter. This discussion of the beacon magnetic fields, their characteristics, and the system challenges sets
the stage for, and is fundamental to the understanding of, the rest of the work.
Chapters 3 through 6 then present the research solutions used to overcome the
challenges detailed in Chapter 2. The research innovations are arranged in the order in
which they appear in the signal processing chain inside the sensor unit. First, Chapter 3
confronts the issues involved with selecting the structure of the beacon signals. The architecture of these signals proves to be critical, and a new structure is presented that extends well to large numbers of beacons while maintaining low overall eddy field noise.
The signal processing that goes inside the sensor box to make use of this signal structure
is also detailed. Chapter 4 continues the processing by adjusting the beacon field measurements to further mitigate the effects of eddy field noise. Chapter 5 then describes an
17

algorithm by which the estimates of the beacon fields, along with the known beacon locations and parameters, can be used to produce an estimate of sensor position and attitude.
Finally, in Chapter 6, a technique is developed to detect and correct for the effects of ferromagnetic distortion, completing the signal processing chain.
While the theoretical techniques in Chapters 3-6 enable the system, Chapter 7
documents the actual design of a prototype DMLP system. The design of the beacons,
the sensor electronics, and the implementation of the signal processing are described.
Chapter 8 is the culmination of the work, where the prototype system is tested against a
variety of real-world obstacles. The results demonstrate a position and attitude sensing
system uniquely suited to the challenges of a cluttered indoor environment.
Chapter 9 draws conclusions from the information presented, such as the pros and
cons of this new type of sensing system, and applications where this sensor could prove
useful. The research is summarized, and concepts for further investigation are presented.
1.8 Summary
Accurate sensing of position and attitude is essential in many applications, from
tracking firefighters in a burning building to guiding a cleaning robot across a living
room floor, but it is a very challenging problem amid the obstacles that often clutter the
real world. Existing positioning systems are generally limited in workspace and robustness because they require clear lines of sight or produce drifting measurements. The research presented here provides a new position and attitude sensing system uniquely suited
to meet the challenges of operation in a realistic indoor environment, such as that of an
office building or warehouse. The system produces drift-free measurements with no lineof-sight restrictions throughout an operating area that can span a large building. Accuracy of several centimeters and a few degrees is delivered at 10 Hz, even surrounded by
obstacles that defeat existing approaches. Any number of the small sensor units may be in
operation, all providing position estimates in a common reference frame.

18

2 System Concept and Challenges


The DMLP system is designed for the challenging task of providing position and
attitude measurements in a cluttered indoor environment, such as an office building or
warehouse. The first chapter introduced the concept for the system and briefly previewed
the challenges in its development. This chapter expands on that discussion, examining
both the concept for the system and the challenges in detail. This material is necessary
for understanding the next four chapters, where innovations are presented which address
these challenges and enable the DMLP system.
The positioning system operates by measuring the amplitude of magnetic fields.
The first topic presented, therefore, is background information on this phenomenon of
nature. The basic equations that mathematically model magnetic fields, and the experimental observations from which these models are derived, are introduced. The characteristics of magnetic fields, such as their interaction with objects in a cluttered environment,
are then discussed. In particular, the quasi-steady-state fields that are used in the
DMLP system are examined. These magnetic signals operate in the extremely low frequency (ELF) band and are unaffected by the presence of most materials and objects
found in many buildings, making them well suited for this go-anywhere positioning
system.
19

After this background on magnetic fields, the first of two fundamental system
challenges is examined: positioning systems based on magnetic fields are sensitive to certain materials. Although ELF magnetic fields are unaffected by most materials in the environment, there are two primary mechanisms by which materials can introduce error into
the position and attitude estimates. The interaction of time-varying magnetic fields with
conductors in the environment leads to eddy field noise. Further, ferromagnetic materials
can distort even a steady state magnetic field. This effect is referred to as iron noise, after the principle offending material. The physics underlying these noise sources, and
their effects on a positioning system, are explored.
The second challenging factor for the building-wide DMLP system is the inherently short range of the beacon magnetic fields. An analysis is presented to demonstrate
that, because of this short range, numerous beacons are needed to achieve a large coverage volume, not simply a few high-powered beacons. However, this raises two further
issues: both the signal structures and the solution methods used in existing systems are
not appropriate for systems with numerous beacons. A new signal architecture and a new
algorithm to solve for position and attitude are required. These issues are introduced
here, then further described in their respective chapters (Chapter 3, Signal Architecture,
and Chapter 5, Solving for Position and Attitude).
With this background an introduction to magnetic fields and an examination of
the challenges in using them the system concept can be presented in greater detail than
the brief preview of the first chapter. The beacon system, responsible for creating the
magnetic fields, and the sensor unit, which measures the fields and processes the data, are
described. The signal processing chain is then examined, linking each of the innovations
in the next chapters into its proper place in the system. This serves as a roadmap, clarifying how the research solutions in the next four chapters answer the challenges raised in
this one.

20

2.1 Magnetic Fields


2.1.1 Background
Magnetism, as a phenomenon of nature, has been known since ancient times (an
engaging history of both the events and personalities can be found in [49]). It is interesting to note that one of the first practical applications of magnetism was, in fact, as a positioning system the compass and the earths magnetic field provided one of mans earliest forms of navigation. Electricity and magnetism were long studied and explained as
two separate phenomena of nature. The breakthrough discovery by Oersted in 1820, that
electrical current creates a magnetic field (and deflects a compass needle), established the
connection between these primal forces and initiated the modern understanding of magnetism.
A simple experimental observation forms the foundation for the theory of magnetostatics: two parallel wires, each carrying electrical current, exert force on each other.
This observation is of such a fundamental nature that it is used to define basic units such
as the Ampere (current) and Coulomb (charge). To explain and mathematically model
this action at a distance, scientists use the concept of a magnetic field. That is, it is understood that a wire carrying an electrical current creates a magnetic field in space. Other
electrical currents (e.g. the second wire) then interact with the magnetic field at their particular location in space, and a force may result.
To calculate the magnetic field at a point in space created by a current, the BiotSavart law is used:
dB =

0 I dl r
4 r 2

(2.1)

where dl = differential length of current carrying wire


dB = differential contribution to the magnetic field
I = current flowing through dl

0 = a constant known as the permeability of free space (0 = 4 x 10-3 G m/A)


r = vector from the current carrying wire to the point in space where the field is to
be calculated, with magnitude r and direction r .

21

The interaction of a current carrying element of wire and a magnetic field is


mathematically described using the Ampere force law:

dF = I dl B

(2.2)

where dF is the differential contribution of element dl to the resulting force.


The experimentally derived models provided by equations 2.1 and 2.2 have been
verified to an incredible degree for example, [50] establishes the accuracy of the exponent of r in the denominator of equation 2.1. The basic concepts and mathematical tools
introduced here will be of use in later sections. Further information on magnetism can be
obtained through references such as [51-53].
2.1.2 Dipole Magnetic Field
The Biot-Savart law may be used to compute the magnetic field created by a circular loop of wire. Consider a steady electrical current flowing through a circular coil of
wire with one or more turns. A constant magnetic field is produced, depicted in Figure
2.1, called a dipole magnetic field. At a particular point, the vector magnetic field is
given by [54]:

B=

0 NIa
( 2 cos ( ) r + sin ( ) )
4 r 3

(2.3)

where N = number of turns of wire

= elevation angle (see Figure 2.1)


r = distance from center of loop to the point where the field is to be calculated
a = area of loop
The derivation of this analytic, closed-form theoretical result requires two assumptions. First, it is assumed that the total cross-sectional area of the wire itself is small
compared to the loop radius. Second, it is assumed that the point of interest is at a distance of several times the loop radius. However, this second assumption is not a significant limitation. For example, at a distance of five radii from the center of the coil, the
magnetic field predicted by equation 2.3 is in error by only a few percent. Of course, exact results may always be obtained through direct numerical integration of the BiotSavart law.

22

r
B

coil of wire

Figure 2.1. Dipole magnetic field.

This particular geometry plays an important role in the DMLP system. Beacons
use circular coils of wire to generate dipole fields described by equation 2.3. Thus, this
result will be used frequently throughout this work.
2.1.3 Interaction with Matter

Steady state magnetic fields are virtually unaffected by the vast majority of materials and objects found in a typical building. This unique characteristic, the ability to
penetrate obstructions, is the reason magnetic fields were chosen as the foundation for the
DMLP system. Consider the steady state dipole magnetic field shown in Figure 2.2(a).
The vector magnetic field that is measured at some point in space, for example P, can be
accurately predicted using equation 2.3. In Figure 2.2(b), an obstruction is located between the beacon and the sensor. Remarkably, the magnetic field vector that is measured
at location P, in most cases, remains unchanged. That is, equation 2.3 may be used to
accurately predict the magnetic field at location P, regardless of whether or not obstructions exist. There are, however, limitations to this broad characterization of magnetic

23

(a)

(b)

Figure 2.2. The magnetic field vector measured at location P is the same with (a)
or without (b) the obstacle (for most materials).

fields (i.e., mechanisms by which the obstruction does change the magnetic field) discussed in the next section.
This useful attribute of magnetic fields (their indifference to the presence of most
materials) may be examined in closer detail. In Figure 2.3, an object is placed within the
magnetic field created by a beacon. The beacon magnetic field may interact with the object, potentially causing the object to create a magnetic field of its own, as shown in the
figure. The two magnetic fields, one from the beacon and one from the object, superimpose. Thus, a sensor at location P would record the vector sum of the two fields:
B P = Bbeacon + Bobject

(2.4)

The extent to which a material interacts with an external magnetic field, creating a magnetic field of its own, is described by its permeability. Most materials aluminum, concrete, wood, plastic, stone, some types of steel, and glass, as examples have a permeability that is nearly identical to that of empty space. Table 2.1 (from [55]) lists the relative permeability of several common materials (relative permeability is the ratio of the
permeability of an object to that of the permeability of free space). Thus, most materials
interact very weakly with external magnetic fields, such as the beacon fields in the
DMLP system. Any field produced by an object in the environment ( Bobject ), is generally
24

Figure 2.3. An object in a beacons magnetic field creates a small magnetic field
of its own. The vector sum of the two fields is measured at location P.

much weaker than the beacon field ( Bbeacon ), and contributes little to the field measured
by the sensor ( B P ).
Why do most materials interact so weakly with an external magnetic field? The
theories of paramagnetism and diamagnetism address this interaction. These concepts

Material

Relative Permeability

Air
Aluminum
Copper
Mercury
Silver
Tungsten
Water

1.00000037
1.000021
0.9999906
0.999968
0.9999736
1.00008
0.99999

Table 2.1. Relative permeability of various materials (from [55]).

25

can be explained with the help of quantum mechanics [56], but are beyond the scope of
this work. Fortunately, for the purposes of this research, the small interaction of most
materials with magnetic fields can simply be taken as an experimentally verified fact.
Steady state magnetic fields, therefore, show much potential as a basis for an indoor positioning system. For example, equation 2.3 accurately predicts the field a sensor
would measure even if it were placed inside an aluminum box (a Faraday cage). This
situation would clearly occlude sensing systems that rely on line-of-sight, such as those
based on vision or RF radiation. For example, RF radiation at 100 MHz incident on aluminum foil only 0.025 mm thick can be attenuated by 100 dB [57].
Finally, note that a simple experiment can be performed to verify that steady state
magnetic fields have little interaction with matter. Using a compass, take a measurement
of the earths steady state magnetic field. Place a block of aluminum within a few centimeters of the compass. Although the needle may twitch while the block is being moved
into place (a dynamic effect), the compass needle will settle to the same steady state
value it had previously.
2.1.4 Limitations in the Model

Magnetic fields appear, so far, to be the perfect foundation for a positioning system targeted at cluttered environments. Unfortunately, there are several limitations in the
model described by equation 2.3 circumstances in which the magnetic field calculated
through equation 2.3 does not accurately predict the actual measurement. Since the
DMLP system relies on equation 2.3 to estimate position and attitude (described in detail
in Chapter 5), these circumstances can introduce error into the estimates. There are three
primary limitations in the model, and each is introduced here.
The first limitation is that equation 2.3 does not capture the effects of changing
magnetic fields. Time-varying magnetic fields induce electrical current to flow in nearby
conductors. These eddy currents create magnetic fields of their own, which superimpose
with the beacon fields. Eddy fields, in a metallic environment, can be one of the largest
error sources in the DMLP system. As such, eddy field noise is described in detail in the
next section (Challenge: Sensitivity to Materials).

26

The second issue is that an object composed of ferromagnetic material may distort
even a steady state magnetic field. That is, the field produced by a ferromagnetic object
in response to an external field (Figure 2.3) may be large compared to that external field.
This effect is another significant error source in the DMLP system, and is also detailed in
the next section.
The third limitation is less important than the first two, and mentioned only for
completeness. A perfect conductor (a superconductor) in the environment can also distort even a steady state magnetic field. This is known as the Meissner effect [58]. A consequence of this effect is famously used to suspend magnets above superconductors. Superconductors, however, are not common in the average office building, and this limitation is not considered further.
2.2 Challenge: Sensitivity to Materials

The first primary challenge to the success of the DMLP system is that the accuracy of the position and attitude estimates may deteriorate when the sensor is close to certain materials. The two principle mechanisms for this sensitivity to materials, eddy field
noise and iron noise, were introduced in the previous section. This sensitivity to materials is now examined in further detail.
2.2.1 Eddy Field Noise

Eddy field noise is caused by interaction between the time-varying beacon magnetic fields and conductors in the environment. Several years after Oersteds investigations revealed that an electrical current produces a magnetic field, Faraday discovered
that a changing magnetic field could induce an electrical current to flow in a nearby conductor. This foundational principle of electromagnetism is embodied by Faradays law
[59]: time-varying magnetic fields create voltage differences, known as induced emf.
These induced voltages, no different than if they had been created with a battery, cause
electric currents to flow in conductors. These currents, in turn, create magnetic fields
(eddy fields) of their own, summing with the beacon fields and introducing errors into the
position estimates.

27

Faradays law is expressed:


Vind =

d
dt

(2.5)

where Vind is the induced voltage and is the magnetic flux. Magnetic flux is defined as
the inner product of the magnetic field vector B and an area vector A, which has
magnitude equal to the area of a region and direction normal to the surface:
= B A

(2.6)

Consider the effects of a time-varying beacon magnetic field interacting with a


typical conductive object. Assume that A is held constant (for example, an aluminum
plate that is not changing in area), and that B and A are parallel. Equation 2.5 can then be
simplified:
Vind = A

dB
dt

(2.7)

Now consider a sinusoidal magnetic field:


B = cos( t )

(2.8)

From Faradays law, it is apparent that the amplitude of the induced voltage created by
this magnetic field is proportional to the frequency of the field:
Vind = A sin( t )

(2.9)

as can be seen in the underscored coefficient. Thus, an important characteristic of eddy


field noise has been revealed: the higher the frequency content of the beacon fields, the
greater the induced voltages. Greater induced voltages lead to greater electrical currents,
and in turn to greater eddy fields. The corollary to this fact will prove to be of significant
use in this research effort: the lower the frequency content of the beacon fields, the lower
the eddy field noise. In the limit, a steady state magnetic field does not induce eddy fields

at all (recall that A is assumed constant).


The minus sign in Faradays law is a consequence of conservation of energy. This
important fact, known as Lenzs law, indicates that the induced emf, and the current flow,
will always be oriented in such a way as to oppose the change in the magnetic field.
The effects of eddy fields on the measurements taken by a sensor can now be considered through an example. Figure 2.4(a) depicts a changing beacon magnetic field, a
sensor, and a metallic object. In this example, the beacon is far away compared to the
28

conductor

sensor

Beacon magnetic
field grows in +x

Beacon magnetic
field grows in +z

conductor

sensor

(a)

(b)

Figure 2.4. Two examples of a sensor and a conductor in a changing beacon magnetic field. In (a), the eddy field causes the sensor to overestimate the beacon field,
while in (b) the eddy field causes the sensor to underestimate the beacon field.

distance between the sensor and the object. Thus, both sensor and object experience approximately the same beacon field. The beacon magnetic field vector is increasing in
magnitude and is directed along the +z axis. By Lenzs law, current flows in the conductor as shown in the figure, in such a way as to create the dipole field shown. The sensor
measures the vector sum of the beacon field and the eddy field. In the situation depicted
in Figure 2.4(a), the eddy field vector and the beacon field vector are aligned at the sensors location. Because of this constructive vector addition, the sensor reports a magnetic
field larger than the beacon field alone. The sensor overestimates the size of the beacon
field, and any position and attitude estimates based on this field estimate will be in error.
In Figure 2.4(b), the same sensor and object are considered, but with respect to
the field from a different beacon. In this case, the beacon vector is increasing in magnitude along the +x axis. The resulting eddy currents and field are shown in the figure.
The geometry is now such that the beacon field vector and the eddy field vector are in
opposite directions. The sensor reports a measurement smaller than the beacon field
alone, underestimating the beacon field.
29

The example in Figure 2.4 demonstrates that the same object may cause the sensor to overestimate the fields from some beacons while underestimating the fields from
other beacons. The effects of eddy fields are thus dependent on the bearing between the
conductor and the sensor, and the angle between that bearing vector and the local beacon
iron

sensor

iron

sensor

field vector.

The size of the eddy field itself is highly dependent on the geometry of the conductor and its orientation with respect to the beacon field. In Figure 2.4(a), the conductor
is depicted as having a relatively large area normal to the beacon field. The eddy currents
encompass
a large area,
andmagnetic
a large eddy field is produced. In contrast,
same conducz
Beaconthe
magnetic
Beacon
field steady in +x

field steady in +z

tor has a relatively small area normal to the beacon field in Figure 2.4(b). The eddy currents encompass a smaller area, and the resulting eddy field is smaller. Further, eddy
x

(a)

(b)

fields are also a function of the particular material properties of an object, such as the
conductivity.
The specific sizes and effects of eddy fields in the DMLP system are further examined in Chapter 4. However, it is important to convey a general sense of the magnitude of eddy field effects in the DMLP system. In a typical experiment in the prototype
DMLP system, a relatively large aluminum plate, 30 cm square by 0.5 cm thick, is placed
with its edge 3 cm from a sensor. In the worst geometry (plate normal to the beacon field
vector), eddy fields can cause the sensor estimate of the beacon field to be in error by
50%, leading to position errors on the order of 10-20 cm. Smaller metallic objects (e.g.,
hand tools) do not have a significant effect even when placed within a few centimeters of
the sensor. Similarly, the relatively large plate does not have a significant effect if it
far from the sensor - for example, 50 cm away. Note that, to obtain these results, the
DMLP system uses magnetic fields at extremely low frequencies (see Chapters 3 and 7
for more information about spectral content).
2.2.2 Iron Noise

A second primary source of error in magnetic field positioning systems results


from the presence of ferromagnetic materials in the environment. Microscopic regions in
a ferromagnetic material, called domains, rotate and expand when an external magnetic
field is applied. The result is that the field produced by a ferromagnetic object in re30

sponse to an external field (Figure 2.3) may be large compared to the external field.
Thus, iron (and some forms of steel), nickel, and cobalt can distort the field lines of even
a steady state magnetic field. Fortunately, within the set of ferromagnetic materials, iron
is typically the only one found in large quantities in many environments. Therefore, the
effects of ferromagnetic materials are referred to, in this work, as iron noise.
Similar to eddy field noise, the effects of iron are dependent on the bearing between the iron object and the sensor, and the angle between that bearing vector and the
local beacon field vector. Consider Figure 2.5(a), where a constant beacon magnetic
field, a sensor, and an iron object are depicted. The beacon is far away, compared to the
distance between the sensor and the iron object. Thus both sensor and object experience
approximately the same beacon field. In this example the steady beacon field vector is
Figure 2.5. Two examples of a sensor and an iron object in a beacon magnetic field.
In (a), the iron objects field causes the sensor to underestimate the beacon field,
while in (b) the iron objects field causes the sensor to overestimate the beacon field.

directed in the +z direction at the location of the object and sensor. The sensor measures
the vector sum of the beacon field and the field generated by the iron object. In the situation depicted in Figure 2.5(a), the iron field vector and the beacon field vector are in opposite directions at the sensors location. Thus the sensor reports a magnetic field smaller
than the beacon field alone, underestimating the size of the beacon field. Position and
attitude estimates based on this field estimate will be in error.
In Figure 2.5(b), the same sensor and object are considered, but with respect to
the field from a different beacon. In this case, the beacon field vector is directed along
the +x axis. The geometry is now such that the beacon field vector and the iron field vector are aligned. The sensor reports a measurement larger than the beacon field alone,
overestimating the beacon field.
The example in Figure 2.5 demonstrates that the same iron object may cause the
sensor to overestimate the fields from some beacons while underestimating the fields
from other beacons. Note that the model used in this example is an extremely simplistic
one. Real ferromagnetic materials can be anisotropic, where the field vector created by

31

the iron is not parallel to the external field, and have hysteresis, where the size of the
irons field is dependent on its past history. This simple model, however, is put to use in
Chapter 6, where an algorithm is presented that can detect the presence of iron noise and
form a correction. It is also important to note that, while eddy field noise (Figure 2.4) is
generated by a changing magnetic field, iron noise (Figure 2.5) may be created by even a
steady state field.
The specific sizes and effects of iron noise in the DMLP system are further examined in Chapter 6. Again, a brief preview of experimental results helps clarify the magnitude of this error source. Consider a relatively large brick of iron with a mass of 6 kg.
(a)

(b)

When placed within 4 cm of the sensor, this ferromagnetic object can cause the estimate
of the
beacon
to approaches
be in error by
leading to coverage.
position errors
on athesmall
ordernumber
of 10 cm.
Figure
2.6.field
Two
to30%,
building-wide
In (a),
However,
noise diminishes
rapidly
with
of number
the distance
between
the iron
(only oneiron
is shown)
of powerful
beacons;
in the
(b) acube
large
of weaker
beacons.
object
and the
sensor.
Thus,
thethe
error
in a system
beacon must
field estimate
due to a mass
of 6 kg
Several
factors
dictate
that
DMLP
use (b), numerous
beacons.
located 4 cm from the sensor is similar to that of 6,000 kg mass at a 40 cm distance.
2.3 Challenge: Range

The second primary challenge to the success of the DMLP system is the short
range of the beacon fields. The beacons in the DMLP system produce dipole magnetic
fields that are described by equation 2.3. Unfortunately, the fields diminish with the cube
of the distance from the beacon. The challenge that results from this inherently short
range is examined in this section. First, it is shown that numerous beacons are required to
cover a large volume, not just a few extremely powerful beacons. However, the need for
numerous beacons generates two further issues, which are then discussed.

32

2.3.1 Numerous Beacons Distributed throughout the Building

Two basic approaches can be taken to obtain a building-sized coverage volume,


as depicted in Figures 2.6(a) and (b). In Figure 2.6(a), one powerful beacon, perhaps
with 3 orthogonal coils, is used. Figure 2.6(b) shows a system with many overlapping,
but significantly less powerful, beacons. Considering factors such as power consumption, signal dynamic range, and estimate accuracy, the system that uses numerous distributed beacons (Figure 2.6(b)) has overwhelming advantages.
First, the total power consumption of the system greatly favors the numerous beacon case. With a single beacon, power consumption grows with the square of coverage
volume. In the multiple beacon case, power consumption is directly proportional to coverage volume. Thus, for example, if one thousand beacons in Figure 2.6(b) are used to
cover the same volume as one beacon in Figure 2.6(a), then the total power consumption
will be one thousand times less. System efficiency (power consumption for a given coverage volume), therefore, is highest when numerous, low power, closely spaced beacons
are used.
A second factor supporting the use of numerous beacons is the amplitude level of
the magnetic field. In the single beacon case, the field must be extremely large near the
beacon to be even measurable at the edge of the building. For example, the signal one
meter away from the beacon would be one million times larger than the signal 100 m
from the beacon. This places extreme dynamic range requirements on the electronics,
such as the magnetic field sensor, amplifiers, and the A/D converter.
Finally, the previous argument illustrated that the signal strength, sampled at various locations around the building, varies by orders of magnitude in the single beacon
case. However, there is no reason that the thermal noise in the electronics (modeled as
additive white gaussian noise) would differ from location to location. Thus, the single
beacon system has a large variation in signal-to-noise ratio (SNR) across its workspace,
resulting in a large variation in position estimate accuracy.
2.3.2 Further Issues Created by Numerous Beacons

In the previous section, the argument was developed that numerous beacons are
required to achieve a building-wide coverage volume. The use of numerous beacons,
33

however, raises two further issues. Both a new signal structure and a new solution
method are required which are suitable for use with numerous beacons. These issues are
introduced here, then further described in their respective chapters (Chapter 3, Signal Architecture, and Chapter 5, Solving for Position and Attitude).
In the next chapter, the signal structures used by existing systems are described.
There, considering the characteristics of eddy noise and the large number of beacons,
both discussed previously, it is demonstrated that existing signal architectures do not extend well to building-wide coverage volumes. Specifically, the accuracy of the position
estimates, considering eddy field noise, degrades unacceptably when existing signal
structures are used with a large number of beacons.
The use of numerous beacons raises a second issue: the need for an appropriate
solution method. A solution method is an algorithm that takes measurements of the
beacon fields and produces sensor position and attitude estimates. In Chapter 5, the solution methods used by existing systems are surveyed. These methods are not designed for
use with a large number of beacons, and are generally unsuited to the DMLP application.
2.4 DMLP System Concept

So far this chapter has presented background information about magnetic fields
and the challenges in using them in a positioning system. The DMLP system concept can
now be explored in greater detail than the brief preview of the first chapter. First, the
beacon system, responsible for creating the magnetic fields, is presented. Then, the sensor unit, which measures and processes the fields, is described, with particular focus on
the internal signal processing. This discussion serves as a roadmap, helping to clarify
how the research solutions in the next four chapters answer the challenges raised in this
one. Further information about the system concept can be found in Chapter 7, where the
design of a prototype DMLP system is presented in detail.
2.4.1 Beacon System

In the DMLP system, numerous beacons are placed throughout a building, each
creating a dipole magnetic field. A typical beacon consists of a coil of wire, a controller
to generate the proper signal, and power amplifier electronics to force current through the
34

coil. A beacon is similar in dimension to a bicycle wheel a disk with a diameter of onehalf to one meter, only 5-8 cm thick. The building is permeated with these beacon signals the dipole fields overlap, and at any point in space the fields from multiple beacons
can be measured by a sensor.
The spacing between beacons is specific to a particular application and environment, but a general estimate can be formed. As previously demonstrated, a system with
beacons further apart is less efficient (requiring more power per unit of coverage volume)
and requires more sensor dynamic range. However, a system with beacons that are closer
together has a higher installation cost (more beacons) and might require beacons at inconvenient locations (e.g., in the center of a large room). A spacing of 10 to 20 m between beacons is a good compromise for a typical office application. The power required
to drive beacons of this strength is on the order of 100 W, similar to standard electrical
appliances (such as fluorescent lights or computers), and can be provided without
changes to the buildings electrical infrastructure. Chapter 5 contains more information
on the specific beacon geometry (placement in the building) and configuration (number
of coils at each location).
Several hundred beacons may be distributed throughout a large building or warehouse. Beacons are low cost mass production could lower the unit price to tens of dollars. One likely location for the beacons is the crawlspace between a ceiling and the floor
of the next higher level. This location is out of sight, unobtrusive, and allows easy access
to power and communication infrastructure.
Although the specific signal structure of the beacon fields is discussed later
(Chapter 3, Signal Architecture), it is straightforward to demonstrate that it must be timevarying. Consider a sensor unit that measures the amplitude of the total magnetic field
vector at its (currently unknown) location. Since magnetic fields obey superposition, this
total measurement would be the vector sum of several superimposed beacon fields. The
measurement of the sum magnetic field vector by itself (3 measured quantities) is not a
sufficient amount of information to compute the sensor position and attitude (6 unknowns). However, if the sensor can distinguish the components of the field that are due
to each beacon (i.e., produce an estimate of the vector magnetic field created by each
beacon), then it would be possible to estimate the position of the sensor. Several methods
35

Signal
Acquisition

Raw magnetic field


measurements

Position and
Attitude
Estimation

Detection
and Eddy
Correction

Estimate of
individual beacon
magnetic fields

Iron
Correction

Sensor position
and attitude

Final sensor
position and
attitude

Figure 2.7. Block diagram of the DMLP sensor signal processing chain.

to distinguish the individual beacon fields are described in the next chapter time division, frequency division, and code division multiple access techniques. Unfortunately, all
require the beacons to generate time-varying magnetic fields. Thus, ideal steady-state
fields are not used, and eddy field noise is a primary concern of the DMLP system.
2.4.2 Sensor Unit

The DMLP sensor unit is the mobile component of the system. This small, lowpower module takes measurements of the superimposed beacon magnetic fields at its location. The measurements are processed to determine the sensors position and attitude
with respect to a building-fixed reference frame.
The operation of the sensor is depicted in block diagram format in Figure 2.7. In
the first stage of the system, the magnetic field measurements are acquired. Semiconductor sensors generate a voltage proportional to the magnetic field amplitude along a particular axis. Three of these sensors are used, oriented in orthogonal directions, to measure the vector magnetic field. These three analog signals are amplified, filtered, and digitized by an A/D converter.
Several potential misconceptions about the system can be addressed at this point.
First, note that the system is based on amplitude measurements, not time of flight measurements. Second, the magnetic fields created by the beacons are directly measured,
36

digitized, and processed. The magnetic field signals are not modulated onto carrier
waves, and there is no downconversion process in the sensor. Third, the beacons are not
intended to be antennas, which purposefully radiate electromagnetic waves propagating
through space carrying energy and momentum (although some of this radiation does occur). Rather, the beacons are large inductors, storing their energy in magnetic fields.
These fields permeate the building, rather than being confined to a ferromagnetic core,
such as in a typical power inductor. The semiconductors in the sensor unit are sensitive
to these storage fields. Thus, the system is described in terms of beacons and sensors
rather than transmitters or receivers.
Returning the Figure 2.7, the output of the signal acquisition block (three digital
streams of raw magnetic field measurement data) is sent to the detection process. An optimal decorrelating detector is implemented to distinguish the fields produced by individual beacons. The estimate of the vector magnetic field produced by beacon i, as measured at the sensors location, is given the symbol Bi. Chapter 3, in addition to detailing a
signal structure appropriate for a large number of beacons, describes the operation of this
detection stage.
Although the effects of eddy fields are greatly mitigated by the signal structure in
Chapter 3, eddy noise can still be a significant error source. The eddy correction technique in Chapter 4 modifies the estimates Bi to further counter the effects of eddy fields.
In Chapter 5, a solution algorithm is presented which takes the magnetic field estimates
(Bi) , along with the known beacon locations and parameters, and produces an estimate of
sensor position and attitude. Finally, both the beacon magnetic field estimates and the
position and attitude estimates are used by the final stage, a correction for the effects of
distortion due to iron in the environment (described in Chapter 6).
Thus the two primary challenges raised in this chapter are addressed by the techniques of the next four chapters. Magnetic field systems are sensitive to certain materials
(the first primary challenge), through the two mechanisms of eddy field noise and iron
noise. However, two correction steps (Chapters 4 and 6) specifically target each of these
error sources. Further, the focus of both the signal architecture (Chapter 3) and solution
method (Chapter 5) is to reduce the overall eddy noise while allowing the system to extend to a large number of beacons. The short range of magnetic fields (the second pri37

mary challenge) requires numerous beacons to be used, and this leads to issues of the
suitability of existing signal structures and solution algorithms. However, the signal architecture (Chapter 3) and solution technique (Chapter 5) are both designed specifically
for the DMLP application with its large number of beacons.
2.5 Summary

In the DMLP system, inexpensive beacons located throughout a building create


low frequency magnetic fields. A mobile sensor unit samples the vector magnetic field at
its location, distinguishes the fields produced by individual beacons, and solves for its
position and attitude. The fields have excellent characteristics for penetrating line-ofsight obstructions, and are unaffected by most objects and materials found in many environments.
The use of magnetic field signals, however, subjects the system to two primary
challenges. First, the system is sensitive to certain materials in the environment conductors in the environment cause eddy field noise (which is highly dependent in the frequency content of the beacon fields) while ferromagnetic materials cause iron noise. The
second challenge is the inherently short range of the beacon fields, requiring numerous
beacons to achieve building-wide coverage. However, this raises further issues, such as
the need for a new signal structure and solution method that are appropriate for a system
with numerous beacons. These two primary challenges are addressed by the research
presented in the next four chapters.

38


39

3 Signal Architecture
In the DMLP system, numerous beacons are used to create magnetic fields that
permeate a building. The architecture of these beacon signals is of critical importance
the use of an inappropriate signal structure would lead to greatly increased eddy field
noise, resulting in unacceptably large errors in the position and attitude estimates. This
chapter examines the signal structures used in existing magnetic-based systems and then
presents a new signal architecture that is advantageous for the DMLP application.
First, two signal structures that are used in existing magnetic positioning systems
are examined. Analysis shows that, using these signal architectures, the frequency content of the beacon signals scales with the number of beacons. For a system with a large
number of beacons, the higher frequency magnetic fields result in unacceptably high levels of eddy field noise. Thus, the signal architectures used in existing systems are appropriate for the small volume applications in which they are currently employed, but they
cannot be extended to support a large number of beacons.
An alternative signal structure is then presented that is advantageous for the
DMLP application. This architecture allows numerous beacons to be used, enabling the
DMLP system to have building-wide coverage, while maintaining good eddy field performance (the spectral content of the beacon signals scales only with the square root of
40

the number of beacons in the system). The performance of the new and existing signal
structures is compared, considering systems of various sizes, demonstrating the benefits
of the new signal architecture for applications with large coverage volumes.
The following section then demonstrates how to make use of the new signal architecture. The signal processing that takes place inside the sensor to distinguish the beacons is examined. The initialization of this signal processing stage is then discussed in
further detail.
The pseudorandom signal structure performs better, for a large number of beacons, than the simple structures used in small systems. However, an infinite number of
potential signal architectures exist. Is the proposed structure the best for the DMLP
application? The optimality of this new signal architecture is discussed in the final section.
3.1 Signal Architectures Used in Existing Systems

Existing magnetic field positioning systems commonly use two multiple access
methods to distinguish the fields produced by individual beacons. In a Time Division
Multiple Access (TDMA) approach [60], each beacon generates a field during its assigned time slot. The sensor is synchronized with the beacons, and thus can distinguish
the beacon fields only one beacon is producing a field at any given time. In a Frequency Division Multiple Access (FDMA) approach [61], each beacon continuously produces a sinusoidal field at a unique frequency. The sensor uses frequency selective filtering to discriminate among the beacon signals.
This section investigates the performance of systems using these basic signal
structures as the number of beacons in the system is varied. The purpose of this analysis
is to motivate the requirement for a new signal structure for the DMLP application, which
is then presented in the next section. This analysis of performance is straightforward,
consisting of three steps:
1) For each multiple access approach, it is shown that as the number of beacons
grows, the frequency content of the beacon signals increases.
2) Higher frequency beacon signals result in a larger amount of eddy noise this
was demonstrated in the last chapter (section 2.2.1, Eddy Field Noise).
41

3) An increase in eddy noise reduces the accuracy of the position and attitude estimates. A simulation is used to provide a numerical example of how position
estimates degrade, due to eddy noise, when these basic signal structures are
used in systems with large numbers of beacons.
Consider a positioning system with n beacon coils covering a building. As discussed previously, in order to solve for position and attitude, the fields generated by individual coils must be uniquely identifiable. For typical DMLP applications, n may range
from a dozen to a few thousand. In this analysis, sensors are required to produce position
and attitude estimates every Te seconds. A Te value of 0.1 seconds (i.e., an update rate of
10 Hz) is a reasonable requirement for robotic applications.
First, the operation of a TDMA signal structure is examined. Each beacon is assigned a unique time slot in which to broadcast during each Te interval. For a large
number of beacons, the time slot allotted to each beacon, Ts = Te/n, is very short. Using
straightforward Fourier analysis, the spectral content of the beacon signals moves to
higher frequencies as n increases and the time slots become shorter. That is, using a
TDMA approach, the beacon signal energy scales in frequency with the number of beacons. For example, with Te of 0.1 sec, for a system with 100 beacons the first lobe in
the signal spectrum (containing much of the energy) extends to 1 kHz, but with 1000
beacons the first lobe in the spectrum extends to 10 kHz.
The frequency content of beacon signals using an FDMA approach scales in a
similar fashion. Using the FDMA method, each beacon generates a field at a unique frequency. Thus, as each new beacon is added to the system, it must be assigned the next
broadcast frequency. Assume that the sensor signal processing can distinguish beacons
separated by a frequency spacing of s. Thus, the first beacon in the system could be assigned frequency s, the second beacon frequency 2s, and the ith beacon frequency is. Using this schedule, the average beacon frequency in a system of n beacons is ns/2. Thus,
the average beacon frequency scales linearly with the number of beacons in the system.
For example, with a spacing s of 10 Hz, a system with 100 beacons could have one beacon at 10 Hz, one beacon at 1 kHz, and an average beacon frequency of 500 Hz. A system with 1000 beacons would have an average beacon frequency of 5 kHz.

42

The second step in the analysis is to demonstrate that the amount of eddy field
noise produced by the system is directly related to the frequency content of the beacon
signals. However, the previous section on Eddy Field Noise has already shown this. As
a specific example, it was previously derived that the eddy fields produced by a sinusoidal magnetic signal are proportional to the frequency of the signal (equation 2.9). Thus,
given the same environment, the eddy noise produced by a 5 kHz beacon signal is 10
times greater than that produced by a 500 Hz beacon signal.
The final step of the analysis is to relate eddy field noise to the amount of error it
causes in the position estimates. The algorithm that takes noisy magnetic field measurements and produces position and attitude estimates is presented in Chapter 5. Since this
is a numerical algorithm, a simulation is used to complete the analysis. Specifically, the
simulation investigates the relationship between the number of beacons in a system and
the performance of the system, as measured by the position accuracy in the presence of
eddy field noise. The simulation steps through a number of cases each case increases
the value of n (number of beacons in the system), but all other parameters remain the
same. For each case, signal structures of both the TDMA and FDMA approaches are determined, and the beacon signals are simulated. Eddy field noise is calculated and a
simulated sensor produces a position estimate.
The results of the simulation are shown as a plot of the error in the position estimate, due to eddy noise, versus the number of beacons in the system, using the TDMA
and FDMA signal structures (Figure 3.1). The numerical values shown in the plot are
arbitrary they are the result of the specific simulation parameters (values were chosen
that are representative of a typical application). The importance of the plot is in the trend
that is revealed using the TDMA and FDMA signal structures, there is a rapid degradation in position accuracy, due to eddy field noise, as the number of beacons increases.
Thus, existing signal structures are appropriate for the small volume applications
they were designed for, with a limited number of beacon coils. However, this analysis
concludes that they do not extend well to the large number of beacons needed for a building-wide application. In the next section, a new signal structure for magnetic field positioning systems is presented. A comparison then follows, showing the performance ad-

43

1.0
0.8
0.6
0.4
0.2
0

position error (m)

TDMA
FDMA

101

102
number of beacons

103

Figure 3.1. Predicted position error (m) versus number of beacons, considering
eddy noise. The results show that TDMA and FDMA signal structures used in
existing systems do not extend well to a large number of beacons.

vantages of the new structure in applications where a large number of beacons are required.
3.2 New Signal Architecture Using Pseudorandom Codes

A new signal architecture for magnetic field positioning systems, based on pseudorandom codes, is presented. It is designed to maintain low overall beacon frequency
content even in a system with a large number of beacons. In this Code Division Multiple
Access (CDMA) structure, all beacons produce magnetic fields at all times. Each beacon, however, changes the polarity of the current through its coil according to a pseudorandom code, a special sequence of 1s and -1s, assigned to each transmitter. Thus, the
magnetic field vector at any point in Figure 2.1 can be aligned in one of two directions,
depending on the direction of the current flow. Figure 3.2 shows an example of the mag-

44

Figure 3.2. Example magnetic field versus time, created by a beacon using the
pseudorandom code signal structure.

netic field, as measured at a particular point in space along a particular direction, created
by a single beacon. Only a portion of a complete pseudorandom sequence is shown.
Each element of the sequence is called a chip in CDMA terms and the number of
chip periods in a second is called the chipping rate. To distinguish the fields produced by
each beacon, as shown in a later section, samples from an entire code sequence are required. Thus, if position estimates are desired at 10 Hz, for example, the period of the
entire code must be 0.1 sec. For a code of length 63 chips to complete in 0.1 sec, the
chipping rate must be 630 Hz. For a code of length 1023 chips to complete in 0.1 sec, the
chipping rate must be much higher, 10,230 Hz. The spectral content of a pseudorandom
signal is therefore directly related to its chipping rate higher chipping rate signals contain more energy at higher frequencies.
The beacons are synchronized so that all chip transitions occur at the same time
and the codes maintain their relative alignment. When the last element in a code sequence is reached, the code simply repeats.

The beacons maintain synchronization

through a communication link, which can be implemented using a cable or by signals


sent over the buildings electrical wiring. The sensor is also synchronized with the beacon network so that magnetic field measurements can be made at the end of each chip
period (this allows the most time for any eddy fields to decay). The synchronization between beacons and sensor can be implemented using a wireless communication link, or
the sensor can derive the information from the fields themselves. Once the sensor has obtained a sample from each chip during an entire code sequence, the data is processed to
estimate the magnetic field produced by each individual beacon.
The pseudorandom codes selected for the DMLP system are called Gold codes
[62]. The length of a code sequence (the number of elements) is designated N. Gold
codes of length N can be grouped into families, or sets, of N+2 separate codes. The codes
45

within a family have good orthogonality properties. That is, the peak cross-correlation
value of any two of these special vectors is small (compared to the peak autocorrelation
of either vector). Also, a code has only a very small auto-correlation with a delayed version of itself. With the entire system synchronized, beacons in the system can use all of
the codes in a family at all offsets. That is, two beacons in the system can use the same
code sequence, but offset in time by one or more chips. This is a departure from other
CDMA applications, where a code is generally used by only one transmitter in the system, and the codes are not synchronized.
The use of all codes at all offsets allows a system to contain a large number of
beacons while using codes with a small number of elements. A code of length N can
support N(N+2) beacons (or N offsets of N+2 codes). In other words, if n beacons are
employed in a system, code lengths of only approximately

n are required. For exam-

ple, codes of only length 31 can support 1023 beacons (33 codes each with 31 offsets),
and codes of only length 63 can support 4095 beacons (65 codes each with 63 offsets).
Using this CDMA structure, the code length (and thus the frequency content) of the beacon signals scales approximately as the square root of the number of beacons. This leads
to performance advantages over the TDMA and FDMA approaches, as described in the
next section.
3.3 Comparison of Signal Structures

The simulation described previously to analyze the performance of FDMA and


TDMA systems may now be applied to the CDMA structure. Again, for each case in the
simulation, the number of beacons in the system is increased, but the other parameters
remain the same. At each case, the CDMA signal structure is determined, the frequency
content and eddy noise are calculated, and the position estimate is generated. Figure 3.3
shows the resulting position accuracy versus the number of beacons for all three signal
structures.
The results show that the CDMA signal structure is comparable to other structures
in systems with a small number of beacons, but is advantageous when a large number of
beacons is considered. This is an expected result. In a TDMA system, as the number of
beacons increases, the time slot assigned to each beacon reduces, and the spectral content
46

1.0
0.8
0.6
0.4
0.2
0

position error (m)

TDMA
FDMA
CDMA

101

102
number of beacons

103

Figure 3.3. Predicted position error (m) versus number of beacons, considering
eddy noise. The CDMA structure performs well even with a large number of
beacons.

of the beacon signals moves to higher frequencies. Similarly, in a FDMA system, as each
new beacon is added to the system, it must operate at the next higher frequency, and the
average spectral content moves to higher frequencies. By Faradays Law, the eddy field
noise increases in size as the beacons move to higher frequencies. Of course, in the
CDMA system, as the number of beacons increases, the spectral content of the beacon
signals also increases, but at a much slower rate than the TDMA or FDMA systems. An
increase in the amount of eddy noise leads to greater errors in the position estimates, as
shown in the plot. Note that the discontinuity in the CDMA data around 1000 beacons is
due to a required change in code lengths.
To gain further insight into these results, consider a specific data point a system
with 1000 beacons. With a CDMA signal structure, codes of length 31 are used. A Te of
0.1 seconds results in a chipping rate 310 Hz. Most of the signal energy is contained at
frequencies under 310 Hz. Contrast this result with the TDMA structure, where each

47

beacon generates a pulse only 0.1 ms wide (30 times shorter than a chip in the CDMA
system). The first lobe in the spectrum (containing much of the signal energy) extends to
10 kHz. In the FDMA system, with 10 Hz spacing between beacon signals, the average
beacon frequency is 5 kHz. Thus, for a system with 1000 beacons, both the TDMA and
FDMA approaches result in beacon frequencies much higher than those obtained with a
CDMA approach.
In summary, the simulations indicate that all three signal structures perform well
when a small number of beacons are used in the system. In systems with a large number
of beacons, however, the CDMA structure performs significantly better than the TDMA
and FDMA structures.
3.4 Distinguishing Beacon Fields with the New Signal Structure

This section describes the signal processing that occurs inside the sensor the algorithm that takes the magnetic field measurements and produces an estimate of the
magnetic field vector generated by each individual nearby beacon (Bi). Once the magnetic field vectors from several beacons have been estimated, they can be used to solve
for sensor position and attitude (described in Chapter 5).
Each beacon in the DMLP system generates a unique signal, based on a pseudorandom code, as described earlier. A mobile sensor unit samples the vector magnetic
field at its location this measured magnetic field is a mix of superimposed signals from
several beacons. As described in Chapter 2, there is not enough information in one sample of the sum field (3 component measurements) to solve for position and attitude (6 unknowns). However, if the field from each beacon contributing to the sum could be distinguished (i.e., determine Bi produced by each nearby beacon), then it may be possible
to solve for position and attitude.
In the DMLP system, a sensor samples the vector magnetic field (taking 3 component measurements along three orthogonal directions) once during each chip period.
Once data has been taken for an entire code cycle (i.e., N samples), this set of measurements (designated M) is operated on to distinguish the individual beacons fields. M is
arranged as a (N x 3) matrix where each row contains a vector sample taken during a different chip period. Consider one vector component of this set of measurements (i.e., a
48

column of M), designated Mv. Assuming n beacons are close enough to contribute to the
sum:
n

M v = Biv C i + bv

(3.1)

where Mv = magnetic field measurements along axis v (N x 1)


Biv = v-axis component of magnetic field produced by beacon i (scalar)
Ci = pseudorandom code used by beacon i (N x 1 sequence of 1s and 1s)
N = number of elements in Ci (scalar)
n = number of nearby beacons contributing to Mv
bv = constant bias along axis v (e.g., earths magnetic field)

Equation 3.1 can be expressed in matrix notation:


mv ( 1 ) c1( 1 ) c 2( 1 ) L 1 B1v
m ( 2 ) c ( 2 ) c ( 2 ) L 1 B
2
v
= 1
2v
mv ( 3 ) c1( 3 ) c 2( 3 ) L 1 M



M M
M
M bv
1
424
3 1444
424444
3 123

Mv

(3.2)

Xv

where mv(j) = jth element of Mv


ci(j) = jth element of code Ci

As an example, consider a system that uses codes of length 63 and four beacons are close
to the sensor. Vector M is 63 by 1, containing 63 measurements, one from each chip period in the code cycle. Matrix A is 63 by 5, with four columns containing the codes of the
four beacons, and the last column containing all 1s. Vector X, containing the unknown
amplitudes of the individual beacon fields (and the bias term), is 5 by 1.
The field produced by each beacon, Biv, (contained in Xv) is distinguished by a
straightforward operation on the measurement vector (Mv):

X v est = AT A

AT M v

(3.3)

This operation is carried out on each of the three columns of the set of measurements M.
The result is that each vector component of the field produced by each nearby beacon is
estimated (i.e., each Bi has been obtained).
The least squares fit signal processing given by equation 3.3, also known as a
decorrelating detector [63], is appropriate for the DMLP application for two reasons.
49

First, it is necessary due to the systems large dynamic range. Due to the 1/r3 characteristic of the dipole field (equation 2.3), it is not uncommon for the sensor to receive one
beacon signal that is 1000 times stronger than another beacon signal. As discussed previously, the beacon signals are not perfectly orthogonal. If a decorrelating detector is not
used, the strong signal can overwhelm the smaller one, even though they use different
codes. This is especially important in the DMLP application, where relatively short code
lengths are used.
A second benefit of this decorrelating detector is its performance in the presence
of Additive White Gaussian Noise (AWGN). The random thermal motion of electrons in
the sensor and amplifier electronics, which can be modeled as AWGN, is an unavoidable
source of noise in the system (see Chapter 8). In a non-metallic environment (with little
eddy field or iron noise) it can be the dominant source of errors in the position and attitude estimates. The least-squares detector is the optimal (best linear unbiased) estimator
in the presence of this noise [64].
After the estimates have been made (using equation 3.3), an important metric can
be calculated to verify the quality of the results. Let the Dv be defined as the difference
between the actual measurement data Mv and the least squares fit that was made to that
data:
Dv = M v AX v est

(3.4)

The vector Dv has size Nx1. A small difference (compared in some way to the size
of Mv) indicates that the set of field measurements Mv matches closely with the field that
would be expected from a group of beacons with amplitudes Xvest. A large difference
indicates an error condition the sum field produced by several beacons with amplitudes
Xvest does not match the measured data well. To specify this concept in a more concrete

manner a quality factor metric is introduced:


qf = 1

std ( Dv )
std ( M v )

(3.5)

A quality factor near 1 indicates that the estimates obtained by equation 3.3 are reasonable, and they can be used to form a position and attitude solution. A low quality factor
indicates that the estimates produced by equation 3.3 are suspect, and the positioning de-

50

vice can signal the operator that an error has occurred. This metric is also used in the initialization process, discussed in the next section.
Thus, an algorithm has been presented that enables a sensor to use the CDMA
signal structure presented in the previous sections. Specifically, a sensor takes a sequence of magnetic field samples and, through equation 3.3, obtains an estimate of the
magnetic field vector (Bi) generated by each nearby beacon. In the next chapter, an algorithm is presented which improves upon equation 3.3 and further mitigates the effects of
eddy field noise. Then, in Chapter 5, the estimates Bi are used to determine the sensors
position and attitude. Further information on CDMA techniques can be found in [65].
3.5 Initialization

For clarity, one important detail was omitted in the previous section. Which Gold
codes should be used in matrix A in equation 3.3? During normal operation, this is not a
problem. The sensor has a database of the beacon locations and codes. From the last position estimate, the codes from several of the closest beacons can be selected (generally
3-8 beacons are within range of a sensor). But for a cold start (e.g., when first powered
up), the sensor does not know its location or which codes should be used in matrix A.
This section presents a procedure to determine, with no a priori knowledge, which beacons are close to the sensor, and thus which codes should be used in matrix A. This initialization method requires only one code cycle of data, the same amount needed for the
detection (equation 3.3). Thus, this method can be used once at startup or, with enough
computational power, could be applied every time an estimate is made (i.e., it is invisible
to the rest of the signal processing chain).
The initialization procedure is simply a brute force search based on the quality
factor introduced in the previous section. A standard set of measurements M is taken.
Software then iterates through each grouping, or neighborhood, of beacons in the system (neighborhoods overlap, as shown in Figure 3.4). At each iteration step, the sensor is
assumed to be in that neighborhood, and the closest 3-8 beacon codes are chosen. Estimates are then made (using equation 3.3) and the quality factor is calculated (equation
3.5). The procedure continues throughout the building, recording the quality factor for
each neighborhood. The neighborhood with the highest quality factor is chosen. Thus,
51

Figure 3.4. Example neighborhoods of beacons.

this procedure searches for the neighborhood that can best explain the measurement
data M.
The initialization algorithm was tested in a simulation of a building with over
4000 beacons. Realistic noise values were used. The results are shown in a plot of quality factor versus neighborhood (Figure 3.5). The proper neighborhood, and thus the cor-

1.0

rect codes to use in equation 3.3, is readily discernable.

0.6
0.4
0

0.2

Quality Factor

0.8

correct
neighborhood

1000

2000
3000
Neighborhood

4000

Figure 3.5. A plot of Quality Factor versus beacon neighborhood is important


in the initialization process to determine the correct neighborhood.

52

3.6 Optimality of the Signal Architecture

This chapter has presented a specific signal architecture that can reduce the eddy
noise in a magnetic field positioning system, especially one with a large number of beacons. However, there are an infinite number of potential signal structures. Is this CDMA
architecture the best approach? This final section considers the optimality of the
DMLP signal architecture.
Earlier discussion (section 3.1) concluded that, using the TDMA and FDMA
structures, the frequency content of the beacon signals scales with n. With the CDMA
approach, frequency content scales only with

n , resulting in performance advantages.

Now, a hypothetical signal structure, with an even better scaling, is considered. The
structure uses binary signals, similar to the CDMA approach, where a 1 represents one
polarity of the beacon field and a 0 the opposite polarity. Each beacon generates its
signals according to a code that is simply the binary designation of the beacon. For example, beacon 6 (binary 000110) uses code sequence [0 0 0 1 1 0], and beacon 8 (binary
001000) uses code sequence [0 0 1 0 0 0]. Thus, this system is optimal the codes are
the minimum length (in a binary system) needed to give each beacon a unique signal.
For example, in a system with 4000 beacons, codes of length 12 would be used (212 =
4096). In a similar CDMA system, the codes would have length 63. With this hypothetical scheme, for a system of n beacons, codes of only length log2(n) would be needed.
However this hypothetical structure does not provide a practical multiple access
method. Consider a receiver that measures M=[0 0 1 1 1 0]. Are beacons 6 and 8 being
received with equal amplitudes, or is it beacon 14? Or perhaps beacons 2, 4, and 8 are
each being received.
This hypothetical structure, scaling with log2(n), cannot actually be used, but it
can be analyzed using the performance simulation described earlier. The results (Figure
3.6) show that the CDMA approach, while it is not optimal, has performance close to this
hypothetical structure, which uses optimal binary sequences. Thus, while optimality of
the CDMA structure has not been established, an argument can be made from a law of
diminishing returns standpoint. That is, for a system with numerous beacons (e.g., thousands), the performance difference between using CDMA and some optimal structure is

53

1.0
position error (m)
0.2
0.4
0.6 0.8
0

TDMA
FDMA
CDMA
optimal

101

102
number of beacons

103

Figure 3.6. Position error (m) versus number of beacons, considering eddy noise.
The CDMA structure performs nearly as well as a hypothetical optimal structure.

small compared to the performance advantage gained by using the CDMA approach instead of a TDMA or FDMA method.
3.7 Summary

In the DMLP system, numerous beacons are used to create magnetic fields that
permeate a building. The architecture of these beacon signals is of critical importance
high frequency content in the signals leads to increased eddy field noise and reduced position and attitude estimate accuracy. Analysis of signal architectures used in existing
systems concludes that, while they are appropriate for the small volume applications in
which they are currently employed, they cannot be extended to support a large number of
beacons. An alternative signal structure is therefore presented that allows numerous beacons to be used while maintaining good eddy field performance. The new signal architecture, based on pseudorandom codes, enables the DMLP system to have building-wide
coverage.

54


55

4 Eddy Field Noise Mitigation


The signal architecture presented in the previous chapter enables the DMLP system to provide service throughout a large volume while maintaining low overall beacon
frequency content. However, while eddy field noise is reduced, it is not eliminated entirely. Even with the DMLP signal structure, eddy fields can still be one of the largest
error sources in an environment cluttered with metallic objects. This chapter presents a
method to detect and further mitigate eddy field noise in the DMLP system.
First, a model is developed to describe the eddy fields produced by the pseudorandom beacon signals. Then, using the model, the estimation process from Chapter 3
(equation 3.3), which extracts individual beacon field estimates from the measurement
data, is modified to take into account the effects of eddy fields. The improved estimator
is quite effective at detecting and mitigating eddy field noise, as demonstrated by experimental results in the final section.
4.1 Eddy Field Model

As described earlier (Chapter 2), time-varying magnetic fields, such as those used
in the DMLP system, create electrical potential differences (induced emf ) throughout the
area of operation. These voltages stimulate the flow of electrical current in conductors in
56

the environment, which in turn creates additional magnetic fields. These eddy fields sum
with the beacon fields, introducing noise into the measurements. The basic physical
principles underlying eddy fields are examined in further detail in Chapter 2. In this section, these basic principles are applied to create a specific model of the eddy field noise
generated by the DMLP system.
First, consider the magnetic field created by a beacon using the pseudorandom
signal structure presented in Chapter 3. As an example, one component of the vector
magnetic field created by a beacon, as measured at some point in space, is shown in Figure 4.1(a). For clarity, a beacon with a code length of only 7 chips is used in the figure
and in the following example. In the figure, the beacon signal is shown as a series of
abrupt changes. An actual beacon takes a finite amount of time to change its field polarity, due to the inductance of the coil. However, the simple model of the beacon field
shown in the figure is adequate for this work, producing an uncomplicated eddy field
model and tractable mitigation technique.
The abrupt changes in magnetic field in Figure 4.1(a), according to Faradays
Law (Chapter 2), induce voltage spikes as shown in Figure 4.1(b). These voltage impulses, applied to a conductive material modeled as a simple RL (resistor-inductor) circuit, generate current transients as shown in Figure 4.1(c). Note that this simple RL
material model (see [66]) is adequate for this mitigation technique (more complex models
can be found in [67]). The current transients in Figure 4.1(c) are characterized by a time
constant and amplitude that are functions of the material properties (resistance and inductance) and object geometry. The induced current in Figure 4.1(c) creates magnetic eddy
fields as shown in Figure 4.1(d).
The sensor samples the magnetic field at its location, which is the vector sum of
any nearby beacon fields (e.g., Figure 4.1(a)) and any eddy fields (e.g., Figure 4.1(d)).
As described in Chapter 3, this sampling is done at the end of each chip period. This allows the beacon fields to stabilize (they do not change instantaneously) and provides
some time for eddy fields to decay.
To form a mathematical model of the magnetic fields generated by a DMLP system, it is useful to define a delta code as a sequence representing the changes in a beacons pseudorandom code. Each code sequence ci has an associated delta code sequence,
57

Figure 4.1. Creation of eddy fields in the DMLP system. A beacon generates a
time-varying magnetic field (a), creating potential differences in the environment.
This induced voltage (b) stimulates current flow (c) in conductors, which in turn
produces eddy fields (d).

1i, of the same length. When code ci changes from 1 to +1, 1i contains +1. Simi-

larly, when ci changes from +1 to -1, 1i contains -1. The delta code contains the
value zero when code ci remains the same from one chip to the next. Thus, using the example code c1 from Figure 4.1(a):
c1 = [ 1 1 1

1 1]

(4.1)

0 1]

(4.2)

the associated delta code is


11 = [ 1 1

The purpose for the superscript 1 becomes apparent later in this section.

58

A simple model of the DMLP system, including the effects of eddy fields, can
now be formed. This simple scenario consists of one beacon using code ci, a sensor, and
a conductive object. Considering one arbitrary vector direction (the v-axis component),
the magnetic field measured by the sensor (Mv) can be modeled as the sum of the beacon
field (with amplitude Biv) and an eddy field (with amplitude Eiv):
M v = Biv C i + E iv 1i

(4.3)

where Mv = magnetic field measurements along axis v (N x 1)


Biv = v-axis component of magnetic field produced by beacon i (scalar)
Ci = pseudorandom code used by beacon i (N x 1 sequence of 1s and 1s)
N = number of elements in Ci (scalar, N = 7 in this example)
Eiv = v-axis component of eddy field created by changes in Biv (scalar)
1i = delta code associated with the code of beacon i (N x 1)

The simple model proposed in equation 4.3, however, does not fully represent the
effects of eddy fields. For certain combinations of object geometry and material properties, the eddy field created by a change in the beacon signal may last for more than one
chip period. To capture this effect, the definition of a delta code is augmented the superscript variable is now used to denote a delay in the delta code. Specifically, di, is defined as the delta code 1i cyclically shifted by d-1 elements. For example, two delayed
delta codes associated with code c1 (equation 4.1) and delta code 11 (equation 4.2) are:
21 = [ 1

0]

(4.4)

31 = [ 0 1

0]

(4.5)

and

The simple model in equation 4.3 can now be extended. The measured field consists of the beacon field, the eddy field created by the beacon field changes, and any effects of the eddy field that are still present two and three chip periods after the beacon
field changes:
M v = Biv C i + E iv1 1i + E iv2 2i + E iv3 3i

(4.6)

The variables in equation 4.6 are defined the same way as in equation 4.3, and the new
variables E2iv and E3iv represent the amplitude of the eddy field created by the changes in
the field of beacon i, after 2 and 3 chip periods, respectively.
59

It is straightforward to extend this model to account for eddy fields with even
longer time constants. Experimentally, however, it was found that generally only two or
three delta codes in equation 4.6 were needed to account for eddy fields additional
terms were not necessary and provided only marginal benefits.
The full model of the magnetic fields measured in the DMLP system can now be
described. In an actual implementation, many beacon fields and eddy fields are present.
The measured signal is modeled as the sum of several beacon fields, several eddy fields,
a steady state magnetic field bias (e.g., the earths field), and noise. Each beacon field
may generate an independent eddy field, and eddy fields of up to three chip periods are
taken into account. Thus, in the DMLP system, the measured signal is modeled as:

M v = Biv Ci + Eiv1 1i + Eiv2 2i + Eiv3 3i + bv + noise


i

(4.7)

where Mv = magnetic field measurements along axis v (N x 1)

Biv = v-axis component of magnetic field produced by beacon i (scalar)


Ci = pseudorandom code used by beacon i (N x 1 sequence of 1s and 1s)
E1iv = v-axis component of eddy field, after 1 chip period, created by changes in
Biv (scalar)
E2iv = v-axis component of eddy field, after 2 chip periods, created by changes in
Biv (scalar)
E3iv = v-axis component of eddy field, after 3 chip periods, created by changes in
Biv (scalar)
1i, 2i, 3i = delta codes associated with the code of beacon i (N x 1)
N = number of elements in Ci
i = index of all beacons near the sensor (contributing to the sum)
bv = bias term along axis v
Thus, the model of the measured signal presented in Chapter 3 (equation 3.1) has
been modified. The new model, equation 4.7, takes into account the effects of eddy field
noise.

60

4.2 Detection and Mitigation Algorithm

Expressing equation 4.7 in matrix form:


B1v
E1
1v
2
1
2
3
1
m
(
1
)

v
c1 (1) 1 (1) 1 (1) 1 (1) c 2 (1) 2 (1) L 1 E1v
3
m ( 2)
1
2
3
1
E
v = c1 (2) 1 (2) 1 (2) 1 (2) c 2 (2) 2 (2) L 1 1v
m v (3) c1 (3) 11 (3) 21 (3) 31 (3) c 2 (3) 12 (3) L 1 B2v
1


M
M
M
M
M
M E 2v
M M
M

b
1
424
3 144444424444443 12v3

Mv

(4.8)

Xv

results in the estimator:

X v est = (AT A) AT M v
1

(4.9)

Thus, the algorithm described by equation 4.9 takes magnetic field measurements (Mv)
and produces estimates of the individual beacon fields (Biv), corrected for the effects of
eddy noise. Effectively, matrix A from the last chapter (equation 3.2) has been modified
to account for the effects of eddy noise. This operation (equation 4.9) is carried out on
each component of the vector measurements. The resulting estimates of individual beacon fields (Bi) are the basis for the position and attitude solution in Chapter 5. As described in the last chapter (Section 3.4), this estimator is well suited for the DMLP application it decorrelates the beacon fields (reducing multiple access noise) and mitigates
the thermal electronic noise (modeled as AWGN) in the magnetic field sensors and amplifiers.
This modified estimator has two effects. It is successful in mitigating eddy field
noise, as detailed in the next section. However, at the same, it exacerbates the random
fluctuations in the Bi estimates caused by thermal noise in the sensor electronics. This
thermal noise is always present, and causes the scatter in the position estimates described in Chapter 8. Therefore, it is desirable to use the estimator in equations 4.8 and
4.9 when eddy field noise is present, but to use the Chapter 3 estimator otherwise.
In the DMLP prototype system, a threshold was used to trigger the appropriate estimator. Specifically, the following criteria worked well: if the difference between the
Chapter 3 estimator and Chapter 4 estimator is greater than 1.0 mG, eddy field noise is
61

indicated, and the Chapter 4 estimate is used. This experimentally determined threshold
25

value is strict enough that the use of the Chapter 4 estimator is not triggered by random
20

thermal noise, and yet the presence of a nearby eddy field source is reliably detected (see
B1 z (chap 3 estimator)
the results in the next section).
B1 z (chap 4 estimator)
B field (mG)

Note that the algorithm also produces estimates of parameters describing the eddy
15

fields themselves (e.g., E11v). The eddy indication and these eddy field parameters can be
reported to the user for use at the navigation level. For example, a mobile robot may take

10

note of a location with large eddy fields, and later choose paths that avoid that area.
indication
E11 z
(binary flag)
E21 z
4.3 Experimental Results
E31 z
An experiment was performed to verify the eddy field noise reduction technique
0

presented in this chapter. The experimental hardware included one beacon, a sensor, and
0

10

20

30

40

50

60

one eddy source (an aluminum plate), as shown in Figure 4.2 (additional information
time (s)
about the experimental hardware can be found in Chapter 7). The beacon was used to
Figure 4.3. Experimental results demonstrating the effectiveness of the eddy field
noise mitigation technique. When a metallic plate is placed near the sensor (at 30
Figure 4.2. Experiment used to verify the eddy field detection and mitigation
s), the Chapter 3 estimator reports an estimate of the beacon field (B1z) that is 50%
technique.
in error, while the Chapter 4 estimator is only 11% in error. The binary, dimensionless signal eddy indication is superimposed on the graph to indicate the trangenerate a magnetic field signal using the DMLP pseudorandom signal structure. The
sition from the Chapter 3 to the Chapter 4 estimator.
metallic plate was placed in various positions and orientations near the sensor, creating

eddy fields. The sensor recorded magnetic field measurements and then estimated the
amplitude of the beacon field using two different algorithms the estimator from Chapter
3 (which does not incorporate an eddy model) and the estimator from this chapter. The
results can be used to quantify the effectiveness of the improved estimator.
A code with a length of 63 chips was used, with a code period of 0.1 s (resulting
in a chip period of 1.6 ms). This signal structure is used for the rest of the experimental
work, and is representative of a signal that could be used in a system with thousands of
beacons. The metallic plate is composed of aluminum and measures 40 cm x 35 cm x 0.5
cm.

62

30
25
15
5

10

E11 z
E21 z
E31 z

B field (mG)

20

B1 z (chap 3 estimator)
B1 z (chap 4 estimator)

-5

eddy
indication
0

20

40

60

80

100

120

140

160

180

time (s)

Figure 4.4. Comparison of estimator performance with a metallic plate in various positions and orientations. The Chapter 4 estimator performs better than the
Chapter 3 estimator, mitigating eddy field noise by approximately 74%.

At the start of the first experiment, the metal plate was far (1 m) from the sensor. After approximately 30 seconds, the plate was placed near the sensor (roughly 3 cm
between the sensor and the plate edge) as shown in Figure 4.2. The results are presented
in Figure 4.3 as a plot of the estimated amplitude of the beacon field (B1z), using both estimators, versus time. For the first 30 seconds, when the plate is far, eddy field noise is
not indicated. However, as the plate approaches, the eddy field parameters (e.g., E11z)
grow rapidly, and the eddy field indication is triggered. A large error appears in the
estimate from the Chapter 3 algorithm (the estimate is incorrect by 50%). The estimator
from this chapter rejects much of the eddy field noise, and generates an output that is in
error by only 11%. In this particular experiment, the effects of eddy field noise were
mitigated by 77%.
Similar experiments were performed at various locations and orientations to confirm the effectiveness of the noise mitigation technique. The results from a second ex-

63

periment are shown in Figure 4.4. Again, the plot contains the estimates of B1z, E11z, E21z,
and E31z versus time using the improved estimator, along with B1z using the Chapter 3
estimator and the eddy field indication. During this trial, the plate was placed for approximately 30 seconds in each of six different locations and orientations. For the first
30 seconds, the plate was far from the experiment area. For the remaining five poses, the
plate was located near the sensor (within 10 cm). It is interesting to note that, as explained in Chapter 2, in some orientations the nearby plate did not produce eddy fields at
all (at least not in the axis that was being measured). In three poses (30-60 s, 90-120 s,
and 150-180 s), however, the Chapter 4 detector mitigated significant eddy fields. Over
several experiments, in the poses where eddy fields were the strongest, the algorithm presented in this chapter proved quite effective, mitigating eddy field noise by an average of
approximately 74%.
4.4 Summary

The DMLP signal architecture presented in the previous chapter reduces the overall amount of eddy field noise, but does not eliminate it entirely. This chapter presents a
method to detect and further mitigate eddy field noise in the DMLP system. A model is
developed to describe the eddy fields produced by the pseudorandom beacon signals.
This model is then used to modify the estimation process, which extracts individual beacon field estimates from the measurement data, to take into account the effects of eddy
fields. The improved estimator is effective at detecting and mitigating eddy field noise,
as demonstrated by experimental results.

64

5 Solving for Position and Attitude


This chapter describes the next link in the signal processing chain (Figure 2.7)
that began in Chapter 3. In that chapter, the sensor recorded measurements of the local
magnetic field, which included a superimposed mix of signals from many beacons. The
signals from individual beacons were distinguished, and an estimate of the magnetic field
due to each beacon within range was obtained. Although the signal architecture proposed
in Chapter 3 reduces the amount of eddy field noise, it can still be a dominant source of
error in certain circumstances, such as when the sensor is close to a metallic object. The
techniques of Chapter 4 modify the magnetic field estimates to further reduce eddy noise.
This chapter now describes a method to take those magnetic field estimates, along
with the known beacon locations and parameters, and produce an estimate of sensor position and attitude. Although the equations relating the magnetic field estimates to sensor
position and attitude are nonlinear, the technique reliably converges to the correct solution, even with no a priori knowledge of state.
To provide background, the initial section of this chapter surveys the solution algorithms of existing magnetic-based systems. Although they are targeted at fundamentally different applications, and are of limited use in the DMLP system, this discussion
helps establish a list of characteristics that are desirable for the new solution algorithm.
65

Then, the new position and attitude solution algorithm, designed specifically for the
DMLP system, is described in detail. Finally, the advantages of this new algorithm,
when applied to the DMLP system, are examined. One advantage of particular interest is
investigated in further depth: the solution technique enables the system to assume a new
geometry. Specifically, the beacons may consist of only one coil, rather than sets of three
orthogonal coils (the prevailing geometry among commercially available systems). This
geometry addresses both primary challenges to magnetic field positioning systems - the
coverage volume for a given power consumption is increased and the system eddy noise
is reduced.
5.1 Survey of Solution Methods

Magnetic fields have been used as the basis for several interesting types of positioning systems, and multiple algorithms can be found that operate on magnetic field
measurements to produce position information. However, a survey of existing solution
methods reveals that many are designed for applications that are fundamentally different
from the DMLP system, and are of limited use in the DMLP architecture. This survey
helps establish a list of desirable characteristics for the DMLP solution algorithm.
Several existing solution methods (e.g., [68-71]) are designed for applications
such as tracking an actor moving around on a stage. These techniques are specific to systems with small coverage volumes, using a small number of beacon coils (typically 3).
Thus, these solution methods do not take advantage of the numerous beacon signals that
are present in a DMLP application. Further, systems using these solution methods employ feedback from the sensor to generate the beacon signals. That is, the sensor uses the
current beacon signals to determine its location, then communicates this information to
the beacons. That location is used to determine the next set of beacon signals. This design constrains the number of sensor units that can operate in a given area and adds complexity to the overall system.
In addition, solution methods [68-71] are developed for a specific beacon geometry, three co-located coils oriented in orthogonal directions (the prevailing geometry
among commercially available systems). In Section 5.3, it is shown that, for a buildingwide application, it is advantageous to break from this paradigm and use only one coil at
66

each beacon location. Finally, the solutions produced by these methods have ambiguities. Other sensors, or a priori knowledge, can be used to choose among the various possibilities. In the DMLP system, it is desirable for the sensor to determine its location
immediately, with no a priori knowledge of location, allowing the sensor to start from an
arbitrary, unknown location.
Other solution methods are targeted at applications fundamentally different from
the DMLP system. For example, References [72, 73] are specific to problems with less
than six degrees of freedom. Reference [74] uses several sensors, at known locations, to
track the movement of a dipole magnetic field the inverse of the DMLP application.
Although existing solution methods are successful in the applications they are designed for, they are not particularly well suited for the DMLP application. Thus, this
brief survey establishes a list of desired characteristics for the position and attitude solution algorithm in the DMLP system. This desired solution algorithm: (i) incorporates
measurements from a large number of coils at multiple locations, (ii) uses simple beacons
that do not require feedback from the sensors, (iii) does not produce ambiguous results,
(iv) needs no a priori knowledge or additional sensors, and (v) estimates all six degrees
of freedom of the sensor.
In the next section, a new algorithm to solve for position and attitude is presented
that has these characteristics. Further, it is (arguably) simpler than existing methods, decoupling the position solution and attitude solution stages. This allows a large body of
previous research to be leveraged for the attitude estimation problem. Finally, as discussed in Section 5.3, this algorithm enables a new system geometry where only one beacon coil is used at each location. This improves the DMLP system in two important respects: the coverage volume for a given power consumption is increased and the system
eddy noise is reduced.

67

5.2 New Solution Algorithm


5.2.1 Problem Statement

Consider a building with numerous beacons, each producing a dipole magnetic


field, as shown in Figure 5.1. A sensor unit measures the magnetic field vector at its location in space, which contains a superimposed mix of signals from several beacons. As
discussed in previous chapters, the sensor processes the measured magnetic field vector
to distinguish the unique signals from which it is composed. The result is an estimate of
the magnetic field vector created by each individual beacon, Bi. The goal is to take the
estimates Bi, the known beacon locations, and the known beacon parameters (e.g. the size
of each beacon coil, number of turns, etc.) and produce an estimate of sensor position and
attitude.
Note that, for the solution algorithm, it is not important how the magnetic field estimates Bi are obtained. The beacons could use the pseudorandom code structure detailed
in Chapter 3, with the sensor processing the measurements by means of the discrimination techniques presented there. However, this solution algorithm is still applicable even
if the system uses TDMA or FDMA approaches to obtain the estimates Bi.
Assume the estimates Bi have been obtained for n nearby beacons. A minimum
of 3 beacons is required for this solution method (typically 3-8 beacons will be within
range.) The magnetic field is a vector quantity, and the magnetic field estimates of n
beacons in each of 3 sensor axes result in a total of 3n component measurements. For the
case where all beacons are oriented in the +z direction, the 3n measurements are related
to the position of the sensor by the following 3n equations:
= 3k ( x x )( z z ) / r 5
i
i
i
B = 3k ( y y )( z z ) / r 5
iy
i
i
i
B = k (2( z z ) 2 ( x x ) 2 ( y y ) 2 ) / r 5
iz
i
i
i
i
B

ix

where k = 0NIa/4 and

= 1...n identifies a particular beacon

rI

= ( (x - xi)2 + (y - yi)2 + (z - zi)2 )1/2

x, y, z

= sensor position
68

(5.1)

beacon

v
u

sensor
z
y

B1

B2

Bi

Figure 5.1. In the DMLP system, the sensor measures the magnetic field of each
nearby beacon. Given these measurements, plus the known beacon locations and
parameters, the solution algorithm produces an estimate of the sensor position
and attitude.

xi, yi, zi

= position of beacon i

Bix, Biy, Biz

= estimate of magnetic field created by beacon i


(in x-, y-, or z- directions)

However, these equations are written for magnetic field estimates (Bi) with respect to the building-fixed (x, y, z) coordinate frame. The actual measurements are taken
in the local (u, v, w) sensor coordinate frame. One method to relate these frames is to use
a direction cosine matrix:
Biu C11 C12
B = C
iv 21 C 22
Biw C 31 C 32

C13 Bix
C 23 Biy
C 33 Biz

(5.2)

The direction cosine matrix itself only contains 3 unique pieces of information (the attitude could be expressed as 3 Euler angles). The six constraint equations associated with
the direction cosine matrix are:
69

C112 + C122 + C132 = 1


2
2
C 21
+ C 222 + C 23
=1

C 312 + C 322 + C 332 = 1


2
C112 + C 21
+ C 312 = 1

(5.3)

C122 + C 222 + C 322 = 1


C132 + C 232 + C 332 = 1
The problem statement can be summarized as: given the 3n estimates (Bix, Biy, and
Biz) and the known beacon locations and parameters (e.g., k and xi in equation 5.1), but no
initial knowledge of state, solve equations 5.15.3 for the sensor position and attitude (6
independent unknowns).
5.2.2 Position Estimation

A conceptually simple way to find a solution to this set of nonlinear equations


(equations 5.1-5.3) is the brute force method choose a trial sensor state, evaluate the
equations at that state, and record the residuals. The trial location that best fits the
equations is selected. However, this method was rejected for the DMLP system as impractical because of the massive amount of computation required. For example, if trial
locations are selected at 1 cm increments, a billion evaluations (each involving division
and square root operations) would be required to test a 10m x 10m x 10m volume.
Another straightforward technique is to use the Newton-Raphson approach to
multidimensional root finding [75]. The solution procedure is to choose a reasonable initial estimate, linearize the equations about that estimate, and solve the linearized equations in a least-squares sense. This results in an incremental update to the state estimate,
and the process iterates until the updates become sufficiently small. However, when applied to these equations, this algorithm was found to have poor convergence properties.
Specifically, it has been found that the Newton-Raphson approach to solving equations
5.1-5.3 generally does not converge at all if the a priori position knowledge is inaccurate
by as little as 2 cm. Note that the simplest version of the Newton-Raphson technique was
tested more complex versions (using backtracking, hook step, etc. [76]) may have
more success.

70

A step towards a potential solution is to combine the 3n component position equations 5.1 into n magnitude equations:
B i = k (3( z z i ) 2 + ri 2 )1 / 2

ri 4

(5.4)

Note that the sensor attitude has been decoupled from the position estimation problem.
Equation 5.4 now represents n equations (for n beacons) with 3 unknowns (x, y, z). Tests
reveal that the simple Newton-Raphson approach can reliably solve equation 5.4, but
only if the initial estimate of position (the input to the algorithm) is close to the solution. For the typical distances between beacons and noise levels encountered in the
DMLP system, a priori knowledge of position needs to be accurate within approximately
50 cm in order for the Newton-Raphson technique to reliably solve equation 5.4 (the specific accuracy is a complicated function of the particular geometry).
A goal of the DMLP system, however, is to provide position estimates with no a
priori knowledge of state. Although there are no general methods that guarantee a solution to an arbitrary system of multiple nonlinear equations, further progress can often be
made by using additional insight specific to the problem [77]. Equation 5.4 can be rewritten using spherical coordinates as
B i = k (1 + 3 cos 2 i )1 / 2

ri3

(5.5)

where i is the angle between the axis of the ith beacon and the vector from the ith beacon to the sensor, as shown in Figure 2.1. Equation 5.5 represents n equations in n+3 unknowns (x, y, z, i). However, the (1 + 3cos2)1/2 term in equation 5.5 is bounded
1 (1 + 3cos2)1/2 2
so the characteristics of equation 5.5 are thus dominated by the 1/r3 term. With this insight, an approximate set of equations can be derived by replacing (1 + 3cos2)1/2 by the
constant 1.5 to obtain
B i 1.5k / ri3

(5.6)

The Newton-Raphson algorithm applied to equation 5.6 converges without any a


priori knowledge of position. Of course, the solution will differ from that of equation
(5.5) due to the approximation step. However, because the simplification does not affect
the dominant 1/r3 term, the algorithm based on equation 5.6 reliably (see discussion below) converges to a solution within 10 cm of the actual sensor position. Thus, equation
71

5.6 can be used to develop a rough position solution with no prior knowledge of position.
This solution then provides a very good initial estimate for Newton-Raphson iteration on
the more precise equation 5.5.
Thus, with no prior estimate of position or orientation, the algorithm to estimate
position given measurements Bi is as follows:
1)

Use approximate equation 5.6 to find an initial estimate,

2)

Use that initial estimate as the starting point for solving equation 5.5.

This solution algorithm proved highly reliable in the DMLP prototype system
(described in Chapter 7). In all of the experimental results presented in this thesis, in
which this solution algorithm was used several thousand times with noisy measurement
data, the algorithm never failed to converge.
Finally, note that only the magnitudes of the beacon magnetic fields are used in
this algorithm to estimate position - attitude information is not required. Thus the position and attitude problems have been separated into two steps. This decoupling allows a
large body of research on the attitude estimation problem to be leveraged, as follows.
5.2.3 Attitude Estimation

Once an estimate of the position has been obtained, orientation can then be estimated. Using the estimate of position, the magnetic field vector at the sensor location
due to the ith beacon, Bi, is estimated from the equation 5.1, with the result in buildingfixed (x, y, z) coordinates. The same vector Bi has already been estimated in sensor coordinates (u, v, w) this is the input to the position estimation step above. Thus, both 3x1
vectors in equation 5.2 are known. Equation 5.2 is written for each of the n beacons closest to the receiver, and the goal is to solve for the (least squares optimal) rotation matrix
(C) that relates these two vectors. This rotation matrix describes the attitude of the sensor
with respect to the building-fixed coordinate frame.
Let vector Bi be designated vi when written in building-fixed coordinates and wi
when parameterized in sensor coordinates. The problem can then be expressed as finding
the rotation matrix C that minimizes the cost function L:
1 n
L(C ) = wi Cv i
2 i =1
72

(5.7)

This problem has a long history, with well-known algorithms for the solution. It was first
posed by Wahba [78], motivated by the optimal estimation of the attitude of a satellite
(line of sight vectors to guide stars are measured in the satellite reference frame and
known in an earth-fixed reference frame). A solution appeared in [79], and a bibliography of numerous improvements and modifications are referenced in [80]. For simplicity,
the singular value decomposition method, as described in [80], was used as the basis for
this experimental work (although examples of computationally faster methods appear in
[81,82]).
Following Reference [80], it can be shown that:
L(C ) = 1 trace(CAT )

(5.8)

where the auxiliary matrix A is defined as


n

A = wi viT

(5.9)

i =1

The singular value decomposition of A is then computed


A = USV T

(5.10)

where U and V are orthogonal matrices, and S is diagonal. Note that matrices U and V
must be proper orthogonal (determinant of +1 instead of 1). This can always be accomplished for example, if needed, a column can be multiplied by 1 and the sign of the
corresponding singular value adjusted accordingly. The solution, then, is simply:
C opt = UV T

(5.11)

The elements of the direction cosine matrix, once estimated, contain all of the information needed to convert to other attitude representations, such as Euler angles.
5.3 Advantages of the New Solution Algorithm

This solution algorithm is well suited to the DMLP application it has the desired
characteristics that were established in the first section. The technique estimates all six
degrees of freedom of the sensor, does not produce ambiguous results, and is able to incorporate measurements from a large number of coils at multiple locations. The algorithm needs no a priori knowledge of state and does not require the beacons to receive
feedback from the sensors. Further, the method allows a large body of previous research
to be leveraged for the attitude estimation problem.
73

A final advantage is explored further in this section. The solution method enables
a new system geometry where only one beacon coil is used at each location, rather than
three coils per location (the prevailing geometry found in commercially available systems). The result of this geometry change is that both primary challenges to the DMLP
system are addressed. Specifically, the use of single coil beacons (enabled by the new
solution method) increases the system coverage volume for a given power consumption
and reduces the overall eddy field noise. To investigate this final advantage in further
detail, an analysis is carried out as a series of four steps.
The first step in the investigation is to define exactly the two solution algorithms
that are being compared. First, consider an existing solution algorithm (designated A)
that requires three co-located coils. Existing magnetic field positioning systems target
applications with relatively small coverage volumes, such as recording the motion of actors as they move on a stage. Commercial systems generally use a single beacon consisting of three concentric coils, oriented in orthogonal directions. This allows a compact
unit a sphere with these three coils inside can be hung over the center of a stage. Solution methods such as [68-71], appropriately, are designed for this standard geometry.
Given field measurements from all three coils in a set, a position and attitude solution can
be formed using these existing methods.
One set of three coils cannot be used to cover the large volumes expected in
DMLP applications (see the discussion in Chapter 2). However, a straightforward approach could be used to extend this existing solution method to larger coverage areas.
Although commercially available systems generally use one set of three coils, consider an
example where multiple triple-coil beacons are placed around a building. If the sensor
measures the magnetic fields from all three coils in a set, its position and attitude can be
established using the existing method. Further, if the sensor is in such a location that it
can also measure the signals from all three coils in another set, those signals could be
used to form a second position solution. In this case, the two position solutions (one associated with each set of three coils) would likely be very similar. To arrive at a final
position solution, the two position solutions could be averaged. Algorithm A is depicted
in Figure 5.2(a).
In contrast, recall from the previous section that the new solution algorithm (des74

Measurements from
all three coils in a set

Existing solution
method

Solution
Average

Existing solution
method
Measurements from all three coils
in another set (if available)

(a)
Measurement
from any coil
New solution
method

Solution

(b)

Figure 5.2. Comparison of existing and new solution methods.

ignated B) incorporates measurements from any beacon. That is, no concept of a set of
beacons is required. Figure 5.2(b) depicts solution algorithm B for comparison.
The second step in the investigation is to determine the relation between the solution algorithms and the coverage volumes of the beacons. The coverage volume of a single coil is shown in Figure 5.3(a). Figure 5.3(b) depicts a cross section of the coverage
volumes of three concentric, orthogonal coils. The intersection of the coverage volumes
of the three coils in Figure 5.3(b) is designated region I. That is, in region I the signal
from all three coils may be received. The union of the coverage volumes of the three coils
is designated region U. That is, in region U the signal from one or more coils may be received.
The seemingly subtle difference between algorithms A and B is actually quite
significant, as follows. Solution method A may only be used in region I, where the sig-

75

I
U
(a)

(b)

Figure 5.3. The coverage volume of one coil is shown in (a). In (b), a cross section of the coverage volume of three coils is depicted. Volume I is covered by all
three coils, while volume U is covered by one or more coils.

nals from all three coils are present. In contrast, solution method B may make use of the
signal from any coil. Thus, algorithm B gains at least one usable signal anywhere in
region U. Using numerical analysis, the volume of region I is determined to be only 62%
of the volume of region U. In other words, 38% of the total coverage volume (the region
in U but not in I) is effectively wasted by using solution algorithm A method B can
make use of the one or two signals in this area, but method A cannot.
The third step in the investigation is to consider the placement of the beacons. A
reasonable approach to outfitting a building with beacons is shown in Figure 5.4. The
beacons are located in planes, corresponding to the crawlspaces between floors of a
building. This location has several advantages, as described in Chapter 2 (e.g., access to
electrical outlets, the beacons are unobtrusive, it is relatively easy to place beacons in an
efficient, regular array). The beacons in alternating planes are staggered as shown in the
figure, which results in a larger coverage volume than if they were not staggered.
Finally, by utilizing the information from the first three steps of the investigation,
the advantages of solution method B over method A can be determined (the fourth step of
the investigation). First, consider algorithm A in a system with triple-coil beacons placed
as shown in Figure 5.4. In this analysis, the system is required to provide continuous
76

Figure 5.4. Example placement of beacons in a building.

coverage, and thus every location in space is covered by all three signals from at least one
set of coils. That is, every location is within region I from at least one set of coils. A
cross section of the beacon placement is shown in Figure 5.5(a). In this baseline case, the
distance between beacons is denoted as 1 unit for comparison purposes.
Next consider algorithm B in the exact same scenario triple-coil beacons, continuous coverage, using the same beacon placement pattern (Figure 5.4). The new solution algorithm enables beacons to be placed further apart for a given power consumption,
as shown in Figure 5.5(b). To demonstrate, consider the center location, equally distant
from all four beacons. At this location, a signal can be received from only one coil in
each triple-coil beacon. Existing solution method A relies on three signals coming from
one set of beacons and cannot produce a solution here, but new solution method B can.
The result is shown in Figures 5.6(a) and (b). Existing solution method A, in a system of
triple-coil beacons, uses the geometry shown in Figure 5.6(a). New solution method B,
in a system with triple-coil beacons, uses the geometry shown in Figure 5.6(b), where
beacons are placed 26% further apart. New solution algorithm B allows 200% (1.26 x
77

1.26

(a)

(b)

Figure 5.5. A cross section view of the coverage volume of four triple-coil beacons
is shown. In (a), existing solution methods may be used. In (b), the new solution
may be used. The new solution algorithm allows the beacons to be spaced further
apart for the same power consumption, while still providing continuous coverage.

1.26 x 1.26) of the volume of Figure 5.6(a) to be covered with the same number of beacons and the same overall power consumption. An alternative way of stating the advantage of the new method is that the volume in Figure 5.6(a) can now be covered using only
25% of the power.
However, an even more exciting geometry is made available by the new solution
method, shown in Figure 5.6(c). Here, a single coil at each beacon location consumes the
total power of a triple-coil beacon from Figure 5.6(a). This results in a system with 121%
of the coverage volume of Figure 5.6(a). Alternatively, the power consumption could be
reduced 32% for the same coverage volume. But notice that only one coil has been used
at each beacon location, not three. Therefore only 1/3 the number of signals need to be
used. In an FDMA system, only 1/3 the frequencies are required. With TDMA, only 1/3
the time slots are needed. In a CDMA system, the codes can be shorter and slower. That
is, regardless of the multiple access approach, this geometry (enabled by the new solution
method) lowers the overall spectral content of the beacon signals. As discussed in Chapter 2, this results directly in lower eddy field noise. Thus, the new solution method and
the single-coil geometry of Figure 5.6(c) result in a larger coverage volume for a given
78

1.87

1.26
1

1.26

1
1
(a)

0.81
0.81

1.26
(b)

(c)

Figure 5.6. The placement of beacons is shown for three different cases: (a) triple-coil beacons and existing solution method A, (b) triple-coil beacons and new
solution method B, and (c) single-coil beacons and new solution method B. Case
(c) allows 21% more coverage volume (for the same power consumption) than
case (a) while requiring only 1/3 of the frequency content (lowering eddy noise).

power consumption and reduced system eddy field noise.


5.4 Summary

An algorithm is presented which takes magnetic field estimates, along with the
known beacon locations and parameters, and produces an estimate of sensor position and
attitude. Although the equations relating the magnetic field estimates to sensor position
and attitude are nonlinear, the technique reliably converges to the correct solution, even
with no a priori knowledge of state. The solution method has several advantages over
existing methods because it is designed specifically for the DMLP application. The most
important advantage is that beacons with one coil can be employed, resulting in both larger coverage volume for a given power consumption and reduced system eddy field
noise.

79


80

6 Iron Noise Mitigation


The previous three chapters have described the DMLP signal processing chain,
starting with a sequence of magnetic field measurements and ending with an estimate of
sensor position and attitude. Each of these stages has been designed to combat eddy field
noise, a source of error caused by conductors in the environment. However, as described
in Chapter 2, there is a second, separate mechanism by which certain objects in the environment (ferromagnetic materials) may introduce error into the position and attitude estimates. The principal offender in most scenarios is iron (though other materials, such as
nickel and cobalt, are ferromagnetic as well), and this distortion is referred to here as iron
noise. This chapter presents a method to detect and mitigate this source of error.
Unlike eddy field noise, iron noise cannot be detected from any individual beacon
signal. However, this disturbance can be observed by considering a collection of several
beacon signals. After a brief background section, this approach to detecting iron noise is
introduced with a one-dimensional example. Next, a model is developed of the effects of
iron distortion in three dimensions. Several assumptions and simplifications in the model
are required to yield a tractable mitigation technique. An algorithm is then presented
which examines the magnetic field readings for ferromagnetic distortion and, if iron noise

81

is detected, characterizes the source and computes a correction. Finally, experimental


results are presented, quantifying the performance of the technique.
This iron noise mitigation algorithm requires both a position and attitude estimate
(from Chapter 5) and estimates of the beacon field vectors (Chapters 3 and 4), and is thus
the last stage in the signal processing chain. It is the most computationally expensive
step and, because of the approximate model, produces modest results (a 40% reduction in
iron noise is typical). Thus, this stage may be considered optional in environments (e.g.,
an office building or apartment complex) where large amounts of iron are not likely to be
encountered.
6.1 Background

As described in Chapter 2, ferromagnetic materials respond to external magnetic


fields (e.g., the beacon fields) by creating magnetic fields of their own. These magnetization fields sum with the beacon signals, introducing error into the position and attitude
estimates. Positioning systems based on ELF magnetic fields can mitigate this error
source through calibration. For example, the sensor is placed at a surveyed location and
the difference between its actual estimate and the known truth value (i.e., what it should
estimate in a perfect environment) is recorded. This is repeated at numerous locations
throughout the operating area, and a map of corrections is built. There are several variations on this technique [83, 84]. This a priori calibration is effective for large, stationary
iron objects, and a DMLP installation can certainly utilize this technique.
The focus of this chapter is fundamentally different from calibration. The algorithm presented here attempts to detect and mitigate iron noise dynamically, while the
system is in normal operation. As an example, consider a mobile robot navigating a
building using the DMLP system. Unexpectedly, an iron object is placed immediately
next to the sensor, and its position estimation errors grow to 10 or 20 cm. Calibration
offers no defense against this unforeseen iron source. However, the algorithm presented
in this chapter can detect the presence of this iron distortion on the fly, compensating
for its effects in real time while the sensor continues to operate normally.
Calibration and the mitigation algorithm presented here are complementary techniques, and both may be used in the same positioning system. Calibration is most effec82

tive against large, stationary ferromagnetic objects. The algorithm presented here is most
effective against smaller iron clutter, not captured in the calibration, that the sensor
may unexpectedly encounter.
Although the mitigation proves only modestly successful, this technique is a potentially valuable step for magnetic field-based positioning systems. An extensive literature search indicates that this is the first attempt to dynamically detect and mitigate
distortion caused by ferromagnetic objects in the environment.
6.2 Introduction to the Approach

Reducing the errors caused by ferromagnetic objects in the environment proves to


be a more difficult challenge than correcting for the effects of eddy fields. In Chapter 4,
the mitigation technique for eddy field noise operates on each beacon signal individually.
That is, even with only one beacon signal present, the effects of eddy fields on that signal
can be detected and accounted for (for example, see the Experimental Results section of
Chapter 4). Unfortunately, the distortions caused by the presence of iron cannot be detected in the signal from any individual beacon. However, this section introduces an approach that examines a collection of beacon signals. That is, when several beacon signals
are combined into a position solution, the disturbance can be observed.
First, it is necessary to briefly review the sensor signal processing and define an
important new metric. As described in Chapter 3, the sensor unit takes a sequence of
measurements of the vector magnetic field at its location. These measurements contain
the superimposed signals from multiple beacons. In Chapters 3 and 4, algorithms are
presented which take the sequence of measurements and produce estimates of the vector
magnetic field, at the sensors location, produced by each individual beacon. The variable Bi designates the magnetic field vector of the ith beacon. The solution method in
Chapter 5 then takes the estimates Bi and produces an estimate of sensor position and attitude.
At this point, the sensor has enough information to perform an interesting computation. The location and parameters of each beacon are known to the sensor a priori, and
an estimate of sensor position and attitude has been obtained from the solution algorithm.
Thus, it is possible (using the dipole model in equation 2.3) to compute the theoretical
83

value of each beacon field at the sensor location. The magnetic field vector produced by
the ith beacon, determined by computation, at the estimated sensor position and attitude
is defined as Bic.
Now an important metric may be introduced. A residual is defined as the difference between Bi (produced directly from measurements) and Bic (computed at the estimated sensor location):
Ri = C b / s Bi B ic

(6.1)

Note that the sensor parameterizes the (measured) vectors Bi in sensor frame coordinates,
while the (computed) vectors Bic are in building frame coordinates. Rotation matrix Cb/s
transforms vectors from sensor frame coordinates to building frame coordinates (Cb/s is
the matrix inverse of rotation matrix C, an output of the solution algorithm in Chapter 5).
Residuals are parameterized in building-frame coordinates.
The residuals are a measure of the quality of the position estimate. If the residuals
are small in magnitude (compared to, for example, the expected noise level in Bi), then
the position estimate is trustworthy. That is, all of the estimates Bi have approximately
the value that would be expected for a sensor that is truly at the estimated location. However, if the residuals are large, the position estimate is suspect. That is, the position solution algorithm converged to an estimate, but each measured Bi value does not agree well
with the value expected at the estimated location. Discrepancies between Bi and Bic, captured by the residual metric, indicate that some type of noise or disturbance has affected
the estimates.
It is through the computation of residuals that iron noise becomes observable. To
demonstrate, consider the following one-dimensional example. A simple coordinate system is constructed in Figure 6.1, with one beacon at location (0 m) and one beacon at location (3 m). In this example, the sensor is constrained to lie along the line between the
beacons, and its position along this line is to be estimated. Each beacon field is described
by
B = 1/ r 3

(6.2)

where: B = beacon field (mG)


r = distance from beacon (m) along the one dimension of freedom
In this simple example, the only source of noise is the presence of a ferromagnetic object.
84

B1
B2
Beacon 1

Beacon 2

Sensor

Figure 6.1. In this one-dimensional example, the sensor measures the fields produced by two beacons.

First, consider the case where no iron is present. The sensor, located at (1 m),
measures the magnetic field at its position. From these measurements, the amplitude of
beacon 1 (B1) is estimated as 1 mG and the amplitude of beacon 2 (B2) as 0.125 mG.
From these estimates, the sensor determines its position to be (1 m). Given the known
beacon locations and parameters, the sensor computes the expected beacon fields at its
estimated location B1c is 1 mG and B2c is 0.125 mG. Thus, the residuals have zero
magnitude and the position solution is judged to be reliable.
In contrast, consider the effects of an iron mass placed above the sensor, as
shown in Figure 6.2. As described in Chapter 2, iron responds to an external field (proB1
B2
Beacon 1

Iron

Sensor

Beacon 2

Figure 6.2. An iron mass is placed next to the sensor in the one-dimensional example. The iron, stimulated by the beacon fields, creates a field of its own and causes
the sensor to overestimate the size of the beacon signals. This iron noise causes error in the position estimate, but its presence can be detected in the residuals.

85

duced by the beacons) by creating a field of its own. Modeling the iron field as a simple
dipole oriented in the direction of the external field, the iron and beacon fields add constructively, as shown in the figure. The sensor takes measurements of the sum magnetic
field and, in this example, estimates B1 to be 1.1 mG and B2 as 0.138 mG. Neither estimate, considered by itself, gives any indication that iron distortion is present. The sensor
uses B1 and B2 as inputs to a simple solution algorithm, and estimates its position as
(1.017 m).
However, at location (1.017 m), the expected amplitude of beacon 1 (B1 c) is 0.951
mG and B2 c is 0.128 mG. There is a discrepancy between the measured beacon field values and the values expected at the estimated location the residuals are non-zero. Thus,
the sensor has detected the presence of a distortion by examining the residuals.
Note that in this simple example, the iron caused all of the beacon field estimates
to be too large. In three dimensions, the effects of iron are more complex. As described
in Chapter 2, a single iron source may cause the fields from some beacons to be overestimated while at the same time causing the fields from other beacons to be underestimated. In the next section, a model of the effects of iron in three dimensions is developed.
In summary, the distortion due to iron is not detected from the measurements of
any one beacon. However, iron noise can be observed by considering a collection of signals from multiple beacons. The particular approach taken by this noise reduction technique is to attempt to observe and mitigate the effects of iron through the computation of
residuals.
6.3 Iron Noise Model

As described in Chapter 2, a ferromagnetic object in the environment responds to


a beacon field by creating a magnetic field of its own. This magnetic field combines with
the beacon field in the measurements taken by the sensor. Thus, the estimate of the beacon magnetic field (the output of Chapters 3 and 4), Bi, is the sum of the actual beacon
field, Bitrue, and the distortion caused by the ferromagnetic object, Fi.
B i = B itrue + Fi

(6.3)

86

In this section, a simple model is developed for the effect (Fi) that a ferromagnetic
object has on the estimate of a beacon magnetic field (Bi). Note that it is the effect of the
ferromagnetic object on the beacon field estimate that is modeled in this section, as opposed to the magnetization field itself. This effect (Fi) on the beacon field estimate has
units of Gauss. This approach is taken to simplify the discussion the introduction of the
magnetic field strength vector (generally given the symbol H) and the actual unit for a
magnetization field (the Oersted) can be avoided.
Several assumptions are required to form the model. The mitigation technique
would not be possible without these simplifications, but they do reduce its effectiveness.
First, it is assumed that the field generated by the iron in response to a beacon field can
be modeled as a dipole field. This assumption is sound if the sensor is far from the
iron, compared to the physical size of the iron object itself. However, as shown by the
experimental results in Section 6.5 (which demonstrate modestly successful iron noise
mitigation), this assumption is at least moderately accurate even when the iron is near
then sensor. Second, it is assumed that the distortion is the result of one dipole source
(i.e., one iron object close to the sensor). Third, the orientation of the iron dipole field is
assumed to lie along the beacon field vector that excited it (i.e., the ferromagnetic material is isotropic). Fourth, the field generated by the iron is assumed to be proportional to
the applied field (i.e., the ferromagnetic material is linear). Although ferromagnetic deposits are generally not perfectly isotropic or linear, these are fair first-order approximations for many types of ferromagnetic materials. Finally, it is assumed that the distance
between the iron and the sensor is small compared to the distance to the nearest beacon.
This enables the approximation that the beacon field vector is the same (in magnitude and
direction) at the location of the sensor as at the location of the iron object.
With these assumptions, the effect of a ferromagnetic object on the estimate of
beacon magnetic field Bi (at the sensors location) is modeled as (Figure 6.3)
)
)
Fi k B ic (2 cos( i )r + sin( i ) )

(6.4)

where the dipole axis of Fi is oriented in the direction of the beacon magnetic field vector
Bic. The unit vector in the direction of Bic is designated B ic . The proportionality constant k absorbs the size, permeability, and distance of the iron object.

87

Sensor

Fi

Iron

Bic (beacon field)


Figure 6.3. The field produced by the iron in response to beacon i is modeled as a
dipole directed along vector Bic.

In Figure 6.3, the bearing vector (v) is the displacement vector between the iron
and the sensor. The unit vector in this direction is designated v . The bearing angle (i)

is the angle between B ic and v . An important point to note is that, using this approximate model, v always lies in the plane defined by B ic and Fi (this fact will be used
later).
References to i in equation 6.4 can be written in terms of B ic and v :
B ic v = cos( i )

(6.5)

B ic v = sin( i )

(6.6)

Note that the bearing unit vector is parameterized in building reference frame coordinates, and contains only two independent pieces of information (since it has a magnitude
of 1). The unit vector B ic is also parameterized in building frame coordinates.

88

Therefore, from equations 6.4 through 6.6, Fi is a function of the unknowns v


and k:
Fi = f (v, k )

(6.7)

Thus, this approximate model allows the effects of iron distortion to be described using
only three independent parameters the direction in space to the iron, v (2 independent
pieces of information), and the strength of the iron source, k. In other words, if v and
k are known, the complete effects of the iron distortion can be calculated using equations

6.4 through 6.6.


6.4 Detection and Mitigation Algorithm

A final assumption now enables the mitigation technique. It is assumed that discrepencies between Bi and Bic, captured by the residual vectors in the second section, are
caused by ferromagnetic distortion that can be described by the model developed in the
third section. Specifically, it is assumed
Ri Fi

(6.8)

and therefore the residuals can be used to estimate the three model parameters that characterize the iron source. Once the iron source has been characterized, its effects can be
estimated and accounted for. This mitigation algorithm consists of four steps, detailed
next.
The first step in the algorithm is to determine if ferromagnetic distortion appears
to be present. This determination is based on the residuals, which are computed from Bi
and Bic (equation 6.1). In any measurement system, including the DMLP system, there
are always some sources of noise preventing perfect measurements (for example, thermal
noise is always present in the DMLP system, as described in Chapter 8). Thus, the residuals never have a magnitude of exactly zero, even when there is no iron nearby.
Therefore, as with the eddy field mitigation algorithm in Chapter 4, a threshold is set so
that small, random fluctuations in the magnetic field measurements do not trigger the iron
mitigation algorithm.
In the DMLP prototype system (Chapter 8), the following criteria worked well: if
two or more residuals have a magnitude greater than 0.6 mG, the presence of iron noise is
indicated and the mitigation will be performed. This experimentally determined thresh89

old value is strict enough that the iron mitigation technique was never falsely triggered by
thermal noise, and yet the presence of nearby iron was reliably detected. If no iron is detected, the mitigation algorithm terminates at this point.
Note that the detection of iron, even without the mitigation steps that follow, may
be quite useful. For example, a mobile robot could record on its internal map areas where
iron distortion is indicated. Later routes could be planned to avoid these areas.
The second step in the algorithm is to estimate the parameters ( v and k) that
characterize the iron distortion. First, the bearing unit vector (the line in space containing
the sensor and the iron source) is estimated as follows. Recall, from Figure 6.3, that Bic
and Fi, for each beacon i, define a plane containing v . Also recall that, by assumption,
Ri = Fi. Thus ni, a vector normal to the plane containing v , Bic, Fi, and Ri, can be calculated by:
ni = B ic Ri

(6.9)

The vector v , which lies in the plane defined by Bic and Ri, is therefore normal to ni:
v ni = 0

(6.10)

At this point, the vector ni associated with each beacon i is calculated (equation
6.9). The two vectors with the largest magnitudes are selected the indices of these vectors are defined as A and B. The plane containing BAc and RA (normal to vector nA) and
the plane containing BBc and RB (normal to vector nB) can be used to determine v . The
bearing vector lies in both planes, and thus lies along the intersection of these two planes.
Equivalently, the bearing vector is normal to both nA and nB, and can therefore be computed as:
v = n A n B

(6.11)

where n A and n B are the unit vectors in the directions of nA and nB, respectively.
Note that there is a sign ambiguity in the bearing vector it actually only represents the line in space along which both the sensor and iron are located. The direction
which it points (from the sensor to the iron or from the iron to the sensor) is unobservable, and does not affect the final output of the mitigation algorithm.

90

Once v has been determined, it is straightforward to estimate k and thus complete


the characterization of the iron source. Taking the magnitude of both sides of equation
6.4 yields:
Fi = k Bic (1 + 3 cos 2 i )

(6.12)

Every term in equation 6.12, except for k, is now known (with the help of equation 6.5).
Equation 6.12, written with respect to the beacon with index A (determined previously),
becomes:
F A = k B Ac (1 + 3 cos 2 A ) .

(6.13)

Similarly, equation 6.12, written with respect to the beacon with index B, becomes:
FB = k B Bc (1 + 3 cos 2 B )

(6.14)

Equations 6.13 and 6.14 are each solved for k. These two values of k are averaged to arrive at the final estimate of k.
The third step in the mitigation algorithm is to estimate the effect that the iron distortion has on the measurements. Parameters characterizing the iron source, v and k,
were estimated in the last step. With the estimates, the effect of the iron distortion (Fi) is
straightforward to calculate, using equations 6.4 through 6.6.
The final step in the mitigation algorithm is to account for the effects of the iron
distortion. The effect that the iron distortion has on the beacon field estimates was computed in the previous step. Thus, the effect of the iron distortion Fi is subtracted from the
beacon estimate Bi. The result is a modified estimate Bi (labeled Bitrue in equation 6.3).
These modified beacon field estimates, which have been corrected for the effects of iron
distortion, are then passed through the solution algorithm (Chapter 5) a second time. A
new position and attitude estimate, in which the effects of ferromagnetic distortion have
been mitigated, is obtained.
This final step has two effects. By subtracting Fi, the bias in the position estimates due to iron noise is reduced. However, the random fluctuation in the position estimates (the scatter in Chapter 8) increases. Therefore, an adjustment is made to the
final step of the algorithm. Instead of subtracting the instantaneous value of Fi, a lowpass filtered value of Fi is used instead. In the DMLP prototype system (Chapter 7), position estimates and Fi estimates are calculated every 0.1 s (10 Hz), but the Fi estimates
91

1.0
0.8
0.6
0.4
0.2

iron
indication
(binary flag)

magnitude of residuals (mG)

residuals
(magnitude)

10

15

20

25

30

time (s)
Figure 6.4. The magnitudes of two residual vectors rise measurably as a ferromagnetic mass is placed near the sensor, triggering an indication that iron noise
is present.

are filtered to a 1 Hz bandwidth before being applied in the correction. The result is that
the mitigation technique reduces the bias caused by iron distortion while not significantly
contributing to increased scatter.
6.5 Experimental Results

Several experiments were conducted during the development and testing of this
mitigation algorithm. The experiments were performed using the prototype DMLP system (described in the next chapter), where signals from eight beacons are available. The
following simple test procedure was used. Each experiment started without an iron object in the test environment, to provide a reference. Then, while the sensor estimates
were recorded, an iron object was placed near the sensor.
One typical experiment is examined in detail in Figures 6.4 through 6.7. In this
experiment, a 6.4 kg iron mass was placed next to the sensor. Figure 6.4 shows the magnitude of two of the residual vectors versus time as the experiment was conducted. Ini92

1.0
0.8
0.6
0.4
0.2
0
-0.4

-0.2

Fi (effect of iron noise) (mG)

iron
indication

10

15

20

25

30

time (s)

Figure 6.5. Once iron is indicated, the effects of iron noise on each vector component of each beacon signal are estimated.

tially (at 0 s), the iron was not present and the residual magnitudes were approximately
0.3 mG. This is a typical residual value when the DMLP prototype area is clear of interfering material. At 17 s, the iron was close enough to the sensor (approximately 10 cm
distance) that the residuals were affected. By 21 s, the iron was placed in its final location, approximately 4 cm from the sensor semiconductors. The residuals climbed past the
threshold value of 0.6 mG, and the iron indication was triggered.
Once iron noise was detected, the mitigation algorithm, as described previously,
used the residuals to estimate the effects of the iron distortion, Fi (shown in Figure 6.5).
Each component of the vector Fi is shown in Figure 6.5 for each of the eight beacons.
Note that before the iron indication was triggered, the Fi values were all simply zero.
The estimated effects of the iron distortion, shown in Figure 6.5, were subtracted
from the estimates of each beacon field, Bi. Figure 6.6 shows the effects of the correction
on the estimate of the field produced by beacon 1 in the x axis. Initially, when no iron
was present, B1x has an average value of 2.37 mG. This is labeled as the nominal or
truth value in the figure. When the iron was placed next to the sensor, the uncorrected
93

3.5
3.0
2.5
2.0
1.5
1.0
0.5

iron
indication

B1x - corrected and uncorrected (mG)

B1x uncorrected
B1x corrected
truth

10

15

20

25

30

time (s)

Figure 6.6. An iron mass is placed next to the sensor (at approximately 17 s),
causing a 28% error in the estimate of B1x. With the mitigation algorithm, the

0.5
-0.5

iron
indication

-1.5

-1.0

B2x uncorrected
B2x corrected
truth

-2.0
-2.5

B2x - corrected and uncorrected (mG)

1.0

estimate of B1x is only 7.2% in error.

10

15

20

25

30

time (s)

Figure 6.7. The iron mass causes a 30% error in the estimate of B2x. The mitigation algorithm reduces the error to 13%.

94

estimate of B1x jumped to 3.03 mG iron noise caused a 28% error. However, the corrected estimate of B1x (i.e., F1x has been subtracted) remained at 2.54 mG an error of
only 7.2%. Thus, the error in this particular signal component was reduced by 74%.
Figure 6.7 shows a similar result in the estimate of a different beacon signal B2x.
In this case, the nominal value (i.e., with no iron object) for B2x was 1.86 mG. When the
iron was placed near the sensor, the uncorrected value jumped to 2.42 mG (30% error)
while the corrected value changed to 2.11 mG (13% error). The mitigation algorithm
reduced the noise in this signal component by 55%.
Each of these Bi values is an input to the position and attitude solution algorithm.
When the iron was near the sensor and uncorrected Bi values were used, a 16.2 cm error
was created in the (3-D) position estimate. However, when the corrected Bi values were
passed through the solution algorithm, the error in the position estimate was only 8.5 cm.
Thus, for this experiment, the mitigation algorithm reduced the effect of iron noise on the
position estimate by 48%.
Multiple additional experiments were conducted in a similar manner but with different parameters (e.g., location in the experiment area, distance and bearing between the
sensor and the iron). The overall results can be roughly summarized as follows. A 6.4 kg
mass of iron at a distance of 20 cm or more is far from the sensor, and does not significantly affect the position estimates. At approximately 5-10 cm distance, the position estimates are affected (generally a 5 to 15 cm total error). At this distance, the algorithm
reliably detects the presence of the iron, and generally reduces the bias due to the iron
distortion by 20% to 50%. On average, the algorithm provided noise mitigation of approximately 40%.
6.6 Summary

The mitigation of iron noise proves to be a more difficult challenge than correcting for the effects of eddy fields. However, this chapter presents a method that can detect
this error source by observing a collection of several beacon signals. Then, using a simplified model of iron noise, the parameters describing the distortion can be estimated and

95

a correction can be computed. The algorithm, confirmed experimentally, reliably detects


the presence of iron distortion and achieves a modest level of mitigation.

96

7 The Prototype System


A prototype DMLP system, incorporating the innovations presented in the last
several chapters, was designed and constructed to demonstrate position and attitude sensing in a cluttered environment. The focus of this chapter is the implementation of the
four main parts of the prototype system the beacons, beacon network, sensor box, and
processor. The results of the experiments performed with this system are detailed in the
next chapter.
7.1 Overview

The DMLP system, as described in the preceding chapters, is based on extremely


low frequency magnetic fields.

Inexpensive beacons, installed at known locations

throughout the building, are responsible for creating these magnetic signals. The beacon
fields are generated according to the CDMA signal architecture presented in Chapter 3.
The beacons must be synchronized to use this signal architecture. The beacon network
provides this synchronization as well as a communication link for monitoring the beacons
from a central location.
By measuring the beacon magnetic fields, a small, low-power sensor can determine its position and orientation anywhere in the building. In the prototype, the sensor is
97

implemented as two separate components, a sensor box and a processor. The sensor box
samples the local magnetic field (a vector quantity) at the proper times and reports the
data to the processor. The processor, using the techniques presented in the preceding
chapters, distinguishes the fields produced by individual beacons, implements algorithms
to mitigate eddy and iron noise, and produces an estimate of the position and attitude of
the sensor box with respect to the building-fixed beacons. The processor for the DMLP
prototype is a laptop PC.
These four main components of the prototype system the beacons, beacon network, sensor box, and processor are individually described in the following sections.
7.2 Beacons

Beacons are responsible for creating the low frequency magnetic field signals. To
accomplish this task, the prototype beacons (one is pictured in Figure 7.1) consist of three
main components a coil, a power amplifier, and an electronics box.
Electrical current flows through the coil to create a dipole magnetic field (depicted in Figure 2.1). The current is switched in polarity to implement the signal structure described in Chapter 3. The power amplifier is used to force the desired current
through the coil inductance. In the prototype system, each coil consists of 80 turns of
wire wrapped on 36 cm diameter core, resulting in a coil inductance of 4 mH and a resistance of 1.2 . At the end of each chip period, when magnetic field measurements are
made by the sensor (described later), the current running through the coil is 2 A. This
yields a magnetic field amplitude of 16 mG at 1 m distance and 0.25 mG at 4 m distance
(measured at = 90, as defined in Figure 2.1). For comparison, the earths magnetic
field amplitude, measured at the surface, is approximately 300-500 mG.
The electronics box commands the power amplifier and controls the operation of
the beacon, as shown in Figure 7.2. A Motorola MC68HC11E2 microcontroller (the
HC11) is at the heart of each beacon. Upon receiving the Sync (synchronization)
signal from the beacon network (described in the next section), it outputs the next chip in
the pseudorandom code sequence. This output commands the amplifier to produce the
proper current through the coil, creating the appropriate magnetic field.

98

Figure 7.1. A prototype beacon. In the DMLP system, beacons generate low frequency magnetic field signals that permeate a building.

Figure 7.2. Prototype beacons consist of a coil, power amplifier, and a beacon
electronics box (containing the functionality inside the dashed line).

99

Figure 7.3. Relationship between the command signal, amplifier drive voltage,
and coil current in a prototype beacon.

The digital command from the HC11 is converted to an analog signal (labeled
Command) through a D/A converter. The difference between the Command signal
and the Sense signal (representing the current actually flowing through the coil) is fed
to the control law (a simple gain). The output of the control law, an amplified Error
signal, directs the power amplifier. A resistor of low value (0.1) but high heat dissipation (2W) is used to sense the current flowing through the coil to complete the control
loop. All of the components in the dashed box in Figure 7.2 are inside the beacon electronics box.
This closed loop design provides a simple way to enhance the performance of
the beacon. Figure 7.3 shows the relationship between the Command signal, the power
amplifier drive voltage, and the current flowing through the coil. When a change in polarity is commanded, the error signal is multiplied by the control law gain. This large
signal causes the amplifier to apply its maximum control authority (about 50V in the prototype system), motivating the current to rapidly change direction through the coil inductance. The amplifier relaxes only when the actual current flowing through the coil
closely matches the desired current. By the end of the chip period, the amplifier is applying just enough voltage to keep the current flowing through the small resistance of the
100

Table 7.1. Pseudorandom codes (written in octal notation) used in the prototype
system.

coil wire and sense resistor. The result is a beacon that can change polarity much faster
than the L/R time constant of the coil. This enables the use of a larger coil inductance,
which translates into additional turns of wire and larger magnetic fields.
This enhanced performance could also be achieved open loop, with a command
profile generated by the HC11. However, the closed loop arrangement is not only simple, but provides secondary advantages. The design rejects disturbances within the beacon, such as changes in transistor parameters as the amplifiers warm up, and also mitigates the differences between beacon amplifiers.
Each HC11 is programmed with its pseudorandom code. Gold codes of length 63
are used, and a code sequence completes in 0.1 seconds. Thus, the prototype system is
representative of a large DMLP installation, employing the same signal structure that
would be used in a system with thousands of beacons. The codes are shown in Table 7.1
in octal form (i.e., an octal value of 6, which is [1 1 0] in binary, represents a code sequence of [1 1 1]).
The communication signals Sync, ToBeac, and FromBeac are carried by
the beacon network to each beacon electronics box, where they are translated from
RS485 to TTL electrical levels. Only the Sync signal is necessary for operation, but the
HC11 also responds to a limited set of commands sent over the beacon network (the

101

ToBeac and FromBeac lines). These signals and the beacon network are described
further in the next section.
One lesson learned from the prototype design is that linear power amplifiers are
not well suited for DMLP beacons. The amplifier used in the prototype system (an offthe-shelf audio amplifier) was inexpensive, easy to obtain, and had ample control authority (power supply rails at +/-50V). However, at the end of each chip period, when only 2
V is required to maintain 2 A of current through the (approximately) 1 ohm coil resistance, 48 V of potential is dropped across the power transistors in the linear amplifier.
Thus, for a significant part of each chip period, 96 W are dissipated inside the amplifier
while only 4 W are applied to the coil. In the future, the use a PWM (pulse width modulated) power amplifier in the beacons should prove beneficial.
7.3 Beacon Network

The beacons in the DMLP system must be synchronized to implement the signal
architecture described in Chapter 3. The primary purpose of the beacon network (Figure
7.4) is to connect each beacon to a central timekeeping source, the Timing Box, to enable
this synchronization.
The Timing Box generates the Sync signal, which is distributed over the network to all of the beacons. In the prototype system, the signal consists of a repeating sequence of 63 pulses, as shown in Figure 7.5. Each pulse prompts the beacons to progress
to the next chip in their respective pseudorandom code sequences. The pulses have a
width of 10 us, except for the first pulse in the sequence, which has a width of 100 us.
This long pulse marks the beginning of a code cycle, when each beacon must produce the
first chip in its sequence. Since the prototype system produces estimates at 10 Hz, a code
cycle (63 chips) must complete every 0.1s.

Therefore each pulse is separated by

(0.1s/63) 1.587ms.
The beacon network enables synchronization at two levels on both the chip and
the code timeframes. First, the beacons are synchronized at the chip level. Based on the
rising edge of the Sync signal, all beacons generate the next chip in their code sequence
at the same time. This allows the sensor unit to sample the sum magnetic field at the end
of each chip period, when the beacon fields have stabilized. Thus, this synchronization is
102

Figure 7.4. The beacon network is used to synchronize and monitor the beacons.

Figure 7.5. The Sync signal, carried by the beacon network to all beacons.

required to be accurate within a few percent of a chip period. Note that this timing requirement is not difficult to achieve - even 1000 m of cable adds only microseconds of
delay, which is small compared to a chip length.
Second, the beacons are synchronized at the code level. Based on the long starting pulse of the Sync signal, all beacons maintain their relative code alignment. For
example, when a beacon is first powered up, it waits for the starting pulse to begin generating its magnetic signal. Similarly, if a beacon falls behind by 1 chip (e.g., due to noise
on the Sync line), it realigns itself at the next starting pulse.
The beacon network is implemented in a bus configuration all beacons receive
the same Sync signal. Electrically, RS485 signals are used, allowing numerous transmitters and receivers to be attached to the same line. This standard uses differential signaling for noise immunity and allows long cable lengths. Physically, the signals are car103

ried by category 5 ethernet cable, which is inexpensive, readily available in different


lengths, and has 8 conductors (two wires are used by the Sync signal, and four other
wires are used by the two signals described next).
The Timing Box has a secondary purpose in addition to synchronization, it provides communication between the beacons and a central control station, the Monitor PC.
The Timing Box converts RS232 signals from the PCs serial port to RS485 signals on
the beacon network. The PC sends simple commands on the ToBeac line, and the beacons respond, one at a time, on the FromBeac line.
A limited set of commands is implemented in the prototype system, mainly to
monitor the health and status of the beacons. Each beacon records diagnostic information, such as an unexpected starting pulse on the Sync signal (indicating a timing pulse
has been missed) and the temperature of each beacon (although overheating was not a
problem in the prototype system, and temperature sensors were not installed). The software on the Monitor PC periodically polls each of the beacons, and displays the status
information. Further, the amplitude of each beacon magnetic field can be set from the
Monitor PC, and beacons can be enabled or disabled.
7.4 Sensor Box

The sensor box (in Figures 7.6 and 7.7) is a small, low-power electronics module
that takes measurements of the vector magnetic field at its location. This data is then sent
to the processor, where it is used to estimate the position and attitude of the sensor box
with respect to a building-fixed reference system.
Magnetic field sensing is accomplished using three Honeywell magnetoresistive
transducers. These semiconductors generate a voltage proportional to the applied magnetic field. They are sensitive to fields along only one axis, allowing three separate sensors, aligned in orthogonal directions, to capture vector measurements of the magnetic
field.

The three sensors are contained in two physical packages, one Honeywell

HMC1001 (one-axis) and one HMC1002 (two-axis).


Several technologies exist to measure magnetic fields a comparison of techniques can be found in [85]. The magnetoresistive approach was chosen because it is well
suited to the requirements of the DMLP sensor. The Honeywell semiconductors are in104

Figure 7.6. The prototype sensor box takes vector magnetic field measurements
and reports them to the processor. The sensor semiconductors are located under
the circle.

Figure 7.7. Block diagram showing the functionality inside the sensor box.

105

expensive, directional, available in a small packages, and have good sensitivity. Among
the various approaches, magnetoresistive sensors offer superior resolution and noise
characteristics, without resorting to large coils or cumbersome SQUID equipment.
The three signals from the transducers are amplified and conveyed through a first
order low pass filter. The signals are then digitized by an Analog Devices AD974 analog-to-digital converter. This A/D converter features high speed (10us conversion time)
and good resolution (16 bits). The high speed allows the three signals to be sampled
nearly simultaneously. The high resolution is motivated by the large dynamic range of
the signals in the DMLP system a signal from a nearby beacon may be a thousand times
stronger than signals from further beacons.
An HC11 microcontroller, similar to those used inside the beacons, controls the
A/D conversion process. When a timing pulse arrives on the Sync signal, the HC11
waits for approximately 1.5 ms (almost an entire chip period) and then initiates conversions on the three signal channels (one from each axis). The results are read by the
HC11. The conversion is very fast, and it takes only a small fraction of a chip period to
obtain the three digital measurements. The reason that the measurements are taken at the
end of a chip period is that the beacon fields do not instantaneously assume their proper
values (see Figure 7.3). Waiting until the end of the chip period allows the beacon fields
to stabilize (experimentally, it takes approximately 75% of a chip period for the beacon
fields to reach their final values). The measurement data (one 16-bit sample from each of
three axes) is then sent over a RS232 serial link to the solution processor (described in the
next section).
In the prototype system, the Sync signal (generated by the Timing Box) is carried to the Sensor Box by either a cable or a wireless link. The wireless link is an off-theshelf RF video link, modified slightly to transform the output signals into the proper digital levels.
7.5 Processor

The magnetic field measurements (output from the sensor box) are used by the
processor to produce a position and attitude estimate. In the prototype system, a laptop
PC is used to do this processing in real time.
106

Figure 7.8. Implementation of the signal processing chain inside the processor.

The implementation of the signal processing in the prototype system is depicted in


Figure 7.8. Details of the various stages in the signal processing chain can be found in
the preceding chapters. The first step is to read and verify a complete data set 63 measurements from each of the 3 sensors. The HC11 in the sensor box adds information to the
data stream to ensure that only complete packets are accepted. Once a complete set of
data has been obtained, the detection algorithm (Chapters 3 and 4) is used to distinguish
the beacon fields and to provide eddy field noise mitigation. Given estimates of several
beacon field vectors, along with the known beacon locations and parameters, the next
stage computes a position and attitude solution (Chapter 5). An algorithm then examines
the beacon field vectors and the position and attitude solution to detect and mitigate the
effects of iron in the environment (Chapter 6). Finally, the results are displayed in real
time and recorded.
The prototype signal processing is coded in C and runs in a DOS environment.
Several of the routines use fairly complex matrix manipulation for example, a matrix

107

inversion in the attitude estimation step. Numerical Recipes in C [86] proved to be a


valuable tool in the implementation of the prototype processor.
The laptop PC was a useful platform in the development stage of the DMLP system. The code development tools are self-hosted, making programming straightforward.
Intermediate results along the signal processing chain can be displayed in real time, easing debug and promoting a greater understanding of the system in operation. For implementation in an actual system, however, an embedded processor can be integrated with
the sensor unit to create a physically small and rugged device.
7.6 Summary

The focus of this chapter is the implementation of the four main parts of the
prototype DMLP system the beacons, beacon network, sensor box, and processor. Bea-

cons, installed in known locations throughout the building, are responsible for creating
the low-level fields. The beacon network is a communication link responsible for synchronizing and monitoring the beacons. The sensor box is a small, low-power electronics
module that takes measurements of the local vector magnetic field. The processor, using
these measurements, distinguishes the fields produced by individual beacons, implements
algorithms to mitigate eddy and iron noise, and produces an estimate of the position and
attitude of the sensor box with respect to the building-fixed beacons.

108

8 Experimental Demonstrations
A prototype DMLP system, incorporating the innovations presented in Chapters 3
through 6, was constructed to experimentally demonstrate position and attitude sensing in
a cluttered environment. The specific design and implementation of the prototype hardware are detailed in Chapter 7. This chapter presents and analyzes the experimental results obtained with the system.
First, experiments conducted in an uncluttered environment are considered,
quantifying the nominal performance of the prototype system. Then, the system is then
presented with several challenging scenarios, and results in cluttered environments are
examined. The DMLP prototype system demonstrates a position accuracy of several centimeters and an attitude accuracy of several degrees even in the midst of considerable
line-of-sight obstructions. Further, these experimental results are not the product of a
perfect laboratory environment the experimental area surroundings are representative
of a challenging industrial setting.
8.1 Test Results in an Uncluttered Environment

The prototype DMLP system, shown in Figure 8.1, is installed in a 4 m by 4 m


experiment area. Eight beacons are located at the corners of this area the upper four
109

Figure 8.1. The prototype DMLP system and experiment area.

beacons are mounted on ladders at a height of 2.7 m, while the lower ones rest on the
floor. The grid lines on the floor, spaced at 1 m intervals, are used as a truth system. The
lower right corner of the grid, as shown in the picture, is the origin of the building-fixed
coordinate system. The X and Y axes are in the horizontal plane (the X axis is directed
from the origin to the far right corner of the grid) and the Z axis is directed upwards.
The prototype system produces position estimates at 10 Hz using beacon pseudorandom
codes with a length of 63 chips. Thus, the signals used in the prototype system are appropriate for a system with thousands of beacons. More information about the design and
construction of the prototype hardware can be found in Chapter 7.
A typical experiment is shown in Figure 8.2. The sensor, mounted on a test stand,
measures the local magnetic field vector. The laptop computer processes this data, using
the techniques described in earlier chapters, to estimate position and attitude. Estimates
are displayed in real-time and recorded for further analysis. The true sensor state is
surveyed with respect to the grid using construction-grade techniques (e.g., plumb bob
and tape measure).
The first experiment provides a measure of the nominal performance of the positioning system. The sensor is placed at 9 intersections on the grid locations (1 m, 1
110

Figure 8.2. A typical experiment. The sensor box (mounted on the tripod) takes
measurements of the magnetic field vector while the laptop computer processes
the data to determine position and attitude. The results can be compared to the
grid truth system.

m), (1 m, 2 m), etc through (3 m, 3 m). At each position, the sensor generates and records
approximately 300 estimates (taking about 30 s). The estimated values of position in the
horizontal (X-Y) plane are plotted in Figure 8.3.
To quantify the results of this experiment, the error in the estimates may be divided into two categories. First, the estimates at a given location are not all identical
there is scatter in the estimates. Second, the average position estimate at a particular location does not perfectly match the surveyed truth value there is bias in the estimates.
The scatter and bias in the estimates generated by the prototype DMLP system are analyzed individually, as follows.
The random scatter in the position estimates is approximately Gaussian in distribution and has a (1-sigma) standard deviation of 2.3 cm in the X axis, 2.5 cm in the Y
axis, and 2.8 cm in the Z axis. This scattering effect is caused by thermal noise inherent
in the sensor electronics. The random motion of electrons in the sensor and amplifier
111

4
3.5
3
2.5
)
m
(
Y

2
1.5
1
0.5
0
0

0.5

1.5

2
X (m)

2.5

3.5

Figure 8.3. Graph of position estimates (in the horizontal plane) generated by the DMLP sensor in nine separate locations.

semiconductors adds noise to the magnetic field measurements. These fluctuations in the
magnetic field readings produce jitter in the position and attitude estimates. This thermal
noise is expected, and is one of the most common forms of noise encountered in electronic systems [87]. The scatter in the estimates could potentially be reduced through
improved electronics (e.g., amplifiers with better noise figures).
It is interesting to note that, even though the thermal noise is the same at all locations in the experimental area, the scatter in the position estimates does not have the same
shape at all locations. Recall that the magnetic field readings are transformed into position estimates by the solution algorithm, and that the amplitudes of the beacon fields are
related to the sensor position through a nonlinear set of equations (Chapter 5). Noise in
the magnetic field measurements transforms into error in the position estimates in a way
that depends on the particular geometry of the magnetic fields at a given point in space.
Thus, the scatter in the position estimates may be greater in some locations than in others,
and greater in some directions than in others. A similar effect occurs in other types of
positioning systems (e.g., Dilution of Precision (DOP) in the GPS system [88]). The ge112

ometry of the DMLP prototype (with all beacons oriented in the vertical direction) results
in modestly better accuracy in the X and Y axes than in the Z axis. This geometry was
selected because vertical accuracy is generally less important for mobile robotic applications.
Next, bias in the experimental results is considered. The average magnitude of
the bias in the position estimates is 4.3 cm in the X axis, 4.2 cm in the Y axis, and 5.9 cm
in the Z axis. Two sources for this bias have already received considerable attention
eddy field noise and iron noise. As described later in this section, the experimental area
is hardly a pristine environment, even without any occlusions purposely placed in the
area. Thus, some portion of the bias in the experimental results is attributable to eddy
field and iron noise stemming from the imperfect surroundings. Further, some level of
eddy field and iron noise is produced by objects that are part of the test itself (e.g., batteries inside the sensor box, the tripod), though components were chosen to minimize this
effect.
However, there are numerous other factors that contribute to bias in the prototype
system. In the sensor unit, the three semiconductors that measure magnetic fields are not
actually located at a point in space; rather, there is a separation of over 1 cm between
them. These transducers are not sensitive along one axis only (i.e., there is a certain
amount of cross-axis sensitivity) and they do not have identical gains. The sensors, amplifiers, and A/D converter each have various nonlinearities. The three transducers are
not completely orthogonal, and the analog multiplexer used by the A/D converter may
allow some cross-talk coupling between the channels.
Outside the sensor unit, there are additional sources of bias. The beacons change
their nominal field levels over time with heating, though this is minimized by the closed
loop design. The coils are not perfectly wound and do not create fields that exactly
match the model (equation 2.3). Further, the truth system itself contributes to the bias.
The floor in the area is not smooth, which caused difficulties in laying down the truth
system grid. The truth system grid is only accurate to approximately 0.5 cm (i.e., the grid
lines are not perfectly square or straight), leading to errors in both the beacon locations

113

and the true sensor position. Additionally, the ladders are not seated well on the rough
floor, producing tilt in the beacon orientations.
The bias sources thus appear to be divisible into two distinct categories inherent
noise sources and engineering limitations. Inherent noise sources, such as eddy field
noise and iron noise, are fundamental limitations of the system. As described in Chapter
2, if conductors or ferromagnetic objects are present, a magnetic field positioning system
by its nature will experience some amount of bias error. In contrast, bias sources in the
second category (e.g., non-orthogonal semiconductor alignment, imperfect truth system)
are not fundamental to the system, and can potentially be mitigated through straightforward engineering improvements.
This discussion of error in the prototype system has, to this point, been specific to
the position measurements. Similar experiments were conducted to investigate the accuracy of the attitude estimates. In these experiments, the sensor was placed at a number of
locations in various orientations and the measurements were recorded. With orientation
expressed in terms of Euler angles, the scatter in the attitude measurements has a standard
deviation of 1.4 degrees. The average magnitude of the bias is 3.5 degrees. The underlying causes for the scatter and bias in the attitude estimates are the same as those that generate the errors in the position estimates.
A different type of experiment, shown in Figure 8.4, provides additional perspective on the nominal performance of the system. In this experiment, the sensor is pulled
along a straight track (running along the x=2 m grid line) at a speed of approximately 0.1
m/s. The experiment is repeated with the track in the other horizontal direction, and the
position estimates from these two trials are shown in Figure 8.5. The magnitudes of the
cross-track errors (i.e., distances from the grid line) average 2.4 cm.
Finally, to conclude this analysis of nominal system performance, it must be noted
that the experimental results obtained here are not the product of a perfect laboratory
environment. The prototype environment is actually representative of an industrial setting, such as a factory or warehouse. As shown in Figure 8.6, the site is surrounded by
numerous large ferromagnetic and conductive objects. For example, an entire (ferromagnetic) iron scaffold, extending over 10 m in height, is stationed less than 2 m from the

114

Figure 8.4. The sensor is pulled along a track.

) 2
m
(
Y

0
0

2
X (m)

Figure 8.5. Sensor X-Y position estimates as it is travels along the grid lines x=2
m and y=2 m.

115

Figure 8.6. Wider view of the prototype DMLP experiment area, showing the
non-ideal environment.

(upper right) corner of the experiment area. Further, the floor on which the system is located presents an unusually harsh environment multiple layers of iron rebar are present
in the floor along with iron briquettes embedded in the concrete (their original purpose
was radiation shielding). In spite of these challenging surroundings, the prototype system
achieves an accuracy of a few centimeters.
8.2 Test Results with Occlusions

The highlight of this research was a series of experiments conducted with significant line-of-sight obstructions. The results, presented here, demonstrate that the DMLP
system can accurately measure position and attitude in a very cluttered environment. A
simple test procedure was used for these experiments. First, the sensor output was recorded in an uncluttered environment (i.e., other than the equipment necessary for the
test, no other objects were near the sensor). Then, various objects were placed near the
sensor and the estimates were recorded, leaving all other parameters unchanged. Differ-

116

Figure 8.7. The sensor accurately estimates its position and attitude even though
surrounded by over 100 kg of wood and concrete.

ences between the two sets of estimates are reported as the errors caused by the addition
of the objects.
As a first example, consider the experiment shown in Figure 8.7. Over 100 kg of
wood and concrete are placed immediately around the sensor, occluding the lines-of-sight
to all eight beacons. However, these materials, like many common construction materials, are characterized by permeability values close to that of empty space (Chapter 2) and
have virtually no effect on the magnetic field measurements. As expected, the introduction of this considerable obstruction causes negligible changes in the position and attitude
estimates.
The DMLP sensor accurately measures position and attitude in the midst of nonferromagnetic and nonconductive materials (Figure 8.7), and also when large ferromagnetic or conductive objects are several meters away (Figure 8.6). To test the limits of
system performance, then, experiments were performed in surroundings that are more
challenging for the DMLP system. Figures 8.8 through 8.11 show several experiments
where iron masses and conductive objects are located near the sensor.
117

Figure 8.8. The sensor accurately estimates its position and attitude even though
it is inside two steel bowls (one above and one directly below).

In Figure 8.8, the sensor is placed between two stainless steel bowls, forming a
Faraday cage. This environment, which clearly defeats approaches based on vision or
electromagnetic waves, causes an error in the horizontal plane of only 0.3 cm. In Figure
8.9, a significant cast iron mass is placed only centimeters above the sensor. This object
creates a 4.8 cm error in the horizontal position estimate. The same object, when placed
15 cm from the sensor, causes no noticeable error. A cylinder composed of galvanized
steel is placed over the sensor in the experiment shown in Figure 8.10. This considerable
obstacle produces a 10.5 cm X-Y plane error.
To gain further insight into system performance, the track experiment shown in
Figure 8.4 is modified. This time (Figure 8.11), the sensor is pulled along the track
through a (ferromagnetic) steel duct used in ventilation systems. The sensor estimates are
shown in Figure 8.12 along with the output from the previous experiment (without the
duct) for comparison. This significant occlusion poses no difficulty for the DMLP system the differences between the estimates with and without the duct are almost unobservable (i.e., the differences are within the random scatter). In this experiment, the
118

Figure 8.9. The sensor maintains accurate position and attitude estimates even
though a substantial cast iron object is placed only centimeters away.

Figure 8.10. The sensor generates accurate position and attitude estimates even
inside a steel can.

119

Figure 8.11. The sensor slides along a track through a steel duct.

) 2
m
(
Y

0
0

0.5

1.5

2
X (m)

2.5

3.5

Figure 8.12. Experimental results (X-Y position estimates) while sliding the sensor along the track shown in Figure 8.10, with and without the steel duct occlusion. The rectangle represents the location of the occlusion.

120

Figure 8.13. The sensor is moved around on a grid, and various objects are
placed over it, while the estimate of position and attitude is displayed in real time.

magnitudes of the differences between the estimated path and the true path (along the x=2
m grid line) average only 1.7 cm.
The experiment shown in Figure 8.13 proved to be an effective demonstration of
the full range of system capabilities. For this experiment, a grid with lines spaced at 0.1
m intervals was installed in the experimental area. The sensor was moved to various positions and attitudes while real-time estimates were displayed for observers on the processor screen. In addition, various objects (e.g., the wood and steel bowls used previously)
were placed around the sensor. The sensor maintained accurate estimates throughout the
experiment. As an example, a snapshot of this experiment is captured in Figure 8.13. In
the picture, the bottom left corner of the grid is at location (1 m, 1 m), the top right is at
location (2 m, 2 m), and the true sensor position is (1.40 m, 1.30 m, 0.97 m). As shown,
the sensor generated an estimate (1.37 m, 1.32 m, 0.93 m) that is inaccurate by a few centimeters. Analyzing the measurements generated from three of these demonstrations
(consisting of several thousand estimates), the magnitude of the errors in the X and Y position components averaged only 2.7 cm.
121

Figure 8.14. The DMLP system is used to navigate a robot through a cluttered office environment. The laptop screen (inset picture) displays the position estimates.

A final experimental demonstration must be described which, although it did not


generate numerical results, qualitatively allowed observers to gain better insight into the
system capabilities. The sensor was placed on a small remotely operated vehicle, as
shown in Figure 8.14. An operator navigated the robot along a specific path using the
position estimates reported by the DMLP system. The path, which was marked on the
experiment area floor, traversed a number of challenging obstacles, passing between
desks, under a table, and through a section of steel duct. Several of the beacons were located behind the modular walls, and the sensor often did not have a clear line of sight to
any of the beacons. No truth system, other than the observers eyes, was present to quantify the estimate error. However, the robot, navigating by the DMLP sensor estimates,
clearly remained within several centimeters of the desired path (marked on the floor),
even in the cluttered office environment. The difficulty in finding a positioning technology that could serve as a truth sensor for this test highlights the utility of the DMLP system.

122

8.3 Summary

Experiments were conducted with the prototype DMLP system to demonstrate


position and attitude sensing over a range of scenarios, from uncluttered to badly cluttered environments. The results indicate that the system is capable of achieving a position accuracy of several centimeters and an attitude accuracy of several degrees even in
the midst of considerable line-of-sight obstructions and surroundings representative of a
challenging industrial setting.

123


124

9 Conclusions
This dissertation has presented the Distributed Magnetic Local Positioning system, a sensing system that measures position and attitude even in a cluttered indoor environment. The first chapters examined the motivation for the research, the concept for the
system, the characteristics that make it uniquely suited for its job, and the challenges in
its development. Several chapters then detailed the research innovations that enable the
DMLP system, the design of a prototype, and the results of experimental demonstrations.
To conclude this work, a summary of the research is first presented.

The

strengths and limitations of the system are then discussed, examining the applications for
which it is well suited as well as scenarios where it is of limited use. Finally, several
concepts for extending this research are introduced.
9.1 Research Overview

A large amount of detailed information has been presented in this dissertation. As


an aid in comprehending the material, it is useful to review the research from a broad perspective. In this section, the main points of the previous eight chapters are briefly summarized.

125

Chapter 1 Introduction

You are here:

Accurate sensing of

x = 8.21 m

1 = 0

y = 12.85 m

2 = 2

position and attitude is es-

z = 1.56 m

3 = 127

sential in many applications,

from

personnel

tracking to mobile robot


navigation, but it is a very
challenging problem amid
the obstacles that often
clutter the real world. The

Figure 9.1. The DMLP system provides position and

goal of this research is to

attitude sensing even in cluttered environments.

design a positioning system that is specifically suited to meet the challenges of operation
in an indoor environment. The resulting DMLP system produces position and attitude
measurements with no line-of-sight restrictions throughout an operating area that can
span a large building. Accuracy of several centimeters and a few degrees is delivered at
10 Hz, even surrounded by obstacles that defeat other approaches. The sensor units are
small (no baselines are required to determine attitude), and any number of the units may
be in operation, all providing drift-free position estimates in a common reference frame.
Chapter 2 System Concept and Challenges
The system is based on extremely
low frequency magnetic fields, which have
excellent characteristics for penetrating line
of sight obstructions.

Numerous beacons

distributed throughout a building create the


low-level fields. A mobile sensor unit samples the local magnetic field vector and pro-

Figure 9.2. Numerous beacons dis-

processes the measurements to determine its

tributed throughout a building create low frequency magnetic fields.

position and attitude.

Two challenges have prevented existing magnetic-based systems from being used
as building-wide positioning systems: the inherently short range of the beacon fields, re126

quiring numerous beacons to achieve building-wide coverage, and the sensitivity to conductors and ferromagnetic materials in the environment. The innovations in Chapters 3
through 6 address these challenges.

1.0

Chapter 3 Signal Architecture

creased eddy field noise and reduced position and attitude estimate accuracy. A signal

0.6
0

structure based on pseudorandom codes is

TDMA
FDMA
CDMA

0.4

content in the magnetic fields causes in-

0.2

for the DMLP system higher frequency

position error (m)

nals proves to be a critical design parameter

0.8

The architecture of the beacon sig-

101

presented that allows numerous beacons to

102
number of beacons

103

be used while maintaining low overall fre-

Figure 9.3. The signal architecture

quency content. The new signal architecture

presented in Chapter 3 reduces eddy

enables the DMLP system to have building-

noise in a system with many beacons.

25

wide coverage with low eddy field noise.


Chapter 4 Eddy Field Noise Mitigation

This chapter presents a method to detect and

E11 z
E21 z
E31 z

DMLP system.

15

20

further mitigate eddy field noise in the

eddy
indication
(binary flag)

10

B field (mG)

field noise, but does not eliminate it entirely.

The signal architecture presented in


the previous chapter greatly reduces eddy

B1 z (chap 3 estimator)
B1 z (chap 4 estimator)

A model is developed to describe the

10

20

30

40

50

60

time (s)

eddy fields produced by the pseudorandom bea-

Figure 9.4. Chapter 4 presents an

con signals. Using the model, the estimation

algorithm to detect and further

process, which distinguishes the individual bea-

mitigate eddy field noise.

con fields, is modified to take into account the effects of eddy fields. Experimentally, the
improved estimator is quite effective at detecting and mitigating eddy field noise.
127

Chapter 5 Solving for Position and Attitude


A solution algorithm is
beacon

presented in this chapter that


takes the beacon field measurements,

along

with

the

known beacon locations and

parameters, and produces an


estimate of sensor position and
attitude.

sensor
z
B1

The algorithm can

function in a system with nu-

B2

Bi

merous beacons, and reliably

Figure 9.5. Chapter 5 presents an algorithm to

converges to the correct solution,

estimate the sensor position and attitude.

even with no a priori knowledge of state. The algorithm also enables an advantageous
system geometry (the use of one coil per beacon), resulting in both larger coverage volume for a given power consumption and reduced system eddy field noise.

ever, there is a second, separate mechanism by which certain objects in the environment (ferromagnetic materials) in-

3.0
2.5
2.0
1.5

B1x uncorrected
B1x corrected
truth

1.0

conductors in the environment. How-

0.5

field noise, a source of error caused by

iron
indication

through 5 are designed to combat eddy

B1x - corrected and uncorrected (mG)

The techniques in Chapters 3

3.5

Chapter 6 Iron Noise Mitigation

troduce error into the position and atti-

10

15

20

25

30

time (s)

tude estimates. This chapter presents a

Figure 9.6. An algorithm to detect and

method to detect and mitigate the effects

mitigate the effects of ferromagnetic

of this iron noise.

materials is presented in Chapter 6.

128

Chapter 7 The Prototype System


A prototype DMLP system,
incorporating the innovations presented in the last several chapters,
was designed and constructed. The
focus of Chapter 8 is the implementation of the four main parts of the
prototype system: beacons, which
create the low-level fields; the bea-

con network, a communication link

Figure 9.7. Chapter 7 examines the design

responsible for synchronizing and

of a prototype DMLP system.

monitoring the beacons; the sensor box, a small, low-power electronics module that takes
measurements of the local vector magnetic field; and the processor, which processes the
measurements to produce an estimate of the position and attitude of the sensor box with
respect to the building-fixed beacons.
Chapter 8 Experimental Demonstrations
Experimental results from the prototype demonstrate that the DMLP system is capable of sensing position and attitude, to an accuracy of several centimeters and degrees,
even in badly cluttered environments.

Figure 9.8. In Chapter 8, experimental results using the prototype DMLP system
demonstrate position and attitude sensing even in cluttered environments. In (a), left,
the sensor operates normally even though surrounded by construction materials. In
(b), right, a mobile robot uses the system to navigate a cluttered office environment.

129

9.2 Strengths and Limitations of the DMLP System

As mentioned in the first chapter, no single sensing system is optimal for all situations and environment. Every system has strengths and limitations, applications for
which it excels and scenarios where it is less well suited. In this section, conclusions are
drawn about the pros and cons of the DMLP system.
The DMLP system, in its current form, has limitations that make it less appropriate for certain applications than other technologies. Four drawbacks in particular characterize the system. First, as discussed in Chapter 2, the beacons have a short range. Thus,
the DMLP system is not suited for use in expansive buildings (e.g., navigating a small
blimp through a sports arena) or over large traverses (e.g., guiding vehicles across the
country however, navigation through a parking garage is a different matter). Second,
the sensor unit is not of negligible cost. In some applications (e.g., tracking items leaving
a store), the mobile component of the system must be extremely inexpensive but does not
need position and attitude accuracy or the ability to penetrate metallic occlusions. RFID
tags [89] are more suitable for this type of task. Third, the DMLP system is less effective
in environments with large ferromagnetic deposits. Thus, the system is not particularly
suitable for tracking containers of ore through an underground iron mine (though other
systems, such as those using RF, are less effective in this type of environment as well).
Finally, the DMLP system requires a certain amount of installation time (to place and
survey the beacons) and infrastructure (for electrical power and communication). Thus,
the system is not currently appropriate for applications such as military urban reconnaissance (however, see the concept for a deployable DMLP system in the Future Investigation section, below).
Though not suitable for every task, the DMLP system has a unique combination
of strengths that make it a competitive positioning solution for a variety of applications.
The system operates with no line-of-sight restrictions, providing a distinct advantage
amid the obstacles that often clutter the real world. The system provides coverage
throughout a large building with an accuracy of a few centimeters and degrees, meeting
the needs of many mobile robot applications. Any number of sensor units may be in operation, all providing drift-free position estimates in a common reference frame, resulting
in a system well suited for cooperative robotic applications. Finally, the sensor can be
130

miniaturized because it operates on measurements taken at a single point in space (in contrast to systems requiring baselines for attitude determination).
The DMLP system has these particular strengths and limitations because of the
tradeoffs made during its design. For example, the system can penetrate many line-ofsight obstructions because it uses nearly steady state magnetic fields, but at the cost of a
relatively large power consumption.

However, in a cluttered factory or warehouse,

power is readily available while unobstructed lines-of-sight are not. Thus, design tradeoffs were made so that the system would be well suited for the specific task of localization in a cluttered indoor environment, even when those tradeoffs made it less suited for
other applications.
The design of the DMLP system makes it an effective solution across a broad array of applications, from industrial automation (e.g., AGVs, inspection, cleaning, delivery, construction) to home robotics (e.g., security, automation, help for the disabled, entertainment) and object tracking (e.g., personnel, cargo pallets, augmented reality). Each
of these applications can potentially benefit from a reliable positioning system with no
line-of-sight restrictions, absolute measurements, and building-wide range. Further discussion about the applications for a local positioning system, and about the strengths of
the DMLP system, can be found in Chapter 1.
It can be difficult to fully appreciate the utility of a positioning system before it is
installed and actually providing service. For example, the Global Positioning System,
originally designed for military use, has had invaluable impact across a full spectrum of
civilian applications. Similarly, a local positioning system that operates reliably in cluttered environments could have benefits in a variety of unexpected ways. Two brief case
studies follow, providing examples of specific applications where the DMLP system may
prove useful.
A Positioning System For the Home
During the construction of a home, measurements are taken repeatedly to find the
location for every wall, window, pipe, outlet and fixture. A DMLP system combined
with an electronic blueprint of the house could prove valuable during construction efficiency could be improved with a device that can immediately pinpoint its coordinates on
131

the construction site. Recall that the DMLP system maintains its highest levels of accuracy amid light construction materials, such as wood, brick, and concrete.

After

construction, the positioning system remains installed, and the home enjoys the benefits
of increased automation (e.g., mobile robots providing cleaning, yard work,
entertainment, and security services).
A Positioning System For the International Space Station
A DMLP system could be installed on the International Space Station (ISS), providing position and attitude measurements throughout the inside of the station and for
several meters outside the station. A positioning system would benefit mobile robot applications, such as automated inspection [90], saving valuable astronaut time. Other formation flying applications, such as docking a supply ship or extra-vehicular activity in
the Manned Maneuvering Unit (MMU), could be conducted using high level (task-level)
commands rather than low-level control. Similarly, the positioning system could also be
useful in the control of a large robotic arm. Significant performance improvements in
arm maneuvers can be achieved if endpoint sensing is available [91, 92]. This applies not
only to motion of the arm, but also in keeping it still (e.g., providing a steady platform for
an astronaut, attached to the end of the arm, to work).
In addition to motion control, a positioning system could be used to aid communication between the astronauts and engineers on the ground. For example, it may be desirable for ground control to designate a particular location or item in the ISS frame to an
astronaut (e.g., place the probe here). Ground engineers could specify the point in ISS
coordinates, and the astronauts would see the location highlighted through an augmented
reality heads-up display in their helmets.
9.3 Future Investigation

Finally, the potential exists for the DMLP system, through further research, to be
extended, improved, and adapted to increase performance and utility. Several concepts
are presented that may provide direction for future investigation.

132

Figure 9.9. The DMLP system could be rapidly deployed using emergency vehicles.

Deployable DMLP System


The ability to rapidly deploy the DMLP system may be a valuable extension of
the technology. Consider a scenario where several fire engines, each carrying one or
more beacon coils, are arrayed around a building (depicted in Figure 9.9). The coils have
a large diameter and, if the motor is left running, they have access a large amount of
power conceivably tens of kW could be used to create the magnetic signals. Such potent beacons would have a range of over one hundred meters. The locations of the beacons are determined using a global navigation system, such as GPS, and relayed to the
sensor units. Thus, a temporary DMLP system could be rapidly deployed to an area
where positioning services are needed. With this approach, coverage could extend to
much of the building, reaching even to areas, such as inside an elevator, where other
technologies (e.g., RF-based) may lose effectiveness.
Initially, such a system could be used to simply track rescue workers. Eventually,
knowledge of location and gaze direction could be combined with heads-up displays
(HUD) in the helmets of the emergency team. With access to building floor plans, such a
system could prove invaluable for rapid navigation. For example, an augmented reality
path could be displayed on the HUD to guide a rescue worker through a smoke-filled
area. Further, the availability of positioning information may enable increased use of ro133

botics in emergency situations. The deployable DMLP concept has application to law
enforcement and military reconnaissance tasks as well.
Self-Initialization of Deployable DMLP System
The deployable DMLP system, described above, can be extended to provide further utility. In this version, GPS is not needed to establish the beacon locations; instead,
the DMLP system initializes itself. Each vehicle at the scene contains both a beacon and
a sensor unit. Using the DMLP system alone, the vehicles determine their relative positions and attitudes and form a reference frame. Thus, a positioning system could be rapidly deployed inside a building or other location where GPS is unavailable.
Since each sensor is very close to a beacon, dynamic range will be a primary challenge in the implementation of this concept. Each sensor is exposed to a large signal
from the local beacon. This may prevent the sensor from properly measuring the relatively weaker signals from other, more distant beacons. A potential solution is to attempt
to cancel the large local beacon field in the sensors measurement circuitry, leaving only
the signals from other beacons. Interestingly, straps are provided inside the HMC1001
and HMC1002 sensor semiconductors (used in the prototype system refer to Chapter 7)
which can be used to offset an external field.
Miniature Sensor Unit
Decreasing the size of the sensor unit may enhance the utility of the DMLP system. As discussed in previous chapters, the DMLP system takes vector measurements of
the magnetic field. This results in a unique characteristic attitude can be determined by
measurements at one point in space, and baselines between sensors are not required. The
entire DMLP sensor unit (sensing, amplification, and processing) could conceivably be
incorporated into one semiconductor. This research may be particularly relevant to efforts such as micro unmanned aerial vehicles (UAVs) and swarms of miniature robots.

134

Gradient Sensor
In the DMLP system, the sensor unit takes magnetic field measurements at one
location in space and processes them to determine position and attitude. On a larger robot, several sensors (especially miniature ones) could be fixed at various locations. The
data from multiple sensors can then be used to determine gradients in the magnetic field.
This increase in information may enable new approaches to eddy field and iron noise
mitigation.

b
d
s
Figure 9.10. Concept for linear DMLP beacons.

Linear Beacons
The beacons presented in this work use relatively small coils of wire, creating dipole magnetic fields that diminish with the cube of the distance from the beacon (i.e.,
1/r3). A large number of these beacons are distributed throughout a building to form the
positioning system. However, an entirely different beacon design may potentially be
more effective.
Consider an extremely large beacon, as shown in Figure 9.10. The distance between one side of the beacon and the building, d, and the size of the building itself, b,
are both small compared to the length of a side of the beacon, s. Given this geometry,

135

the field inside the building is primarily due to the current flowing through only one side
of the beacon (the side nearest the building) to first order, the other three sides of the
beacon do not significantly contribute. The result is that, in the vicinity of the building,
the magnetic signals from this linear beacon diminish directly with distance (i.e., 1/r,
rather than 1/r3, decay) [93]. Of course, far from the beacon (at a distance of several s
lengths), the fields assume a dipole characteristic and decrease in amplitude with the cube
of the distance.
Only three or four large beacons would be needed to provide a positioning system
throughout the building. Such beacons may be easier to install (buried underground outside the building) and may provide higher efficiency (in terms of coverage volume per
power consumption). A network of many large beacons may be used to provide positioning services to a campus of buildings.
Distributed Metal Detection
Traditional metal detectors carry both a source and a sensor of electromagnetic
fields. Interestingly, the DMLP sensor unit is able to determine some information about
nearby metallic objects (Chapters 4 and 6) with no magnetic field generator on board.
This distributed approach to metal detection, where the field sensors and generators are
not collocated, may be a valuable extension of the DMLP technology.
An example application is landmine cleanup, as depicted in Figure 9.11. A large
central vehicle contains powerful beacon coils (three coils in orthogonal directions is an
effective arrangement), potentially with a range of 100 m (refer to the Deployable DMLP
System concept presented above). A swarm of small robotic vehicles carry out the
search within the coverage area provided by the central vehicle. The beacon fields thus
provide two essential services. First, since the search vehicles only need to carry miniature magnetic sensors and not field generation equipment, they can be extremely agile,
small, and low power. Second, the fields provide a positioning system for the robotic
search vehicles relative to the central vehicle. The positioning system extends even into
rough terrain or heavy foliage.

136

Figure 9.11. Concept for distributed metal detection.


9.4 Summary

To conclude this work, the main points of each of the preceding eight chapters are
briefly summarized, providing an overview of the research. The pros and cons of the
DMLP system are then discussed, examining the applications for which it is well suited
as well as scenarios where it is of limited use. Finally, concepts for future investigation
are proposed to further the development of this positioning system for cluttered environments.

137


138

Appendix A
Examination of an Alternate Signal Architecture
As described in Chapter 3, the architecture of the beacon signals is an important design parameter in the DMLP system. The signal structures used in small, existing magnetic positioning systems (based on TDMA and FDMA approaches) do not extend well to a building-wide application requiring a large number of beacons. Therefore,
in Chapter 3 a new signal architecture (based on pseudorandom codes) is presented which
can support a large number of beacons. This architecture then forms the foundation for
the succeeding chapters (e.g., the noise mitigation technique in Chapter 4 and the prototype system in Chapter 7)
However, there are many other possible architectures for the beacon signals. In this Appendix, an alternate signal architecture is considered which is based on
the TDMA and FDMA approaches but allows the reuse of frequency or time slots. It
performs significantly better than straightforward TDMA and FDMA structures in a system with a large number of beacons, and approaches the performance of the Chapter 3
signal architecture. Although this alternate signal architecture is not currently used in the
DMLP system, it is interesting to examine its performance through simulation.

139

A.1 Alternate Signal Architecture


Briefly, the argument against using a TDMA or FDMA architecture for the

DMLP application can be summarized as follows (a detailed analysis can be found in


Chapter 3). In an FDMA system, as each new beacon is added, it is assigned the next
higher frequency (assuming all the lower frequency slots have been taken). In a TDMA
system, as each new beacon is added, the time slot allotted to each beacon becomes
shorter. In both cases, the overall frequency content of the beacon signals scales with the
number of beacons. Increasing frequency content in the beacon signals causes eddy field
noise to grow. The result is that the accuracy of systems using these structures degrades
rapidly (in the presence of eddy noise) as the number of beacons grows.
However, the straightforward TDMA and FDMA approaches can be modified to
create a more suitable architecture for a large number of beacons by allowing the reuse of
signals in remote neighborhoods. For example, beacon #1 generates a signal with a frequency of 100 Hz and beacon #224 (far from beacon #1) also uses that same frequency.
Similarly, in a TDMA system, two beacons far from each other may share the same time
slot. In this architecture, two beacons sharing the same time or frequency slot must be
located far enough apart that a sensor cannot receive both signals at the same time.
With signal reuse, this alternate signal architecture can support a large
number of beacons.

For example, consider a system with 1000 beacons.

Using a

straightforward TDMA approach, 1000 unique beacon signals are needed. With a 10 Hz
update rate, beacon spectral content in this system extends past 10 kHz (refer to the example in Chapter 3). But if the system uses only 50 unique beacon signals (each one
used by multiple beacons), spectral content (and eddy noise) is 20 times lower.
One potential problem is immediately apparent: if a sensor receives a 100
Hz signal, how can it determine whether the signal originated from beacon #1 or beacon
#224 (or some other beacon using the same signal)? To a limited extent, this challenge
may be answered by considering the combination of beacon signals received. As described in Chapter 2, a sensor inside the coverage volume of the positioning system will
always receive multiple beacon signals. As long as the combination of signals in the vicinity of beacon #1 is different from the combination of signals in the vicinity of beacon
#224, the proper neighborhood can be determined. For example, consider a neighbor140

hood with beacons #1, #2, and #3 transmitting at 100, 200 and 300 Hz, respectively. In a
remote neighborhood, beacons #224, #225, and #226 transmit at 100, 250, and 450 Hz,
respectively. By examining the combination of signals received, the sensor can determine in which of these neighborhoods it is located, and, correspondingly, which beacon
the 100 Hz signal comes from. Note that this is similar to the method used by the DMLP
system for initialization in Chapter 3 (Section 3.5).
However, this approach to discrimination is limited if the number of
unique signals is not large enough, there can be separate locations where the same combination of beacon signals is received. For example, there could be two places in the
building where a sensor receives a 100 Hz signal, a 200 Hz signal, and a 300 Hz signal.
Each such instance is referred to here as a duplication, and it prevents the sensor from
uniquely determining its location. Thus, there is a limitation on the amount of signal reuse that can be achieved the system must use a minimum number of unique signals to
prevent duplications. The simulation in the next section numerically investigates the
number of unique signals required to support a given number of beacons with no duplications. The results are then used to estimate the performance of the alternate signal architecture in the presence of eddy field noise.
A.2 Analysis

A MATLAB simulation is used to investigate a system of beacons operating with the alternate signal architecture. Given the total number of beacons in the system (N ) and the number of unique beacons signals (U ), the number of duplications in the
system (if any) is determined. The simulation applies to both the reuse of time slots in a
TDMA approach and the reuse of frequency slots in an FDMA approach.
The simulation operates as follows. First, N beacons are placed in a lattice
in a three dimensional workspace (Figure A.1). The spacing between beacons is designated s. Four beacons forming a square (with sides of length s) are called a panel. A
cubic volume with sides of length 2s (containing 27 beacons) is referred to as a cube.
Second, each of the N beacons is randomly assigned one of the U available signals. Since only U unique signals are available, some signals are reused if U is less than

N. Signal assignment is subject to the following rule: two beacons may not use the same
141

lattice of beacons

s
panel of beacons

panel midpoint

Z
X

Figure A.1. The beacons in the simulation are arranged in a regular lattice.
Each panel in this lattice has four beacons at its corners.

signal if they are in the same cube. This requirement ensures that a sensor cannot hear
two beacons with the same signal at the same time.
To keep the simulation tractable, only one scenario is examined: the sensor is located at the midpoint of a panel and receives signals from the four beacons on
that panel. Thus, the third step in the simulation is to compile a list of the set of beacon
signals received at each panel midpoint. That is, the simulation steps through every panel
midpoint in the building. At each panel midpoint, the set of four beacon signals is recorded.
Finally, the list of sets is examined for any duplications locations where the sensor receives the same set of four beacon signals.
A.3 Results

For each test, a value was chosen for N (total number of beacons) and for

U (number of unique signals) and results were obtained using the simulation. Ten simulations were performed at each test point. Table A.1 presents results obtained with two
values of N (1000 and 4096 total beacons) and several values of U. The table shows the
average number of duplications found in the 10 runs (and the standard deviation of this
142

Total Beacons (N ): 1000


Unique
Signals (U )
50
60
70
80

Total Beacons (N ): 4096


Unique
Signals (U )
80
100
120
140
160
170

Duplications
13.8 (3.5)
6.1 (2.8)
3.3 (1.4)
2.2 (1.7) *

Duplications
34.9 (6.6)
15.3 (3.3)
7.8 (2.4)
3.3 (0.9)
1.8 (1.0)
2.2 (1.5) *

Table A.1. For various values of N and U, the average number of duplications in
the simulated system is shown. Ten runs were made at each test point, and the
standard deviation of the number of duplications is given in parentheses. The *
designates that at least one of the ten simulations encountered zero duplications.

number in parentheses). The * indicates that at least one of the simulations encountered zero duplications.
Table A.1 indicates that the alternate signal architecture, used in a system with
1000 beacons, requires approximately 80 unique beacon frequencies or time slots to
eliminate duplications. In a system of 4096 beacons, approximately 170 unique signals
are required. Thus, using the simulation, the number of unique signals required to
achieve zero duplications in a system with N beacons can be estimated.
Some indication of the performance of the alternate signal architecture can be
gained directly from Table A.1. For example, in a system with 1000 beacons, a straightforward TDMA approach employs 1000 beacon time slots. A TDMA system where the
beacon signals are reused requires only approximately 80 time slots. The Chapter 3 signal architecture uses codes of length 31 (approximately equivalent to 31 time slots). The
hypothetical optimal architecture discussed at the end of Chapter 3 (Section 3.6) employs
10 time slots. Thus, these signal architectures TDMA, TDMA with reuse, CDMA, hypothetical optimal are listed in order of increasing time slot length, decreasing spectral
content, and increasing performance in the presence of eddy field noise.

143

1.0
0.8
0.6
0.4
0.2
0

position error (m)

TDMA
FDMA
alternate
CDMA
optimal

101

102
number of beacons

103

Figure A.2. Predicted position error (m) versus number of beacons, considering
eddy noise. The alternate signal structure performs significantly better than
straightforward TDMA and FDMA structures, approaching the performance of
the Chapter 3 CDMA signal architecture.

Further insight into the performance of the alternate signal architecture can be obtained by applying the performance analysis used in Chapter 3. Recall from Chapter 3
that the performance analysis steps through various values of N. At each value, the signal
structure is determined, eddy field noise is simulated, and position estimates are generated. The error in the position estimates is then plotted as a function of N, showing how
the accuracy of a system using a given signal structure degrades in the presence of eddy
field noise. Using the results in Table A.1, as well as results obtained by running the
simulation at several other values of N, the Chapter 3 performance analysis can be applied to the alternate signal structure. The end result (Figure A.2) is that a comparison
can be made between the alternate signal architecture and the signal architectures presented in Chapter 3.

144

The results shown in Figure A.2 are specific to a particular beacon geometry
(Figure A.1) and a particular scenario (sensor at a panel midpoint). However, these results suggest that the alternate signal architecture has the potential to perform significantly better than straightforward TDMA or FDMA structures, approaching the performance of the Chapter 3 signal architecture.
A.4 Summary

An alternate signal architecture is presented which is based on straightforward


TDMA and FDMA approaches, but allows the reuse of beacon signals. Although this
alternate signal architecture is not currently used in the DMLP system, it is interesting to
examine its performance. First, a simulation is used to estimate the amount of signal reuse that can be achieved. Then, the analysis from Chapter 3 is used to investigate the
performance of the alternate architecture, as measured by the error in the position estimates, due to eddy noise, for a given number of total beacons in the system. The results
suggest that the alternate signal architecture has the potential to perform significantly better than straightforward TDMA or FDMA structures, approaching the performance of the
Chapter 3 signal architecture.

145


146

Bibliography
[1] Siegel, M., Gunatilake, P., Remote Inspection Technologies for Aircraft Skin Inspection, IEEE Workshop on Emergent Technologies and Virtual Systems for Instrumentation and Measurement, Ontario, Canada, May 1997.
[2] Prassler, E., Ritter, A., Schaeffer, C., Fiorini, P., A Short History of Cleaning Robots, Autonomous Robots, Special Issue on Cleaning and Housekeeping Robots,
Vol. 9, Issue 3, December 2000.
[3] Gambao, E., Balaguer, C., Robotics and Automation in Construction, IEEE Robot-

ics and Automation Magazine, March 2002.


[4] Iborra, A., Pastor, J., Alvarez, B., Fernandez, C., Merono, J., Robots in Radioactive
Environments, IEEE Robotics and Automation Magazine, December 2003.
[5] Rossetti, M. D., Kumar, A. and Felder, R., "Mobile Robot Simulation of Clinical
Laboratory Deliveries," The Proceedings of the 1998 Winter Simulation Conference.
[6] Montemerlo, M., Pineau, J., Roy, N., Thrun, S., Verma, V., Experiences with a
Mobile Robotic Guide for the Elderly, Proceedings of the AAAI National Confer-

ence on Artificial Intelligence, Edmonton, Canada, 2002.


[7] Building 21st Century John Deere Tractors, Modern Materials Handling, March
2001.
147

[8] Everett, H.R., Gage, D.W., "From Laboratory to Warehouse: Security Robots Meet
the Real World," International Journal of Robotics Research, Special Issue on Field
and Service Robotics, Vol. 18, No. 7, July 1999.
[9] Wardell, C. Home Technology, Popular Science, November 2000.
[10] Pfeiffer, E., WhereWare, Technology Review, September 2003.
[11] Gleicher, M., Ferrier, N., Evaluating Video-Based Motion Capture, Proceedings of

Computer Animation 2002, June 2002.


[12] Navab, N., Developing Killer Apps for Industrial Augmented Reality, IEEE Com-

puter Graphics and Applications, May/June 2004.


[13] IEEE

Robotics

&

Automation

Magazine,

http://www.ncsu.edu/IEEE-

RAS/RAM/RAM.html.
[14] The International Journal of Robotics Research, http://www.ijrr.org.
[15] Proceedings of the IEEE 2004 International Conference on Robotics and Automa-

tion (ICRA 2004), http://www.icra2004.org.


[16] Proceedings of the 2004 IEEE/RSJ International Conference on Intelligent Robots

and Systems (IROS 2004), http://www.iros2004.org.


[17] NASA Space Telerobotics Program Cool Robot of the Week website,
http://ranier.hq.nasa.gov/telerobotics_page/coolrobots.html.
[18] Wyeth, G., Brown, B., Robust Adaptive Vision for Robot Soccer, Mechatronics

and Machine Vision in Practice, Research Studies Press, 2000.


[19] Cremean, L., Dunbar, W., van Gogh, D., Hickey, J., Klavins, E., Meltzer, J., Murray,
R., The Caltech Multi-Vehicle Wireless Testbed, Proceedings of the 2002 Confer-

ence on Decision and Control.


[20] Leonard, J., Durrant-Whyte, H., Simultaneous Map Building and Localization for
an Autonomous Mobile Robot, IEEE/RSJ International Workshop on Intelligent

Robots and Systems, Vol. 3, 1991.


[21] Se, S., Lowe, D., Little, J., Local and Global Localization for Mobile Robots using
Visual Landmarks, Proceedings of the IEEE Int. Conf. On Intelligent Robots and

Systems (IROS) 2001.


[22] Ward, A., Jones, A., Hopper, A., A New Location Technique for the Active Office, IEEE Personal Communications, Vol. 4, No. 5, October 1997.
148

[23] Rosenberg, B., Indoor GPS Uses IR Light in Aerospace Metrology Realm, Avia-

tion Week & Space Technology, December 9, 2002.


[24] Parkinson, B., Spilker, J., Axelrad, P., Enge, P., Global Positioning System: Theory

and Applications Volume II, American Institute of Aeronautics and Astronautics,


Inc., 1996.
[25] Elkaim, G., OConnor, M., Bell, T., Parkinson, B., System Identification and Robust Control of a Farm Vehicle Using CDGPS, Proceedings of the Institute of

Navigations GPS conference (ION GPS), September 1997.


[26] Drane, C., Macnaughtan, M., Scott, C., Positioning GSM Telephones, IEEE
Communications Magazine, Vol. 36, No. 4, April 1998.
[27] Rabinowitz, M., Spilker, J., A New Positioning System Using Television Synchronization

Signals,

Rosum

Corporation

white

paper,

available

at

http://www.rosum.com/rosum_whitepapers.html.
[28] Kayton, M., Fried, W., Avionics Navigation Systems, Second Edition, John Wiley &
Sons, Inc., 1997, pp. 138-154.
[29] Hall, T., Counselman, C., Misra, P., Radiolocation Using AM Broadcast Signals:
Positioning Performance, proceedings of the Institute of Navigations GPS confer-

ence (ION GPS), September 2002.


[30] Kayton, M., Fried, W., Avionics Navigation Systems, Second Edition, John Wiley &
Sons, Inc., 1997, pp. 283-312.
[31] Fontana, R., Richley, E., Barney, J., Commercialization of an Ultra Wideband Precision Asset Location System, 2003 IEEE Conference on Ultra Wideband Systems

and Technologies, November 2003.


[32] Ladd, A., Bekris, K., Rudys, A., Marceau, G., Kavraki, L., Wallach, D., RoboticsBased Location Sensing using Wireless Ethernet, Proceedings of the Eighth ACM

International Conference on Mobile Computing and Networking (MOBICOM), September 2002.


[33] Inan, U., Inan, A., Electromagnetic Fundamentals and Applications, Addison
Wesley Longman, 1997, pp. 1-103.
[34] Griffiths, D., Introduction to Electrodynamics, Prentice Hall, 1989, pp. 340-395.

149

[35] Everett, H., Sensors for Mobile Robots: Theory and Application, A.K. Peters, Ltd.,
1995, pp. 47-48.
[36] Petovello, M., Cannon, M., Lachapelle, G., Quantifying Improvements from the
Integration of GPS and a Tactical Grade INS in High Accuracy Navigation Applications, Proceedings of the Institute of Navigation 2003 National Technical Meeting
(ION NTM), January 2003.
[37] Borenstein, J., Feng, L., Measurement and Correction of Systematic Odometry Errors in Mobile Robots, IEEE Transactions in Robotics and Automation, Vol. 12,
No. 6, December 1996.
[38] Ascension Technology Corporation,

Burlington,

VT,

http://www.ascension-

tech.com.
[39] Polhemus, Colchester, VT, http://www.polhemus.com.
[40] Everett, H., Sensors for Mobile Robots: Theory and Application, A.K. Peters, Ltd.,
1995.
[41] Borenstein, J., Everett, H., Feng, L., Wehe, D., Mobile Robot Positioning Sensors
and Techniques, Journal of Robotic Systems, Special Issue on Mobile Robots, Vol.
14, No. 4, 1997.
[42] Hightower, J., Borriello, G., Location Systems for Ubiquitous Computing, Com-

puter, Vol. 34, No. 8, IEEE Computer Society Press, August 2001.
[43] Werb, J., Lanzl, C., Designing a Positioning System for Finding Things and People
Indoors, IEEE Spectrum, September 1998.
[44] Everett, H., Sensors for Mobile Robots: Theory and Application, A.K. Peters, Ltd.,
1995, pp. 305-326.
[45] Luo, M., Akos, D., Pullen, S., Enge, P., Erlandson, B., Frodge, S., Interference to
GPS from UWB Transmitters, proceedings of the Institute of Navigations GPS
conference (ION GPS), September 2000.
[46] Code of Federal Regulations, Title 47 (Telecommunications), Chapter I (Federal
Communications Commission), Part 15 (Radio Frequency Devices), Section 15.3
Definitions (47CFR15.3) defines RF energy to be contained in the spectrum between 9 kHz and 3,000,000 MHz.

150

[47] Prigge, E., How, J., Signal Architecture for a Distributed Magnetic Local Positioning System, Proceedings of the First IEEE International Conference on Sensors
(Sensors 2002), June 2002.
[48] Prigge, E., How, J., An Indoor Absolute Positioning System with No Line of Sight
Restrictions and Building-Wide Coverage, Proceedings of the IEEE International

Conference on Robotics & Automation (ICRA 2000), April 2000.


[49] Asimov, I., Biographical Encyclopedia of Science and Technology, Doubleday,
1982.
[50] Goldhaber, A., Nieto, M., Terrestrial and Extraterrestrial Limits on the Photon
Mass, Review of Modern Physics, Vol. 43, 1971.
[51] Giancoli, D., Physics for Scientists and Engineers with Modern Physics, Second Edi-

tion, Prentice Hall, 1989.


[52] D. Griffiths, Introduction to Electrodynamics (Second Edition), Prentice Hall, 1989.
[53] Inan, U., Inan, A., Electromagnetic Fundamentals and Applications, Addison
Wesley Longman, 1997.
[54] Ibid, p. 61.
[55] Ibid, p. 93.
[56] Ibid, p. 84.
[57] Ibid, p. 87.
[58] Ibid, p. 95.
[59] Ibid, p. 7.
[60] Blood, E., Device for Quantitatively Measuring the Relative Position and Orientation of Two Bodies in the Presence of Metals Utilizing Direct Current Magnetic
Fields, United States Patent 4,945,305, July 1990.
[61] Kuipers, J., Object Tracking and Orientation Determination Means, System and
Process, United States Patent 3,868,565, February 1975.
[62] R. Peterson, R. Ziemer, D. Borth, Introduction to Spread Spectrum Communication,
Prentice Hall, 1995.
[63] Lupas, R., Verdu, S., Linear Multiuser Detectors for Synchronous Code Division
Multiple Access Channels, IEEE Transactions on Information Theory, January
1989.
151

[64] Kay, S., Fundamentals of Statistical Signal Processing: Estimation Theory, Prentice
Hall, 1993.
[65] Parkinson, B., Spilker, J., Axelrad, P., Enge, P., Global Positioning System: Theory

and Applications Volume I, American Institute of Aeronautics and Astronautics, Inc.,


1996.
[66] Corbyn, J., Pulse Induction Metal Detector, Wireless World, March, 1980.
[67] Das, Y., McFee, J., Chesney, R., Time Domain Response of a Sphere in the Field of
a Coil: Theory and Experiment, IEEE Transactions on Geoscience and Remote

Sensing, Vol. GE-22, No. 4, July 1984.


[68] Raab, F., Blood, E., Steiner, T., Jones, H., Magnetic Position and Orientation
Tracking System, IEEE Transactions on Aerospace and Electronic Systems, September 1979.
[69] Raab, F., Remote Object Position Locater, United States Patent 4,054,881, October
1977.
[70] Kuipers, J., SPASYN An Electromagnetic Relative Position and Orientation
Tracking System, IEEE Transactions on Instrumentation and Measurement, December 1980.
[71] Kuipers, J., Tracking and Determining Orientation of Object Using Coordinate
Transformation Means, System and Process, United States Patent 3,983,474, September 1976.
[72] Kalmus, H., A New Guiding and Tracking System, IRE Transactions on Aero-

space and Navigational Electronics, Vol. 9, March 1962.


[73] Olsen, R., Farstad, A., Electromagnetic Direction Finding Experiments for Location
of Trapped Miners, IEEE Transactions on Geoscience Electronics, October 1973.
[74] Wait, J., Electromagnetic Induction Technique for Locating a Buried Source, IEEE

Transactions on Geoscience Electronics, 1971.


[75] W. Press, S. Teukolsky, W. Vetterling, B. Flannery, Numerical Recipes in C, the Art

of Scientific Computing, Second Edition, Cambridge University Press, 1992, pp. 379383.
[76] Ibid, pp. 383-393.
[77] Ibid, p. 380.
152

[78] G. Wahba, A Least Squares Estimate of Satellite Attitude, SIAM Review, Vol. 7,
No. 3, p. 409, July 1965.
[79] J. Farrell, J. Stuelpnagel, A Least Squares Estimate of Satellite Attitude, SIAM Re-

view, Vol. 8, No. 3, p. 384, July 1966.


[80] F. Markley, Attitude Determination using Vector Observations and the Singular
Value Decomposition, Journal of the Astronautical Sciences, Vol. 36, No. 3, JulySeptember 1988.
[81] F. Markley, Attitude Determination Using Vector Observations: A Fast Optimal
Matrix Algorithm, Journal of the Astronautical Sciences, Vol. 41, No. 2, April-June
1993.
[82] M. Shuster, S. Oh, Three-Axis Attitude Determination from Vector Observations,

Journal of Guidance and Control, January-February 1981.


[83] Livingston, M., State, A., Magnetic Tracker Calibration for Improved Augmented
Reality Registration, Presence, Vol. 6, No. 5, 1997.
[84] Birkfellner, W., Watzinger, F., Wanschitz, F., Ewers, R., Bergmann, H., Calibration
of Tracking Systems in a Surgical Environment, IEEE Transactions on Medical

Imaging, Vol. 17, No. 5, October 1998.


[85] Caruso, M., Bratland, T., Smith, C., Schneider, R., A New Perspective on Magnetic
Field Sensing, Sensors, December 1998.
[86] W. Press, S. Teukolsky, W. Vetterling, B. Flannery, Numerical Recipes in C, the Art

of Scientific Computing, Second Edition, Cambridge University Press, 1992.


[87] P. Horowitz and W. Hill, The Art of Electronics (Second Edition), Cambridge University Press, 1989, pp. 430-431.
[88] Parkinson, B., Spilker, J., Axelrad, P., Enge, P., Global Positioning System: Theory

and Applications Volume I, American Institute of Aeronautics and Astronautics, Inc.,


1996, pp. 474-477.
[89] Warrior, J., McHenry, E., McGee, K., They Know Where You Are, IEEE Spec-

trum, July 2003.


[90] J. Wagenknecht, S. Fredrickson, T. Manning, and B. Jones, "Design, Development
and Testing of the Miniature Autonomous Extravehicular Robotic Camera (Mini

153

AERCam) Guidance, Navigation, and Control System," 26th Annual American As-

tronautical Society Guidance and Control Conference, February 2003.


[91] Ballhaus, W., Experiments in High-Performance Control of a Multi-Link Flexible
Manipulator with a Mini-Manipulator, PhD thesis, Stanford University, 1994.
[92] Ballhaus, W., Rock, S., End-Point Control of a Two-Link Flexible Robotic Manipulator with a Mini-Manipulator: Initial Experiments, Proceedings of the American

Control Conference, June 1992.


[93] D. Griffiths, Introduction to Electrodynamics (Second Edition), Prentice Hall, 1989,
p. 209.

154

You might also like