Subscribe Now Subscribe Today
Research Article

A Comparative Study of Positioning Errors of a Low Cost GPS Receiver Caused by Old and New Satellites Generations

M.H. Refan and H. Palangi
Facebook Twitter Digg Reddit Linkedin StumbleUpon E-mail

The raw position data of a low cost GPS engine was collected and saved for a couple of weeks. In order to separate the database according to satellites generation, a number of algorithms were designed and several software packages developed accordingly. We also designed and implemented some filters to make equivalent conditions and have a reliable error comparison based on satellite generations. Finally we developed a software package to calculate RMS errors of each file. Result was that errors of new GPS generations are less than that of old generations with a ratio of 1 to 1.6.

Related Articles in ASCI
Similar Articles in this Journal
Search in Google Scholar
View Citation
Report Citation

  How to cite this article:

M.H. Refan and H. Palangi, 2008. A Comparative Study of Positioning Errors of a Low Cost GPS Receiver Caused by Old and New Satellites Generations. Journal of Applied Sciences, 8: 702-706.

DOI: 10.3923/jas.2008.702.706



Global Positioning System (GPS) is a satellite based positioning system which was rapidly grown in two last decades. It can cover all around the world by usage of satellite signals in order to measure accurate time, altitude, longitude and latitude in every desirable point on earth, sea or air as well as space (Parkinson and Spilker, 1996; Hofmann-Wellenhof et al., 2001). Satellite positioning idea was developed in early 1960s and it was in operation in 1978. In 1995, GPS became a fully operational positioning system. At the beginning, it was used for military purposes. But its commercial applications increased very fast in a way that nowadays commercial receivers take a great part in its market (Parkinson and Spilker, 1996; Hofmann-Wellenhof et al., 2001).

During past several years, accuracy improving or error decreasing in GPS time and positioning measurement have been greatly considered as the most important topic for researches. Significant sources of these errors are ionospheric and tropospheric effects, satellite clock drift, satellite orbital position errors, signal multi path and noise generated within the receiver itself. Table 1 shows the average errors introduced in GPS satellites, communication media as well as receiver itself.

Because of the above mentioned error sources, all GPS receivers have a certain amount of errors, hence error reduction in GPS system is one of the main branches of researches in this field.

In this study, we have investigated and compared position errors for old and new generation of GPS satellites.

Table 1: The average errors introduced per satellite of GPS system (Wu and Melbourne, 1993; Refan and Mohammadi, 2001)


The current GPS modernization program promises to deliver both the civil and military GPS communities numerous improvements to the core GPS services that have already enabled so many positioning, navigation and timing applications in many unexpected ways (McDonald and Hegarty, 2000). An overview of the schedule for the current GPS modernization program is shown in Fig. 1 (Fontana and Latterman, 2000).

As shown in Fig. 1 GPS modernization schedule is in two segments, space segment and control segment.

Space segment: In 1989, Lockheed-Martin (at that time, the General Electric Astro Space Division) was awarded a contract to build 21 replenishment GPS satellites (Block IIR). The current GPS program includes retrofitting the last 12 IIR satellites (referred to as IIR Mod in Fig. 1) to include the capability to broadcast the new military signal on L1 and L2 and also a C/A-code on L2. In 1990, Boeing North America was awarded a contract to build up to 33 follow-on GPS satellites (Block IIF). The initial contract provided for a purchase of 6 satellites, with options for the remaining 27. In accordance with the current GPS program, the Department of Defence will only exercise options for a total purchase of 12 satellites. A contract change will be negotiated to modify these 12 IIF satellites to include the new military (M-code) signals on L1 and L2 (transmitted by an Earth-coverage antenna), C/A on L2 and the third GPS civil signal at 1176.45 MHZ (L5). The modified IIFs are referred to as IIF lites. Beyond the IIR and IIF spacecrafts, the current GPS program calls for the procurement of GPS III satellites, which will include all capabilities discussed so far for the Block IIFs and additionally will increase the power levels of the M-code signals to increase their anti-jam capability. As shown in Fig. 1, the nominal schedule would result in an Initial Operating Capability (IOC) for the Earth-coverage M-code and L2 C/A code in 2008 where IOC is defined as 18 operating satellites with the new capabilities.

