not ideal but working bat charging

This commit is contained in:
2026-02-03 15:05:29 +01:00
parent 5b39f80862
commit a7a2da2eb2
11 changed files with 1241 additions and 37 deletions

View File

@ -7,7 +7,7 @@ Użyj mojego kodu E3WOTQ w koszyku w aplikacji. Bonus trafi do Twojego Portfela
!!! Dedykowana Karta do integracji:
https://github.com/balgerion/ha_Pstryk_card
[![Wersja](https://img.shields.io/badge/wersja-1.7.2-blue)](https://github.com/balgerion/ha_Pstryk/)
[![Wersja](https://img.shields.io/badge/wersja-1.8.0-blue)](https://github.com/balgerion/ha_Pstryk/)
Integracja dla Home Assistant umożliwiająca śledzenie aktualnych cen energii elektrycznej oraz prognoz z platformy Pstryk.
@ -27,7 +27,10 @@ Integracja dla Home Assistant umożliwiająca śledzenie aktualnych cen energii
- 📡 Integracja wystawia po lokalnym MQTT tablice cen w natywnym formacie EVCC
- 📊 Średnia zakupu oraz sprzedaży - miesięczna/roczna
- 📈 Bilans miesięczny/roczny
- 🛡️ Debug i logowanie
- 🛡️ Debug i logowanie
- 🔋 **NOWOŚĆ:** Sensor rekomendacji baterii (charge/discharge/standby)
- ⚡ Algorytm intra-day arbitrage (ładowanie w taniej godziny, rozładowywanie w drogie)
- 📊 Prognoza SoC na 24h z automatycznym planowaniem
## Instalacja
@ -84,6 +87,7 @@ logo.png (opcjonalnie)
| `sensor.pstryk_daily_financial_balance` | Dzienny bilans kupna/sprzedaży |
| `sensor.pstryk_monthly_financial_balance`| Miesięczny bilans kupna/sprzedaży |
| `sensor.pstryk_yearly_financial_balance` | Roczny bilans kupna/sprzedaży |
| `sensor.pstryk_battery_recommendation` | **NOWOŚĆ:** Rekomendacja baterii (charge/discharge/standby) |
Przykładowa Automatyzacja:
@ -148,6 +152,88 @@ actions:
```
## Sensor Rekomendacji Baterii 🔋
Sensor `sensor.pstryk_battery_recommendation` automatycznie oblicza kiedy ładować/rozładowywać magazyn energii bazując na dynamicznych cenach Pstryk.
### Stany sensora
| Stan | Opis |
|------|------|
| `charge` | Ładuj baterię (tania energia) |
| `discharge` | Rozładuj baterię do domu/sieci (droga energia) |
| `standby` | Bez akcji |
### Algorytm Intra-day Arbitrage
Algorytm wykrywa **wiele okien arbitrażowych w ciągu dnia**:
1. **Nocne ładowanie** (00:00-05:59) - najtańsze godziny
2. **Poranny szczyt** (06:00-10:59) - rozładowanie
3. **Dolina południowa** (11:00-14:59) - ładowanie jeśli opłacalne vs wieczór
4. **Wieczorny szczyt** (15:00-20:59) - rozładowanie
**Przykład typowych cen polskich:**
```
Noc (0.80 PLN) → CHARGE
Poranek (2.58 PLN) → DISCHARGE
Południe (1.46 PLN)→ CHARGE (arbitraż: 1.46 × 1.25 = 1.83 < 2.63 avg wieczór)
Wieczór (3.10 PLN) → DISCHARGE
```
### Konfiguracja Baterii
W opcjach integracji dostępne są ustawienia:
| Parametr | Domyślnie | Opis |
|----------|-----------|------|
| Włącz sensor baterii | false | Aktywuje sensor |
| Entity SoC | - | Sensor stanu naładowania baterii |
| Pojemność | 15 kWh | Pojemność magazynu |
| Szybkość ładowania | 28 %/h | Jak szybko ładuje się bateria |
| Szybkość rozładowania | 10 %/h | Jak szybko rozładowuje się bateria |
| Minimalny SoC | 20% | Próg poniżej którego nie rozładowujemy |
| Liczba godzin ładowania | 6 | Ile najtańszych godzin do ładowania |
| Mnożnik progu discharge | 1.3 | Cena musi być 1.3x wyższa od avg charge |
### Atrybuty sensora
```yaml
sensor.pstryk_battery_recommendation:
state: "charge"
attributes:
current_price: 0.45
current_soc: 65
avg_charge_price: 0.25
discharge_threshold: 0.325
charge_hours: [0,1,2,3,4,11,12,13,14,23]
discharge_hours: [6,7,8,9,10,15,16,17,18,19,20]
standby_hours: [5,21,22]
midday_arbitrage:
profitable: true
midday_charge_hours: [11,12,13,14]
reason: "Mid-day arbitrage charge..."
next_state_change: "15:00"
next_state: "discharge"
```
### Automatyzacja sterowania falownikiem
Przykładowa automatyzacja do sterowania falownikami jest dostępna w pliku:
📁 `automations/battery_control_pstryk.yaml`
**Funkcje:**
- Natychmiastowa reakcja na zmianę sensora (30s debounce)
- Ochrona przed przeładowaniem przyłącza (np. Tesla charging > 2000W → standby)
- Sterowanie wieloma falownikami
- Logowanie do logbook
**Jak użyć:**
1. Skopiuj zawartość `automations/battery_control_pstryk.yaml`
2. W HA: Ustawienia → Automatyzacje → Utwórz → Edytuj w YAML → Wklej
3. Dostosuj `device_id` i `entity_id` do swoich urządzeń
4. Zapisz i włącz
## EVCC
### Scrnshoty