Taula de continguts:

Carregador de bateria intel·ligent basat en microcontroladors: 9 passos (amb imatges)
Carregador de bateria intel·ligent basat en microcontroladors: 9 passos (amb imatges)

Vídeo: Carregador de bateria intel·ligent basat en microcontroladors: 9 passos (amb imatges)

Vídeo: Carregador de bateria intel·ligent basat en microcontroladors: 9 passos (amb imatges)
Vídeo: Charging Connector Change #technology #mobilerepair 2024, Setembre
Anonim
Carregador de bateria intel·ligent basat en microcontroladors
Carregador de bateria intel·ligent basat en microcontroladors
Carregador de bateria intel·ligent basat en microcontroladors
Carregador de bateria intel·ligent basat en microcontroladors
Carregador de bateria intel·ligent basat en microcontroladors
Carregador de bateria intel·ligent basat en microcontroladors

El circuit que esteu a punt de veure és un carregador de bateria intel·ligent basat en ATMEGA8A amb tall automàtic. Es mostren diferents paràmetres mitjançant una pantalla LCD durant diferents estats de càrrega. També el circuit emetrà so mitjançant un brunzidor quan es completi la càrrega.

Vaig construir el carregador bàsicament per carregar la meva bateria de ions de li de 11,1 v / 4400 maH. El firmware està escrit bàsicament per carregar aquest tipus de bateria en concret. Podeu carregar el vostre propi protocol de càrrega per satisfer les vostres necessitats per carregar altres tipus de bateries.

Com ja sabeu, els carregadors de bateries intel·ligents estan disponibles als mercats. Però, en ser un entusiasta de l’electrònica, sempre és preferible construir-ne el meu en lloc de comprar-ne un que tingui funcions estàtiques / immutables. En aquest mòdul, tinc previst actualitzar en el futur, així que he deixat espai respecte a això.

Quan vaig comprar la meva anterior bateria de ió de 11,1 v / 2200 mah, vaig buscar carregadors de bateries de bricolatge amb control intel·ligent a Internet, però vaig trobar recursos molt limitats. Però, com que la meva bateria anterior va morir amb el pas del temps (sense cap motiu), vaig comprar una altra bateria d’ion Li de 11,1 v / 4400 mah, però aquesta vegada la configuració anterior no era adequada per carregar la meva nova bateria. requisit, vaig estudiar a la xarxa i vaig poder dissenyar el meu propi carregador intel·ligent.

Estic compartint això, ja que crec que hi ha molts aficionats / aficionats que són realment apassionats de treballar en electrònica de potència i microcontroladors i que també necessiten construir un carregador intel·ligent propi.

Fem una ullada ràpida a la forma de carregar una bateria d’ió Li.

Pas 1: carregueu el protocol d'una bateria de ions de Li

Per carregar la bateria de ions de Li, s’han de complir algunes condicions. Si no les mantenim, la bateria estarà sobrecarregada o s’encendrà (si està sobrecarregada) o es deteriorarà permanentment.

Hi ha un lloc web molt bo per conèixer tot el necessari sobre diferents tipus de bateries i, per descomptat, coneixeu el nom del lloc web si esteu familiaritzat amb el treball amb bateries … Sí, estic parlant de batteryuniversity.com.

Aquí teniu l’enllaç per conèixer els detalls necessaris per carregar una bateria d’ió Li.

Si teniu prou mandra per llegir totes aquestes teories, l’essencial és el següent.

1. La càrrega completa d’una bateria de ions de Li de 3,7 V és de 4,2 V. En el nostre cas, la bateria de Li-11 de 11,1 V significa bateria de 3 x 3,7 V. Per a una càrrega completa, la bateria ha d’arribar a 12,6 V, però per motius de seguretat, el carregarà fins a 12,5 v.