Fig. 1: GPS modernization schedule

Full Operational Capability (FOC) for these new signals will nominally occur in 2010, where FOC is defined as 24 satellites. IOC and FOC for L5 will nominally occur in 2012 and 2014, respectively. High power M-code will reach IOC and FOC in 2016 and 2017, respectively. It should be noted that these nominal IOC and FOC dates are based on IIF spacecraft specified Mean Mission Durations (MMDs) for the Block IIR and Block IIFs. Actual IOCs and FOCs may occur much later if experienced MMDs exceed those specified and used in the current planning process. This occurrence is very likely, as has already been experienced with the growth of the MMDs for the Block II/IIA spacecrafts.

Control segment: The GPS Operational Control Segment (OCS) determines the quality of the spacecraft orbital elements and timing data. These are periodically uploaded to the GPS spacecrafts memories and then continually broadcast to the users in the GPS data message. This spacecraft position and other data directly affect user accuracy. Moreover, the data is influenced by the update rate (or latency) of the uploads to the GPS Space Vehicles (SVs) since the data degrades with time relative to the true SV position. Recent improvements in the OCS have been reported to provide Root-Mean-Square (RMS) Signal-In Space Range Errors (SISREs) for Precise Positioning Service (PPS) users at the 1.5 m level or better. As shown in Fig. 1, the GPS modernization program includes an incremental set of improvements to the OCS, to be led by a single prime contractor under the Single Prime Initiative (SPI). Each incremental step adds a new capability, such as will be necessary to operate each new class of satellite (e.g., IIR-M, IIF and III). The planned addition of the six (or more) ground stations of the National Imagery and Mapping Agency (NIMA) to the GPS tracking network will substantially improve the quality and timeliness of the GPS tracking measurements of the OCS as well as the related computed parameters. More frequent uploads to the GPS spacecraft are also planned. In the 2000-2010 period, it is expected that the near term sub-meter ephemeris accuracy for the GPS tracking network will improve to the decimeter range (McDonald and Hegarty, 2000).


To achieve information of position and implementing an operational system, a low cost GPS engine manufactured by Rockwell Company was used. The Rockwell Micro Tracker Low Power (MLP) receiver provides the following significant features (Microtracker LP Operations Manual, 1994; Microtracker LP Designer`s Guide, 1995):

Fig. 2: Hardware structure

Five parallel satellite tracking channels
Tracks and uses measurements from up to nine satellites
Supports true NMEA-0183 data protocol with basic and extended NMEA default messages
Direct, differential RTCM SC-104 data capability dramatically improves positioning accuracy from 100-5 m or less (in both Rockwell binary and NMEA host modes)
Designed for passive or active antennas for lowest system cost
Maximum navigation accuracy achievable with Standard Positioning Service (SPS)
Rapid adaptation to obscuration using ephemeris collection for all visible satellites via a designed utility channel
Maximum operational flexibility via user commands
Ability to accept externally supplied initialization data
User selectable satellites
Original Equipment Manufacturer (OEM) product development fully supported through applications engineering

To study the function of receiver, the GPS receiver was installed and set up in a fixed position. In order to setup the receiver, data collection and connecting to microprocessor, a hardware was designed and implemented Fig. 2.

The GPS receiver, MLP, calculates a lot of information by its internal microprocessor and delivers the information on its serial communication ports. According to Rockwell International Corporation standard, the information is arranged to several binary messages named massages No. 101-117. One famous and general purpose of these messages is message No. 103, which is available on the first output port as default, when we configure the receiver in binary mode. The message No. 103 is containing of very useful detailed information of positioning and time (Microtracker LP Operations Manual, 1994; Microtracker LP Designer`s Guide, 1995).

The output data were collected and saved in separate files for a few weeks by a Pentium 4 Computer with 2.8 GHz clock speed and 504 MB of RAM.


We created a database containing collected data in a few weeks to compare the error of various generations. At first, we needed to divide database to smaller databases based on satellite generations.

