GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS...

7
1 GPS Space Segment Monitoring Ignacio Gin ´ es Fern´ andez Abstract—This extended abstract summarizes the work developed in the dissertation entitled GPS Space Segment Monitoring realized in the Satellites Laboratory of the IT (Instituto de Telecomunicac ¸˜ oes) at the IST (Instituto Superior ecnico). The aim of the project is develop a set of GUI (Graphical User Interfaces) to track the GPS (Global Positioning System) satellite constellation. These applications should show the information clearly, in an user-friendly way, and also should be capable of running 24 hours a day. Some part of the work has consisted in a theoretical approach to the GPS system. Furthermore as the applications developed interact with the IT Monitoring Station, in which the information of the GPS satellites is acquired, processed and stored, a study of its characteristics and functionalities has been done. Four operating applications are the result of the work realized. In each application it is monitored a different concept related with the GPS satellites: elevation and azimuth, ephemeris data and the satellites current position into 2D and 3D views. The servers have been written in C and are running, as independent processes, in the IT Monitoring Station computer. The clients have been developed with Matlab, an environment that fulfills all the GUIs needs, and with Google Earth. They are standalone programs that can run in Windows OS. Furthermore, some tests have been done to check that the performance of the applications was correct. Index Terms—GPS, GUI, Monitoring Station, Tracking system, Matlab, Google Earth, KML 1 I NTRODUCTION T HE main objective of the project is develop a set of graphical applications to monitor the position and state of the GPS satellites. The appli- cations must show clearly the position, orbit, state and other relevant data of the GPS satellites in real time and also allow to save and load this data. This set of applications are part of the GPS Monitoring Station developed in the Satellites Laboratory of the IT, placed on the 12th floor of the Torre Norte of the IST Alameda campus. The project is the result of the acquired knowledge in my six months Erasmus Programme. The GPS system allows anybody, anytime and everywhere to know its position in a global co- ordinates system. In addition to the geographical information other information is obtained with a GPS receiver. The Monitoring Station developed in the Satellites Laboratory is a system that makes this data accessible to other interfaces or programs. The system acquires, process and stores the data obtained by its GPS receivers, but once the data is stored it would be appropriate to represent it graphically. In this context, it seems useful to de- velop some applications that process this obtained data to show it graphically. These are the objectives of the project: 1) Understand how GPS works and its main components. 2) Develop the servers that will interact with the acquired data from the IT Monitoring Station, of course to do this is necessary to understand how the Monitoring Station works, how it gets the information from the GPS satellites and how this information is stored. 3) Develop the clients that will represent graph- ically that information. 4) Test the applications in long running periods. The applications should be capable of be run- ning 24 hours a day. This paper is a summary of the report entitled ”GPS Space Segment”. It is an overview of the contents of the report, in which more detailed information can be found. 2 GPS G PS is a satellite-based radio navigation system that provides reliable positioning, navigation and timing. It was developed by the US (United States) DoD (Department of Defense) in the 70s.

Transcript of GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS...

Page 1: GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS system is divided in three segments: Space segment. This segment consists of the GPS

1

GPS Space Segment MonitoringIgnacio Gines Fernandez

Abstract—This extended abstract summarizes the work developed in the dissertation entitled GPS Space SegmentMonitoring realized in the Satellites Laboratory of the IT (Instituto de Telecomunicacoes) at the IST (Instituto SuperiorTecnico).The aim of the project is develop a set of GUI (Graphical User Interfaces) to track the GPS (Global Positioning System)satellite constellation. These applications should show the information clearly, in an user-friendly way, and also shouldbe capable of running 24 hours a day.Some part of the work has consisted in a theoretical approach to the GPS system. Furthermore as the applicationsdeveloped interact with the IT Monitoring Station, in which the information of the GPS satellites is acquired, processedand stored, a study of its characteristics and functionalities has been done.Four operating applications are the result of the work realized. In each application it is monitored a different conceptrelated with the GPS satellites: elevation and azimuth, ephemeris data and the satellites current position into 2D and3D views. The servers have been written in C and are running, as independent processes, in the IT Monitoring Stationcomputer. The clients have been developed with Matlab, an environment that fulfills all the GUIs needs, and with GoogleEarth. They are standalone programs that can run in Windows OS. Furthermore, some tests have been done to checkthat the performance of the applications was correct.

