EE 499 · Labs · Student work

Student Tracker Projects

Created by Satellite Technologies students.

These tracker applications were developed by four student groups as part of the course. They are published here so students can review different approaches, compare design choices and evaluate their own work.

Student Work: These trackers are published as submitted student projects and may use different approaches and design choices.

Submitted projects

The four groups

Student Work — Engineering Review: These trackers are published as submitted student projects. They demonstrate different design approaches and may contain modeling or implementation limitations. Use the Engineering Review and analytical course equations when evaluating their results.

The Engineering Rating summarizes the instructor-side technical review of each tracker. It reflects engineering correctness, functionality, validation, usability and communication. It is not a course grade. The stars summarize the technical review; use the Engineering Review for the specific strengths and improvement areas.

Group 1

Dual 3D/2D Orbit Visualizer

Engineering Rating2 out of 5 stars

Students Sultan Almudihem, Mohammed Alshehri

A 3D orbit view with a 2D ground-track projection. Orbital elements (semi-major axis, eccentricity, inclination, argument of perigee), one to three satellites and the simulation speed are adjustable, with Circular (ISS) and Molniya presets and perigee, apogee, period and speed readouts.

Open Tracker (Group 1, opens in a new tab)
View Engineering Review

Engineering Review

What works well

  • The orbit shape responds correctly to eccentricity, inclination and argument of perigee: the maximum latitude equals the inclination, and the perigee and apogee radii follow a(1 − e) and a(1 + e).
  • Perigee speed follows the vis-viva relation, and showing the 3D orbit beside a 2D projection makes the geometry easy to compare.

What could be improved

The displayed orbital period uses a fixed coefficient (about 1.66·a1.5 hours), which does not match the Keplerian period: a 7,327 km orbit shows 2.0 h, where 2π√(a3/μ) gives 1.73 h. The satellite also moves at the same angular rate on every orbit, so orbit size does not change its period.

Try this next

Compute the analytical period for a circular orbit and compare it with the displayed value. Then use the mean motion n = √(μ/a3) to drive the satellite, so that a larger orbit takes longer.

Group 2

Orbit Visualizer — EE499

Engineering Rating5 out of 5 stars

Students Mohamad Majd Ajaj, Abdulaziz El Refai, Ishmam Rayan

A 3D inertial-frame view with an Earth-fixed ground-track map, based on a two-body Keplerian model. It supports several satellites, Walker-delta constellation generation, a ground station with coverage and visibility, speed and eccentricity displays, and built-in physics checks.

Open Tracker (Group 2, opens in a new tab)
View Engineering Review

Engineering Review

What works well

  • The Checks panel tests the model against known cases (Kepler residual, energy and angular-momentum conservation, GEO drift, Molniya reference values). All 24 checks pass, and independent calculations gave the same values.
  • The 3D inertial view and the Earth-fixed ground track agree, and the alignment marker lets users confirm that the globe and the map share one frame.

What could be improved

State the model assumptions where users can see them: Earth rotation angle zero at t = 0, a spherical Earth of radius 6378.137 km with geocentric latitude, and no J2 or drag. They are documented in code comments and notes, but not in the published interface.

Try this next

Add a check for the westward shift of the ground track per orbit for a 400 km circular orbit (about 23° per orbit) and show it beside the existing checks.

Group 3

Satellite Orbit Visualizer

Engineering Rating3 out of 5 stars

Students Abdulaziz Alamer, Abdullah Dafterdar, Osama Alwhaidi

A 3D Keplerian orbit view with a 2D ground-track map. Satellites can be added and deleted, standard orbits (GEO, GPS, Molniya, QZSS, Sun-synchronous, ISS) load as presets, and the Keplerian elements, simulation speed and play, pause and reset are adjustable, with altitude, latitude/longitude and period readouts.

Open Tracker (Group 3, opens in a new tab)
View Engineering Review

Engineering Review

What works well

  • The model is complete (all six Keplerian elements, including RAAN and mean anomaly) and runs on a physical clock: the displayed period matches 2π√(a3/μ), and the maximum latitude equals the inclination in every case tested.
  • The ground track is built from the propagated motion with Earth rotation, so it shows how successive passes shift, and presets such as the 24-satellite GPS constellation show constellation geometry well.

What could be improved

Keep the Earth orientation consistent. The 3D globe is a mirror image of the 2D map (a satellite reported at 80°E on the map appears at 80°W on the globe), and the Earth rotates at 2π/86,400 s rather than the sidereal rate, so the GEO preset drifts about 1° per day.

Try this next

Run the GEO preset for three simulated days and measure its longitude drift. Then compare the satellite position over the same point in both views, and adjust the axis mapping and the rotation rate until they agree.

Group 4

Ground Track — Orbit Visualizer

Engineering Rating3.5 out of 5 stars

Students Mohammed Alamri, Meshal Aldbas, Abdullah Shallan

An orbit and coverage visualizer that pairs an inertial 3D view of the Earth, which you can drag and zoom, with an equirectangular ground-track map and a running mission clock.

Open Tracker (Group 4, opens in a new tab)
View Engineering Review

Engineering Review

What works well

  • Frames and propagation are consistent: the Earth rotates at the sidereal rate, the 3D globe and the 2D map agree to within 0.1°, and the GEO preset stays over the same longitude (about 0.1° of drift in a sidereal day).
  • Coverage footprints are computed from altitude and minimum elevation and drawn in both views, which links orbit height to what the satellite can see.

What could be improved

The minimum altitude is set equal to the Earth’s radius (6,371 km), so the ISS-like and sun-synchronous presets run at a 12,742 km semi-major axis (period 238.6 min instead of about 92.6 min) and a low Earth orbit cannot be entered. A limit on the perigee radius would keep orbits physically valid while still allowing low orbits.

Try this next

Load the ISS-like preset and compare the displayed period with the analytical value for a 420 km orbit (about 92.6 min). Then adjust the altitude limit and re-check the sun-synchronous preset.

Each group has an Engineering Review: technical feedback on the tracker for the next iteration, not a course grade. Each tracker opens in its own tab, exactly as the group submitted it. Some load their 3D libraries, map data or fonts from the internet, and the trackers were built for a desktop screen.

Reflection, not grading

Evaluate Your Own Tracker

Review your own group's tracker with this short rubric. Rate each criterion honestly, then use the reflection question to decide what to do next. Your ratings are not saved or shared, and nothing here is ranked.

Use the Engineering Review as one external perspective, then complete your own self-evaluation and compare it with what you observed in the other trackers.

CriterionReflection questionSelf-rating
FunctionalityDoes our tracker do what we intended reliably?
Functionality rating
Technical correctnessAre the calculations and outputs correct?
Technical correctness rating
ClarityCan another student understand how to use it quickly?
Clarity rating
Interface designIs the information presented clearly?
Interface design rating
ValidationDid we test it against known or expected results?
Validation rating
Engineering communicationAre assumptions and results explained clearly?
Engineering communication rating

Learn from each other

Compare with another group

Open at least one other group's tracker and compare it with your own. Then reflect on these questions. This is for reflection, not ranking.

  1. What did the other group do particularly well?
  2. What design decision would you adopt?
  3. What part of your own tracker is stronger?
  4. What would you improve in a second iteration?

Tip: place the two trackers side by side and give both the same orbit, for example a circular low-Earth orbit, then compare what each one shows.