Skip to main content

Aplikacja do analizy zużycia energii elektrycznej z danych od operatorów (Enea, Tauron).

Project description

e-analizer

Aplikacja do analizy zużycia energii elektrycznej na podstawie danych od operatora (Enea). W większości stworzona przy użyciu asystenta AI Gemini.

Główne funkcjonalności

  • Wszechstronna Analiza: Obliczaj koszty energii w oparciu o różne taryfy (G11, G12, G12w), symuluj system net-metering lub fizyczny magazyn energii.
  • Analiza Rynkowa: Wykorzystaj rzeczywiste, godzinowe ceny rynkowe (RCE) pobierane z API PSE do precyzyjnej analizy finansowej.
  • Optymalizacja Magazynu: Oblicz optymalną pojemność magazynu energii w dwóch scenariuszach: dla samowystarczalności oraz dla arbitrażu taryfowego.
  • Porównanie Taryf: Automatycznie porównaj koszty dla wszystkich dostępnych taryf, aby znaleźć najkorzystniejszą opcję dla Twojego profilu zużycia.
  • Elastyczność i Eksport: Filtruj dane według zakresu dat, eksportuj godzinowe wyniki symulacji oraz dzienne agregaty do plików CSV.
  • Integralność Danych: Automatycznie wykrywaj i raportuj brakujące dane godzinowe w analizowanym okresie.

Instalacja

  1. Upewnij się, że masz zainstalowany menedżer pakietów pip oraz moduł venv dla Twojej wersji Pythona. W systemach bazujących na Debianie/Ubuntu:
    sudo apt update
    sudo apt install python3-pip python3-venv
    
  2. Skrypt eanalizer-cli przy pierwszym uruchomieniu automatycznie tworzy wirtualne środowisko i instaluje wszystkie potrzebne zależności.
  3. Zalecana instalacja jako aplikacja CLI (przez pipx):
    pipx install eanalizer
    
    lub Instalacja w trybie deweloperskim (z edytowalnym kodem):
    python3 -m venv .venv
    .venv/bin/pip install -e .
    

Dane o zużyciu

Dane o zużyciu energii w formacie CSV można pozyskać na dwa sposoby:

  1. Manualnie: Pobierz pliki z danymi godzinowymi z portalu Enea eBOK i umieść je w katalogu danych eanalizer.
  2. Automatycznie: Użyj dołączonego skryptu enea-downloader-cli, który po podaniu danych logowania do eBOK Enei automatycznie pobierze i zapisze wszystkie dostępne dane.

Lokalizacja plików konfiguracyjnych i danych

Program eanalizer przechowuje swoje pliki w standardowych lokalizacjach systemowych:

  • Konfiguracja (tariffs.csv): ~/.config/eanalizer/ (np. tariffs.csv)
  • Dane (pobrane CSV): ~/.local/share/eanalizer/
  • Cache (ceny RCE): ~/.cache/eanalizer/

Na innych systemach operacyjnych ścieżki mogą się różnić, zgodnie ze standardami platformdirs.

Użycie

Program uruchamia się za pomocą skryptu eanalizer-cli, który automatycznie zarządza wirtualnym środowiskiem.

Przykłady użycia

1. Podstawowa analiza kosztów dla taryfy G12w z net-meteringiem

./eanalizer-cli --taryfa G12w --z-netmetering

2. Symulacja fizycznego magazynu energii Symulacja magazynu o pojemności 10 kWh i sprawności 90%.

./eanalizer-cli --taryfa G12w --magazyn-fizyczny 10 --sprawnosc-magazynu 0.9

3. Porównanie wszystkich taryf w zadanym okresie

./eanalizer-cli --porownaj-taryfy --data-start 2024-01-01 --data-koniec 2024-12-31

4. Analiza finansowa w oparciu o ceny rynkowe (RCE)

./eanalizer-cli --z-cenami-rce --data-start 2025-01-01 --data-koniec 2025-01-07