Index Terms—GPS, GUI, Monitoring Station, Tracking system, Matlab, Google Earth, KML

F

1 INTRODUCTION

THE main objective of the project is developa set of graphical applications to monitor the

position and state of the GPS satellites. The appli-cations must show clearly the position, orbit, stateand other relevant data of the GPS satellites in realtime and also allow to save and load this data. Thisset of applications are part of the GPS MonitoringStation developed in the Satellites Laboratory of theIT, placed on the 12th floor of the Torre Norte of theIST Alameda campus. The project is the result ofthe acquired knowledge in my six months ErasmusProgramme.

The GPS system allows anybody, anytime andeverywhere to know its position in a global co-ordinates system. In addition to the geographicalinformation other information is obtained with aGPS receiver. The Monitoring Station developed inthe Satellites Laboratory is a system that makesthis data accessible to other interfaces or programs.The system acquires, process and stores the dataobtained by its GPS receivers, but once the datais stored it would be appropriate to represent itgraphically. In this context, it seems useful to de-velop some applications that process this obtained

data to show it graphically.These are the objectives of the project:1) Understand how GPS works and its main

components.2) Develop the servers that will interact with the

acquired data from the IT Monitoring Station,of course to do this is necessary to understandhow the Monitoring Station works, how itgets the information from the GPS satellitesand how this information is stored.

3) Develop the clients that will represent graph-ically that information.

4) Test the applications in long running periods.The applications should be capable of be run-ning 24 hours a day.

This paper is a summary of the report entitled”GPS Space Segment”. It is an overview of thecontents of the report, in which more detailedinformation can be found.

2 GPS

GPS is a satellite-based radio navigation systemthat provides reliable positioning, navigation

and timing. It was developed by the US (UnitedStates) DoD (Department of Defense) in the 70s.

Page 2: GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS system is divided in three segments: Space segment. This segment consists of the GPS

2

Initially it was developed as a military system tofulfill military needs and later it was made availableto civilians, being nowadays both accessible. TheGPS system was totally operational in 1995.

GPS segmentsThe GPS system is divided in three segments:• Space segment. This segment consists of the

GPS satellites constellation which are orbitingaround the Earth.

• Control segment. It consists of a worldwide net-work of tracking stations. Its primary task istrack the GPS satellites in order to determineand predict the satellite location, system in-tegrity, atmospheric data. . . There is one MasterControl Station (MCS) located in the US andother five monitor stations located around theequator.

• User segment. It includes all military and civil-ian users, GPS is available to all users world-wide.

Satellites constellationNowadays the number of satellites that form theconstellation is 31 (30 actually working)[1]. The GPSsatellites are placed in six orbital planes, so anorbital plane can contain four or five satellites. Thesatellites orbit the earth with a circulation time of11 hours 58 minutes, and with a height of the orbitabout 20200 km.

Navigation messageEach GPS satellite continuously transmits a mi-crowave radio signal composed of two carrier fre-quencies modulated by two digital codes and anavigation message. The two carrier frequencies aregenerated at 1,575GHz (L1 carrier) and 1,227HHz(L2 carrier). Each GPS satellite uses a different codemodulation in order to minimize the signal inter-ference, their names are Coarse Acquisition code(C/A code) and Precision code (P code). They arecommonly know as PRN (Pseudorandom Noise)because they look like random signals.

The GPS navigation message, shown in figure1, is a data stream added to both L1 and L2carriers. It contains, along with other information,satellite clock corrections; the ephemeris with thecoordinates of the GPS satellites as a function oftime, the satellite health status, week number, etc;the almanac and atmospheric data.

Fig. 1. GPS message

