113 lines
No EOL
3.9 KiB
Text
113 lines
No EOL
3.9 KiB
Text
# Satellite Laser Echo Experiment
|
||
|
||
## Überblick
|
||
Das Projekt **satellite_laser_echo_experiment** untersucht die Messung von Laserreflexionen von Satelliten und deren anschließende Datenanalyse. Ziel ist die Entwicklung und praktische Erprobung eines Workflows bestehend aus Datenerfassung, Export, Analyse und Visualisierung.
|
||
|
||
[👉 Artikel über das Experiment](https://donau2space.de/laserreflexion-ueber-passau-ein-naechtliches-satellitenexperiment/)
|
||
|
||
Git Repository: [https://git.donau2space.de/Mika/satellite_laser_echo_experiment](https://git.donau2space.de/Mika/satellite_laser_echo_experiment)
|
||
|
||
### Hinweis
|
||
Alle Inhalte wurden per KI generiert.
|
||
|
||
Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko.
|
||
Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.
|
||
|
||
---
|
||
|
||
## Inhalt des Repositories
|
||
|
||
Das Repository enthält folgende Artefakte:
|
||
|
||
### 1. laser_tracking_cli_tool
|
||
- **Art**: linux_cli_tool
|
||
- **Ziel**: Linux Userspace
|
||
- **Sprache**: C
|
||
- **Zweck**: Steuerung des Lasersystems und Echtzeit-Tracking von Satelliten.
|
||
- **API-Funktionen**:
|
||
- `start_tracking(target_satellite, elevation_angle)` – Startet das Tracking eines bestimmten Satelliten.
|
||
- `get_status()` – Liefert den aktuellen Status des Trackings (Struktur `tracking_status` mit Feldern `active`, `last_update`, `deviation`).
|
||
|
||
### 2. laser_echo_analysis
|
||
- **Art**: python_script
|
||
- **Ziel**: Datenanalyse und Visualisierung
|
||
- **Sprache**: Python
|
||
- **Zweck**: Analyse der gesammelten Messdaten, Berechnung statistischer Kennwerte und Visualisierung der Ergebnisse.
|
||
- **API-Funktionen**:
|
||
- `analyze_data(data)` – Führt eine Analyse der Messdaten durch und gibt `analysis_results` zurück.
|
||
- `visualize_results(analysis_results)` – Visualisiert die Ergebnisse.
|
||
- **Datenstrukturen**:
|
||
- `analysis_results` – JSON mit Feldern `peak`, `average_noise`, `signal_to_noise_ratio`.
|
||
|
||
### 3. laser_data_export
|
||
- **Art**: csv_dataset
|
||
- **Ziel**: Datenaustausch
|
||
- **Sprache**: CSV
|
||
- **Zweck**: Speicherung und Export der Messdaten zur externen Weiterverarbeitung.
|
||
- **API-Funktionen**:
|
||
- `export_to_csv(data, filename)` – Exportiert Messdaten in ein CSV-Format.
|
||
- **Datenstrukturen**:
|
||
- `measurement_data` – Tabelle mit Feldern `timestamp`, `pixel_value`, `time_offset`.
|
||
|
||
---
|
||
|
||
## Build & Installation
|
||
### Voraussetzungen
|
||
- Linux-basierte Umgebung mit GCC und Make
|
||
- Optional: Python 3.8+ für Analyse und Visualisierung
|
||
- Git-Zugang zum Repository
|
||
|
||
### Schritte
|
||
1. Repository klonen:
|
||
```bash
|
||
git clone https://git.donau2space.de/Mika/satellite_laser_echo_experiment.git
|
||
cd satellite_laser_echo_experiment
|
||
```
|
||
2. Build des CLI-Tools:
|
||
```bash
|
||
cd laser_tracking_cli_tool
|
||
make
|
||
```
|
||
3. Python-Umgebung vorbereiten:
|
||
```bash
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
### Beispielaufrufe
|
||
Starten des Satellitentrackings:
|
||
```bash
|
||
./laser_tracking_cli_tool --target "STARLINK-3015" --elevation 47.5
|
||
```
|
||
Analyse und Visualisierung der Daten:
|
||
```bash
|
||
python laser_echo_analysis.py data/measurements.csv
|
||
```
|
||
|
||
---
|
||
|
||
## Typische Use-Cases
|
||
- Durchführung einer Laserreflexionsmessung mit Satelliten-Tracking
|
||
- Export und Speicherung von Rohdaten im CSV-Format
|
||
- Analyse der Signalqualität über `analyze_data()`
|
||
- Visualisierung der Ergebnisse mittels Python-Skript
|
||
- Validierung der Messergebnisse durch Vergleich mehrerer Erfassungszyklen
|
||
|
||
---
|
||
|
||
## Struktur & Erweiterbarkeit
|
||
Das Projekt ist modular aufgebaut:
|
||
- **CLI-Komponente (C)** – Steuerung und Datenerfassung
|
||
- **Python-Komponente** – Analyse und Visualisierung
|
||
- **CSV-Datenausgabe** – Austauschformat für externe Analysesoftware
|
||
|
||
Erweiterungsmöglichkeiten:
|
||
- Einbindung weiterer Analysefunktionen (FFT, Rauschfilter)
|
||
- Integration zusätzlicher Sensorkomponenten
|
||
- Automatisierte Datenuploads an wissenschaftliche Datenbanken
|
||
|
||
---
|
||
|
||
## Lizenz
|
||
Dieses Projekt steht unter der **MIT-Lizenz**.
|
||
|
||
© Mika Code Lab / Donau2Space Projektgruppe |