You are on page 1of 12

Project Report

GNSS Signal Processing, Fall-18

Institute of Space Technology

ASIM KHAN

MS GNSS -7

“Extraction of Ephemeris file from Matlab code”

Introduction:
We catch a file through an RF- front end from GPS Satellites, which is now digitize data,
so in order to find user Position (X, Y, Z), we will process the digitize signal through Acquisition
and Tracking Procedure and then we get binary Data which we called Navigation bits which
usually consists of 1500 bits for each satellite which is encrypted in a frame and the frame is
divided in 5 sub frames

Sub frame 1: Clock Parameters, Space Vehicle health, user range accuracy, issue of Data clock

Sub frame 2&3: Ephemerides

Sub frame 4 & 5: Almanac Data, Space Vehicle health, UTC Data, Ionosphere Models

From step of Acquisition to end all processing is done in Matlab.

Ephemeris is the Satellite keplarian elements etc

Ephemeris Table

M0 Mean Anomaly at Reference Time

∆n Mean Motion Difference From Computed Value

e Eccentricity

√𝐴 Square Root of the Semi-Major Axis

Ω0 Longitude of Ascending Node of Orbit Plane at Weekly Epoch

i0 Inclination Angle at Reference Time

1
ω Argument of Perigee

Ω̇ Rate of Right Ascension

IDOT Rate of Inclination Angle

Cuc Amplitude of the Cosine Harmonic Correction Term to the Argument of Latitude

Cus Amplitude of the Sine Harmonic Correction Term to the Argument of Latitude

Crc Amplitude of the Cosine Harmonic Correction Term to the Orbit Radius

Crs Amplitude of the Sine Harmonic Correction Term to the Orbit Radius

Cic Amplitude of the Cosine Harmonic Correction Term to the Angle of Inclination

Cis Amplitude of the Sine Harmonic Correction Term to the Angle of Inclination

toe Reference Time Ephemeris

IODE Issue of Data (Ephemeris)

Literature review:
1. Simulations of Multiple Spacecraft Maneuvering with MATLAB/Simulink and Satellite
Tool Kit
2. GPS Clock Corrections and Orbit Computations using RINEX 2.11 GPS Navigation
Message Files
3. GNSS Introduction Fobio Dovis

Method: An additional custom code added in Postnavigation .m of GNSS SDR Matlab Code
Line 146 after check number of satellites is above 3.
for loo = 1: numel(eph)
if isempty(eph(loo).e)
else
disp('channel no')
disp(loo)
disp(eph(loo))

2
end
end
clear loo;
Explanation : the loop starts from up to ephemeris(eph)of
different satellites channel .a condition is applied of if
ephemeris and e is a variable in ephemeris chart that is present
in Matlab output .then else displaying channel number and loop
of Ephemeris of each satellite with given PRN number (Pseudo
random number ).and then end.
And the ephemeris of 7 satellites with PRN and channel Number is output Yuma file in
command window of Matlab. Or without adding in Postnavigation.m just run the above code
after Post processing is complete.

Results: In Yuma Format (Ephemeris) of different satellites of Different PRN number and
the channels they came through

channel no

IODE_sf2: 178

C_rs: -81

deltan: 4.5045e-09

M_0: 2.9347

C_uc: -4.2096e-06

e: 0.0050

C_us: 7.6666e-06

sqrtA: 5.1537e+03

t_oe: 381600

C_ic: -7.2643e-08

omega_0: -0.0299

3
C_is: -4.2841e-08

i_0: 0.9641

C_rc: 232.5000

omega: 0.4731

omegaDot: -7.9696e-09

IODE_sf3: 178

iDot: -2.6715e-10

weekNumber: 1881

accuracy: 0

health: 0

T_GD: 5.1223e-09

IODC: 11

t_oc: 381600

a_f2: 0

a_f1: 9.0949e-13

a_f0: 1.0263e-05

channel no

IODE_sf2: 33

C_rs: 17.8438

deltan: 4.4213e-09

M_0: -0.5920

C_uc: 8.4564e-07

4
e: 2.9964e-04

C_us: 1.0563e-05

sqrtA: 5.1538e+03

t_oe: 381600

C_ic: -5.5879e-09

omega_0: 1.0108

C_is: -5.5879e-09

i_0: 0.9592

C_rc: 173.5625

omega: 2.9466

omegaDot: -7.8928e-09

IODE_sf3: 33

iDot: 1.6858e-10

weekNumber: 1881

