become impractical. In a larger arena, you really need
something that works on a much larger scale.
What wasn’t available to the general public 20 years
ago has now become widely available and extremely
accessible to the robotics hobbyist. GPS — or the Global
Positioning System — can provide larger vehicles and robots
a new method of navigation. GPS receivers are integrated
into cell-phones, vehicles, and even camcorders now. For
the hobbyist, GPS has become widely available from sources
such as Parallax, Inc. ( www.parallax.com), for well under
$100 (see Figure 2). Using GPS, a robot, boat, or plane can
easily travel great distances autonomously with very little
How Does It Work?
GPS works by calculating a position based on signals
received from a network of satellites in orbit around the
earth. These satellites send their time of transmission,
Trilateration is a method for determining the intersections
of three sphere surfaces given the centers and radii of the
The plane, z=0, showing the 3 sphere centers, P1, P2, and
P3; their x,y coordinates; and the three sphere radii, r1, r2,
and r3. The two intersections of the three sphere surfaces
are directly in front and directly behind the point
designated intersections in the z=0 plane.
precise orbital information, and the signal strength and
health of the satellites. The GPS receiver uses this
information to calculate its position on the globe using
trilateration. Like dead reckoning, GPS is prone to errors
and a small error can cause a big change. At least three
satellites are required for the GPS to have valid data with
which to calculate positions; more satellites mean more
Bringing It All
Down To Earth
If you really want to understand trilateration, there’s an
excellent article on Wikipedia that explains how GPS
receivers do this. For our purposes, we will be dealing with
a flat map and a much smaller area in terms of navigation.
The GPS receiver will provide us with several key pieces of
information such as latitude, longitude, altitude, and time.
Most also provide heading and speed, however, I
recommend only using the latitude, longitude, and time.
Altitude on most GPS receivers is not nearly as accurate or
consistent as position. Heading and speed are derived from
changes in position and are also not very reliable. Also,
since you have to be moving to get either value they’re
useless when not moving.
Adding a compass
module such as the
HMC6352 to your
GPS receiver allows
you to get a more
accurate heading. This
compass (see Figure 3)
can be obtained from
Parallax, as well. The first
steps in fusing our data
SERVO 03.2010 55