Separating database based on satellite generations: To achieve this data separation, we used data of channels in message 103 of the receiver. The word numbers 47, 49, 51, 53 and 55 in this message which are called Channel i Measurement State were used to find out which satellites are in use, where i points to channel number and is equal to 1, 2, 3, 4, or 5, respectively. As we know, each satellite has a unique identification number in the range of 1 to 32 which is known as Pseudorandom Noise (PRN). Table 2 provides useful information regard to satellite generations which was used to separate and select the desired satellites in this research.

It should be noted that GPS satellite SVN15 (PRN15) was decommissioned from active service on JDAY 073 (14 March 2007), but the PRN15 is still available for future satellite vehicles. On April 2nd, 2007, SVN23 was transmitting L-Band utilizing PRN32. At L-Band activation, SVN23/PRN32 will be unusable until further notice. Additionally, no broadcast almanacs will include SVN23/PRN32 (GPS Constellation Active Nanu Status, 2007).

From this table we conclude that there are 30 operational satellites, 15 Block IIA satellites, 12 Block IIR satellites and 3 Block IIR-M satellites. Based on this information, we should define a criterion to separate our database based on satellite generations. As mentioned before, our receiver could track five PRNs simultaneously (Because it has 5 channels); hence our received position in every second was result of these five PRNs. Our criterion was very simple, in every second if four or five of these PRNs were from same generation, data of that second will be assigned as data of that generation. We did not consider three PRNs from the same generation and two PRNs from the other one, because those data would decrease our accuracy in generations separating. However, because there are only three satellites from IIR- M generation, we assigned PRNs of this generation as IIR data. Therefore, we separated our database to two databases, Old generation database (IIA) and New generation database (IIR and IIR-M). For example a file named a2 was separated to two files, IIA_a2 and IIR_a2. Name of software designed to separate database based on above criterion is GENERATION.

Table 2: GPS constellation status (GPS Constellation, 2007)

Error calculation: In order to calculate the error of the measured files, a software package was developed and named ERROR_RMS. This package extracts X,Y and Z for every second at first and then constructs three matrixes named X, Y and Z. Afterwards, it constructs another matrix named R based on the formula (1):


To calculate errors in every second, we needed reference position that we were collecting data there (GPS research Lab, Shahid Rajaee University, Lavizan, Tehran), we got this reference position by calculating the long term averaging of X, Y and Z through all collected database. The reference position is as follows:

Xr = 3.2262075x103 km; Yr = 4.0546226x103 km;
Zr = 3.7092679x103 km; Rr = 6.3723659x103 km;

Therefore error in every second is as follows:

Dxi = Xr-Xi; Dyi = Yr-Yi
Dxi = Zr-Zi;Dyi = Rr-Ri

For example Dxi means error in X direction in ith the second and so on. The ERROR_RMS package constructs all above matrixes. Then it calculates the RMS error of R matrix because it is the most general matrix. The total RMS Errors of each sets of data collected was calculated by relationship (2):


where, n is the number of dada (or measurement points) saved in each file and D is the error of each measurement point. In Eq. 2 we have given to every RMS error, i.e., every DRi, a weight which is a uniform weight. However in this way we can have a reliable criterion to compare error of various data files with each other.