2. Quan la bateria estigui a punt d’arribar a la càrrega completa, el corrent extret per la bateria del carregador es redueix fins al 3% de la capacitat nominal de la bateria. Per exemple, la capacitat de la bateria del meu paquet de cèl·lules és de 4400 mah. Així, quan la bateria estigui completament carregada, s’arribarà al corrent generat per la bateria de gairebé el 3% -5% de 4400ma, és a dir, entre 132 i 220ma. 190ma (gairebé el 4% de la capacitat nominal).

3. El procés de càrrega total es divideix en dues parts principals: 1-Corrent constant (mode CC), 2-Voltatge constant (mode CV). avisarà l’usuari quan es carregui completament alarmantment, llavors la bateria s’ha de desconnectar del carregador)

Mode CC:

En mode CC, el carregador carrega la bateria amb una velocitat de càrrega de 0,5c o 1c. Ara què dimonis és 0,5c / 1c ???? Per ser senzill, si la capacitat de la bateria és de 4400 mah, aleshores en mode CC, 0,5c serà de 2200 ma 1c tindrà una intensitat de càrrega de 4400 ma. "c" significa velocitat de càrrega / descàrrega. Algunes bateries també admeten 2c, és a dir, en mode CC, podeu configurar el corrent de càrrega fins a una capacitat de bateria de 2x, però això és una bogeria !!!!!

Però, per estar segur, escolliré un corrent de càrrega de 1000 ma per a una bateria de 4400 mah, és a dir, 0,22 c. / disminució del voltatge de sortida fins que la càrrega de la bateria arriba a 12,4v.

Mode CV:

Ara, a mesura que el voltatge de la bateria arriba a 12,4 v, el carregador mantindrà 12,6 volts (independent del corrent generat per la bateria) a la sortida. Ara, el carregador aturarà el cicle de càrrega en funció de dues coses. i també si el corrent de càrrega cau per sota de 190 ma (un 4% de la capacitat nominal de la bateria, tal com s’ha explicat anteriorment), el cicle de càrrega s’aturarà i es farà sonar un brunzidor.

Pas 2: Esquema i explicació

Ara fem una ullada al funcionament del circuit. L’esquema s’adjunta en format pdf al fitxer BIN.pdf.

El voltatge d’entrada del circuit pot ser de 19 / 20v. He utilitzat un carregador de portàtil antic per obtenir 19v.

J1 és un connector de terminal per connectar el circuit a la font de tensió d’entrada. Q1, D2, L1, C9 està formant un convertidor de buck. Ara què dimonis és això ??? del convertidor, podeu aconseguir el voltatge de sortida desitjat variant el cicle de treball. Si voleu saber més sobre els convertidors de dòlars, visiteu aquesta pàgina, però per ser francs, són totalment diferents de la teoria. Per avaluar els valors adequats de L1 i C9 per als meus requisits, heu trigat 3 dies de prova i error. Si voleu carregar diferents bateries, és possible que aquests valors canviïn.

Q2 és el transistor conductor del mosfet de potència Q1. R1 és una resistència de polarització per Q1. Alimentarem el senyal pwm a la base de Q2 per controlar la tensió de sortida. C13 és un tap de desacoblament.

Ara la sortida s’alimenta a Q3. Es pot fer una pregunta que "Quin ús fa Q3 aquí?". La resposta és bastant senzilla, actua com un simple interruptor. Sempre que mesurem el voltatge de la bateria, tancarem Q3 per desconnectar la sortida de tensió de càrrega del convertidor Buck. Q4 és el controlador de Q3 amb una resistència de polarització R3.

Tingueu en compte que hi ha un díode D1 al camí. Què fa el díode aquí al camí? Aquesta resposta també és molt senzilla. Sempre que el circuit es desconnectarà de la potència d’entrada mentre la bateria està connectada a la sortida, el corrent de la bateria flueix en el recorregut invers a través dels díodes corporals del MOSFET Q3 i Q1 i, per tant, l’U1 i l’U2 obtindran la tensió de la bateria a les seves entrades i alimentaran el circuit a partir de la tensió de la bateria. Per evitar-ho, s’utilitza D1.

