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.4.tar.gz (37.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.4-py3-none-any.whl (34.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for eanalizer-0.3.4.tar.gz
Algorithm Hash digest
SHA256 2a314c898903fd03230a47a4766955fa4422cee53e4076bbc754bc22f89ae3a5
MD5 fb9a421a92f6d7fa2469b91fd9d6e30c
BLAKE2b-256 28b79bef0335995fef18aadc6a57f0e9a59de3bec21840f2185445af975c132c

See more details on using hashes here.

Provenance

The following attestation bundles were made for eanalizer-0.3.4.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.4-py3-none-any.whl.

File metadata

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

File hashes

Hashes for eanalizer-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5230b7182d14bb64d016b0b537d8aa7257024f4d0eced01c9d8dd35353914d5c
MD5 0b014ab674dc03d4f9d69cf500751650
BLAKE2b-256 7ad53088cb6e48f054e3b22b954cb6f7d4780e27920b305cb0dee235fa4dab40

See more details on using hashes here.

Provenance

The following attestation bundles were made for eanalizer-0.3.4-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