5. Obliczenie optymalnej pojemności magazynu i eksport danych

./eanalizer-cli --taryfa G12w --oblicz-optymalny-magazyn --eksport-dzienny dane_dzienne.csv

Pełna lista opcji

Flaga Skrót Opis
--pliki <pliki...> -p Wskazuje konkretne pliki CSV do analizy.
--katalog <katalog> -k Wskazuje katalog, z którego mają być wczytane wszystkie pliki CSV (domyślnie: $HOME/.local/share/eanalizer/).
--taryfa <nazwa> -t Określa taryfę do analizy (np. G11, G12w). Domyślnie G11.
--data-start <RRRR-MM-DD> Data początkowa analizy.
--data-koniec <RRRR-MM-DD> Data końcowa analizy.
--magazyn-fizyczny <kWh> Uruchamia symulację z fizycznym magazynem energii o podanej pojemności.
--sprawnosc-magazynu <0.0-1.0> Sprawność magazynu fizycznego (domyślnie 0.9).
--z-netmetering Włącza obliczenia dla wirtualnego magazynu (net-metering).
--wspolczynnik-netmetering <0.7/0.8> Współczynnik dla energii oddawanej w net-meteringu (domyślnie 0.8).
--z-cenami-rce Używa rzeczywistych cen rynkowych (RCE) zamiast stałych cen taryfowych.
--porownaj-taryfy Uruchamia porównanie kosztów dla wszystkich dostępnych taryf.
--oblicz-optymalny-magazyn Oblicza i wyświetla optymalną pojemność magazynu dla dwóch scenariuszy.
--eksport-symulacji <plik.csv> Eksportuje godzinowe wyniki symulacji magazynu do pliku CSV.
--eksport-dzienny <plik.csv> Eksportuje zagregowane dane dzienne do pliku CSV.
--verbose -v Włącza tryb szczegółowy, np. dla porównania taryf.

Rozwój i Testowanie

Repozytorium jest skonfigurowane do pracy z pre-commit w celu automatycznego formatowania i sprawdzania kodu.

  1. Instalacja narzędzi deweloperskich:
    .venv/bin/pip install -r requirements-dev.txt
    
  2. Instalacja pre-commit hook:
    pre-commit install
    
  3. Uruchamianie testów:
    .venv/bin/python -m unittest discover tests
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eanalizer-0.3.6.tar.gz (38.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eanalizer-0.3.6-py3-none-any.whl (35.0 kB view details)

Uploaded Python 3

File details

Details for the file eanalizer-0.3.6.tar.gz.

File metadata

  • Download URL: eanalizer-0.3.6.tar.gz
  • Upload date:
  • Size: 38.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eanalizer-0.3.6.tar.gz
Algorithm Hash digest
SHA256 5d0a1a64cc872c80b81ad69ab19781a763b6e7187a5affeefd4cb51cf0cc0ae0
MD5 d9280a3805ce5da50139e6e03d1faed4
BLAKE2b-256 4cad9ba84f826ac4c53408bce973749411128aea7c2e2148b71e18743eae6d6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for eanalizer-0.3.6.tar.gz:

Publisher: release.yml on theundefined/eanalizer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eanalizer-0.3.6-py3-none-any.whl.

File metadata

  • Download URL: eanalizer-0.3.6-py3-none-any.whl
  • Upload date:
  • Size: 35.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eanalizer-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 ad6b7cf0ad207536eb173e5e269bcf11eded0546cf854b09c3aad6b802cb7435
MD5 8dae5686c2ac661505ef0c11c4d77c0b
BLAKE2b-256 1d9526b2d1d98633526cf22ae25d8b4f6b377b3048f2f601655b9a77bc6fb23a

See more details on using hashes here.

Provenance

The following attestation bundles were made for eanalizer-0.3.6-py3-none-any.whl:

Publisher: release.yml on theundefined/eanalizer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page