La sortida del D1 s’alimenta a l’entrada del sensor de corrent (IP +). Es tracta d’un sensor de corrent base d’efecte hall, és a dir, la part de detecció de corrent i la part de sortida estan aïllades. La sortida del sensor de corrent (IP-) s’alimenta Aquí, R5, RV1, R6 estan formant un circuit divisor de tensió per mesurar la tensió / sortida de la bateria.

L’ADC de l’Amega8 s’utilitza aquí per mesurar el voltatge i el corrent de la bateria. L’ADC pot mesurar un màxim de 5 V. Però mesurarem un màxim de 20 V (amb una mica d’espai lliure). Per tal de reduir el voltatge al rang ADC, un 4: S’utilitza 1 divisor de voltatge. L’olla (RV1) s’utilitza per afinar / calibrar. Ho parlaré més endavant. C6 està desacoblant el tap.

La sortida del sensor de corrent ACS714 també s’alimenta al pin ADC0 de atmega8. Mitjançant aquest sensor ACS714, mesurarem el corrent. Tinc una placa de sortida de pololu de la versió 5A i funciona molt bé. En parlaré a la següent etapa a com mesurar el corrent.

El LCD és un lcd normal de 16x2. El LCD utilitzat aquí es configura en mode de 4 bits, ja que el nombre de pins de l'atmega8 és limitat.

L’atmega8 compta amb una velocitat de 16 MHz amb un cristall extern X1 amb dos taps de desacoblament C10 / 11. La unitat ADC de l’atmega8 s’alimenta mitjançant el pin Avcc mitjançant un inductor de 10 uH. C7, els taps C8 estan connectats a Agnd. el més proper possible a l'Avcc i Aref corresponentment mentre es realitza la PCB. Tingueu en compte que el pin Agnd no es mostra al circuit. El pin Agnd es connectarà a terra.

He configurat l'ADC de l'atmega8 per utilitzar Vref extern, és a dir, subministrarem la tensió de referència mitjançant el pin Aref. La principal raó per aconseguir la màxima precisió de lectura possible. És per això que el vaig configurar externament. Ara heu de tenir en compte que el 7805 (U2) subministra només el sensor ACS714 i el pin Aref de atmega8. Per mantenir una precisió òptima. L’ACS714 proporciona una tensió de sortida estable de 2,5 V quan però, per exemple, si es reduirà la tensió d’alimentació de l’ACS714 (per exemple, 4.7v), es reduirà la tensió de sortida de corrent (2.5v) i es crearà una lectura de corrent inadequada / errònia. També mesurem la tensió respecte a Vref, la tensió de referència a Aref ha de ser lliure d’errors i estable. Per això necessitem una tensió de 5v estable.

Si alimentéssim l’ACS714 i Aref des de l’U1 que subministra l’atmega8 i el lcd, hi hauria caiguda de tensió substanial a la sortida d’U1 i l’amper i la lectura de voltatge serien erronis. Per això s’utilitza U2 aquí per eliminar l’error. subministrant un 5v estable només a Aref i ACS714.

Es prem S1 per calibrar la lectura del voltatge. S2 es reserva per a un ús futur. Podeu afegir / no afegir aquest botó segons la vostra elecció.

Pas 3: Funcionament …

Funcionament …
Funcionament …
Funcionament …
Funcionament …
Funcionament …
Funcionament …

En alimentar-se, l'atmega8 engegarà el convertidor de buck donant una sortida del 25% de pwm a la base del Q2. Al seu torn, Q2 pilotarà Q1 i s'iniciarà el convertidor de buck. El Q3 es desactivarà per desconnectar la sortida del convertidor de buck i la bateria. L’atmega8 llegeix el voltatge de la bateria mitjançant el divisor de resistències. Si no hi ha cap bateria connectada, l’atmega8 mostra un missatge "Inseriu la bateria" mitjançant un lcd de 16x2 i espera la bateria. Si es connecta una bateria, atmega8 comprovarà el voltatge. Si el voltatge és inferior a 9v, el atmega8 mostrarà "Bateria defectuosa" al lcd de 16x2.