MeasurementsThe GPS receiver process the acquired signal tolocate its position. The receiver would be located atthe intersection of three spheres, each as a radiusof one receiver-satellite distance and is centered onthe particular satellite. However from the practicalpoint of view a fourth satellite is needed to accountfor the receiver clock offset.• Pseudorange measurement. The distance between

the GPS receiver and the GPS satellite is mea-sured by means of PRN code transmitted fromthe satellite. This measure is not exactly due tothe fact that the satellite and receiver clocks arenot synchronized.

• Carrier-phase measurement. It consists on thesum of the total number of full carrier cyclesplus fractional cycles at the receiver and thesatellite, multiplied by the carrier wavelength.The ranges obtained are more accurate thanwith the code measure.

ErrorsSome errors affect to the measurements. They canbe classified in three types:• Originated at the satellite: GPS ephemeris error,

selective availability and clock errors.• Originated at the receiver: clock errors, multipath

error and receiver measurement noise.• Signal propagation: Ionospheric delay and Tro-

pospheric delay.

Datum & Coordinate systemsTo approximate the irregular shape of the Earth toa smooth mathematical surface it is used a refer-ence surface. It is used a biaxial reference ellipsoidknown as geodetic datum.

The official coordinate system, the set of rulesor reference system for specifying the location ofpoints, used in GPS is the World Geodetic System

Page 3: GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS system is divided in three segments: Space segment. This segment consists of the GPS

3

of 1984 (WGS 84). Although some agencies providethe ephemerides in various formats.

Map projections

A map projection is defined as the transforma-tion of the physical features on the curved Earth’ssurface onto a flat surface called a map. Fromthe mathematical point of view, it is defined asthe transformation of geodetic coordinates (longi-tude, latitude and altitude) into rectangular gridcoordinates. Because of the difference between theellipsoidal shape of the Earth and the flat projectionsurface, the projected features suffer from distor-tion. The chosen one this project is the Mercatorprojection.

State of the art

GPS is not the unique global navigation system,other countries or regions have developed or arecurrently developing their own navigation system.Receivers will be able to combine both signals toincrease accuracy.

• GALILEO. The European Union (EU) and theEuropean Space Agency (ESA) have been de-veloping since 2002 their own satellite navi-gation system, the system should be workingin 2014 [2]. The first experimental satellite waslaunched in 2005 and it is expected to have 30satellites in orbit.

• GLONASS (Global Navigation Satellite Sys-tem). Its development began in 1976 in theformerly Soviet Union being in 1995 totallyoperative, following a rapid disrepair with col-lapse of the Russian economy. Nowadays thesystem has been restored, there are 24 opera-tional satellites. It is less precise than GPS[3].

• COMPASS. Is a chinese global navigation sys-tem in development, is based on its regionalnavigation system called Big Dipper and it isexpected to be operative in 2020 [4].

3 DEVELOPED WORK

THE developed work consists of a set of trackingapplications of the GPS Space Segment. Figure

2 illustrates the system architecture with the fourapplications developed.

Fig. 2. System architecture

SERVER SIDEFour servers have been developed, one per applica-tion, that run as independent processes in the corecomputer of the IT Monitoring Station. They havebeen written in C programming language becauseis the programming language in which the softwareof the Monitoring Station was developed.

The Monitoring Station is composed by two an-tennas that get the GPS signal, two GPS receiversthat acquire that signal and send it to the corecomputer, where some running programs processand store that data into the shared memory.

The main function of the servers is get the dataof the shared memory and send it, on demand, tothe clients by means of TCP (Transmission Con-trol Protocol) sockets. This shared memory can beaccessible by other programs by means of somefunctions defined in .h files. In these files, there aredefined the prototypes and the interfaces codes ofthe functions which are used to access the storeddata. The servers developed in this project shouldinclude these .h files.

Not all the servers work on demand, the serverthat generates the KML file for the 3D view withGoogle Earth application is continuously updatingthe KML file placed in the Apache Web Server.

COMMUNICATIONSThe transmission of data between the servers andclients is done by means of TCP sockets. The 3Dview with Google Earth application uses HTTPprotocol which goes over the TCP/IP protocols.

