FVE s podporou z DS
Souhrn tématu
Diskuze se věnuje plánování a provozu fotovoltaické elektrárny (FVE) s podporou ze sítě (DS), která pokrývá spotřebu během vysokého tarifu pomocí solárních panelů a baterií. Probírá se vhodnost pasivního a aktivního balancování baterií, zkušenosti s BMS JBD a integrace do domácí automatizace přes ESPHome. Zvláštní pozornost je věnována provozu baterií v zimních podmínkách a praktickým úpravám bateriového boxu pro lepší funkčnost a bezpečnost.
- cipis
- Moderátor
- Příspěvky: 7308
- Registrován: pon srp 16, 2021 9:31 pm
- Reputace:1030
- Lokalita: blízko Brna
- Systémové napětí: 24V
- Výkon panelů [Wp]: 18+ kWp
- Kapacita baterie [kWh]: 40+26
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Bydliště: blízko Brna
Re: FVE s podporou z DS
Hmm, a podělíš se o to PBŘ?
18+ kWp v provozu, 7+ kWp čeká na montáž/zapojení
Regulátory Epever a Victron
MP 24/5000 + Deye mikroinvertory 1+2,25+0,8 kW (můj byt + máti byt)
MP 24/1200 inet, sit, kamery atd.
Phoenix 24/5000 vytěžování do akumulačních kamen
Epever 3kW vytěžování do bojlerů + žebříky
1 kW "nabíječka" 24 V
40+ kWh staré olovo 26+ kWh Li-Ion
několik dalších MP jako záložní zdroje na různých místech
Modře píši jako moderátor, černě jako člen.
Regulátory Epever a Victron
MP 24/5000 + Deye mikroinvertory 1+2,25+0,8 kW (můj byt + máti byt)
MP 24/1200 inet, sit, kamery atd.
Phoenix 24/5000 vytěžování do akumulačních kamen
Epever 3kW vytěžování do bojlerů + žebříky
1 kW "nabíječka" 24 V
40+ kWh staré olovo 26+ kWh Li-Ion
několik dalších MP jako záložní zdroje na různých místech
Modře píši jako moderátor, černě jako člen.
- rva
- Příspěvky: 5034
- Registrován: úte dub 23, 2013 10:21 am
- Reputace:988
- Lokalita: Kousek od Lysé nad Labem
- Systémové napětí: 48V
- Výkon panelů [Wp]: 46000
- Kapacita baterie [kWh]: 62
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Bydliště: Kousek od Lysé nad Labem
Re: FVE s podporou z DS
Tak už jsou i nějaké zkušenosti s tím EASUN baterry boxem. Články se rozcházejí víc, než u ostatních baterií, které jsem skládal:. Je vidět, že i větší firmy by se mohly učit od amatérů. Použitá JBD BMS má pouze pasivní balancér (palič) asi 50 mA, zatímco za podobnou cenu by si tam každý svéprávný bastlíř dal JK-BMS s aktivním balancováním alespoň 1A. Uvidím, jestli s tím časem něco udělám.
Do externího boxu jsem přesunul další baterii. Při stěhování jsem mohl přeměřit a zapsat na články jejich vnitřní odpor ( články jsou nabité, protože demontáž a montáž se nejlépe dělá za nabitého stavu, kdy do baterií skoro nic neteče), ještě se to musí učesat, chybí k tomu nějaké komponenty, ale už je zapojená do elektrárny. Postavena je na vozíku-plošině z LIDL (cca 250 Kč, papírová nosnost 250 kg). Ale kolečka jsem po testování vyměnil za jiná (oranžová
), která jsem vytisk z TPU (neprasknou a jak je model dost hustý, tak mají i pevnost). U baterií dávám sichr pojistku na + pól, tady jsem vyzkoušel z Allegro kompaktní typ: Má zbytečně velký montážní otvor, takže aby dobře seděla na terminálu této baterie, vypodložil jsem to Cu podložkama.
Jo a box je už nějak natřený, aby mu nevadila případná vlhkost a dalo se to utřít. Zavíraný zatím na petlici: Integrace do HA je přes esphome, kde jsem se vrátil k bezdrátovému řešení - s BMS se komunikuje přes BLE a přes wifi to jde do LAN a HA. Vyhovují mi moduly esp32 C3 s oled displejem. Než se vyřeší nákupy z Číny, tak Poláci jsou schopni to dodat za podobné ceny: Na displeji nechávám rotovat pár základních hodnot - napětí baterie, proud, max. rozdíl napětí mezi články. Komu se nechce to ladit, stačí změnit MAC adresu a mělo by to fungovat: Tyto moduly se akorát vejdou do krabičky podle esp32 C3 oled krabička a pak to vypadá nějak takto: Do boxu by měly přejít ještě nějaké baterie a jeden nabíječ pro zimní provoz. Zatím tam je místa dost.
A pokud jde o požár, tak u uzavřeného boxu nepočítám s požárem, ale výbuchem. Pro něj je potřeba vše připravit tak, aby tlaková vlna směřovala do bezpečné oblasti. U rozmetaných zbytků je pak celkem jedno, z jakého byly materiálu. Hlavně aby se neproměnily v neřízené střely.
Do externího boxu jsem přesunul další baterii. Při stěhování jsem mohl přeměřit a zapsat na články jejich vnitřní odpor ( články jsou nabité, protože demontáž a montáž se nejlépe dělá za nabitého stavu, kdy do baterií skoro nic neteče), ještě se to musí učesat, chybí k tomu nějaké komponenty, ale už je zapojená do elektrárny. Postavena je na vozíku-plošině z LIDL (cca 250 Kč, papírová nosnost 250 kg). Ale kolečka jsem po testování vyměnil za jiná (oranžová
Jo a box je už nějak natřený, aby mu nevadila případná vlhkost a dalo se to utřít. Zavíraný zatím na petlici: Integrace do HA je přes esphome, kde jsem se vrátil k bezdrátovému řešení - s BMS se komunikuje přes BLE a přes wifi to jde do LAN a HA. Vyhovují mi moduly esp32 C3 s oled displejem. Než se vyřeší nákupy z Číny, tak Poláci jsou schopni to dodat za podobné ceny: Na displeji nechávám rotovat pár základních hodnot - napětí baterie, proud, max. rozdíl napětí mezi články. Komu se nechce to ladit, stačí změnit MAC adresu a mělo by to fungovat:
Kód: Vybrat vše
substitutions:
name: battery-315ah
friendly_name: Baterie 315Ah
device_description: "Monitoruje a nastavuje baterii 315Ah na které je JK-BMS přes ble."
external_components_source: github://syssi/esphome-jk-bms@main
# BLE settings
mac_address: xx:xx:xx:1B:5B:A1
# Please use "JK02_24S" if you own a old JK-BMS < hardware version 11.0 (hardware version >= 6.0 and < 11.0)
# Please use "JK02_32S" if you own a new JK-BMS >= hardware version 11.0 (f.e. JK-B2A8S20P hw 11.XW, sw 11.26)
# Please use "JK04" if you have some old JK-BMS <= hardware version 3.0 (f.e. JK-B2A16S hw 3.0, sw. 3.3.0)
protocol_version: JK02_32S
esphome:
name: ${name}
# name_add_mac_suffix: false
comment: ${device_description}
project:
name: "syssi.esphome-jk-bms"
version: 2.1.0
esp32:
variant: esp32c3
framework:
type: esp-idf
external_components:
- source: ${external_components_source}
refresh: 0s
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "aQfp2mvgssO74Nf2fLtC8lih6SLXRoKGxViaRFxH3FM="
# Allow Over-The-Air updates
ota:
platform: esphome
password: "a4c918a61abbf937b5413b41e91c3823"
on_begin:
then:
- switch.turn_off: ble_client_switch0
- logger.log: "BLE connection suspended for OTA update"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Optional manual IP
# manual_ip:
# static_ip: 192.168.0.70
# gateway: 192.168.0.1
# subnet: 255.255.255.0
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "battery-315ah"
password: bxxx-315ah
# V HA se pak k položkám "edit" a "logs" objeví položka "visit", kde se po kliknutí otevře stránka esphome daného zařízení
# To have a "next url" for improv serial
web_server:
port: 80
# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:
i2c:
- id: bus_a
sda: GPIO5
scl: GPIO6
scan: true
# frequency: 10kHz
# timeout: 400us
# Nadefinování několika fontů, ze kterých si budu vybírat pro zobrazení na displeji
font:
- file: "gfonts://Roboto"
id: font1
size: 20
- file: "gfonts://Material+Symbols+Outlined"
id: font2
size: 12
- file: "gfonts://Material+Symbols+Outlined"
id: font3
size: 16
- file: "gfonts://Material+Symbols+Outlined"
id: font4
size: 32
time:
- platform: homeassistant
id: esptime
#dashboard_import:
# package_import_url: github://esphome/firmware/esphome-web/esp32c3.yaml@v2
# import_full_config: true
# Sets up Bluetooth LE (Only on ESP32) to allow the user
# to provision wifi credentials to the device.
#esp32_improv:
# authorizer: none
esp32_ble_tracker:
scan_parameters:
active: false
ble_client:
- mac_address: ${mac_address}
id: client0
jk_bms_ble:
- ble_client_id: client0
protocol_version: ${protocol_version}
throttle: 60s
id: bms0
# Override the label of one or more error bits (bit 0-31, JK02 only).
# An empty label suppresses the bit entirely.
#
# error_overrides:
# 4: "Cell overvoltage"
binary_sensor:
- platform: jk_bms_ble
balancing:
name: "balancing"
charging:
name: "charging"
discharging:
name: "discharging"
heating:
name: "heating"
online_status:
name: "online status"
button:
- platform: jk_bms_ble
retrieve_settings:
name: "retrieve settings"
retrieve_device_info:
name: "retrieve device info"
retrieve_logbook:
name: "retrieve logbook"
number:
- platform: jk_bms_ble
jk_bms_ble_id: bms0
balance_trigger_voltage:
name: "balance trigger voltage"
cell_count:
name: "cell count"
total_battery_capacity:
name: "total battery capacity"
cell_voltage_overvoltage_protection:
name: "cell voltage overvoltage protection"
cell_voltage_overvoltage_recovery:
name: "cell voltage overvoltage recovery"
cell_voltage_undervoltage_protection:
name: "cell voltage undervoltage protection"
cell_voltage_undervoltage_recovery:
name: "cell voltage undervoltage recovery"
balancing_start_voltage:
name: "balancing start voltage"
voltage_calibration:
name: "voltage calibration"
current_calibration:
name: "current calibration"
power_off_voltage:
name: "power off voltage"
max_balance_current:
name: "max balance current"
max_charge_current:
name: "max charge current"
max_discharge_current:
name: "max discharge current"
charge_overcurrent_protection_delay:
name: "charge overcurrent protection delay"
charge_overcurrent_protection_recovery_time:
name: "charge overcurrent protection recovery time"
discharge_overcurrent_protection_delay:
name: "discharge overcurrent protection delay"
discharge_overcurrent_protection_recovery_time:
name: "discharge overcurrent protection recovery time"
short_circuit_protection_delay:
name: "short circuit protection delay"
short_circuit_protection_recovery_time:
name: "short circuit protection recovery time"
charge_overtemperature_protection:
name: "charge overtemperature protection"
charge_overtemperature_protection_recovery:
name: "charge overtemperature protection recovery"
discharge_overtemperature_protection:
name: "discharge overtemperature protection"
discharge_overtemperature_protection_recovery:
name: "discharge overtemperature protection recovery"
charge_undertemperature_protection:
name: "charge undertemperature protection"
charge_undertemperature_protection_recovery:
name: "charge undertemperature protection recovery"
mosfet_overtemperature_protection:
name: "mosfet overtemperature protection"
mosfet_overtemperature_protection_recovery:
name: "mosfet overtemperature protection recovery"
sensor:
- platform: jk_bms_ble
jk_bms_ble_id: bms0
min_cell_voltage:
name: "min cell voltage"
max_cell_voltage:
name: "max cell voltage"
min_voltage_cell:
name: "min voltage cell"
max_voltage_cell:
name: "max voltage cell"
delta_cell_voltage:
name: "delta cell voltage"
id: bms0_delta_cell_voltage
average_cell_voltage:
name: "average cell voltage"
cell_voltage_1:
name: "cell voltage 1"
cell_voltage_2:
name: "cell voltage 2"
cell_voltage_3:
name: "cell voltage 3"
cell_voltage_4:
name: "cell voltage 4"
cell_voltage_5:
name: "cell voltage 5"
cell_voltage_6:
name: "cell voltage 6"
cell_voltage_7:
name: "cell voltage 7"
cell_voltage_8:
name: "cell voltage 8"
cell_voltage_9:
name: "cell voltage 9"
cell_voltage_10:
name: "cell voltage 10"
cell_voltage_11:
name: "cell voltage 11"
cell_voltage_12:
name: "cell voltage 12"
cell_voltage_13:
name: "cell voltage 13"
cell_voltage_14:
name: "cell voltage 14"
cell_voltage_15:
name: "cell voltage 15"
cell_voltage_16:
name: "cell voltage 16"
cell_resistance_1:
name: "cell resistance 1"
cell_resistance_2:
name: "cell resistance 2"
cell_resistance_3:
name: "cell resistance 3"
cell_resistance_4:
name: "cell resistance 4"
cell_resistance_5:
name: "cell resistance 5"
cell_resistance_6:
name: "cell resistance 6"
cell_resistance_7:
name: "cell resistance 7"
cell_resistance_8:
name: "cell resistance 8"
cell_resistance_9:
name: "cell resistance 9"
cell_resistance_10:
name: "cell resistance 10"
cell_resistance_11:
name: "cell resistance 11"
cell_resistance_12:
name: "cell resistance 12"
cell_resistance_13:
name: "cell resistance 13"
cell_resistance_14:
name: "cell resistance 14"
cell_resistance_15:
name: "cell resistance 15"
cell_resistance_16:
name: "cell resistance 16"
total_voltage:
name: "total voltage"
id: bms0_total_voltage
current:
name: "current"
id: bms0_current
heating_current:
name: "heating current"
power:
name: "power"
charging_power:
name: "charging power"
discharging_power:
name: "discharging power"
temperature_sensor_1:
name: "temperature sensor 1"
temperature_sensor_2:
name: "temperature sensor 2"
# temperature_sensor_3:
# name: "temperature sensor 3"
# temperature_sensor_4:
# name: "temperature sensor 4"
mosfet_temperature:
name: "mosfet temperature"
balancer_status_bitmask:
name: "balancer status bitmask"
state_of_charge:
name: "state of charge"
id: bms0_state_of_charge
capacity_remaining:
name: "capacity remaining"
full_charge_capacity:
name: "full charge capacity"
charging_cycles:
name: "charging cycles"
total_charging_cycle_capacity:
name: "total charging cycle capacity"
total_runtime:
name: "total runtime"
power_on_count:
name: "power on count"
balancing_current:
name: "balancing current"
switch:
- platform: jk_bms_ble
charging:
name: "charging"
discharging:
name: "discharging"
balancer:
name: "balancer"
- platform: ble_client
ble_client_id: client0
name: "enable bluetooth connection"
id: ble_client_switch0
text_sensor:
- platform: jk_bms_ble
errors:
name: "errors"
errors_bitmask_hex:
name: "errors bitmask hex"
balancer_status:
name: "balancer status"
total_runtime_formatted:
name: "total runtime formatted"
software_version:
name: "software version"
hardware_version:
name: "hardware version"
device_model:
name: "device model"
manufacturing_date:
name: "manufacturing date"
serial_number:
name: "serial number"
display:
- platform: ssd1306_i2c
i2c_id: bus_a
model: "SSD1306 72x40"
#reset_pin: D2
address: 0x3C
#za lambda se píše kód přímo v C. V tomto případě se na displeji střídá několik hodnot
lambda: |-
switch (id(page))
{
case 1:
it.strftime(5, 18, id(font1), TextAlign::BASELINE_LEFT, "%H:%M", id(esptime).now());
break;
case 2:
if (id(bms0_current).has_state())
{
it.printf(5, 20, id(font1), TextAlign::BASELINE_LEFT , "%.1f A", id(bms0_current).state);
}
break;
case 3:
if (id(bms0_state_of_charge).has_state())
{
it.printf(5, 22, id(font1), TextAlign::BASELINE_LEFT , "%.0f %%", id(bms0_state_of_charge).state);
}
break;
case 4:
if (id(bms0_total_voltage).has_state())
{
it.printf(5, 24, id(font1), TextAlign::BASELINE_LEFT , "%.1f V", id(bms0_total_voltage).state);
}
break;
case 5:
if (id(bms0_delta_cell_voltage).has_state())
{
it.printf(5, 26, id(font1), TextAlign::BASELINE_LEFT , "%.0f mV", id(bms0_delta_cell_voltage).state * 1000);
}
break;
}
globals:
- id: page
type: int
initial_value: "1"
# cyklus zajišťující v 1s intervalech zobrazení jednotlivých hodnot
interval:
- interval: 1s
then:
- lambda: |-
id(page) = (id(page) + 1);
if (id(page) > 5) {
id(page) = 1;
}
A pokud jde o požár, tak u uzavřeného boxu nepočítám s požárem, ale výbuchem. Pro něj je potřeba vše připravit tak, aby tlaková vlna směřovala do bezpečné oblasti. U rozmetaných zbytků je pak celkem jedno, z jakého byly materiálu. Hlavně aby se neproměnily v neřízené střely.
_______________________________________________________________________
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
- JirkaE
- Příspěvky: 2754
- Registrován: pát dub 21, 2023 7:17 pm
- Reputace:394
- Lokalita: Kousek od Rozvadova
- Systémové napětí: 48V
- Výkon panelů [Wp]: 7350
- Kapacita baterie [kWh]: 38
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
Re: FVE s podporou z DS
Nebojíš se promrzání toho schodu v zimě a nechtěný zbytečný chladnutí prostoru pro baterky skrz ten schod ?
Jinak skvělá práce a inspirace
- jak to dostat ven (do bezpečné vzdálenosti a za hlavní zeď)
Jinak skvělá práce a inspirace
Porovnání všech 4 stringů a nově i finálový celek s Victron a teploty vody bojlerů 1-3 a už i e-Transit
:
DC/AC - WATTMETR / Victron / Bojlery / E-Transit / DS
Domovské vlákno : Jirkova FVE
Spirály v bazaru : Spirály 55V - Je tam i ten test
DC/AC - WATTMETR / Victron / Bojlery / E-Transit / DS
Domovské vlákno : Jirkova FVE
Spirály v bazaru : Spirály 55V - Je tam i ten test
- rva
- Příspěvky: 5034
- Registrován: úte dub 23, 2013 10:21 am
- Reputace:988
- Lokalita: Kousek od Lysé nad Labem
- Systémové napětí: 48V
- Výkon panelů [Wp]: 46000
- Kapacita baterie [kWh]: 62
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Bydliště: Kousek od Lysé nad Labem
Re: FVE s podporou z DS
Jak se to bude chovat v zimě uvidím. Zatím předpokládám, že v boxu bude nabíječ, ze kterého v zimě potřebuji dostat do baterií cca 15 kWh denně a u něj bude ztráta (teplo) cca 1.5 kWh.
_______________________________________________________________________
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
- Kajap
- Příspěvky: 501
- Registrován: pon črc 21, 2025 11:13 am
- Reputace:3
- Lokalita: Okoli
Re: FVE s podporou z DS
“vidět, že i větší firmy by se mohly učit od amatérů. Použitá JBD BMS má pouze pasivní balancér (palič) asi 50 mA, zatímco za podobnou cenu by si tam každý svéprávný bastlíř dal JK-BMS s aktivním balancováním alespoň 1A. Uvidím, jestli s tím časem něco udělám.“
Co jsem slyšel tak pasivní bancer je vhodný do auta, do chaty, zkrátka tam, kde je většinu času stále nabito 100%, a ne na cyklické vybíjení noc/den…
Potřebuje více času na vybalancování, které se děje prakticky jen na vrcholu a trvá dlouho…
Nevím, co je na tom pravdy, a ještě jsem slyšel že to JBD ani aktivní balancery nedělá…
Teď mi má přijít jedna baterka, vyhřívaná od Renogy a právě takový pasivní JBD v tom čekám…
Co si o tom myslíš?
Co jsem slyšel tak pasivní bancer je vhodný do auta, do chaty, zkrátka tam, kde je většinu času stále nabito 100%, a ne na cyklické vybíjení noc/den…
Potřebuje více času na vybalancování, které se děje prakticky jen na vrcholu a trvá dlouho…
Nevím, co je na tom pravdy, a ještě jsem slyšel že to JBD ani aktivní balancery nedělá…
Teď mi má přijít jedna baterka, vyhřívaná od Renogy a právě takový pasivní JBD v tom čekám…
Co si o tom myslíš?
- rva
- Příspěvky: 5034
- Registrován: úte dub 23, 2013 10:21 am
- Reputace:988
- Lokalita: Kousek od Lysé nad Labem
- Systémové napětí: 48V
- Výkon panelů [Wp]: 46000
- Kapacita baterie [kWh]: 62
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Bydliště: Kousek od Lysé nad Labem
Re: FVE s podporou z DS
Myslím, že pasivní balancer, zvláště pokud se nedá nastavit napětí balancování, je minulost a když mám na výběr, tak se mu vyhnu.
_______________________________________________________________________
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
43 kWp, LiFePO4 62 kWh,
EPSolar 60 A/150 V ET6415N + 3x Isolar SM II (5 kW, 450 V, 80 A) + Axpert PIP 5048MS
Kdo je online
Uživatelé procházející toto fórum: Claudebot [Bot]
