GPS Tracking Tutorial


GPS is definitely one of the most handy sensors you can add to your project - it can provide you with a whole host of data including things like location, altitude, speed, heading, and more. We already have a GPS Buying Guide that will help you decide which unit is good for you as you sort through our GPS category, but you might want a little more.

For a more in-depth look at the GPS units we offer, check out Engineer Aaron's "GPS Tracking Comparison." This tutorial shows the type of readings you can expect from your GPS and goes through the pros and cons of each unit.

So whether you are looking to build an autonomous robot or create a hand-held GPS unit for geocaching adventures, this tutorial can help you better understand GPS and how to implement it into your next project!


Comments 18 comments

  • Nice tutorial.
    A couple of things to consider while comparing multiple GPS sensors like this are that most GPS antennas really like to operate over a ground plane, and can be affected by other GPS modules located nearby.
    The receive signals that the GPS receivers have to work with are incredibly low, around -120 dBm when the satellite is directly overhead. It is possible that digital noise from adjacent modules can interfere with the proper operation of a particular module.
    It would be interesting to see the data obtained by walking the same path multiple times with only one sensor module being used at a time above a ground plane to see if a performance improvement is attainable.

    • Thank you for your comment! I was wondering if interference would be an issue as well, but the tests seem to be close to expected, especially outside of the ‘urban canyon’. Here are some tests I did that are not published.
      http://www.sparkfun.com/tutorial/GPSTracking/gpstracking_testtracks.zip
      Some of the tracks were tested independently.
      You are correct that interference from nearby electronics needs to be taken into consideration, but for the purpose of this tutorial, as a general comparison between very different GPS modules, the interference is negligible for our purpose or it least it seems that way in the results.
      That being said, testing each module independently with a finely tuned ground plane under each antenna would for sure improve the accuracy, but we were really not aiming for that with these tests.
      Thanks for your input, it is much appreciated!

  • “So whether you looking to build an autonomous robot or create a hand-held GPS unit for geocaching adventures"
    Been planing to combine those for a while. I have full blue prints, and I am working on the software end before i buy all the parts.

    • hmm..guess this means ive wasted the the ast two years on the same project…wish you the best of luck! maybe yours will turn out better than mine has!

      • Helps that there are at least 20 engineers in my family of varying fields. If i get to stuck, i can always turn to them.
        The plan is to give it a 200 watt 430.025 - 431.500 MHZ radio, and control it manually once it gets close.

  • I entered a robot in the AVC 2010 (see http://www.bluerwhite.org/tag/robot/), and my experience with the GPS is consistent with these findings.
    I used the latitude and longitude from the GPS, a LS20031, for position, and a magnetic compass for heading. I did not use any other sensors for position or heading. I found that the GPS did not provide useful heading at the robot’s slow speeds. I found that the GPS position was usually pretty good but subject to noticeable drift between runs and days. I had occasional loss of GPS fix.
    Overall, I was pleased with the GPS, but I don’t believe the GPS alone is adequate for the fairly precise navigation necessary for the AVC. Next year, I’ll have additional sensors to complement the GPS.

  • I have been flying a lassen iq gps in a few rockets this spring.
    The rocket last rocket just went 32,363ft at 1,300+mph
    http://www.youtube.com/watch?v=I701JpONHmk
    My problem is with the altitude and velocity the lassen does not catch up until the rocket is already comming down.
    This has also held true for lower and slower flights to 500ft.
    What is out there that would work better? I understand that nothing may not be perfect but maybe something better?

    • We use a Garmin GPS-18x series in our high altitude balloon tests. The limiters are for speed OR altitude in most units, the GPS-18x, however has an AND in there. You have to be going faster than some rather large number, and i think the limit on altitude is 60k Feet. They are relatively cheap (~$90) and output NMEA over serial.

    • You will be hard pressed to find something that keeps up with your rocket. Most consumer GPS modules have 4G limits in their filtering firmware, so your acceleration above that is considered noise, and filtered out. Additionally, your top speed may be above GPS receivers can track using a standard correlation search. Your best bet is to pick up one of the GPS RF front ends like
      SiGe GN3S Sampler v2
      and implement your own correlation software to post process your logged data.

  • Nice tut. Is there going to be an AVC in 2011? I’m building mine now so this was helpful.

    • Although we haven’t made any official AVC 2011 announcement (and this isn’t one either), everybody around the office is assuming that AVC will continue every year into the indefinite future. It’s just too much fun not to do it!
      Trevor

  • GPS modules should work better at speed because they can use the Doppler effect as another variable to feed into their filters. This should also be taken into account when a gps module report velocity… and would account for why you see gps modules list a velocity accuracy of say… 0.1m/s but a minimum position accuracy of say.. 2.5m!
    I have concerns about the findings of the test too.. noworries raises a good point about the antennas being so close together which is something I learned about unintentionally :D
    Something else I may have overlooked, but doesn’t seemed to be mentioned is what settings were used for each GPS module. At least for the venus chipset you can setup position pinning as well as set how the gps module will be used (in an air vehicle, car, on a person). By default, the application is car without position pinning and that will give you jaggedy results like you have observed if you walk around with it.
    Something tells me if you set those up to more accurately account for how the module is being used, the results will be a little better for some of the modules.

    • macpod:
      </commerce//comment.php?edit=14875&callback=news.php?id=380>
      what settings were used for each GPS module. At least for the venus chipset you can setup position pinning as well as set how the gps module will be used (in an air vehicle, car, on a person). By default, the application is car without position pinning and that will give you jaggedy results like you have observed if you walk around with it.
      The SUP500 was left in its default state other than changing it to 10Hz update, so you are correct the jaggedy results could be from not setting the position pinning.
      Thanks for pointing that out!

    • macpod:

      I have concerns about the findings of the test too.. noworries raises a good point about the antennas being so close together which is something I learned about unintentionally :D

      Are referring to noise caused by the re-radiation of the GPS signal or ‘other’ electronic noise?

    • Oh, just a random comment on accuracy too. What you see advertised is a gps module’s 95th percentile accuracy.. meaning if they state the module has a 5m accuracy.. that means 95% of the time the readings will be within 5m of where you are standing.. but that last 5% of the time could be way off.

      • I wish. Most data sheets for receivers will say 2.5m accuracy. This is CEP, which usually means 50% probability it will be within said radius.

        • It isn’t uncommon to find either, but the vast majority will be one of the two (CEP because it gives a better number and CEP is a standard way of measuring, or 95th percentile if they follow the actual GPS specification for reporting accuracy).

          • But CEP 2.5m sounds so much better than R95 5m!
            Also, isn’t a velocity of 0 m/s a valid observation for the Kalman filter? I have no hard evidence, but I would conjecture that a faster moving GPS only appears smoother and more accurate.


This Week

This Month

Heartbleed

Happy Arduino Day!