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

Uploaded Python 3

File details

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

File metadata

  • Download URL: eanalizer-0.3.7.tar.gz
  • Upload date:
  • Size: 38.8 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.7.tar.gz
Algorithm Hash digest
SHA256 4eb73c57f548c813027a9ba5e5b209c0cf5d0f37795afd9cadd94bc6d1e4808b
MD5 038989cebd8d8af19ca31e07325c7143
BLAKE2b-256 029595b698982c5f095a7ef6a47bab34682c80d277f1602296cb29844050d1b0

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: eanalizer-0.3.7-py3-none-any.whl
  • Upload date:
  • Size: 35.7 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 affe486acfb76ab37abf3c03359646fa8145236123ee22075fc0ae1c27dbe720
MD5 87a35d1d7345aeecec01d30f309dcfe8
BLAKE2b-256 7c3f6d23e467eeacc6e09e45d3030249db4d8aa532b0b5356dd4585a03620b5f

See more details on using hashes here.

Provenance

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