Si es troba una bateria de més de 9v, el carregador entrarà primer en mode CC i activarà el Mosfet de sortida Q3. El mode de carregador (CC) s’actualitzarà per mostrar-se immediatament. Si el voltatge de la bateria es troba a més de 12,4v, el mega8 sortirà immediatament del mode CC i entrarà en mode CV. Si la tensió de la bateria és inferior a 12,4 v, el mega8 mantindrà el corrent de càrrega d’1 A augmentant / disminuint la tensió de sortida del convertidor de buck variant el cicle de treball del pwm. El sensor de corrent ACS714 llegirà el corrent de càrrega. El voltatge de sortida del corrent de càrrega, el corrent de càrrega i el cicle de treball PWM s’actualitzaran periòdicament a la pantalla LCD.

. La tensió de la bateria es comprovarà desactivant Q3 després de cada interval de 500 ms. La tensió de la bateria s’actualitzarà immediatament al lcd.

Si la tensió de la bateria supera els 12,4 volts durant la càrrega, el mega8 sortirà del mode CC i entrarà en mode CV. L’estat del mode s’actualitzarà immediatament al lcd.

A continuació, el mega8 mantindrà el voltatge de sortida de 12,6 volts variant el cicle de treball del dòlar. Aquí es comprovarà el voltatge de la bateria cada 1 s d’interval. Tan bon punt la tensió de la bateria sigui superior a 12,5 v, es comprovarà si el corrent extret és inferior a 190 ma. Si es compleixen ambdues condicions, el cicle de càrrega s'aturarà en apagar definitivament Q3 i es farà sonar un brunzidor en activar Q5. També el mega8 mostrarà "Càrrega completa" a través del lcd.

Pas 4: es requereixen parts

Peces obligatòries
Peces obligatòries

A continuació s’enumeren les parts necessàries per completar el projecte. Consulteu els fulls de dades per obtenir informació detallada. S’ofereix només un enllaç de full de dades de peces crucials.

1) ATMEGA8A x 1. (full de dades)

2) Sensor de corrent ACS714 5A de Pololu x 1 (us recomano utilitzar el sensor de Pololu, ja que són els més precisos entre tots els altres sensors que he utilitzat. Podeu trobar-lo aquí). La imatge es descriu a la imatge.

3) IRF9540 x 2. (full de dades)

4) 7805 x 2 (recomanat per Toshiba genuinespare donen la sortida de 5 V més estable). (Fitxa tècnica)

5) 2n3904 x 3. (full de dades)

6) 1n5820 schottky x 2. (full de dades)

7) 16x2 LCD x 1. (full de dades)

8) Inductor de potència 330uH / 2A x 1 (recomanat per coilmaster)

9) 10uH inductor x 1 (petit)

10) Resistències - (Totes les resistències són del tipus MFR de l'1%)

150R x 3

680R x 2

1k x 1

2k2 x 1

10k x 2

22k x 1

Pot de 5 k x 2 (tipus de muntatge de PCB)

11) Condensadors

Nota: no he utilitzat C4. No cal fer-lo servir si utilitzeu font d'alimentació per a portàtils / font d'alimentació regulada com a font d'alimentació de 19 v

100 uF / 25 v x 3

470uF / 25v x 1

1000 uF / 25 v x 1

100n x 8

22p x 2

12) Interruptor instantani de muntatge en PCB x 2

13) Zumbador de 20 v x 1

14) Connector de bloc de terminals de 2 pins x 2

15) Gabinet (he utilitzat un gabinet com aquest.) Podeu utilitzar el que vulgueu.

16) Font d'alimentació per a portàtils de 19v (he modificat una font d'alimentació per a portàtils HP, podeu utilitzar qualsevol tipus de font d'alimentació com vulgueu. Si voleu construir-ne una, visiteu el meu instructable.)

