Witam
Chciałbym zamówić z Chin taki zestaw
Pewnie nie oddaje tyle co piszą zastanawiam się tylko ile tak naprawdę ma tych Watt.
Chciałbym podłączyć pod ten solar lampkę LED 2x 5w=10w 12V
Lampki zapalaja się dopiero gdy się ściemni bo mam ciemno na podwórku u rodziców.
Aku 45ah będzie optymalny do tego rozwiązania?
Może ktoś z Was testował takie solary z chin?
131,82 zł 41%OFF | Zestaw paneli słonecznych 250W kompletny podwójny 12/5V DC USB z 60A/100A kontroler słoneczny ogniwa słoneczne do ładowarki samochodowej jacht RV
https://a.aliexpress.com/_mMzFhqz
Fotowoltaika z Chin czy warto? DIY
Na twoim miejscu szukał bym kontrolera EPEVER z MPPT, zamiast z PWM. PWM wprowadza straty, bo obcina znacząco moc z panelu. MPPT spowodowało u mnie wzrost produkcji o około 30% w stosunku do PWM. Ma wyjście techniczne z którego można odczytać napięcie, prąd, moc dla panelu, baterii i obciążenia. Dodatkowo zdalne włącz i wyłącz.
Ja mam wersję 2210an + 300W + 90Ah.
Soft napisany w Arduino IDE dla Nodemcu. Komunikacja po RS485.Ja mam wersję 2210an + 300W + 90Ah.
Cenne info bo nie mam pojęcia jeśli chodzi o fotowoltaiczne instalację.
To kontroler MPTT.
Duch_ a jaki solar byś polecał ile watt pod lampki 10watt tak żeby w okresie zimowym gdzie mało słońca wyrabiał się myślałem o 150watt i 45ah Aku?
Czyli po RS485 można wysyłać dane napięcie prąd, stan baterii do Supli?
Fajnie by było zrobić to na 433mHz z lorą mam lory tylko softu nie ogarnę.
W tym miejscu gdzie będzie solar nie m Wi-Fi.
To kontroler MPTT.
Duch_ a jaki solar byś polecał ile watt pod lampki 10watt tak żeby w okresie zimowym gdzie mało słońca wyrabiał się myślałem o 150watt i 45ah Aku?
Czyli po RS485 można wysyłać dane napięcie prąd, stan baterii do Supli?
Fajnie by było zrobić to na 433mHz z lorą mam lory tylko softu nie ogarnę.
W tym miejscu gdzie będzie solar nie m Wi-Fi.
Dane są wypluwane przez EPEVER po każdym zapytaniu. Wystarczy tylko zapytać moduł, a on odpowie. Panel minimum 100W. Ja u siebie przy pełnym słońcu osiągam prąd ładowania aku na poziomie 12-14A. W pochmurne dni jest to około 1A, ale były też strasznie ponure dni z 0.5A.
Czas świecenia zależy od stopnia naładowania aku oraz tego jak długo po zachodzie lampy mają się świecić.
Panel idzie najwydajniej przy 25 stopniach temperatury szkła jak jest wycelowany bezpośrednio w słońce. Wraz ze wzrostem temp. sprawność przetwarzania maleje. To samo tyczy się kąta padania promieni słonecznych.
U mnie obecnie jestem w stanie przy ciągłej ładnej pogodzie szarpać z układu 2.5-3 A przez 24h na dobę, tak że napięcie aku nie spada poniżej 12.2-12.5V.
Czas świecenia zależy od stopnia naładowania aku oraz tego jak długo po zachodzie lampy mają się świecić.
Panel idzie najwydajniej przy 25 stopniach temperatury szkła jak jest wycelowany bezpośrednio w słońce. Wraz ze wzrostem temp. sprawność przetwarzania maleje. To samo tyczy się kąta padania promieni słonecznych.
U mnie obecnie jestem w stanie przy ciągłej ładnej pogodzie szarpać z układu 2.5-3 A przez 24h na dobę, tak że napięcie aku nie spada poniżej 12.2-12.5V.
Ostatnio zmieniony pt maja 14, 2021 6:26 pm przez Duch__, łącznie zmieniany 2 razy.
Dodaje jeszcze przykładowe wykresy z ładowania z ostatnich dwóch i siedmiu dni. Dodam tylko że mam system nadążny (Solar tracker).
Wykres po lewej. Pierwszego dnia widać jak było ładne słońce, a pod koniec dnia aku już było praktycznie w pełni naładowane, drugiego dnia rano było brzydko, potem pogoda poprawiła się.Kodu całego nie udostępnię, bynajmniej nie teraz, to jest 1400 wierszy
Jednak kod jest bardzo prosty, niemniej jednak wyjaśnienie. Odczyt u mnie odbywa się dwa razy dla tej samej ramki danych, by mieć pewność że nie ma błędów w transmisji. Jeśli dwa odebrane te same wyniki różnią się między sobą, to program ma odpytać jeszcze raz o to samo znów dwa razy. Czasami zdarzały się błędy w transmisji, to wyeliminowało skutecznie problem.
"Licznik_iteracji" zmienia wartość co 1ms.
Komend możliwych do odczytania jest multum.
Protokół dostępny tutaj: http://www.solar-elektro.cz/data/dokume ... otocol.pdf
Chciałbym to w pełni zintegrować z Suplą ale obecna biblioteka przerasta moje możliwości.
Jednak kod jest bardzo prosty, niemniej jednak wyjaśnienie. Odczyt u mnie odbywa się dwa razy dla tej samej ramki danych, by mieć pewność że nie ma błędów w transmisji. Jeśli dwa odebrane te same wyniki różnią się między sobą, to program ma odpytać jeszcze raz o to samo znów dwa razy. Czasami zdarzały się błędy w transmisji, to wyeliminowało skutecznie problem.
"Licznik_iteracji" zmienia wartość co 1ms.
Komend możliwych do odczytania jest multum.
Protokół dostępny tutaj: http://www.solar-elektro.cz/data/dokume ... otocol.pdf
Kod: Zaznacz cały
#include <ModbusMaster.h> //by Doc Walker 2.0.1
#define MAX485_DE 5 //D2
#define MAX485_RE 4 //D1
Kod: Zaznacz cały
void setup() {
Serial.begin(19200);
delay(100);
Serial.begin(115200);
while (!Serial) {
;
}
pinMode(MAX485_RE, OUTPUT);
pinMode(MAX485_DE, OUTPUT);
// Init in receive mode
digitalWrite(MAX485_RE, 0);
digitalWrite(MAX485_DE, 0);
// EPEver Device ID 1
node.begin(1, Serial);
// Callbacks
node.preTransmission(preTransmission);
node.postTransmission(postTransmission);
}
Kod: Zaznacz cały
Odczyt:
if (Licznik_iteracji == 10) {Odczyt_danych = 1; Kod = 0x3100 ; Bajtow = 1; Odczytaj_z_EPEVER();}
if (Licznik_iteracji == 20) {Odczyt_danych = 2; Kod = 0x3100 ; Bajtow = 1; Odczytaj_z_EPEVER(); if(Wynik == Wynik2){Panel_V = Wynik;}else{Licznik_iteracji = Licznik_iteracji - 11; goto Odczyt;}}
if (Licznik_iteracji == 30) {Odczyt_danych = 1; Kod = 0x3101 ; Bajtow = 1; Odczytaj_z_EPEVER();}
if (Licznik_iteracji == 40) {Odczyt_danych = 2; Kod = 0x3101 ; Bajtow = 1; Odczytaj_z_EPEVER(); if(Wynik == Wynik2){Panel_A = Wynik;}else{Licznik_iteracji = Licznik_iteracji - 11; goto Odczyt;}}
if (Licznik_iteracji == 50) {Odczyt_danych = 1; Kod = 0x3312 ; Bajtow = 2; Odczytaj_z_EPEVER();}
if (Licznik_iteracji == 60) {Odczyt_danych = 2; Kod = 0x3312 ; Bajtow = 2; Odczytaj_z_EPEVER(); if(Wynik == Wynik2){Total_gen = Wynik;}else{Licznik_iteracji = Licznik_iteracji - 11; goto Odczyt;}}
itd...
Kod: Zaznacz cały
void Odczytaj_z_EPEVER(){
float Wynik_pomocniczy = 0;
node.clearResponseBuffer();
result = node.readInputRegisters(Kod, Bajtow);
if (result == node.ku8MBSuccess) {
if (Bajtow == 1){Wynik_pomocniczy = node.getResponseBuffer(0x00) / 100.0f;}
if (Bajtow == 2){Wynik_pomocniczy = (node.getResponseBuffer(0x00) | (node.getResponseBuffer(0x01) << 8))/100.0f;}
}
if(Odczyt_danych == 1){Wynik = Wynik_pomocniczy;}
if(Odczyt_danych == 2){Wynik2 = Wynik_pomocniczy;}
}
Kod: Zaznacz cały
void preTransmission()
{
digitalWrite(MAX485_RE, 1);
digitalWrite(MAX485_DE, 1);
}
void postTransmission()
{
digitalWrite(MAX485_RE, 0);
digitalWrite(MAX485_DE, 0);
}
Dziękuję za pomoc w temacie, będę coś myślał.
Gratuluje umiejętności super to zrobiłeś.
Ja nawet nie próbuje z nową biblioteką dla mnie to już całkiem czary Mary. Jest w ogóle jakis opis?
To jak Twoje umiejętności to przekracza to mi zostaje dożywocie na binarki co to się robi na tej Supli
Gratuluje umiejętności super to zrobiłeś.
Ja nawet nie próbuje z nową biblioteką dla mnie to już całkiem czary Mary. Jest w ogóle jakis opis?
To jak Twoje umiejętności to przekracza to mi zostaje dożywocie na binarki co to się robi na tej Supli