Lippe-Pegelstände
Echtzeit-Monitoring des Wasserstands an der Lippe
Verfolge aktuelle Pegelstände der Lippe in Echtzeit. Die Daten werden alle 5 Minuten automatisch aktualisiert und stammen von den EGLV-Messtation zwischen Lippetal, Heintroper Straße und Wesel-Fusternberg.
📡 Über das Pegel-Monitoring-System
Der Pegel-Monitor nutzt Daten der EGLV (Emschergenossenschaft und Lippeverband), um den Wasserstand der Lippe in Echtzeit zu überwachen. Die Messstationen erfassen kontinuierlich den Pegelstand und senden die Daten an das EGLV-System.
Diese Anwendung ruft die Daten automatisch alle 5 Minuten ab, speichert sie in einer MariaDB-Datenbank und visualisiert sie in einem interaktiven Diagramm. So sind Trends erkennbar und die Entwicklung des Wasserstands über einen Zeitraum von bis zu 30 Tagen zu verfolgen.
Erfasste Daten
- Wasserstand: In Zentimetern über Pegelnullpunkt
- Zeitverlauf: Verlauf von 24 Stunden bis 30 Tagen
- Statistiken: Minimum, Maximum, Durchschnitt
- Trend: Steigend, fallend oder stabil
- Referenzwerte: MNW, MW, MHW (statistische Mittelwerte)
- Koordinaten: GPS-Position der Messstationen
⚙️ Technische Details
🛰️ Datenquelle
- Anbieter: EGLV (pegel.eglv.de)
- Aktualisierung: Alle 5 Minuten
- Gewässer: Lippe
- Einzugsgebiet: 2755,5 km²
- Stationen: 20 Messstationen (Lippetal bis Wesel-Fusternberg)
🗄️ Datenbank
- Engine: MariaDB 11.4
- Speicherdauer: 30 Tage rollierend
- Auto-Cleanup: Täglich um 3:00 Uhr
- Tabellen: measurements, stations
- Messungen/Tag: ~5.760 (20 Stationen)
- Speicherbedarf: ~30 MB (30 Tage)
🔌 REST API
- Sprache: PHP 8.2
- Endpoints: 3 (current, history, stations)
- Format: JSON (UTF-8)
- CORS: Aktiviert
- Zeiträume: 1-30 Tage konfigurierbar
📊 Visualisierung
- Chart-Engine: Chart.js 4.4
- Zeiträume: 24h, 7 Tage, 30 Tage
- Interaktiv: Zoom, Hover für Details
- Responsive: Mobile-optimiert
- Referenzlinien: MNW/MW/MHW eingeblendet
🗺️ Messstation
⚙️ Backend
- Server: Node.js (PM2)
- HTTP Client: Axios
- Scraping-Intervall: 5 Minuten
- Datenbank-Treiber: mysql2
- Koordinaten-Parsing: UTM → Lat/Lon Konvertierung
- Threshold-Extraktion: Automatisch via Regex
🎨 Frontend
- HTML5: Semantisches Markup
- CSS3: Glassmorphism-Design
- JavaScript: Vanilla ES6+
- Charts: Chart.js mit Animationen
- Auto-Reload: Alle 5 Minuten
- Station-Auswahl: 20 Stationen verfügbar
📈 Funktionen
- Live-Updates: Automatische Aktualisierung
- Trend-Anzeige: Steigend/Fallend/Stabil
- Statistiken: Min/Max/Durchschnitt
- Verlaufs-Chart: 24h bis 30 Tage
- Referenzwerte: MNW, MW, MHW
- Multi-Station: 20 Messstationen auswählbar
- GPS-Koordinaten: Genaue Position jeder Station
🔧 Infrastruktur
- Webserver: Lighttpd 1.4.82
- FastCGI: PHP-CGI 8.2
- OS: Alpine Linux
- Process Manager: PM2
- SSL: Let's Encrypt