17) Dissipador de calor de mida mitjana per a U1 i Q1. Podeu utilitzar aquest tipus o podeu consultar les imatges del meu circuit. Però assegureu-vos d’utilitzar el dissipador de calor per a tots dos.

18) Connector banana: femella (negre i vermell) x 1 + mascle (negre i vermell) (segons la vostra necessitat de connectors)

Pas 5: temps per calcular …

Càlcul de mesura de tensió:

El voltatge màxim, mesurarem amb atmega8 adc, és de 20v, però l’adc de atmega8 pot mesurar un màxim de 5v. Així, per fer 20v dins del rang de 5v, s’utilitza aquí un divisor de voltatge 4: 1 (com a 20v / 4 = 5v). Per tant, podríem implementar-ho simplement utilitzant dues resistències, però, en el nostre cas, he afegit un pot entre dues resistències fixes perquè puguem ajustar manualment la precisió girant el pot. La resolució de l’ADC és de 10 bits, és a dir, l’adc representarà el 0v al 5v com a 0 a 1023 nombres decimals o de 00h a 3FFh. ("h" significa nombres hexadecimals). La referència s'estableix a 5v externament mitjançant el pin Aref.

Per tant, la tensió mesurada = (lectura adc) x (Vref = 5v) x (factor divisor de la resistència, és a dir, 4 en aquest cas) / (lectura màxima de l’adc, és a dir, 1023 per a 10 bits adc).

Suposem que obtenim una lectura adc de 512. Llavors la tensió mesurada serà -

(512 x 5 x 4) / 1023 = 10v

Càlcul de mesurament actual:

L’ACS714 donarà una sortida estable de 2,5 v al pin de sortida quan no fluirà corrent d’IP + cap a IP-. Donarà 185 mv / A sobre els 2,5 v, és a dir, si corrent 3A pel circuit, l’acs714 donarà 2,5 v + (0,185 x 3) v = 3,055 v al pin de sortida.

Per tant, la fórmula de mesura actual és la següent:

Corrent mesurat = (((lectura adc) * (Vref = 5v) / 1023) -2,5) /0,185.

per exemple, la lectura adc és de 700, llavors el corrent mesurat serà - (((700 x 5) / 1023) - 2,5) /0.185 = 4.98A.

Pas 6: el programari

El programari es codifica a Winavr mitjançant GCC. He modularitzat el codi, és a dir, he creat diferents biblioteques com ara biblioteca adc, biblioteca lcd, etc. La biblioteca adc conté les ordres necessàries per configurar i interaccionar amb l’adc. funcions per conduir el lcd de 16x2. També podeu utilitzar lcd_updated _library.c ja que la seqüència d’inici del lcd es modifica en aquesta biblioteca. Si voleu utilitzar la biblioteca actualitzada, canvieu-la amb lcd.c

El fitxer main.c conté les funcions principals. El protocol de càrrega de li-ion s’escriu aquí. Definiu el ref_volt al main.c mesurant la sortida d’U2 (7805) amb un multímetre precís per obtenir lectures precises com els càlculs. es basen en ell.

Simplement podeu gravar el fitxer.hex directament al vostre mega8 per evitar el cap.

Per a aquells que vulguin escriure un altre protocol de càrrega, he posat prou comentaris perquè fins i tot un nen pugui entendre què passa per a cada execució de línia. Només heu d’escriure el vostre propi protocol per a diferents tipus de bateries. ió de diferent voltatge, només heu de canviar els paràmetres (tot i que no es provi per a altres tipus de bateries de li-ion / altres. Cal que el solucioneu vosaltres mateixos).

Recomano encaridament no construir aquest circuit, si aquest és el vostre primer projecte o si sou nou en microcontroladors / electrònica de potència.

