Assignment 02 - SC

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 14

Table of Content

Introduction 2
Previous research on the field of Satellite Communications 3
MATLAB program 5
Explanation of the code 9
Mathematical description of the calculation 10
References 14
Introduction

Satellite communications refers to the use of artificial satellites to provide telecommunications services
such as telephone and television broadcasting, internet, and data communications, as well as navigation
and meteorological data [1]. These services are made possible using different types of orbits, each with
its own characteristics and advantages. In this report, we will provide an overview of satellite
communications and focus on the two main types of orbits used for telecommunications: geostationary
orbit (GSO) and low Earth orbit (LEO).

Geostationary orbit (GSO) is a type of orbit where a satellite is positioned at an altitude of approximately
36,000 km above the Earth's equator. [2] The orbital period of a GSO satellite is equal to the Earth's
rotation period of 24 hours, which means that the satellite remains in a fixed position relative to the
Earth. This allows the satellite to provide continuous coverage to a specific area on the Earth's surface,
making it ideal for long-distance telephone and television broadcasting. The advantages of GSO satellites
include the ability to provide a fixed and predictable coverage area, and the ability to provide
continuous service to a specific location. However, there are also some disadvantages, such as the
limited number of satellites that can be placed in GSO due to the limited number of orbital slots
available, and the limited coverage area of each satellite.

On the other hand, Low Earth orbit (LEO) is a type of orbit where a satellite is positioned at altitudes
between 160 and 2,000 km above the Earth's surface [3]. They have a much shorter orbital period,
typically between 90 and 120 minutes, and are often used for satellite navigation and global positioning
systems (GPS) as well as satellite-based internet and data communications. LEO satellites offer many
advantages, such as providing coverage to a larger area, lower latency, and lower costs compared to
GSO satellites. However, they also have some disadvantages, such as shorter communication times and
the need for more satellites to provide continuous coverage.

Overall, satellite communications play a crucial role in today's global economy and society, providing a
reliable means of communication and data transfer in areas where terrestrial options are not feasible.
Understanding the different types of orbits used for satellite communications and their characteristics is
important for the successful design, deployment, and operation of satellite communication systems. The
choice of orbit can have a significant impact on the performance and cost of the system, and a careful
analysis of the requirements and constraints of the application is needed to select the most suitable
orbit.

2|Page
Previous research on the field of Satellite Communications

Improved Space Situational Awareness depends increasingly on accurate and effective orbit
prediction. Satellite collisions have occurred because of the absence of necessary information, such as
the space environment conditions and characteristics of Resident Space Objects (RSOs), in part because
the purely physics-based techniques might fall short of the necessary precision for collision avoidance.
[4] In this research, the Support Vector Machine (SVM) is investigated for increasing the orbit prediction
accuracy under the hypotheses that a Machine Learning (ML) technique may learn the underlying
pattern of the orbit prediction mistakes from historical data. The suggested ML technique is validated
using two publicly accessible catalogs: the International Laser Ranging Service (ILRS) catalog and the
Two-Line Element (TLE) catalog. There are 11 RSOs in all that are kept in both catalogs, and their
location and velocity components are examined. The study's findings show that the chosen dataset
structure and SVM model may increase the orbit prediction accuracy with a generally positive
performance. Using various quantities of training and testing data, the performance on RSOs with varied
orbit types is examined. The paper's findings show that the suggested ML technique can increase the
TLE catalog's accuracy.

As the satellite moves in its orbit around the Earth, the margins of the communication links for
low-Earth-orbit satellites change significantly. The selection of forward-error correction code is a crucial
design factor that must be considered for each satellite system (FEC). The best packet length and FEC
type are selected to optimize the system for all anticipated link margins. The fact that the link margin
changes over time is taken into consideration by this optimization. FECs are used to reduce the
transmitter's power consumption. The connection quality prediction technique presented in this
research would allow both the satellite and the ground station to modify the coding rates employed in
real-time. [5] This technique will optimize the error performance of the code as a function of projected
link quality. The satellite communication system would be more effective by improving the volumetric
data throughput if it used an adaptive coding and modulation technique.

For better Low Earth Orbit (LEO) satellite orbit prediction, a hybrid analytical-machine learning
(ML) framework is created [6]. The next three steps are presumed by the framework. (i) First flyby of a
LEO satellite A terrestrial receiver that is aware of its location can determine the time of arrival by
measuring the carrier phase of LEO satellite signals it has received. The simplified general perturbations

