# WLAN Sternenhimmel Ilzstausee ## Überblick Dieses Repository dokumentiert das Experiment **wlan_sternenhimmel_ilzstausee**. Ziel des Projekts ist die Erfassung und Visualisierung von WLAN-Signalen am Ilzstausee. Dafür wurde ein ESP32 eingesetzt, der mithilfe eines Spektrum-Analyzers die Signalstärken aufzeichnet. Die Daten werden anschließend in Echtzeit visualisiert, um die räumliche Verteilung der WLAN-Signale darzustellen. **Link zum Artikel:** [https://donau2space.de/wlan-sternenhimmel-am-ilzstausee/](https://donau2space.de/wlan-sternenhimmel-am-ilzstausee/) **Git Repository:** [https://git.donau2space.de/Mika/wlan_sternenhimmel_ilzstausee](https://git.donau2space.de/Mika/wlan_sternenhimmel_ilzstausee) ### 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 umfasst drei Hauptartefakte, die zusammen den Erfassungs- und Visualisierungsprozess der WLAN-Daten unterstützen. ### 1. data_logging - **Art:** Python Script - **Ziel:** Mixed (ESP32 + lokale Verarbeitung) - **Sprachen:** Python - **Zweck:** Erfassung und Protokollierung von WLAN-Signalstärken über den ESP32. **API-Funktionen:** - `log_wifi_data(timestamp, frequency, signal_strength)` – protokolliert eine Messung im JSON-Format. **Datenstruktur:** - `log_entry` (JSON): *timestamp*, *frequency*, *signal_strength* ### 2. gps_sync - **Art:** Python Script - **Ziel:** Mixed - **Sprachen:** Python - **Zweck:** Synchronisierung der erfassten WLAN-Daten mit GPS-Koordinaten, um Signalstärken präzisen Positionen zuzuordnen. **API-Funktionen:** - `sync_with_gps(gps_data, wifi_data)` – kombiniert GPS- und WLAN-Daten zu einem synchronisierten Datensatz. **Datenstruktur:** - `synced_data_entry` (JSON): *timestamp*, *latitude*, *longitude*, *signal_strength* ### 3. data_visualization - **Art:** Web UI - **Ziel:** Web - **Sprachen:** HTML, CSS, JavaScript - **Zweck:** Echtzeitvisualisierung der gesammelten WLAN-Daten in Form einer dynamischen Heatmap. **API-Funktionen:** - `render_heatmap(data)` – erzeugt eine visuelle Darstellung der Signalverteilung anhand der bereitgestellten Daten. **Datenstruktur:** - `heatmap_data` (JSON): *location*, *intensity* ## Voraussetzungen (Webserver/DB) - Ein lokaler oder externer Webserver mit Unterstützung für statische HTML-, CSS- und JS-Dateien. - Zugriff auf die durch die Python-Skripte generierten JSON-Daten. ## Installation & Nutzung ### Python-Komponenten 1. Python 3.9+ installieren. 2. Erforderliche Bibliotheken installieren (z. B. `pip install -r requirements.txt`). 3. Skripte auf den ESP32 sowie das Auswertungsgerät übertragen. ### Web-Oberfläche 1. Inhalt des `data_visualization`-Ordners auf einen Webserver kopieren. 2. Datenquelle der Heatmap im JS-Code auf die erzeugten JSON-Dateien verweisen. 3. Im Browser aufrufen, um die Echtzeitergebnisse anzuzeigen. ## Typische Use-Cases - Erfassen von WLAN-Signalstärken an einem geografisch abgegrenzten Ort. - Zuordnung der Signalstärke zu GPS-Koordinaten. - Echtzeit-Visualisierung der Kommunikationslandschaft eines Gebiets. - Nachträgliche Analyse der Signalverfügbarkeit zur Netzoptimierung. ## Struktur & mögliche Erweiterungen - **data_logging:** kann erweitert werden zur Erfassung zusätzlicher Frequenzbänder. - **gps_sync:** Erweiterung um Differenzial-GPS zur Verbesserung der Genauigkeit. - **data_visualization:** Integration zusätzlicher Visualisierungsmodi (z. B. Zeitverlauf, Spektrumfluss-Diagramm). ## Lizenz Dieses Projekt steht unter der **MIT-Lizenz**. --- *Die Inhalte wurden automatisch durch eine KI generiert. Nutzung erfolgt auf eigene Verantwortung.*