Se sei già registrato           oppure    

Orario: 28/03/2024 14:03:30  

 

Energia Alternativa ed Energia Fai Da Te > Solare Fotovoltaico

VISUALIZZA L'ALBUM

Pagine: (76)  < ...  5   6   7   8   9   10   11   12   13   14   [15]   16   17   18   19   20   21   22   23   24   25  ...>    (Ultimo Msg)


Scheda per gestire lo scambio enel-FV con inverter-UPS NO INVERTER PURO
FinePagina

calcola
GigaWatt


Gruppo:Utente
Messaggi:4435

Stato:



Inviato il: 4/11/2013,09:19

Con il potenziometro ed il suo circuito puoi determinare quando far accendere il led, ma collegare logicamente quel circuito al partitore di tensione non è così semplice come sembra. Le altre due schede sono dei piccoli trasformatori down DC-DC. Il display serve solo per visualizzare la tensione regolata in uscita senza collegare un voltmetro. Non servono per il tuo scopo.

Per fare le prove al posto dell'inverter potresti fare un circuito con un led, in pratica il relè invece di comandare la bobina del contattore fa accendere un led.



---------------
Impara l'arte e mettila da parte
14 pannelli da 100w, inverter kemapower 3kw, regolatore morningstar tristar ts60, banco batterie n.1 di 12 elementi 2v 480Ah C5 corazzate per trazione pesante, banco batterie n.2 di 400Ah in C5 formato da 24 elementi 2V 200Ah corazzate al gel per fotovoltaico in due serie da 12 elementi, centralina di gestione impianto autoprodotta.

 

shadowcaster
MegaWatt


Gruppo:Utente
Messaggi:322

Stato:



Inviato il: 4/11/2013,16:53

Grazie per la dritta!!!
Io col potenziometro voglio solo stabilire la soglia, in modo che arduino legga le informazioni provenienti dal potenziometro come variabili, per cui il valore di 23.8V viene impostato dal potenziometro come variabile, non come valore fisso inserito nel programma...non so se sono riuscito a spiegarmi.

Grazie ancora.

 

calcola
GigaWatt


Gruppo:Utente
Messaggi:4435

Stato:



Inviato il: 4/11/2013,20:49

Avevo capito quello che volevi fare e ti ripeto che non è semplice. Considerato che il partitore trasforma linearmente la tensione delle batterie in corrente variabile da 0 a 5V e che con il tuo potenziometro ottieni una corrente in uscita da 0 a 5v, dovresti costruire un software che confronta le due tensioni in uscita e raggiunta la parità comanda il relè che controlla il contattore.



---------------
Impara l'arte e mettila da parte
14 pannelli da 100w, inverter kemapower 3kw, regolatore morningstar tristar ts60, banco batterie n.1 di 12 elementi 2v 480Ah C5 corazzate per trazione pesante, banco batterie n.2 di 400Ah in C5 formato da 24 elementi 2V 200Ah corazzate al gel per fotovoltaico in due serie da 12 elementi, centralina di gestione impianto autoprodotta.

 

shadowcaster
MegaWatt


Gruppo:Utente
Messaggi:322

Stato:



Inviato il: 5/11/2013,11:23

Ok. Ci proverò...

 

shadowcaster
MegaWatt


Gruppo:Utente
Messaggi:322

Stato:



Inviato il: 8/11/2013,17:47

Salve a tutti. Qualcuno mi potrebbe far vedere fisicamente il collegamento tra rly1 e bobina contattore? Magari una foto. Grazie...

 

ciacio63
Watt


Gruppo:Utente
Messaggi:82

Stato:



Inviato il: 15/11/2013,12:01

x Calcola o Sabin o x qualsiasi che mi possa aiutare.

nella sezione vetrina ho iniziato una discussione x l'arduino.

vorrei trasformare il mio impianto a isola inserendo l'arduino e un pptea , non essendo un elettronico ma un semplice elettricista fai da te avendo studiato elettronica 30 anni fa , cerco qualcuno che mi aiuti e mi possa vendere quello che ho bisogno x far funzionare il tutto in automatico e poter monitorarlo via web come il vostro.

spero che qualcuno mi aiutiiiiiii.

grazie infinite

Ciacio63

 

Sabin

Avatar
MegaWatt


Gruppo:Utente
Messaggi:522

Stato:



Inviato il: 15/11/2013,12:22

CITAZIONE (ciacio63 @ 15/11/2013, 12:01)
x Calcola o Sabin o x qualsiasi che mi possa aiutare.