He penjat tots i cadascun dels fitxers en el seu format original, excepte el Makefile, ja que està creant un problema per obrir-lo. L’he penjat en format.txt. Simplement copieu el contingut i enganxeu-lo en un Makefile nou i creeu tot el projecte. Voila …. Esteu a punt per gravar el fitxer hexadecimal.

Pas 7: Ja n’hi ha prou de teoria … … anem a Buld It

Ja n’hi ha prou de teoria … … anem a Buld It
Ja n’hi ha prou de teoria … … anem a Buld It
Ja n’hi ha prou de teoria … … anem a Buld It
Ja n’hi ha prou de teoria … … anem a Buld It
Ja n’hi ha prou de teoria … … anem a Buld It
Ja n’hi ha prou de teoria … … anem a Buld It
Ja n’hi ha prou de teoria … … anem a Buld It
Ja n’hi ha prou de teoria … … anem a Buld It

A continuació, es mostren les imatges del meu prototip, des del taulell de memòria fins a la finalització en pcb. Consulteu les notes de les imatges per saber-ne més. Les imatges s’ordenen en sèrie des del principi fins al final.

Pas 8: Abans del primer cicle de càrrega … Calibrar !!

Abans de carregar una bateria mitjançant el carregador, primer cal calibrar-la, en cas contrari no podrà carregar-la / sobrecarregar-la.

Hi ha dos tipus de calibratge: 1) Calibratge de tensió. 2) Calibratge de corrent. Els passos són els següents per calibrar.

Al principi, mesureu el voltatge de sortida de l’U2. A continuació, definiu-lo al main.c com a ref_volt. Mine era 5.01. Canvieu-lo segons la vostra mesura. Aquest és el pas principal necessari per al calibratge de tensió i corrent. Per al calibratge actual, res El programari mateix s'encarregarà de tot

Ara, ja que heu cremat el fitxer hexadecimal després de definir el voltatge ref a main.c, mateu la potència de la unitat.

Ara mesureu el voltatge de la bateria que us carregareu mitjançant un multímetre i connecteu la bateria a la unitat.

Ara premeu el botó S1 i manteniu-lo premut i engegueu el circuit mentre es prem el botó. Després d’un curt retard d’uns 1 s, deixeu anar el botó S1. Tingueu en compte que la unitat no entrarà en mode de calibratge si primer alimenteu el circuit i premeu S1.

Ara podeu veure a la pantalla que el circuit entra al mode de calibratge. Es mostrarà un "mode cal" a la pantalla LCD junt amb la tensió de la bateria. Un cop hàgiu acabat, torneu a prémer l’interruptor S1, manteniu-lo premut durant aproximadament un segon i deixeu-lo anar. Estareu fora del mode de calibratge. Torneu a restablir el carregador apagant-lo i encenent-lo.

El procés anterior també es pot fer sense connectar una bateria. Heu de connectar una font d’energia externa al terminal de sortida (J2). Després d’entrar en mode de calibració, calibreu-la amb l’olla. Però aquesta vegada primer desconnecteu la font d’energia externa i premeu S1 per sortir del mode de calibratge. És necessari desconnectar primer la font d'alimentació externa per evitar qualsevol tipus de mal funcionament de qualsevol unitat.

Pas 9: activació després de la calibració …..ara ja esteu a punt per oscil·lar

Activació després de la calibració …..ara ja esteu a punt per oscil·lar
Activació després de la calibració …..ara ja esteu a punt per oscil·lar
Activació després de la calibració …..ara ja esteu a punt per oscil·lar
Activació després de la calibració …..ara ja esteu a punt per oscil·lar
Activació després de la calibració …..ara ja esteu a punt per balancejar
Activació després de la calibració …..ara ja esteu a punt per balancejar

Quan el calibratge s’hagi completat, ja podeu iniciar el procés de càrrega: primer poseu la bateria i enceneu la unitat. El carregador s’encarregarà del descans.

El meu circuit funciona i està provat al 100%, però si observeu alguna cosa, feu-m’ho saber.

Feliç edifici.

Rgds // Sharanya

Recomanat: