Ze zvědavosti (jak to vlastně celé funguje) jsem si pořídil jeden fotovoltaický panel a přes regulátor ho připojil k 24V baterii (2x12V baterie). Z baterie mám napájené další zařízení: IP kamera, vrata... V zimě (když napadne na panel sníh, nebo budou mlhy) nebude panel nejspíše schopen dobít baterie. Bude potřeba řešit dobití baterií jiným způsobem (ze zdroje 230V). Začal jsem tedy na Internetu hledat obvod, který by uměl přepínat mezi panelem/záložním zdrojem. Hlídat přebíjení a podbití. Nic kloudného jsem nenašel a z tohoto důvodu jsem si sestavil vlastní SOPR "SOlární PŘepínač"...
Přepínač je založený na procesoru Atmega 328P (stejný jako používá Arduino NANO). Napájecí spínaný zdroj na desce je řešený pomocí obvodu LM2576 (katalogové zapojení). Procesor je napájený napětím 5V ze spínaného zdroje. Procesor spíná 5ks signálních LED (solár, +24V zdroj, baterie, výstup aux, error) a 3ks relé (FV/zdroj, regulátor, aux). Napětí na baterii, soláru a zdroji se měří přes dělič, který je následně připojený na A/D vstup procesoru. Maximální měřené napětí na vstupech je 45V.
Blokové zapojení
Princip funkce přepínače
- po zapnutí napájení (připojení baterie 24V se spustí test všech LED -> postupné přepínaní v cyklu cca 2 vteřiny).
- když má baterie napětí vyšší než 25% a čidlo teploty je v pořádku -> svítí LED "BAT" (jinak nesvítí).
- když má baterie napětí nižší než nastavené minimum (podbití) nebo má čidlo teploty poruchu -> svítí LED "ERR", nesvítí LED "FV", "24V", "BAT", "AUX". Výstup "AUX" je odpojen.
- když má baterie napětí vyšší než nastavené maximum (přebíjení) nebo má čidlo teploty poruchu -> bliká současně LED "ERR" a "BAT". LED "AUX" stále svítí (nedojde k odpojení výstupu). LED "FV" a "24V" svítí nebo blikají dle stavu (vysvětleno níže). Dojde k vypnutí přívodu do regulátoru (ať již z FV nebo zdroje. Tj nebude se nabíjet do doby poklesu napětí).
- když je napětí ze soláru vyšší než nastavená hodnota -> LED "FV" bliká (je preferované dobíjení ze slunce). Relé je přepnuto na dobíjení z FV. Pokud je zároveň dostupné i napětí ze zdroje -> LED "24V" svítí, LED "ERR" nesvítí.
- Když není dostupné napětí ze soláru -> LED "FV" nesvítí. Relé je stále přepnuto na dobíjení ze soláru (i když se momentálně nedobíjí). K přepnutí relé ze soláru na zdroj dojde až při poklesu napětí baterie pod 25%. -> LED "24V" bliká.
Nastavené hranice napětí pro SEALED baterie (dá se změnit v programu)
#ifdef BAT_IS_SEALED
const float MINIMAL_SOLAR_VOLTAGE = 20.0; // pokud je více než přepne RE1 na FV
const float MINIMAL_SUPPLY_VOLATGE = 20.0; // pokud je více než přepne RE1 na zdroj (a baterie je vybitá pod 25%)
const float MINIMAL_BATTERY_VOLTAGE = 21.2; // pokud klesne napětí pod tuto hodnotu, tak odpojujeme zátež (rele 3 AUX)
const float BATTERY_OVER_VOLT = 30.0; // nebezpečná hranice dobíjení (přepětí odpojujeme regulátor)
const float BATTERY_25_PERCENT = 25.2; // stav baterie 25%
O veškeré nabíjení a hlídání dobíjení baterie se stará solární regulátor! SOPR je pouze přepínač směru toku dobíjení (slunce/síť) a hlídání podpětí/přepětí.
Schéma zapojení
Deska spojů
Foto osazené desky
Osazení desky (spínaný zdroj 24V/5V)
Test na zdroji se žárovkou 24V jako zátěž
Test osazené desky
Solární panel
Použil jsem 1ks solárního panelu GWL ELERIX, Mono 410Wp, 120 článků, half-cut. Zakoupeno u i4WiFi.cz
Výrobce: | GWL/ELERIX |
Upřesnění typu: | Solární panel |
Technické detaily | |
Max. zatížení tlakem (Pa): | 5400 |
Provozní teplota max. (°C): | 85 |
Provozní teplota min. (°C): | -40 |
Vstupy a výstupy | |
Konektor: | MC4 |
Napájení | |
Jmenovitý výkon (Wp): | 410 |
Napětí naprázdno (V): | 41,6 |
Napětí v bodě max. výkonu (V): | 34,6 |
Počet buněk: | 120 |
Proud v bodě max. výkonu (A): | 11,84 |
Zkratový proud (A): | 12,4 |
Účinnost solárního panelu (%): | 21,4 |
Záruka | |
Délka záruky IČO (měsíce): | 26 |
Délka záruky (měsíce): | 26 |
Fyzické vlastnosti | |
Hmotnost (kg): | 21 |
Výška (mm): | 1760 |
Šířka (mm): | 1096 |
Hloubka (mm): | 35 |
Regulátor nabíjení
Použil jsem 1ks regulátoru EPEVER DR1206-DDS MPPT 12/24 V (DuoRacer 10A, vstup 60V.) Zakoupeno u i4WiFi.cz
Výrobce: | EPsolar |
Upřesnění typu: | Regulátor |
Technické detaily | |
Maximální výkon (W): | 260 |
Provozní teplota max. (°C): | 50 |
Provozní teplota min. (°C): | -20 |
Technologie: | MPPT |
Napájení | |
Jmenovité napětí (V): | 12/24 |
Max. vstupní napětí (V): | 60 |
Max. vstupní proud (A): | 10 |
Záruka | |
Délka záruky IČO (měsíce): | 26 |
Délka záruky (měsíce): | 26 |
Fyzické vlastnosti | |
Hmotnost (kg): | 0.8 |
Rozměry: | 227,2 x 143 x 58,1 mm |
Baterie
Baterie 2ks v sérii - 12V/18Ah.
Zdroj
Zdroj jsem použil původní co zálohoval vrata (osazeno spínaným zdrojem 230V/24 s deskou, která řešila dobíjení baterií). Doplněním SOPRu zbyl pouze rozvaděč a baterie. Foto před úpravou. Zakoupeno u Varnet.cz
Typ modulu: | přídavný zdroj |
Napájení: | 230 V, 138 W |
Dokumentace: | Instalace 3400/3004+ |
Typ zdroje: | spínaný |
Výstupní napětí (24 V výstup AUX): | 24V= +-10% |
Max. proudový odběr z AUX výstupu: | 5 A trvale |
Dobíjecí proud záložního akumulátoru: | 1,5 A |
Doporučený záložní akumulátor: | 2 x 12 V/ 18 Ah |
Ochrana proti přepólovaní akumulátoru: | ano, tavná pojistka 7 A |
Detekce výpadku AC: | ano,LED |
Detekce poruchy BATT: | ano, LED |
Detekce přetížení AUX : | ano, LED |
Optická signalizace: | LED na čelním panelu |
Význam LED
- zelená LED FV = svítí když je napětí z FV panelu dostatečné pro dobíjení (bliká když je regulátor připojen na dobíjení z FV - tj když je dostupný i síťový zdroj).
- zelená LED 24V = svítí když je napětí ze zdroje dostatečné pro dobíjení (bliká když je regulátor připojen na dobíjení ze zdroje - tj když není dostupný FV zdroj).
- zelená LED BAT = svítí když má baterie > 25%. Bliká když je přepětí spolu s ERR.
- zelená LED AUX = svítí když je připojen výstup (zátěž/spotřebiče).
- rudá LED ERR = svítí když je podpětí, bliká když je přepětí.
Výstup na mobilní telefon/tablet
Na desce je osazený BT modul HC-05, který odesílá data ve formátu JSON na mobilní zařízení. Aplikace zobrazuje stav 5 LED, teplotu, napětí z FV, zdroje, baterie a zároveň ukazuje historii napětí v grafech (viz obrázek níže).
Rychlost komunikace je nastavená výchozí 9600 Bd a heslo: 1234. Přes aplikaci nejde nic nastavovat ani měnit a proto není nutné heslo nějak měnit.
Náhled z aplikace
Vysvětlení přenášených dat v JSON formátu
hodnoty ve stringu
fw = verze software v CPU
pv = napětí soláru
src = napětí zdroje 24V
bat = napětí baterie 24V
temp = teplota baterií -127C až 127C
hodnoty 0/1
re_s = rele co přepíná mezi solárem a zdrojem do regulátoru dobíjení
re_r = odpojuje regulátor od nabíjení (v případě přepětí baterie)
re_a = odpojuje zátěž (výstup)
led_p = stav LED solár
led_s = stav LED zdroj
led_b = stav LED baterie
led_a = stav LED aux
led_e = stav LED error
pole hodnot ve stringu (historie pro grafy - rotace záznamu po 30 minutách)
pH = 10 hodnot napětí ze soláru
sH = 10 hodnot napětí ze zdroje
bH = 10 hodnot napětí baterie
výstupní JSON - příklad dat:
{
"fw": "1.00",
"pv": "0.00",
"src": "28.55",
"bat": "24.15",
"temp": "24.63",
"re_s": 1,
"re_r": 1,
"re_a": 1,
"led_p": 0,
"led_s": 0,
"led_b": 1,
"led_a": 1,
"led_e": 0,
"pH": [
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00"
],
"sH": [
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00"
],
"bH": [
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00"
]
}
Nastavení pojistek CPU a nahrávání programu
Program byl napsán Arduino IDE -> výstupní HEX soubor byl do CPU nahraný přes USBasp programátor pomocí programu AVRdudess.
Nastavení pojistek u procesoru Atmega328P.
Pohled na celý program AVRDUDESS při nahrávání hex souboru do procesoru.
3D krabička na SOPR
Deska spojů je uchycena pomocí 4ks šroubků M3x5 do spodní části krabičky. Na LED je nasazený světlovod, který přenáší svit LED do víčka krabičky. Všechny části jsou vytištěné materiálem PET-G na tiskárně Prusa i3 MK3.
Víčko drží zavřené pomocí 2ks šroubů M3x10.
ZDARMA (pro registrované)
- hex pro procesor Atmega328P v1.0, v1.01
DONATE (pro ty co přispěli)
- zdroj + hex pro Arduino IDE (FW-1.0 a vyšší), desky spojů a gerber (Eagle), 3D data pro tiskárnu (STL, GCODE)
Aktuální FW verze
- FW1.0 výchozí verze
- FW1.01 přidaný watchdog 4s (hlídání chodu programu), nepoužití knihovny arduinojson, přidány motohodiny (čas běhu CPU od zapnutí SOPR) ve formátu (a.b.c.d) -> dny.hodiny.minuty.sekundy. JSON se již neodesílá pořád, ale jen při příjmu znaku "J" (aplikace si řekne že chce přijmout data), oprava kalibrace odporového děliče (nyní stačí znát přesnou hodnotu rezistorů a tu následně zadáme do programu)
FOTO z instalace (panel, regulátor, SOPR, zdroj)
Umístění panelu na přístřešku.
Na veškerou kabeláž jsem použil "solární" kabely (černá a červená barva) 4mm2 . Svod z panelu, výstup z baterie a zátěž je jištěn DC jističi 10A.
Pohled na regulátor dobíjení
Finální montáž