CLIENT SIDEThree of the clients are standalone applicationsdeveloped in Matlab. Their task is start the com-munications with the servers, obtain and represent

Page 4: GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS system is divided in three segments: Space segment. This segment consists of the GPS

4

continuously the received data. The fourth client isthe Google Earth program, which by means of a.kml file is able to connect to the server to obtainthe satellites data.

App 1: Elevation and azimuthThe main objective of this application is monitorthe values of elevation and azimuth of the GPSsatellites that are in the coverage area of the an-tennas. The elevation and azimuth are calculatedin real time according to both satellite and antennaposition[5].

As told the server program is placed in the corecomputer, its name is app eph azim. In the code it isincluded the GPGSV read.h file which provides thestruct, prototipes and functions required to managethe GPS receivers stored data. Specifically it isused the function GPGSV read() to read the sharedmemory and initialize the struct variable with thecurrent values.

The GUI plays the client role in the system, wherethe satellites elevation and azimuth are shown ina polar chart. It is developed with Matlab and itsmain functions are: connect to the server and sendperiodic requests to obtain updated data, controlthat no errors appear in the communication, plotthe values, store and save the data in .txt files or asa figure and allow to change some properties likethe refresh time and the data storage capacity.

The plot is drawn by means of the existentMatlab function polar.m which allows to representpolar coordinates in a Cartesian plane. It has beennecessary to change some parameters of the defaultpolar function in order to represent the informationproperly. Some of these changes are: set the limitsof the circle radius between 0 ◦ and 90 ◦, set themaximum elevation (90 ◦) in the center of the circle,define 2 radial circles in the 60 ◦ and 30 ◦ position,etc.

The GUI is shown in figures 4 and 5.

App 2: EphemerisThis application shows the current and expiredvalues of the GPS ephemeris data, transmittedby the GPS satellites in their navigation message.This data allows to compute the satellite positionfor a given time instant within an interval. Theephemeris data is usable for a limited period oftime which is known as expiration time. To find outif the ephemeris data is valid it is used the Issue ofData Ephemeris (IODE) variable.

The server name is app eph. To access the sharedmemory it is necessary that the code includes theEph read.h file, in particular it is used the Eph read()function.

One special feature is that the expiration dateof the ephemeris is given in a “Week number1 +TOE2”format, it is necessary to make a conversionto a hh:ss dd/mm/yyyy format.

The GUI functionalities are: connect to the server,control that no errors appear, show the currentvalues of the satellites ephemeris and also theirexpired one, and be able to save the ephemeris datainto a file.

One special feature of the GUI is theapp eph translator.m function, which convertssome ephemeris index to standard values. Forexample the URA (User Range Accuracy) variable.The value transmitted in the navigation messageis an index (an integer between 1 and 15)meanwhile the URA refers to a distance interval.The app eph translator.m file converts this index toa distance interval. As an example an index of 1corresponds to an interval between [0 - 2,4] meters.

App 3: World mapThe idea of this application is draw the satellitescurrent position and displacement in a 2D worldmap projection, the chosen one is the Mercatorprojection.

The satellite position are referenced by means ofthe geographic coordinates: longitude, latitude andaltitude. The GPS receivers provide the satellitesposition by means of the Cartesian coordinates, so atransformation between Cartesian and geographiccoordinates must be done. This conversion is donewith the Bowring procedure[6]. Next are the threeequations used in this procedure, where λ is thelongitude, φ the latitude and h the altitude.

λ =

arctan( YX ) , X ≥ 0

180o + arctan( YX ) , X < 0&Y > 0

−180o + arctan( YX ), X < 0&Y < 0

(1)

φ = arctan( z+e′2b sin3 u√x2+y2−e2a cos3 u), (2)

h =

{ √x2+y2

cosφ −N , φ 6= ±90oz

sinφ −N + e2N, φ = ±90o(3)

1. Number of weeks since 1/5/19802. Number of seconds in the current GPS week

Page 5: GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS system is divided in three segments: Space segment. This segment consists of the GPS

5

The server name is app map. Its working prin-ciple is very similar to the previous servers. Itincludes a file which contains some functions re-quired to acquire the data from the shared memory,in this case the SatPos read.h, meanwhile the func-tion SatPos read() is used to read the data from theshared memory.

The GUI is also developed with Matlab. Its mainfunctionalities are similar to previous GUIs, it offersto an user the possibility of tracking the satellitepositions, load and save this information into a textfile or in a image file. Also offers the possibility ofconfigure some options, like the refresh period ofthe information, the visibility of the satellites dis-placements and the displacement storage capacity.

As a special feature is a Look Up Table to convertthe geographic coordinates into pixel position onthe Map projection image. This conversion is madeby means of next equations[7]. First is necessary toconvert latitude, and longitude to x and y values,see equations 4 and 5. Then y, y must be convertedto pixels on the image.

x = λ− λ0 (4)

y = ln(tan(π

4+φ

2)) (5)

App 4: 3D view with Google Earth

The purpose of this applications is developed areal time GPS constellation tracking system. It hasbeen used the Google Earth program, that allowsan user to represent its own data, in this case theGPS satellites, in a 3D Earth model. The benefitsof using Google Earth are related with its ownfeatures: it allows to explore the Earth and the skyfrom different views, distances and perspectives.

To add own data to Google Earth it is used theKML (Keyhole Markup Language) files. The KMLfile specifies a set of features (place marks, images,3D models, textual descriptions, etc.) for displayown information. For its reference system KML alsouses the WGS84. So the cartesian coordinates (X, Y,Z) acquired from the Monitoring Station should beconverted to geographic coordiantes.

Unlike the other developed applications in thisone it has been only necessary to develop the serverside. Next figure 3 shows all the elements of the ap-plication: the sever which is in charge of acquiringthe data from the shared memory; the generatedGPS satellites.kml with all the information about

the satellites positions; and finally the GPS link.kmlwhich has all the information needed to connectGoogle Earth with the server.

Fig. 3. 3D view with Google Earth. Applicationarchitecture

As in the other servers some external files havebeen used to acquire the data from the sharedmemory. In this case the file included in the codeis the SatPos read.h. The server name is app earthand its performance is quite easy: once initiated itacquires de current data of the satellites, convertsthe Cartesian coordinates to geographic coordinatesand it is ready to generate the GPS satellites.kmlfile. This file, which includes all the information torepresent the GPS constellation in Google Earth, isplaced in the Apache Web Server directory to beaccessible from external machines. All this processis repeated every 60 seconds by the server.

To start the client it is onle necessary to open theGPS link.kml file with Google Earth and the GPSconstellation defined in the GPS satellites.kml willbe displayed.

4 ACHIEVED RESULTS

F INALLY to check that the developed applica-tions work properly in long periods of time

some tests have been done. As a result the appli-cations performance was correct, being able to run24 hours a day without any problem.

Results of App1: Elevation and azimuth

The application has been working for day periodswithout incidences. The figure 5 shows the plotafter 5 hours of operation. It can be seen that somesatellites that at the start were in the coverage area,after 5 hours are no longer. Others, as PRN 17 orPRN 20, continue on the coverage area an theirdisplacement can be clearly seen.

Page 6: GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS system is divided in three segments: Space segment. This segment consists of the GPS

6

Fig. 4. App1: Elevation and azimuth

Fig. 5. App 1: Plot evolution after 5 hours

Results of App 2: Ephemeris

The results of the 24 hours running period werecorrect, no errors appear on the application or inthe communication with the server.

Results of App 3: World map

As in previous applications the performance wascorrect, without any kind of errors during its 24hour running period. Next figure 6 shows the mo-ment when the application was started. It can beseen all the satellites, represented by points, overthe World projection. Lets focus on the satelliteidentified with the PRN 2. In figure 7 it is possibleto see the displacement of that satellite after 5hours. Also it is possible to observe that the orbitsbetween some satellites are quite similar, this is dueto the fact that there are only five or six differentorbits and the satellites share the same orbits butwith a deviation.

Fig. 6. App 2: World map

Fig. 7. App 2: Statellite displacement after 5 hours

Results of App 4: 3D view with Google Earth

These are the results of the working period for the3D view server. The screen-shots correspond to a 3hour period which was the displacement memoryof the application.

Next figure 8 show the satellite, identified withthe PRN 16, and figure 9 shows the same satelliteafter 3 hours. It can be seen the satellite orbit clearly.Also it has been checked with external applications3

that the results were correct.

5 CONCLUSIONS AND FUTURE WORK

TO complete this paper it is necessary toappraise if the initial objectives have been

achieved, what are the key topics learned and withthe obtained results what future work could bedone.

3. The web page http://www.n2yo.com provides a real timesatellite tracking system.

Page 7: GPS Space Segment Monitoring · GPS system was totally operational in 1995. GPS segments The GPS system is divided in three segments: Space segment. This segment consists of the GPS

7

Fig. 8. App 4: 3D view with Google Earth

Fig. 9. App 4: satellite displacement after 3 hours

The initial objective of this project was to developa set of applications to display, in real time, the sta-tus of the GPS Space Segment with the informationgiven by the GPS receivers of the IT MonitoringStation. This objective has been achieved with thefour applications developed. They are standaloneapplications that can display in real time the in-formation obtained by the IT Monitoring Stations.Furthermore, each one is focused in a particularconcept, allowing to display that information moreclearly and preventing to represent lot of data thatcould stun an user.

Another objective achieved is to developed ap-plications capable of running 24 hours a day. Tocheck this the applications have been tested onreal working conditions, getting satisfactory results.Moreover they can be used as standalone appli-cations that can work outside the IT network, viaInternet.

The project realization has been divided in sev-eral well-defined stages: the theoretical approach,the applications development and its testing. Myinitial knowledge of the technologies involved(GPS, Matlab and KML language) was basic, there-fore it was necessary a theoretical approach to thesetechnologies as first target. With the theoretical

base it was possible to developed some basic ap-plications which became useful to learn how theIT Monitoring Station works, that was the secondstage.

A third stage was to add some functionalitiesto these basic applications, once my knowledgeand practice on the technologies, specifically inMatlab, allowed it. The last stage was verify thatthe developed applications work correctly.

With the work executed and with the operativeIT Monitoring Staton some future work could bedone, for example:

- Add new functionalities to the current appli-cations. One possibility could be interconnectthem to share information to complement eachother.

- Export the applications to the IT MonitoringStation web. The Matlab environment offersdifferent possibilities to realize it: with theMatlab Builder NE for .NET and the MatlabBUilder JA for Java.

- Export the applications to mobile platformssuch as Android or MeeGo OS. Matlab GUIsare based on Java, it is possible without mucheffort to export these applications to mobileplatforms.

Lastly it must be told that achieve these objec-tives has become an interesting and satisfactoryprocess, by the technical learned contents and alsofrom the personal point of view due to the fact ofdeveloping the project in an other country, cultureand learning system which has offered me a greatknowledge and experience.

REFERENCES

[1] U. S. Naval Observatory, Current Gps Constellation.www.usno.navy.mil/USNO/time/gps/current-gps-constellation, Retrieved: 28th of Novemeber 2010.

[2] European Space Agency, Galileo Navigation System.www.esa.int/esaNA/galileo.html, Retrieved: 28th of Noveme-ber 2010.

[3] Glonass, Russian system of differentional correction andmonitoring. www.sdcm.ru/index eng.html, Retrieved: 28thof Novemeber 2010.

[4] China Military Online, Beidou satellitenavigation system to cover whole world in2020.www.eng.chinamil.com.cn/news-channels/china-military-news/2010-05/20/content 4222569.htm, Retrieved: 28th ofNovemeber 2010.

[5] Hofmann-Wellenhof, B.; Lichtenegger, H.; Collins J.,GPS Theory and Practice. Springer-Verlag Wien, 1994.

[6] Bowring, B. R., Transformation from Spatial to GeophysicalCoordinates, 1976.

[7] Sanguino, J. Lecture Notes on Navigation Systems