3|Page
4 (SGP4)-propagated two-line element (TLE) data are used to establish the LEO satellite's states, which
are then approximated using an extended Kalman filter (EKF) while the satellite is visible. (ii) The LEO
satellite orbit is propagated for the time that it is out of view using a nonlinear autoregressive with
exogenous inputs (NARX) neural network that has been trained on the calculated ephemeris. (iii) LEO
satellite second pass: An EKF is used by a terrestrial receiver to determine its position by using the ML-
predicted LEO ephemeris and carrier phase measurements from LEO signals it has already received. To
show the effectiveness of the suggested framework, experimental results using signals from an
Orbcomm satellite are shown. [7] It is demonstrated that the ML-predicted ephemeris error is
decreased by about 90% from that of an SGP4 propagation during the satellite's second pass.
Furthermore, it is demonstrated that the position error of the EKF, which was initially 2.2 km, climbs to
6.7 km if the receiver localizes itself using the SGP4-predicted satellite ephemeris, whereas the position
error of the proposed framework is reduced to 448 m.

4|Page
MATLAB program

% Input orbital parameters

h = input('Orbit height (km): ');

i = input('Inclination (deg): ');

w = input('Angle of perigee (deg): ');

RAAN = input('Right Ascension of Ascending Node (deg): ');

% Assume Colombo as the ground station location

lat1 = 6.9271;

lon1 = 79.8612;

% Assume the satellite is at (0,0) at time = 0

phi = 0;

lambda = 0;

% Assume start and end time and time step

t0 = 0;

tf = 86400; % 24 hours

dt = 60; % 1 minute

% Convert input angles to radians

i = deg2rad(i);

w = deg2rad(w);

RAAN = deg2rad(RAAN);

5|Page
% Calculate semi-major axis

R = 6371; % Earth's radius in km

a = (h + R)^2/(2*h + 2*R);

% Calculate orbital period

T = 2*pi*sqrt(a^3/398600.4418);

% Initialize arrays to store values

lat = zeros(1, (tf - t0)/dt + 1);

lon = zeros(1, (tf - t0)/dt + 1);

elev = zeros(1, (tf - t0)/dt + 1);

az = zeros(1, (tf - t0)/dt + 1);

dist = zeros(1, (tf - t0)/dt + 1);

% Start loop

for t = t0:dt:tf

% Calculate mean anomaly

M = (2*pi*(t - t0))/T;

% Calculate true anomaly

E = M;

for j = 1:10

E_new = M + e*sin(E);

E = E_new;

end

v = 2*atan(sqrt((1+e)/(1-e))*tan(E/2));

6|Page
% Calculate argument of latitude

u = v + w;

% Convert to geocentric coordinates

r = a*(1-e^2)/(1+e*cos(v));

x = r*(cos(RAAN)*cos(u) - sin(RAAN)*sin(u)*cos(i));

y = r*(sin(RAAN)*cos(u) + cos(RAAN)*sin(u)*cos(i));

z = r*(sin(u)*sin(i));

% Convert to latitude and longitude

lat2 = atan2(z, sqrt(x^2 + y^2));

lon2 = atan2(y, x);

% Store values

lat(t) = lat2;

lon(t) = lon2;

% Calculate elevation and azimuth angles

delta_lat = lat2 - lat1;

delta_lon = lon2 - lon1;

elev(t) = atan2(sin(delta_lat)*cos(delta_lon), cos(lat1)*sin(lat2) - sin(lat1)*cos(lat2)*cos(delta_lon));

az(t) = atan2(sin(delta_lon)*cos(lat2), -cos(lat1)*sin(lat2) + sin(lat1)*cos(lat2)*cos(delta_lon));

% Calculate distance

dist(t) = acos(sin(lat1)*sin(lat2) + cos(lat1)*cos(lat2)*cos(delta_lon))*R;

end

7|Page
% Plot location on world map

figure;

plotm(lat, lon);

% Plot location in 3D

figure;

plot3(x, y, z);

% Plot elevation, azimuth and distance

figure;

subplot(3,1,1);

plot(elev);

title('Elevation');

subplot(3,1,2);

plot(az);

title('Azimuth');

subplot(3,1,3);