nella sezione vetrina ho iniziato una discussione x l'arduino.

vorrei trasformare il mio impianto a isola inserendo l'arduino e un pptea , non essendo un elettronico ma un semplice elettricista fai da te avendo studiato elettronica 30 anni fa , cerco qualcuno che mi aiuti e mi possa vendere quello che ho bisogno x far funzionare il tutto in automatico e poter monitorarlo via web come il vostro.

spero che qualcuno mi aiutiiiiiii.

grazie infinite

Ciacio63

Anche io ho qualche rimasuglio dei tempi del Commodore 64.
Per realizzare lo switch non ho avuto grosse difficoltà,
ma più avanti di li, ci metterei dei mesi, sopratutto perchè
non mi interessa tanto collegarlo in rete.



---------------
Inverter UPS Power Star W7 (onda pura) ingresso 24 v... 220V 2 Kw con spunto da 6 Kw? (direi 3Kw)
Pannelli 11,1 mq. Wp 1320 (x120 Wp mq)... n° 5 monoc. 72 celle 750 Wp (SO) su MPPT SolarMate 40A
n° 3 polic. 60 celle 570 Wp (Sud) su PWM 30A... batterie: 2 coppie SMA (trazione) 24V 120 Ah C/10 (+ 2 avviamento 70Ah)
Switch enel/batterie con Arduino Pro Mini

 

calcola
GigaWatt


Gruppo:Utente
Messaggi:4435

Stato:



Inviato il: 18/11/2013,18:51

Dovresti spiegare meglio ciò che vuoi fare. Gestire un impianto ad isola è un po' generico. Poi perchè due schede di controllo?



---------------
Impara l'arte e mettila da parte
14 pannelli da 100w, inverter kemapower 3kw, regolatore morningstar tristar ts60, banco batterie n.1 di 12 elementi 2v 480Ah C5 corazzate per trazione pesante, banco batterie n.2 di 400Ah in C5 formato da 24 elementi 2V 200Ah corazzate al gel per fotovoltaico in due serie da 12 elementi, centralina di gestione impianto autoprodotta.

 

ciacio63
Watt


Gruppo:Utente
Messaggi:82

Stato:



Inviato il: 19/11/2013,12:22

CITAZIONE (calcola @ 18/11/2013, 18:51)
Dovresti spiegare meglio ciò che vuoi fare. Gestire un impianto ad isola è un po' generico. Poi perchè due schede di controllo?

ciao Calcola

in pratica quello che voglio fare nel mio impianto a isola è :

poterlo monitorare sia da pc che da web , come ho visto qui sul forum ( correnti ,tensioni in ingresso e uscita ecc ... )
lo scambio giorno -notte in automatico con un rivelatore di luce ext.
inoltre , avendo anche un impianto collegato in rete di 6 kwh, che riesca sentendo l'immissione del on-grid oltre ai 700wh mi faccia partire il carica batterie con i vari ritardi di accensione e spegnimento.

questo +o- quello che vorrei fare , ovviamente accetto consigli.

grazie

Ciacio

 

calcola
GigaWatt


Gruppo:Utente
Messaggi:4435

Stato:



Inviato il: 19/11/2013,23:52

CITAZIONE
avendo anche un impianto collegato in rete di 6 kwh, che riesca sentendo l'immissione del on-grid oltre ai 700wh mi faccia partire il carica batterie con i vari ritardi di accensione e spegnimento.

Se ho capito bene hai un impianto connesso in rete di 6 kwh ed un secondo impianto ad isola. Vorresti controllare i valori di produzione e consumo dell'impianto ad isola ed in caso di batterie scariche vorresti ricaricarle con un carica batterie collegato alla rete, ma solo quando la produzione dell'impianto da 6kw è superiore a 700Wh.

Se non ricordo male la tua esigenza è che qualcuno ti costruisca la scheda di gestione. Purtroppo io non ho molto tempo libero ed anche se la realizzazione della scheda non è particolarmente complessa, non posso aiutarti. Ma perchè non segui la guida ed inizi a costruirla da te? Non è difficile, e qui tutti insieme potremmo consigliarti.



---------------
Impara l'arte e mettila da parte
14 pannelli da 100w, inverter kemapower 3kw, regolatore morningstar tristar ts60, banco batterie n.1 di 12 elementi 2v 480Ah C5 corazzate per trazione pesante, banco batterie n.2 di 400Ah in C5 formato da 24 elementi 2V 200Ah corazzate al gel per fotovoltaico in due serie da 12 elementi, centralina di gestione impianto autoprodotta.

 

