SMARD-Utils – Dokumentation
Wichtiger Hinweis: Diese Tools werden ohne Gewähr angeboten. Keine Haftung für Richtigkeit der Ergebnisse oder Verfügbarkeit. Quellcode: github.com/fritzthekid/smard-utils
Ziel
SMARD-Utils analysiert den wirtschaftlichen Nutzen von Batteriespeichern für Erneuerbare-Energie-Anlagen. Die zentrale Frage lautet:
Dazu werden historische Erzeugungsdaten von SMARD.de (Bundesnetzagentur) mit stündlichen EPEX-Spotpreisen kombiniert. Verschiedene Ladestrategien werden für eine Reihe von Speichergrößen simuliert und verglichen.
Vier Szenarien
- Biogasanlage (biobatsys) – Konstante Einspeisung einer BHKW-Anlage auf dem Spotmarkt. Berechnet zusätzlich die EEG-Flexibilisierungsprämie.
- Solarpark (solbatsys) – Großer PV-Park mit Speicher. Optimiert den Exportzeitpunkt, um Einnahmen aus der Spotmarktvermarktung zu maximieren.
- Quartier/Community – Wohnquartier mit Solar + Wind und realem Verbrauch. Bewertet Autarkierate und Kosteneinsparungen gegenüber einem Fixpreis- oder Spotpreis-Einkauf.
- Heimspeicher (homebatsys) – Haushaltsbatteriespeicher mit PV-Anlage. Maximiert Eigenversorgung (Autarkie) ohne Spotpreisdaten – nur fester Haushaltsstrompreis erforderlich.
Datenquellen
SMARD.de – Erzeugungsdaten
Die Erzeugungsdaten (Wind Onshore/Offshore, Solar, Biomasse, Wasserkraft, Netzlast) stammen von der API der Bundesnetzagentur: smard.de. Die Daten liegen im 15-Minuten- oder Stundentakt vor und werden als CSV-Dateien (Semikolon-getrennt, deutsches Dezimalformat) heruntergeladen.
Der Downloader smard_utils/smard_downloader_quaterly.py
lädt die Daten in 14-Tage-Paketen herunter und legt sie unter
quarterly/smard_data_{region}/ ab.
Netztransparenz.de – Spotpreise
Stündliche EPEX-Spotpreise (Day-Ahead-Auktion) werden von
netztransparenz.de
bezogen. Das Skript smard_utils/utils/prepare_hourly_prices.py
konvertiert die Rohdaten in das Format
costs/{jahr}-hour-price.csv (Spalten: time, price in ct/kWh).
Installation
- Repository klonen:
git clone https://github.com/fritzthekid/smard-utils.git cd smard-utils
- Virtuelle Umgebung erstellen und aktivieren:
python3 -m venv .venv source .venv/bin/activate # Linux / macOS .venv\Scripts\activate # Windows
- Paket installieren:
pip install -e .
- Tests ausführen (optional):
pytest
Datenvorbereitung
Die Tools erwarten zwei Arten von Eingabedaten:
| Datei | Inhalt | Standardpfad |
|---|---|---|
| SMARD-CSV | Erzeugung & Netzlast (15 min / 1 h) | quarterly/smard_data_de/smard_2024_complete.csv |
| Preisdaten | Stündliche Spotpreise in ct/kWh | costs/2024-hour-price.csv |
Für Luxemburg wird smard_data_lu als Regionscode verwendet.
Eigene Dateipfade können mit -d übergeben werden.
CLI-Befehle
Nach der Installation stehen fünf Kommandozeilenwerkzeuge bereit:
| Befehl | Szenario | Standard-Strategie | Standard-Region |
|---|---|---|---|
biobatsys | Biogasanlage + Spotmarkt | price_threshold | de |
solbatsys | Solarpark + Spotmarkt | dynamic_discharge | de |
community | Quartier (Solar + Wind + Verbrauch) | dynamic_discharge | lu |
homebatsys | Heimspeicher (PV + Autarkie) | autarky | – |
senec2smardformat | SENEC-Daten in SMARD-Format konvertieren | – | – |
Gemeinsame Optionen
| Option | Beschreibung |
|---|---|
-s, --strategy | BMS-Strategie: price_threshold, dynamic_discharge, day_ahead, autarky (nur homebatsys) |
-r, --region | Region: de (Deutschland), lu (Luxemburg) |
-d, --data | Pfad zur SMARD-CSV-Datei (überschreibt Automatik) |
-y, --year | Jahr der Preisdaten (Standard: aus Dateiname) |
-h, --help | Hilfe anzeigen |
Schnellstart-Beispiele
# Biogasanlage, Tag-zuvor-Strategie, Luxemburg biobatsys -s day_ahead -r lu # Solarpark, Deutschland, eigene Datei solbatsys -d pfad/zu/smard_daten.csv # Quartier, Tag-zuvor-Strategie community -s day_ahead # Heimspeicher, eigene Haushaltsdaten homebatsys -d 2024-home.csv --fix-price 0.32 --feed-in 0.082 # Alle Strategien für Biogasanlage vergleichen biobatsys -s price_threshold biobatsys -s dynamic_discharge biobatsys -s day_ahead
Lizenz
Dieses Projekt steht unter der BSD-Lizenz.