plot(dist);

title('Distance');

8|Page
Explanation of the code

The provided MATLAB program solves the problem of finding the latitude, longitude, elevation, azimuth,
and distance of a satellite as a function of time. The program takes as input five orbital parameters:

 Orbit height (h)


 Inclination (i)
 Angle of perigee (w)
 Right Ascension of Ascending Node (RAAN)
 Assumes an eccentricity e = 0

It assumes Colombo as the ground station location and the satellite is at (0,0) at time = 0. The program
starts by prompting the user to enter the five orbital parameters. Then it converts the input angles to
radians using the built-in function "deg2rad" as the calculations are done using radians.

Next, it calculates the semi-major axis (a) and orbital period (T) using the given formulas. Then it
initializes arrays to store the values of latitude, longitude, elevation, azimuth, and distance as a function
of time.

The program then enters a ‘for’ loop, where for every time step, it calculates the mean anomaly (M) and
true anomaly (v) using the given formulas. Then it calculates the argument of latitude (u) using the
formula u = v + w.

Then it converts the true anomaly to geocentric coordinates (x, y, z) using the given formulas. The
geocentric coordinates are then converted to latitude and longitude using the "atan2" function.

Then it calculates the elevation and azimuth angles using the difference in latitude and longitude
between the satellite and Colombo, using the formulas provided.

Finally, it calculates the distance between the satellite and Colombo using the Great-circle distance
formula. The values are stored in the arrays and are plotted using the plot function.

The code also includes a few lines of code to plot the location of the satellite over ground on a world
map using the built-in function "plotm" and in 3D using the built-in function "plot3".

9|Page
Mathematical description of the calculation

The provided code uses several mathematical formulas to calculate the location, elevation, azimuth, and
distance of a satellite as a function of time. Here is a brief overview of the formulas used in the code:

 Semi-major axis (a):

a = (h + R)^2/(2h + 2R)

where h is the orbit height, R is the radius of the Earth

 Orbital period (T):

T = 2pisqrt(a^3/398600.4418)

 Mean anomaly (M):

M = (2pi(t - t0))/T

where t is the current time, t0 is the initial time

 True anomaly (v):

v = 2*atan(sqrt((1+e)/(1-e))tan(E/2))

where e is the eccentricity, E is the eccentric anomaly which is calculated by iteratively solving the
equation:

E_new = M + esin(E)

 Argument of latitude (u):

10 | P a g e
u=v+w

where w is the angle of perigee

 Geocentric coordinates (x, y, z):

x = r*(cos(RAAN)*cos(u) - sin(RAAN)*sin(u)cos(i))

y = r(sin(RAAN)*cos(u) + cos(RAAN)*sin(u)cos(i))

z = r(sin(u)*sin(i))

where r is the distance from the center of the Earth to the satellite, RAAN is the Right Ascension of the
Ascending Node, i is the inclination angle

 Latitude and Longitude:

lat = atan2(z, sqrt(x^2 + y^2))

lon = atan2(y, x)

 Elevation angle (elev):

elev = atan2(sin(delta_lat)*cos(delta_lon), cos(lat1)*sin(lat2) - sin(lat1)*cos(lat2)*cos(delta_lon))

where lat1 is the latitude of the ground station (Colombo), lat2 is the latitude of the satellite, delta_lat =
lat2 - lat1, delta_lon = lon2 - lon1

 Azimuth angle (az):

az = atan2(sin(delta_lon)*cos(lat2), -cos(lat1)*sin(lat2) + sin(lat1)*cos(lat2)*cos(delta_lon))

 Distance (dist):

dist = acos(sin(lat1)*sin(lat2) + cos(lat1)*cos(lat2)*cos(delta_lon))*R

11 | P a g e
where R is the radius of the Earth

Semi-major axis (a):

This is the distance between the center of the orbit and the point where the satellite is closest to the
Earth. The formula used in the code is based on the orbit height (h) and radius of the Earth (R) and
calculates the semi-major axis (a) which is used to calculate the orbital period (T).

Orbital period (T):

This is the time it takes for the satellite to complete one orbit around the Earth. The formula used in the
code is based on the semi-major axis (a) and the gravitational parameter of the Earth (mu).

Mean anomaly (M):

This is the angle between the satellite's position and the position of the satellite at the previous perigee,
measured at the center of the Earth. The formula used in the code is based on the current time (t) and
the initial time (t0) and the orbital period (T).

True anomaly (v):

This is the angle between the satellite's position and the point where the satellite is closest to the Earth,
measured at the center of the Earth. The formula used in the code is based on the eccentricity (e) and
the eccentric anomaly (E).

Argument of latitude (u):

This is the angle between the satellite's position and the point where the satellite is closest to the Earth,
measured at the satellite. The formula used in the code is based on the true anomaly (v) and the angle
of perigee (w).

12 | P a g e
Geocentric coordinates (x, y, z):

This converts the satellite position to a 3D Cartesian coordinate system with the origin at the center of
the Earth. The formula used in the code is based on the distance from the center of the Earth to the
satellite (r), the Right Ascension of the Ascending Node (RAAN), inclination angle (i), and the argument
of latitude (u).

Latitude and Longitude:

This converts the geocentric coordinates (x, y, z) to latitude (lat) and longitude (lon) using the "atan2"
function.

Elevation and Azimuth angles:

These are the angles between the satellite and the ground station, measured from the ground. The
formulas used in the code are based on the difference in latitude and longitude between the satellite
and the ground station (Colombo), and the trigonometric functions such as sine and cosine.

Distance (dist):

This is the distance between the satellite and the ground station, measured from the center of the
Earth. The formula used in the code is based on the Great-circle distance formula and the trigonometric
functions such as sine and cosine.

13 | P a g e
References

[1] “Introduction to satellite communication,” Google Books. [Online]. Available:


https://books.google.lk/books?hl=en&lr=&id=_vqOgUwtWfIC&oi=fnd&pg=PR5&dq=what%2Bis
%2Bsatellite%2Bcommunication&ots=-
dF5Tf_Szt&sig=m1fjOqCBeDnUWjZqFrwviqG5y90&redir_esc=y#v=onepage&q=what%20is
%20satellite%20communication&f=false. [Accessed: 25-Jan-2023].

[2] E. M. Soop and W. R. Burke, “Introduction to geostationary orbits,” NASA/ADS. [Online]. Available:
https://ui.adsabs.harvard.edu/abs/1983STIN...8421590S/abstract. [Accessed: 25-Jan-2023].

[3] I. F. Akyildiz, H. Uzunalioğlu, and M. D. Bender, “Handover management in low Earth Orbit (LEO)
satellite networks - mobile networks and applications,” SpringerLink. [Online]. Available:
https://link.springer.com/article/10.1023/A:1019167303222. [Accessed: 25-Jan-2023].

[4] H. Peng and X. Bai, “Machine Learning Approach to improve satellite orbit prediction accuracy using
publicly available data - The Journal of the Astronautical Sciences,” SpringerLink, 14-May-2019.
[Online]. Available: https://link.springer.com/article/10.1007/s40295-019-00158-3. [Accessed: 25-
Jan-2023].

[5] “Predicting low Earth Orbit Satellite Communications Quality and ...” [Online]. Available:
https://www.researchgate.net/profile/Riaan-Wolhuter/publication/228996619_Predicting_low_e
arth_orbit_satellite_communications_quality_and_visibility_over_time/links/
576a902508ae5b9a62b374bb/Predicting-low-earth-orbit-satellite-communications-quality-and-
visibility-over-time.pdf?origin=publication_detail. [Accessed: 24-Jan-2023].

[6] “A hybrid analytical-machine learning approach for Leo Satellite Orbit ...” [Online]. Available:
https://ieeexplore.ieee.org/abstract/document/9841298/. [Accessed: 24-Jan-2023].

[7] “Position, navigation, and timing technologies in the 21st century,” Google Books. [Online]. Available:
https://books.google.lk/books?hl=en&lr=&id=lYYpEAAAQBAJ&oi=fnd&pg=PR13&dq=%2BPosition
%2C%2Bnavigation%2C%2Band%2Btiming%2Btechnologies%2Bin%2Bthe%2B21st
%2Bcentury&ots=T3P8pmg_np&sig=CE9tFXUZrhl7ZA5ScD06F7nbXao&redir_esc=y#v=onepage&q
=Position%2C%20navigation%2C%20and%20timing%20technologies%20in%20the%2021st
%20century&f=false. [Accessed: 25-Jan-2023].

14 | P a g e

You might also like