Logo Lanfrica

Mqondisi-Magagula/iot-water-intelligence-system

Domaine:

environment and energy

Type de record:

software
Créateur:
Mqo
Hôte:
Real-time IoT data pipeline, ML analytics and financial ROI engine for industrial waste water treatment plants across Africa. # iot-water-intelligence-system > Real-time IoT data pipeline, ML analytics and financial ROI engine for industrial waste water treatment plants across Africa. --- ## Table of Contents - Overview - Architecture - Project Structure - Quick Start - Pipeline Stages - ML Models - Financial Savings Engine - Dashboards - Configuration - Development - Docs --- ## Overview Waste water treatment plants collect sensor and PLC data continuously — every second, 24/7. Before this platform existed, that data sat unused inside MQTT brokers with no way to analyse it, visualise it, or report on it. This platform solves four problems: | Problem | Solution | |---|---| | Raw PLC data arriving every second with no storage | Real-time MQTT ingestion → TimescaleDB hypertables | | Each plant has a different payload schema | Unified ETL pipeline with recursive normalisation | | Unusual spikes in water levels go undetected | XGBoost anomaly detection model | | No way to prove financial ROI to clients and boards | Municipality-tariff-based rand savings calculator | **Scale:** Designed for multi-plant, multi-country deployment. Each plant runs its own MQTT broker. The pipeline handles schema variance without code changes per plant. **Stack:** Python · MQTT (paho) · TimescaleDB · PostgreSQL · XGBoost · scikit-learn · Pandas · NumPy · FastAPI · Grafana · Docker Compose · Oracle Cloud Linux --- ## Architecture ``` ┌─────────────────────────────────────────────────────────────────┐ │ Plant Site (per plant) │ │ PLCs / Sensors ──► MQTT Broker (1883) │ └──────────────────────────────┬──────────────────────────────────┘ │ MQTT subscribe (#) ▼ ┌─────────────────────────────────────────────────────────────────┐ │ Ingestion Layer │ │ ingestion/ingestor.py │ │ • Auto-discovers plants from topic names │ │ • Decod …