Caricabatterie con Arduino

Buonasera, volevo realizzare un caricabattierie per batterie al piombo 12v con un Arduino nano e un diplay lcd 16x2 per visualizzare la tensione e la corrente di carica, ovviamente ad arduino portero il segnale analogico di tensione e corrente oppurtunamente convertito.
Volevo chiedere un vostro consiglio sull’algoritmo di regolazione se secondo voi potrebbe funzionare:

/*I campiscala di tensione e corrente sono 0-5V e 0-5A*/

#define GATE 3
#define Set_Point_V  3,5  //Set point tensione
#define Set_Point_I  2    //Set point corrente

const float KI = 5/1024, KV = 5/1024;  //costanti di conversione
int pwm = 0, Bit_V, Bit_I;
float tensione, corrente;

void setup() {
pinMode(GATE, OUTPUT);
}

void loop() {
 Bit_V = analogRead(A0);
 Bit_I = analogRead(A1);

 tensione = Bit_V * KV;
 corrente = Bit_I * KI;

 if(tensione < Set_Point_V)
 {
   pwm++;
 }
 else
 if(tensione > Set_Point_V)
 {
   pwm--;
 }
 while(corrente > Set_Point_I)
 {
   pwm--;
 }
 analogWrite(GATE, pwm);
}

Per come lo pensato dovrebbe tenere una tensione costante ma limitando la corrente di carica a quella impostata da setpoint, attendo un vostro parere.

>fabioM: ti ricordo che in conformità al regolamento, punto 7, devi editare il tuo post qui sopra (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More → Modify che si trova in basso a destra del tuo post) e racchiudere il codice all’interno dei tag CODE (… sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra). Grazie.

Guglielmo

Pardon non avevo letto ora l'ho sistemato grazie ;)

Non si puó regolare una tensione che deve essere analogica con PWM. Cosí rompi l' accumulatore.

Non farei la regolazine con Arduino ma con un circuito apposta.

Arduino puó visualizzare i valori.

Ciao Uwe

Girando in internet avevo trovato un progetto con Arduino che caricava le batterie al piombo acido con il pwm, i vecchi caricabatterie addirittura caricavano con la doppia semionda. Dici che le batterie della macchina al piombo acido appunto si rovinano?