Étape 3: Capteurs de tension
Les principaux capteurs du régulateur de charge est des capteurs de tension qui peut être facilement mis en œuvre en utilisant un circuit diviseur de tension. Nous avons à tension de sens venant de panneau solaire et la tension de la batterie.
Comme la tension d’entrée analogique goupille ARDUINO est limitée à 5 v, j’ai conçu le diviseur de tension, de telle sorte que la tension de sortie de celle-ci doit être inférieure à 5V. J’ai utilisé une 5W (COV = 10v) panneau solaire et une batterie 6v and5.5Ah pour le stockage de l’énergie. Donc, je dois démissionner tant la tension à moins de 5V. J’ai utilisé R1 = 10k et R2 = 4. 7 k en sentant les deux tensions (panneau solaire et tension de la batterie). La valeur de R1 et R2 peut être inférieure, mais le problème est que quand la résistance est faible courant plus élevé traversent il ainsi grande quantité d’énergie (P = I ^ 2R) dissipée sous forme de chaleur. Valeur de résistance tellement différente peut être choisie, mais il faut pour réduire au minimum la perte de puissance à travers la résistance.
J’ai conçu ce régulateur de charge pour mon exigence (batterie 6V et 5w, panneau solaire 6V), pour une tension plus élevée, que vous devez modifier la valeur de résistances de diviseur. Pour choisir les bonnes résistances, vous pouvez également utiliser une calculatrice en ligne
Dans le code, j’ai nommé la variable "solar_volt " pour la tension du panneau solaire et "bat_volt "pour la tension de la batterie.
Vout = R2 /(R1+R2) * V
laisser la tension du panneau = 9V au cours de la lumière du soleil
R1 = 10k et R2 = 4,7 k
solar_volt = 4,7 / (10 + 4,7) * 9.0 = 2.877v
laisser la tension de la batterie soit 7V
bat_volt = 4,7 / (10 + 4,7) * 7.0 = 2.238v
Les deux tensions de diviseurs de tension sont inférieurs à 5v et adapté à la broche analogique ARDUINO
Calibrage de l’ADC :
Prenons un exemple :
sortie réelle volt/diviseur = 3.127
2.43 V est eqv jusqu'à 520 ADC
1 est eqv à .004673V
Cette méthode permet d’étalonner le capteur.
CODE DE L’ARDUINO :
pour (int i = 0; i < 150; i ++)
{analogRead(A0) += sample1 ; //read la tension d’entrée du panneau solaire
sample2 += analogRead(A1) ; lire la tension de la batterie
Delay(2) ;
}
sample1 = sample1/150 ;
sample2 = exemple2/150 ;
solar_volt =(sample1*4.673* 3.127)/1000 ;
bat_volt =(sample2*4.673* 3.127)/1000 ;
Pour ADC calibrage consulter mon instructables précédente où je l’ai expliqué en profondeur.