accuracy: 0

health: 0

T_GD: 1.8626e-09

IODC: 4

t_oc: 381600

a_f2: 0

a_f1: -4.8885e-12

a_f0: -1.7368e-05

channel no

10

5
IODE_sf2: 65

C_rs: 4.1875

deltan: 4.4873e-09

M_0: 0.8468

C_uc: 3.0547e-07

e: 0.0011

C_us: 1.0315e-05

sqrtA: 5.1537e+03

t_oe: 381600

C_ic: 1.6764e-08

omega_0: 1.0067

C_is: -2.9802e-08

i_0: 0.9595

C_rc: 177.5625

omega: -2.9359

omegaDot: -7.9743e-09

IODE_sf3: 65

iDot: 1.2251e-10

weekNumber: 1881

accuracy: 1

health: 0

T_GD: 2.3283e-09

IODC: 5

t_oc: 381600

6
a_f2: 0

a_f1: -2.0464e-12

a_f0: 4.8256e-05

channel no

14

IODE_sf2: 38

C_rs: 27.6875

deltan: 4.7488e-09

M_0: -1.2603

C_uc: 1.5274e-06

e: 0.0083

C_us: 5.1763e-06

sqrtA: 5.1537e+03

t_oe: 381600

C_ic: 9.8720e-08

omega_0: 2.1344

C_is: 2.1607e-07

i_0: 0.9644

C_rc: 283.3438

omega: -1.9490

omegaDot: -8.2643e-09

IODE_sf3: 38

iDot: -6.4288e-12

7
weekNumber: 1881

accuracy: 0

health: 0

T_GD: -9.3132e-09

IODC: 236

t_oc: 381600

a_f2: 0

a_f1: -2.2737e-12

a_f0: 6.4904e-06

channel no

22

IODE_sf2: 12

C_rs: 10.8438

deltan: 5.2949e-09

M_0: -0.6614

C_uc: 5.1595e-07

e: 0.0076

C_us: 1.0097e-05

sqrtA: 5.1551e+03

t_oe: 381584

C_ic: -8.1956e-08

omega_0: 0.9828

C_is: 1.0990e-07

8
i_0: 0.9228

C_rc: 163.1250

omega: -2.0254

omegaDot: -8.4761e-09

IODE_sf3: 12

iDot: 1.0858e-10

weekNumber: 1881

accuracy: 0

health: 0

T_GD: -1.7695e-08

IODC: 218

t_oc: 381584

a_f2: 0

a_f1: -5.3433e-12

a_f0: 4.0550e-04

channel no

25

IODE_sf2: 46

C_rs: 46.0313

deltan: 3.9116e-09

M_0: 1.2557

C_uc: 2.3227e-06

e: 0.0050

9
C_us: 1.0280e-05

sqrtA: 5.1536e+03

t_oe: 381600

C_ic: -1.3039e-08

omega_0: -2.1302

C_is: 6.5193e-08

i_0: 0.9786

C_rc: 188.5625

omega: 0.6937

omegaDot: -7.8664e-09

IODE_sf3: 46

iDot: 1.4929e-10

weekNumber: 1881

accuracy: 0

health: 0

T_GD: 5.5879e-09

IODC: 12

t_oc: 381600

a_f2: 0

a_f1: -6.4801e-12

a_f0: -1.0712e-04

channel no

31

10
IODE_sf2: 78

C_rs: -26.4063

deltan: 4.1866e-09

M_0: 2.2049

C_uc: -1.2014e-06

e: 0.0083

C_us: 8.0280e-06

sqrtA: 5.1537e+03

t_oe: 381600

C_ic: 1.6764e-08

omega_0: 3.1381

C_is: 5.7742e-08

i_0: 0.9728

C_rc: 231.8125

omega: -0.4432

omegaDot: -7.8293e-09

IODE_sf3: 78

iDot: -4.4073e-10

weekNumber: 1881

accuracy: 0

health: 0

T_GD: -1.3504e-08

IODC: 227

t_oc: 381600

a_f2: 0

11
a_f1: -1.5916e-12

a_f0: 2.8513e-04

Conclusion: As we know Ephemeris file is present in each Satellite signal and we extract
Ephemerides of each Satellite through a Software defined Radio Matlab code for GPS Signals
.which allows us smooth and soft access to satellite position, which can we use for multiple
tasks ,at the time it helps us for finding the user location in X,Y,Z (latitude ,longitude and
height).

12

You might also like