Sabin

Avatar
MegaWatt


Gruppo:Utente
Messaggi:522

Stato:



Inviato il: 23/11/2013,17:46

Trovati due difetti, e fatte piccole rettifiche
Sul codice originale
#define NUMREADINGS 5
definiva il numero letture,
per come l'ho semplificato io
il comando #define non va bene
ora l'ho cambiato in
const float numeroletture = 15;

avevo un sali e scendi della tensione, nel monitor seriale,
risolto con
float vr2 = 0; // voltaggio precedente
float temp = 0;
Se le variabili non sono attivate con il
comando "float" non considerano le cifre dopo la virgola

/* Edit 23-nov-2013.. Testato su Arduino Pro Mini..
Prodotto da calcola (antrec.geo@yahoo.com) (rettifiche by sabin)

Controllo tensione per commutazione enel/batterie..
Distacco Frigo prima della commutazione..
Tensione media, per passaggio climatizzatore a enel, ritorno a tensione massima.
Pulsante per passaggio forzato a batterie e ritorno a enel
Salta una lettura con calo eccessivo (spunto motori)
*/

#include "OneWire.h" // Librerie. consente di accedere ai dispositivi 1-wire (1 filo)
#include "Wire.h"

// Definire margine di tensione
#define tensione_bassa 23.6 //valori tipo: 11.9 (sistema 12V); 23.9 (sistema 24V)
#define tensione_media 24.0
#define tensione_alta 26.8

#define coefficiente_conversione 0.05850 // per alzare tensione letta, alzare numero..
// bat-24V>DC-DC 0.05850... con usb 0.05400 .. origine 0.05620

#define RELAY4 4 // enel - batterie
#define RELAY5 5 // pausa frigo (linea con relè temporizzato)
#define RELAY6 6 // tensione media
#define a0pin A0 // lettura volt
#define a1pin A1 // pulsante, passa a batterie

const float numeroletture = 15; // letture tensione
int total = 0; // Somma letture
int average = 0; // Media
int batt = 5; // salta conferma verifica. 5 enel, 10 batterie
int clima = 5; // salta conferma verifica
int posizione = 5; // controllo posizione pulsante
int pulsante = 0; // controllo pulsante, x passare a batterie

float vr2 = 0; // voltaggio precedente
float temp = 0;

// Comunicazione seriale e settaggi
void setup()
{
Serial.begin(9600);
Wire.begin();
pinMode(RELAY4, OUTPUT);
pinMode(RELAY5, OUTPUT);
pinMode(RELAY6, OUTPUT);
pinMode(a0pin, INPUT);
pinMode(a1pin, INPUT);

digitalWrite(RELAY4, HIGH);
digitalWrite(RELAY5, HIGH);
digitalWrite(RELAY6, HIGH);

}

// Loop infinito
void loop()
{
total = 0; // Azzera per il prossimo calcolo

for (int A = 0; A < numeroletture; A++)
{
total += analogRead(a0pin); //Legge la tensione su A0
delay(300); //ritardo in millisecondi

// ---- Controllo pulsante per passaggio forzato
pulsante = analogRead(a1pin);

if (pulsante > 700)
{
if (posizione != 10 ) // passa a batterie
{
digitalWrite(RELAY5, LOW);
delay(1000);
digitalWrite(RELAY5, HIGH);
batt = 10;

digitalWrite(RELAY4, LOW);
delay(2000);
posizione = 10;
pulsante = 0;
}
} // batt fine

if (pulsante > 700)
{
if (posizione != 5 ) // passa a enel
{
digitalWrite(RELAY5, LOW);
delay(1000);
digitalWrite(RELAY5, HIGH);
batt = 5;

digitalWrite(RELAY4, HIGH);
delay(2000);
posizione = 5;
pulsante = 0;
}
} // enel fine

} // lettura fine

average = total / numeroletture; //Calcola la media

float VoltageReading; // comprende i numeri reali, rappresentati in virgola mobile , 32 bit, 7 cifre
VoltageReading=average*coefficiente_conversione;

if (VoltageReading - 0.4 < vr2) // salta un calo eccessivo
{ temp = VoltageReading;
VoltageReading = vr2; // correggi con voltaggio precedente
vr2 = temp; // memorizza calo
}
else { vr2 = VoltageReading; // altrimenti memorizza lettura
}

// ---- Controllo tensione, enel/batterie
// enel su contatto NC (relay 24v (riposo)).. relay4 HIGH riposo (enel), fili (bobina relay 24v) su contatto NO

// passa a enel (se VR minore di TB)
if (VoltageReading < tensione_bassa)
{
if (batt != 5 )
{
digitalWrite(RELAY5, LOW);
delay(2000);
digitalWrite(RELAY5, HIGH);
batt = 5;
}
digitalWrite(RELAY4, HIGH); // relay riposo, pin alimentato
posizione = 5;
}

// passa a batterie (se VR maggiore di TA)
if (VoltageReading > tensione_alta)
{
if (batt != 10 )
{
digitalWrite(RELAY5, LOW);
delay(2000);
digitalWrite(RELAY5, HIGH);
batt = 10;
}
digitalWrite(RELAY4, LOW); // relay attivo, pin 0V
posizione = 10;
delay(2000); // pausa per stabilizzare tensione
}

// ---- Controllo tensione media, x clima
// passa a enel
if (VoltageReading < tensione_media)
{
if (clima != 5 )
{
digitalWrite(RELAY5, LOW);
delay(2000);
digitalWrite(RELAY5, HIGH);
clima = 5;
}
digitalWrite(RELAY6, HIGH); // relay riposo, pin alimentato
}

// passa a batterie
if (VoltageReading > tensione_alta + 1) // + 1 aggiunge un volt
{
if (clima != 10 )
{
digitalWrite(RELAY5, LOW);
delay(2000);
digitalWrite(RELAY5, HIGH);
clima = 10;
}
digitalWrite(RELAY6, LOW); // relay attivo, pin 0V
delay(2000); // pausa per stabilizzare tensione
}

Serial.print(" Voltaggio media 15 letture: ";
Serial.println(VoltageReading);
Serial.print(" Lettura precedente: ";
Serial.println(vr2);
Serial.print(" Somma letture: ";
Serial.println(total);

Serial.print(" Valore tensione_bassa: ";
Serial.println(tensione_bassa);
Serial.print(" Valore tensione_media: ";
Serial.println(tensione_media);
Serial.print(" Valore tensione_alta: ";
Serial.println(tensione_alta);

Serial.print(" Lettura pin A1 (pulsante): ";
Serial.println(pulsante);
Serial.println();

}

//Fine listato





Modificato da Sabin - 23/11/2013, 20:28


---------------
Inverter UPS Power Star W7 (onda pura) ingresso 24 v... 220V 2 Kw con spunto da 6 Kw? (direi 3Kw)
Pannelli 11,1 mq. Wp 1320 (x120 Wp mq)... n° 5 monoc. 72 celle 750 Wp (SO) su MPPT SolarMate 40A
n° 3 polic. 60 celle 570 Wp (Sud) su PWM 30A... batterie: 2 coppie SMA (trazione) 24V 120 Ah C/10 (+ 2 avviamento 70Ah)
Switch enel/batterie con Arduino Pro Mini

 

calcola
GigaWatt


Gruppo:Utente
Messaggi:4435

Stato:



Inviato il: 24/11/2013,15:49

Bravo fai bene a sperimentare. Però non per essere pignolo, ma NUMREADINGS indica solo il numero di volte che deve leggere la tensione per calcolare la media, non ha nulla a che vedere con la lettura dei singoli valori di tensione. Il partitore di tensione converte proporzionalmente la tensione in ingresso che può oscillare tra 0-54V in valori compresi tra 0-5V, l'arduino rilevata la tensione sul pin analogico la converte in un valore intero compreso tra 0-1024. Noi leggiamo tale valore intero un numero di volte pari a numreadings, calcoliamo la media e la convertiamo in volt, la variabile che restituisce il valore della tensione media in volt è in float "float VoltageReading" ed infatti i valori medi visualizzati sono decimali al centesimo. Nel mio listato inoltre faccio fare la media di un numero di letture pari a numreadings e poi la media delle medie sempre fino a numreadings, ciò rende la lettura finale molto più stabile della singola media. Le oscillazioni di tensione sono minime e dovute alla tolleranza delle resistenze usate per costruire il partitore. Io ho tre arduino che leggono tensione ed in tutti l'errore è di un decimale. Tu giustamente sperimenti e provi però se semplifichi il programma e le cose non funzionano come dovrebbero, poi non dare la colpa al listato.

Se usi il listato pubblicato e la tensione oscilla troppo la causa è da ricercare nei collegamenti elettrici, in particolare il negativo del partitore di tensione deve essere in comune con il negativo dell'alimentazione dell'arduino. Nei circuiti dell'arduino i negativi vanno sempre in comune. Ho letto sul forum in una recente discussione il post di un utente che usando in una sua applicazione un partitore di tensione ricavato dal mio schema, lamenta l'oscillazione delle letture, probabilmente l'errore è proprio dovuto al mancato collegamento dei negativi. L'arduino vuole tutti i negativi in comune. Quel partitore se usi resistenze comuni (quelle marroni per intenderci) e l'accortezza di fare la media delle letture medie, legge con un errore di 0,1V. Ho visto inoltre che la precisione diminuisce in modo inversamente proporzionale alla tensione letta in ingresso e dipende dal riscaldamento delle resistenze per effetto joule. Per impianti a 24V, che possono raggiungere i 29V durante i fine carica, il fenomeno diventa evidente, per correggere puoi sperimentare la costruzione di altri partitori resistivi con resistenze di altro valore.




Modificato da calcola - 24/11/2013, 16:18


---------------
Impara l'arte e mettila da parte
14 pannelli da 100w, inverter kemapower 3kw, regolatore morningstar tristar ts60, banco batterie n.1 di 12 elementi 2v 480Ah C5 corazzate per trazione pesante, banco batterie n.2 di 400Ah in C5 formato da 24 elementi 2V 200Ah corazzate al gel per fotovoltaico in due serie da 12 elementi, centralina di gestione impianto autoprodotta.

 

Sabin

Avatar
MegaWatt


Gruppo:Utente
Messaggi:522

Stato:



Inviato il: 24/11/2013,20:57

Ieri sera dopo che ho messo il codice, le letture erano stabili,
intorno ad un decimo di oscillazione.
L'errore l'ho commesso nella parte che fa la verifica con la
tensione precedente, siccome la variabile escludeva le cifre dopo la virgola
creava letture non molto lineari.
Il confronto viene fatto dopo la conversione.. VoltageReading=average*coefficiente_conversione;
dunque, valore con virgola.
Alla prossima occasione ricontrollo il monitor seriale,
ma sono sicuro che sono vicino alla perfezione, a parte i componenti che
con le temperature possono fare differenze.



---------------
Inverter UPS Power Star W7 (onda pura) ingresso 24 v... 220V 2 Kw con spunto da 6 Kw? (direi 3Kw)
Pannelli 11,1 mq. Wp 1320 (x120 Wp mq)... n° 5 monoc. 72 celle 750 Wp (SO) su MPPT SolarMate 40A
n° 3 polic. 60 celle 570 Wp (Sud) su PWM 30A... batterie: 2 coppie SMA (trazione) 24V 120 Ah C/10 (+ 2 avviamento 70Ah)
Switch enel/batterie con Arduino Pro Mini

 

calcola
GigaWatt


Gruppo:Utente
Messaggi:4435

Stato:



Inviato il: 24/11/2013,22:42

Si può provare a mettere in float anche "average" sicuramente la precisione migliora, anche se poi in ultima analisi la maggiore precisione teorica serve a poco visto l'errore intrinseco dello strumento di misura.



---------------
Impara l'arte e mettila da parte
14 pannelli da 100w, inverter kemapower 3kw, regolatore morningstar tristar ts60, banco batterie n.1 di 12 elementi 2v 480Ah C5 corazzate per trazione pesante, banco batterie n.2 di 400Ah in C5 formato da 24 elementi 2V 200Ah corazzate al gel per fotovoltaico in due serie da 12 elementi, centralina di gestione impianto autoprodotta.

 

calcola
GigaWatt


Gruppo:Utente
Messaggi:4435

Stato:



Inviato il: 24/11/2013,23:14

Fatta la modifica, non cambia nulla, i valori medi delle letture tra 1 e 1024 sono sempre dei valori non decimali, quindi il calcolo decimale diventa inutile.



---------------
Impara l'arte e mettila da parte
14 pannelli da 100w, inverter kemapower 3kw, regolatore morningstar tristar ts60, banco batterie n.1 di 12 elementi 2v 480Ah C5 corazzate per trazione pesante, banco batterie n.2 di 400Ah in C5 formato da 24 elementi 2V 200Ah corazzate al gel per fotovoltaico in due serie da 12 elementi, centralina di gestione impianto autoprodotta.

 
 InizioPagina
 

Pagine: (76)  < ...  5   6   7   8   9   10   11   12   13   14   [15]   16   17   18   19   20   21   22   23   24   25  ...>    (Ultimo Msg)

Versione Mobile!

Home page       TOP100-SOLAR      Home page forum