Temperature vs Time
+ +Voltage vs Time
+ +Telemetry Data Table
+| Time | +Temperature (°C) | +Voltage (V) | +
|---|
diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..d862b8d Binary files /dev/null and b/.DS_Store differ diff --git a/task2/README.md b/task2/README.md new file mode 100644 index 0000000..6c4a6e4 --- /dev/null +++ b/task2/README.md @@ -0,0 +1,6 @@ +# SAST — Satellite Telemetry Dashboard + +This project visualizes mock telemetry data for a fictional SAST CubeSat. +It shows two charts: Temperature vs Time and Voltage vs Time, plus a data table. + + diff --git a/task2/astro2.png b/task2/astro2.png new file mode 100644 index 0000000..b75b514 Binary files /dev/null and b/task2/astro2.png differ diff --git a/task2/index.html b/task2/index.html new file mode 100644 index 0000000..f9d74e9 --- /dev/null +++ b/task2/index.html @@ -0,0 +1,53 @@ + + +
+ + +Live Visualization of Satellite Temperature & Voltage
+| Time | +Temperature (°C) | +Voltage (V) | +
|---|
+
+
+
+
diff --git a/task2/script.js b/task2/script.js
new file mode 100644
index 0000000..7683a57
--- /dev/null
+++ b/task2/script.js
@@ -0,0 +1,102 @@
+// ⭐ STARFIELD BACKGROUND
+const canvas = document.getElementById("stars");
+const ctx = canvas.getContext("2d");
+
+canvas.width = window.innerWidth;
+canvas.height = window.innerHeight;
+
+let stars = [];
+
+for (let i = 0; i < 150; i++) {
+ stars.push({
+ x: Math.random() * canvas.width,
+ y: Math.random() * canvas.height,
+ size: Math.random() * 2,
+ speed: Math.random() * 0.4
+ });
+}
+
+function animateStars() {
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
+ stars.forEach(s => {
+ ctx.fillStyle = "white";
+ ctx.fillRect(s.x, s.y, s.size, s.size);
+ s.y += s.speed;
+ if (s.y > canvas.height) s.y = 0;
+ });
+ requestAnimationFrame(animateStars);
+}
+
+animateStars();
+
+// ⭐ LOAD TELEMETRY DATA
+fetch("telemetry.json")
+ .then(res => res.json())
+ .then(data => {
+ const labels = data.map(d => d.time);
+ const temps = data.map(d => d.temp);
+ const volts = data.map(d => d.voltage);
+
+ // Fill Table
+ const tableBody = document.querySelector("#dataTable tbody");
+ data.forEach(row => {
+ tableBody.innerHTML += `
+