We selected a number of separated files based on satellites generation and applied this software on them. It was interesting that results showed that there was no logical relationship between error and satellite generation!? After this result we review our procedure again and then we found out that we hadn`t mentioned on very important criteria in our calculations, we should consider all equivalent conditions.

Making all conditions equivalent: Message 103 of this receiver delivers some error parameters too. To have a reliable error comparison based on satellite generations, we should make all these parameters equivalent for files that are to be compared to each other in a way that only variable affecting error be satellite generation. In this section we introduce these parameters at first and then we describe the algorithm which was used in this regard.

GDOP: The measure of the quality of the satellite constellation geometry is called the Geometric Dilution of Precision (GDOP), which reflects the influence of satellite geometry on the accuracy of the estimates of user position and user time. The best geometry is that which produces the lowest GDOP value(Microtracker LP Operations Manual, 1994; Microtracker LP Designer`s Guide, 1995).
Expected Position Error: The receiver estimates error information by this parameter. An expected error value output by the receiver is based on the estimation error used to update the associated quantity being estimated by the receiver`s navigation computations. Each expected error value is the standard deviation of the associated estimation error. These errors in satellite range measurements neglect the effects of user satellite geometry (Microtracker LP Operations Manual, 1994; Microtracker LP Designer`s Guide, 1995).
Figure of Merit: The Figure of Merit is simply a quantization of expected position errors. It is set to the maximum value during Acquisition Mode. In the other words it is a measure of convergence of navigation solution. It is an integer value where (Microtracker LP Operations Manual, 1994; Microtracker LP Designer`s Guide, 1995):

1means error is less than 7.5 m
2means error is 7.5 to 12.5 m
3means error is 12.6 to 25 m
4means error is 26 to 50 m
5means error is 51 to 250 m
6means error is 251 to 500 m
7means error is greater than 500 m
9means solution is not converging

Number of Satellites in Computation: An integer value between 0 to 5, indicating the number of satellite measurements incorporated in the computation of the navigation solution (Microtracker LP Operations Manual, 1994; Microtracker LP Designer`s Guide, 1995).
Navigation Mode: Logic 1 indicates the receiver engine is in Navigation Mode. Logic 0 indicates that the receiver engine is in Acquisition Mode (Microtracker LP Operations Manual, 1994; Microtracker LP Designer`s Guide, 1995).

Then we should filter all files based on above parameters, but to do so we needed to determine an optimum value for each of above parameters, a value which removes least of data in every file. We determined optimum value for each of these parameters by try and error.

These optimum values are as follows:

2.65 = < GDOP < = 3.10
Expected Error < =5 [m]
Figure of Merit = 1
Satellites in Computation > = 4
Navigation Mode = 1

Based on above criteria we developed a software package named FILTER to implement these criteria on files and remove messages that don`t have above criteria.

Now with these filtered files we can claim that almost the only variant that creates different errors is satellite generation. We then applied the software ERROR_RMS on filtered files to calculate errors of various generations (Table 3).

Obviously it can be seen on the table that position error in new generations is less than that of old generations.

Table 3: Error of various generations


This study described a procedure to compare error of various generations of GPS satellites using the data of a low cost GPS receiver. There were some considerations to have a reliable comparison. However the result was that error of new GPS generations is less than that of old generations with a ratio of 1.5821 to 1. However a good suggestion as future work can be comparing capabilities of GPS, GLONASS and GALLILEO with one or more receivers that are capable of receiving data of these systems (GALLILEO will be operational in 2008).

Fontana, R. and D. Latterman, 2000. GPS modernization and the future. Proceedings of the ION 56th Annual Meeting, June 26-28, 2000, San Diego, California, USA., pp: 222-231.

GPS Constellation Active Nanu Status, 2007. Navigation center. US C Coast Guard.

Hofmann-Wellenhof, B., H. Lichteneeger and J. Collins, 2001. Global Positioning System: Theory and Practice. 5th Revised Edn., Springer Wien, New York.

McDonald, K.D. and C. Hegarty, 2000. Post-modernization GPS performance capabilities. Proceedings of the ION 56th Annual Meeting, June 26-28, 2000, San Diego, California, USA., pp: 242-249.

Microtracker LP Designer's Guide, 1995. Rockwell international corporation. GPS-22.

Microtracker LP Operations Manual, 1994. Rockwell international corporation. GPS-16.

Parkinson, B.W. and J.J. Spilker, 1996. Global Positioning System: Theory and Applications (Volume One) (Progress in Astronautics and Aeronautics). 1st Edn., American Institute of Aeronautics and Astronautics, Washington, DC, pp: 793.

Refan, M.H. and K. Mohammadi, 2001. Point averaging of the position components, before and after S/A is turned off. Proceedings of the Asian GPS Conference, October 29-30, 2001, New Delhi, India, pp: 53-58.

Wu, S.C. and W.G. Melbourne, 1993. An optimal GPS data processing technique for precise positioning. IEEE. Trans. Geosci. Remote Sens., 31: 146-152.
CrossRef  |  

©  2020 Science Alert. All Rights Reserved