Académique Documents
Professionnel Documents
Culture Documents
Chargeur de batteries
par panneaux solaires
TEAVAI Tahaki
MACIALECK Jimmy
1 / 42
3me programme : mesure et affichage du courant, de la tension, et de la puissance du
panneau solaire ................................................................................................................. 29
b) Programme................................................................................................................. 30
c) Schma lectrique complet ........................................................................................ 32
d) Ralisation de la platine Labdec .......................................................................... 33
9) Estimation des cots du projet ......................................................................................... 34
10) Analyse et ressentis du projet ........................................................................................ 35
2 / 42
1) Introduction
Dans le cadre de notre formation il nous est demand de raliser un projet partir dun
cahier des charges. Lobjectif est de faire le lien entre lensemble des enseignements des
Units dEnseignements disciplinaires et valider notre autonomie.
Le but de notre projet est de concevoir un chargeur de batteries fonctionnant grce des
panneaux photovoltaques.
Dans un premier temps nous prsenterons le cahier des charges de notre projet, puis les
diffrentes tapes de sa ralisation qui compte ltude pralable du passage de lnergie
solaire lnergie lectrique, la conception dun hacheur srie et la programmation de sa
commande effectue par un microcontrleur PIC. Enfin nous finirons par les tests du chargeur
et la conclusion de ce rapport.
3 / 42
Rsum en anglais
This year we had to make a project which is related to electronics, electrical engineering
and automatic. Several projects were proposed to us and we choose the battery charger with
solar panels.
The purpose of this project is to make a battery charger powered by solar panels. To do
so we had to study first the solar panel available on the roof of the building 3A and search for
the MPPT (Maximum Power Point Tracking).
The second step is to build a DC/DC converter that will cut the voltage, so we can
control the power delivered to the battery, using the converters duty cycle. For this step we
had to size every component (resistor, capacitor, coil, diode, transistor) of the converter and
assemble it on an electronic card. It took almost half of our project time.
The last step is to make a program that will change the duty cycle automatically so the
power delivered to the battery is always at its maximum, and display the voltage, the current
and the power on an LCD screen. We used a microcontroller PIC and the software MicroC
and did the different programs.
We achieved to display what we wanted on the screen, and to change the duty cycle
manually, but unfortunately we couldnt do the last program, that should control the duty
cycle automatically, because of lack of time.
4 / 42
2) Cahier des charges
Lobjectif du projet est de construire un chargeur de batterie solaire de puissance 100W
aliment par un panneau solaire industriel (PV).
Travail demand :
Etude du PV, trac des caractristiques : I = f(V) et P = f(V)
Recherche du MPPT : point de fonctionnement Pmax du panneau solaire
Conception et ralisation dun hacheur DC/DC
Ralisation dune carte lectronique
La commande sera faite par un microcontrleur PIC
Contrle du courant de charge de la batterie
Contrle du niveau de charge de la batterie
5 / 42
3) Schma fonctionnel
Microcontrleur
PIC
Ecran LCD
Le panneau solaire dlivre une tension VP dans le hacheur srie. La tension et le courant
dlivrs par le panneau solaire est mesure par le microcontrleur PIC, qui commande le
rapport cyclique hacheur de faon avoir tout instant la puissance maximale. Lcran LCD
permet dafficher la valeur de la tension, du courant, de la puissance, et du rapport cyclique.
6 / 42
Dans notre cas nous avons un panneau solaire Photowatt PW6-110 constitu de 36
cellules poly cristallines et de tension nominale 12V.
Pour notre tude nous allons travailler avec trois panneaux solaires PW6 de 90W situs
sur le btiment 3A. Leurs caractristiques sont les suivantes :
Nous avons trac les caractristiques I(V) et P(V) des panneaux solaires tudis avec
trois mthodes : avec un traceur, avec un rhostat, et avec un rhostat et un oscilloscope.
Ces trois mthodes nous donnent peu prs le mme rsultat, nous allons ici dvelopper
la mthode avec 2 rhostats et un oscilloscope.
7 / 42
Schma :
Mthode :
Au dmarrage les deux rhostats ont leur valeur maximale (simule le circuit ouvert). On
baisse progressivement le rhostat de 1000, puis celui de 33 (simule le court-circuit) tout
en relevant rgulirement les valeurs des courants et tensions.
Nous avons obtenu les caractristiques suivantes pour G = 1150 W/m et T = 21C :
I = f(V)
8 / 42
P = f(V)
Point de
puissance
maximale
MPPT
Tche n1 :
Etude du PV, trac des caractristiques : I = f(V) et P = f(V)
Tche n2 :
Recherche du MPPT : point de fonctionnement Pmax
du panneau solaire
9 / 42
5) Hacheur
Les hacheurs sont des convertisseurs continu/continu qui permettent partir dune
source de tension continue fixe, dobtenir une tension continue rglable ou plus prcisment,
une tension de valeur moyenne rglable. Il existe trois types de hacheur :
Le hacheur srie
Le hacheur parallle
Le hacheur quatre quadrants
Nous avons choisi le hacheur srie car nous navons pas besoin de rversibilit en
courant ou en tension.
Q1
IRLZ34N
IP +88.8
L1 Ich +88.8
Vin
Amps B82432T1824K000 Amps
R1
+88.8 D1 33R
Volts C3 12TQ045 C1 C2 +88.8
VP 2u2 1u 220n
Vs
Volts
Vout
R2 R4
10R 0R56
D2
D3
Vin
1N4148
1M110ZS5
R3
GBF U1 C5
1 330n 100k
2 8
IN V+ VB
7
HO
5
VS
3 6
ERR COM CS
4 IR2125 U2
C4 7815
1u
1 3
Vin VI VO Vout
GND
2
Partie commande
10 / 42
b) Choix des composants
Choix du transistor :
Le transistor utilis est un IRLZ34N.
Choix de la diode :
Les deux paramtres importants prendre en compte sont :
la tension maximale de blocage du composant
lintensit maximale du courant qui peut la traverser
Caractristiques de la diode :
VRRM = 400V
IF = 12A
11 / 42
Calcul des pertes en commutation :
( E * I )(TF TR ) f
PCOM
2
Avec:
Pcond=ID*VDS
Pour Tc = 175 et ID= IP = 7A VDS=0.7V
Pcond= 7*0.7
Pcond= 4.9W
PD = Pcond + PCOM
PD = 4.9 + 0.1356
PD = 5.035 W
a : Rsistance thermique
jc : Rsistance thermique entre la jonction et le boitier jc : 0.5C/W
cs : Rsistance thermique entre le botier et le dissipateur cs : 1C/W
Tj : Temprature de jonction Tj :175C
Ta : temprature ambiante max Ta : 40C
T j Ta
a ( jc cs )
PD
175 40
a (0.5 1)
5.035
a= 25.3C/W
Pour la diode :
12 / 42
c) Dimensionnement des composant
Donnes :
VP = 21V
VS = 12V
Ich = 10% IN batterie = 0.66A
Vp 21
0.57
Vs 12
VD1
VP
VS
t
0 T T
D1 off D1 on D1 off
Q1 on Q1 off Q1 on
D1 off D1 on D1 off
Q1 on Q1 off Q1 on
ILmax
IL
T < t < T : ILmin
VS t
I L (t ) t I L max 0 T T
L
V
I L (t T ) S (t T ) I L max
L Figure9 : Forme donde du courant aux bornes de linductance
Pour t = T :
VS
I L (t T ) I L min T (1 ) I L max
L
V V
I L I L max I L min S T (1 ) P T (1 )
L L
14 / 42
Application numrique :
+10%
0.066A
On prend f=50kHz Ich
IL=2*10% Ich = 20% Ich -10%
ILmax= 0.132A
t
0
L * I L max
N
Bmax * Ae
RM10
Ae 96.6
Sb 44.2
Si lon fait lhypothse que le courant dans la charge est parfaitement constant, londulation
dVP
de tension est produite par la composante alternative iL. La relation iC i L C S
dt
permet de dduire la forme de cette ondulation de tension partir de la forme iL.
15 / 42
La valeur crte crte VS de londulation de tension Vs est donne par :
VS = V2 V1 = Vs(t2) Vs(t1)
Vp
Londulation de courant est maximale pour = et vaut I L max .
4 Lf
On obtient donc :
VP
VS
32 LCS f 2
Donc :
VP 21
CS 0.2752F
32 Lf VS 32 * 0.795 *10 3 * 50000 2 *1.2
2
16 / 42
d) Commande du transistor [3] R2 R4
10R
Nous avons utilis un driver IR2125 pour commander le transistor. 0R56
D2
D3
Vin
1N4148
1M110ZS5
R3
GBF U1 C5
1 330n 100k
2 8
IN V+ VB
7
HO
5
VS
3 6
ERR COM CS
4 IR2125
C4
1u
Tche n3 :
Conception et ralisation dun hacheur DC/DC
17 / 42
e) Ralisation de la carte lectronique
Aprs avoir dimensionn lensemble des composants, nous avons ralis le hacheur
laide dune carte lectronique.
Alimentation
du Driver
IR2125 Inductance
Driver
Transistor IR2125
Arrive du
panneau solaire
Tche 4 :
Ralisation dune carte lectronique
18 / 42
6) Essai du hacheur laide dun GBF
Les essais du hacheur ont t raliss laide dun GBF qui permettait denvoyer un
signal carr la frquence souhaite avec un rapport cyclique variable. Le but de ces essais
tait de vrifier que la tension en sortie du hacheur tait bien dcoupe selon la commande
envoye par le GBF.
Nous avons relev les oscillogrammes suivant pour diffrentes valeurs de rapport
cyclique .
= 60% :
19 / 42
= 100% :
= 5% :
20 / 42
7) Microcontrleur PIC
Un microcontrleur est une unit de traitement de l'information de type microprocesseur
sur lequel on a ajout des priphriques internes permettant de raliser des montages sans
ncessiter lajout de composants annexes. Un microcontrleur peut donc fonctionner de faon
autonome aprs programmation. Le microcontrleur que nous avons utilis fonctionne
laide du logiciel MikroC, ce logiciel permet de programmer simplement le PIC16F876A.
P=VP*IP
a) Synoptique gnral
Pont diviseur Ip
Vp
R=33ohm
Hacheur s
Alim. 0-15V
Filtre
Amplificateur
3
Alim. 0-5V
PWM
PIC
Can 2
Can 1 Afficheur
21 / 42
b) PIC16F876A
Diagramme :
22 / 42
c) Initiation au PIC
Dans un premier temps, nayant jamais utilis de microcontrleur (que ce soit au niveau
de la programmation ou au niveau de la ralisation physique), nous avons d nous familiariser
avec le celui-ci.
Nous avons donc commenc par raliser diffrentes manipulations (programmes +
cblage) : clignotement de LED, affichage de texte sur cran LCD (Annexe 1)
23 / 42
Pour le branchement il suffit dinsrer un connecteur entre le PIC et le programmateur.
Dans notre cas le connecteur d'origine (2x5) est remplac par un connecteur 10 pattes. Voici
laffectation des diffrentes broches :
Vers PC
Vers PIC
24 / 42
Schma de cblage :
Tche 5 :
La commande sera faite par un microcontrleur PIC
25 / 42
d) Ralisation du pont diviseur
Afin de lire la tension que dlivre le panneau laide du PIC, nous devons mettre en
place un pont diviseur pour rduire la tension arrivant sur le PIC. En effet la tension du
panneau peut atteindre 25V alors que le PIC a une alimentation de 5V.
e) Ralisation du comparateur
Afin de commander la gchette du transistor nous devons amplifier le signal envoy par
le PIC. Pour cela nous utilisons un LM311.
26 / 42
Le comparateur LM311 permet, grce sa technologie, avec une alimentation continue
0-15V, de transformer le signal de sortie (PWM).
Tension de sortie
du PIC (PWM)
Tension de sortie du
LM311
f) Ralisation du filtre
Pour calculer la puissance dlivre par le panneau solaire, nous devons relever la
composante continue du courant en sortie de celui-ci. Pour cela nous utilisons un filtre passe-
bas.
Pour f=100Hz
1
0.001592s RC
2f
27 / 42
8) Exprimentation terminale
a) Programmation du PIC
1er programme : affichage de la tension
Dans un premier temps nous avons ralis un programme qui consistait afficher la
tension dentre du PIC sur lcran LCD. Un potentiomtre nous permettait de faire varier
cette tension.
Rapport cyclique en %
Figure 28 : Photos de notre platine Labdec
avec laffichage du rapport cyclique
28 / 42
Les programmes sont prsents en annexe 2.
Tche n6 et n7 :
Contrle du courant de charge de la batterie
Contrle du niveau de charge de la batterie
Nous nous sommes donc limits afficher les valeurs de la tension, du courant et de la
puissance du panneau.
Courant du panneau
Puissance du panneau
(divise par 5 en raison du
pont diviseur)
29 / 42
b) Programme
void main()
{
unsigned int temp_res, temp_res2, temp_res3;
unsigned float courant, puissance, tension;
Annonce des variables
char texte[16];
unsigned short j, alpha;
Lcd_Config(&PORTB, 0, 1, WR, 5, 4, 3, 2); //Initialisation du LCD au port B, avec les pin spcifies
Lcd_Init(&PORTB); // Initialisation du port B //
Lcd_Cmd(Lcd_CLEAR); //Efface lecran LCD//
Lcd_Cmd(Lcd_CURSOR_OFF); //Eteint le curseur
while(1)
{
PORTC = ~PORTC; // basculement du port C
Delay_ms(1000); // toute les 1000ms
IntToStr(tension, texte); //Envoie la valeur de la variable tension dans la chaine de caractre texte
Lcd_Out(1, 1,texte); //Affiche texte sur la ligne 1, colonne 1 du LCD
Lcd_Out(1, 7,"mV"); //Affiche mV sur la ligne 1, colonne 7 du LCD
30 / 42
FloatToStr(courant, texte); //Envoie la valeur de la variable courant dans la chaine de caractre texte
Lcd_Out(1, 10,texte); //Affiche texte sur la ligne 1, colonne 10 du LCD
Lcd_Out(1, 15,"mA"); //Affiche mA sur la ligne 1, colonne 15 du LCD
FloatToStr(puissance, texte); //Envoie la valeur de la variable puissance dans la chaine de caractre texte
Lcd_Out(2, 1,texte); //Affiche texte sur la ligne 2, colonne 1 du LCD
Lcd_Out(2, 15,"W"); //Affiche texte sur la ligne 2, colonne 15 du LCD
31 / 42
c) Schma lectrique complet (Annexe 3)
(-)
R4(1)
IRLZ34N
Q1(D) L1
+88.8 +88.8
Amps B82432T1824K000 Amps
R4 Ecran LCD
39k
+88.8 C3 D2 R5
Volts 2u2 12TQ045 C4 C5 +88.8 33R
1u 220n Volts
R3 Hacheur
10k
VDD
VSS
VEE
LCD1(VSS)
RW
RS
R7
D0
D1
D2
D3
D4
D5
D6
D7
E
0R56
1
2
3
4
5
6
7
8
9
10
11
12
13
14
R8
D4
10R
U1(V+)
D3 1M110ZS5
R6
Driver 1 1N4148
C7 100k
2 8 330n
HIN V+ VB C1
7
HO
6
VS
3 5
LIN COM LO
22p Micro contrleur PIC
C6 IR2125 X1 9
OSC1/CLKIN RB0/INT
21
4 CRYSTAL 10 22
C2 OSC2/CLKOUT RB1
23
RB2
2 24
RA0/AN0 RB3/PGM
1u 3 25
RA1/AN1 RB4
22p 4 26
RA2/AN2/VREF-/CVREF RB5
RV1(2) 5 27
RA3/AN3/VREF+ RB6/PGC
6 28
RA4/T0CKI/C1OUT RB7/PGD
7
RV1 RA5/AN4/SS/C2OUT
11
LM311 1
RC0/T1OSO/T1CKI
12
6
4
MCLR/Vpp/THV RC1/T1OSI/CCP2
13
RV2 RC2/CCP1
7 3 14 R1
100%
Rapport cyclique RC3/SCK/SCL
15
RC4/SDI/SDA
1 2 16 1k
RC5/SDO
17
97%
RC6/TX/CK
R9 1k 18
RC7/RX/DT
5
8
R2
D1
16k
1k 1k PIC16F876A LED-BIRG
C8
100n LM311(VCC+)
Comparateur
Filtre
Figure 30 : Schma lectrique ralis sur Proteus reprsentant toute les parties de notre
projet 32 / 42
d) Ralisation de la platine Labdec
Alimentation
du PIC
Filtre passe bas Pont diviseur PIC
Arrive de la
tension du
panneau
Tche complmentaire :
Programme PIC afin dafficher la tension et le courant
pour en dduire la puissance du panneau solaire
33 / 42
9) Estimation des cots du projet
Estimation des cots du projet
34 / 42
10) Analyse et ressentis du projet
Pour conclure sur notre projet, nous dirons que ce ft une trs bonne exprience. Le travail
sest avr trs enrichissant pour notre exprience professionnelle en ce qui concerne le
domaine technique.
De plus, ce projet nous a permis de mettre en pratique les connaissances thoriques et
pratiques acquises durant notre formation.
Nous voudrons aussi rajouter que ce thme nous a beaucoup apport au niveau
dcouverte des logiciels de programmation. En effet, auparavant MicroC ou Proteus
nous taient inconnus et nous avons d nous initier.
Cependant, nous avons apport quelques modifications au cahier des charges en ce qui
concerne la programmation. En effet, au dpart nous souhaitions faire lasservissement du
systme puissance maximale et finalement on a trouv un compromis en ralisant
laffichage de la tension, du courant ainsi que de la puissance du panneau.
En effet, suite une initiation du programme qui a t plus longue que prvu nous avons
d nous restreindre cette tche complmentaire.
Nous regrettons de ne pas avoir valid toutes les lignes du cahier des charges car on se
sentait rellement sur la bonne voie.
35 / 42
Annexes
36 / 42
Annexe 1 :
void main()
{
Lcd_Config(&PORTB, 0, 1, WR, 5, 4, 3, 2); //Initialisation du LCD au port B, avec les pin spcifies
Lcd_Init(&PORTB); // Initialisation du port B
Lcd_Cmd(Lcd_CLEAR); // Efface lecran LCD
Lcd_Cmd(Lcd_CURSOR_OFF); //Eteint le curseur
Lcd_Out(1, 3, "hello"); //Affiche hello sur lecran LCD, ligne 1 colone 3
while(1)
{
PORTC = ~PORTC; // basculement du portC (allumage diode)
Delay_ms(1000); // toute 1000ms
}
37 / 42
Annexe 2 :
void main()
{
unsigned int temp_res;
Annonce variables
char texte[16];
Lcd_Config(&PORTB, 0, 1, WR, 5, 4, 3, 2); //Initialisation du LCD au port B, avec les pin spcifies
Lcd_Init(&PORTB); // Initialisation du port B
Lcd_Cmd(Lcd_CLEAR); // Efface lecran LCD
Lcd_Cmd(Lcd_CURSOR_OFF); //Eteint le curseur
while(1)
{
PORTC = ~PORTC; // basculement du portC
Delay_ms(1000); // toute 1000ms
IntToStr(temp_res, texte); //Envoie la valeur de la variable temp_res dans la chaine de caractre texte
Lcd_Out(2, 1,"T="); //Affiche T= sur la ligne 2, colonne 1 du LCD
Lcd_Out(2, 3,texte); //Affiche texte sur la ligne 2, colonne 3 du LCD
Lcd_Out(2, 9,"mV"); //Affiche mV sur la ligne 2, colonne 9 du LCD
}
38 / 42
Programme daffichage et de rglage du rapport cyclique
void main()
{
unsigned int temp_res, temp_res2, temp_res3;
Annonce des variables
char texte[16];
unsigned short j, alpha;
Lcd_Config(&PORTB, 0, 1, WR, 5, 4, 3, 2); //Initialisation du LCD au port B, avec les pin spcifies
Lcd_Init(&PORTB); // Initialisation du port B //
Lcd_Cmd(Lcd_CLEAR); //Efface lecran LCD//
Lcd_Cmd(Lcd_CURSOR_OFF); //Eteint le curseur
while(1)
{
PORTC = ~PORTC; // basculement du port C
Delay_ms(1000); // toute les 1000ms
IntToStr(alpha, texte); //Envoie la valeur de la variable alpha dans la chaine de caractre texte
Lcd_Out(1, 1,texte); //Affiche texte sur la ligne 1, colonne 1 du LCD
Lcd_Out(1, 7,"%"); //Affiche % sur la ligne 1, colonne 7 du LCD
39 / 42
Annexe 3 :
40 / 42
Bibliographie :
41 / 42