GPS or the Global Positioning System was originally put into service by the United States military for use as a guidance system for the the branches of the U.S. military. A few years after it was up and running it was made available to civilians and the use of the system was released to the public. The complexity of GPS is hard to explain without going into advanced math and physics. GPS works on the principal of trianglization. By haveing 3 different vectors or points to measure a single point from, you can determine the estimated location the point. The math involved is applied to GPS to calculate the location of an object by using precise timing. Each GPS sat sends out a constant 30 second telemetry message that consists of it's own clock time, position in the atmosphere and other data.
When a GPS unit is powered on, it initializes it's self and begins to check it's catalog for the most visble sat. The built in catalog is a listing of dates and times, each date and time tells the GPS what satellites is SHOULD be able to see at any particular time. It then takes these sats and places them in a cue. Usually on the unit's LCD you will see a listing of the sats along the bottom of the screen. As the unit sees the sats it will begin to pop up a signal strength meter to show how well it sees the sat. As it begins to see the sat it starts to receive and decode the 30 second telemetry message. One Garmin units, it first shows a gray bar and when the unit has received the message for that particular sat, it then darkens the signal bar to show that it has completely downloaded the message and decoded it. The GPS must receive at least three of these in order to get a accurate position or "fix". If altitude is required, then a fourth sat is required to make that calculation. Once the unit has a fix it will then begin to show the current longitude and latitude of the reciever. Most good units will update the position the screen just about every second. Also, once it has a fix the GPS should also start spitting out complete NMEA sentences from the serial port. These are used mainly for amateur radio and direction finding applications. These sentences can also be fed into a computer's serial port for real time mapping and tracking. I do this with my laptop in my truck. There are many NMEA strings that can be sent. The most common are $GPGGA and $GPRMC. These two sentences provide the most information at once such as position, elevation, heading and speed.
There are many companies that manufacture GPS units. One of my favorite is Garmin, they have been around the longest and even produced the first GPS unit to go in Desert Storm and be used by U.S. Troops. Magellan also produces nice in-expensive units, although some do not have a serial out port and do not have most of the functions of a Garmin. Delorme also produces units. They are mainly for the mapping software they produce. These units are small and usually come in a yellow water-tight case. They are good for trackers that need to be tough and don't require an LCD display. I bought my Tripmate from Delorme's web site for $50. It's a reconditioned model they sell without software.
Here is the GPRMC string broken down into it's parts.
I currently have 4 GPS units. Three are Garmin units. I tend to sway in the Garmin direction since a Garmin was the first GPS I ever had, plus I just like their quality and accuracy. My other GPS is a refurbished Delorme Tripmate. It's a small unit mounted in a plastic yellow case. The unit runs on 4 AA batteries, but I took out the battery holder and replaced it with a 7805 voltage regulator. I also mounted a coaxial power socket so I could run the unit on my trucks lighter socket. No batteries, less money spent, happier me.
Garmin GPS is located at www.garmin.com.
Deluo GPS is located at www.deluo.com.
Delorme can be located at www.delorme.com.
Garmin 12 (below)
Garmin GPS III+ (below)
Most GPS units take batteries and they suck them dry real quick. The Tripmate is no different. It uses 4 AA batteries for power. If you take off the bottom of the unit there is a 4 AA battery holder stuck to the bottom half and it has power leads that run to the top half and connected by a small modular plug. I wanted a way to run this unit off of my truck's lighter socket. So, first I had to figure what voltage I needed. Hmm, 4 AA batteries, 1.5 VDC a piece, that's 6 VDC total. Not bad, can I do it with a 7805 5 V regulator? Let's try.
Below is the top half of the Tripmate laying upside-down and I have already removed the metal RF shield plate. This is the actual GPS module.
Below is a diagram of where the pins will be once you open up the Tripmate. The Pins on the left (1,2 and 3) are for power and ground. The 5 pins on the bottom edge are for data and the self-start mod. The wire soldered to the five pins should be (left to right) Yellow, Black, Brown, Red and Orange. There is a chance that they may not be these colors in your unit.
The mod is simple. First, cut the wires from solder pads 3 and 4, should be Brown and Red. Now, solder a jumper in-between pads 2 and 3 (Black and Brown). Then you will see a small trace comming from pin 1 of the power connector. This trace must be jumpered to pin 4 (Red) of the data solder pads. Once you add the power supply to the unit, the "ASTRAL" should be looped back into the GPS's serial port and should self-start it'self.
Below, I have kinda jumped ahead. I drilled a hole in the RF shield plate and used a small screw and a nut to bolt the 7805 to the plate. The plate will serve as a heatsink, to draw heat away from the 7805 and keep it cool. I also used the power lead that came from the batttery holder, since it already had the modular plug on it. I also soldered on some scrap power lead for the power in from the power jack. I went ahead and put shrink wrap tubing on the whole thing to keep it insulated and from shorting on the RF plate.
Below is a pic of the power jack installed in the serial cable end of the unit. I drilled a hole in the bottom tray and just trimmed till it fit right.
Below is the everything connected and ready to go. I replaced the RF shield plate and soldered the power-in leads to the power jack. I plugged the modular plug back into the power in on the GPS board and now it's ready to be folded back together and put into operation.
Below is a screen shot of the Tripmate feeding NMEA strings to Hyperterminal. I also pointed out the ASTRAL command that the Tripmate requires to "self-start". Usually the unit is looking for this proprietary command from the Delorme software, but, the unit itself actually produces it on-board. By feeding this back into the Serial-In on the GPS's port. The unit can be forced to self start without having a computer connected running Delorme software.
The 5 VDC turned out to work really well, aparently the the Tripmate is not very picky about the volatages and it works very well and is very stable at the 5 VDC level.
I have some cables that I put together for data and power. One will even allow for a Garmin to be connected to a Handspring Visor, since the Visor uses TTL, the cable allows for the TTL to be converted to RS-232.
I also have a basic power/data cable for the mobile application with a serial-based palm or a laptop computer.
Below is the schematic for a cable to hook a GPS to a Handspring Visor. I specified for a round Garmin connector pinout, but you can easily adapt it for any other GPS with ground and data-out.
The trick with GPS's and Visors is, the Visor is looking for the +5 VDC serial voltage to permit hardware handshaking. The GPS will NOT provide this and that is why a regular serial to TLL cable will now work. In order to fix this instead of trying to pull the +5 VDC from the GPS, you just add in a seperate source of power. In this case a 7805 being fed by somthing between +5 and +12 VDC. The regulator can handle up to +25 VDC but there is no reason to worry about that since you are trying to keep it light and portable. I use a 9 VDC battery to do the job. By feeding the +5 VDC to the MAX chip, you can permit handshaking and the Visor should start seeing data from the GPS like a normal computer would on it's com port.
Custom Mount for Garmin Map176/176C
Windshield Mounting a Deluo GPS