Sadržaj:

Pametni punjač na bazi mikrokontrolera: 9 koraka (sa slikama)
Pametni punjač na bazi mikrokontrolera: 9 koraka (sa slikama)

Video: Pametni punjač na bazi mikrokontrolera: 9 koraka (sa slikama)

Video: Pametni punjač na bazi mikrokontrolera: 9 koraka (sa slikama)
Video: 💦Blackview BV9200 ЧЕСТНЫЙ ОБЗОР ПРОТИВОУДАРНОГО 2024, Srpanj
Anonim
Pametni punjač baterija na bazi mikrokontrolera
Pametni punjač baterija na bazi mikrokontrolera
Pametni punjač baterija na bazi mikrokontrolera
Pametni punjač baterija na bazi mikrokontrolera
Pametni punjač baterija na bazi mikrokontrolera
Pametni punjač baterija na bazi mikrokontrolera

Krug koji ćete vidjeti je pametan punjač baterija temeljen na ATMEGA8A s automatskim isključivanjem. Različiti parametri prikazuju se na LCD -u tijekom različitih stanja punjenja. Također, krug će se oglasiti zvučnim signalom po završetku punjenja.

Punjač sam u osnovi izgradio za punjenje Li-ionske baterije od 11,1v/4400maH. Firmware je u osnovi napisan za punjenje ove posebne vrste baterija. Možete učitati vlastiti protokol punjenja kako biste ispunili svoje potrebe za punjenjem drugih vrsta baterija.

Kao što znate, pametni punjači baterija dostupni su na tržištima. No, budući da sam ljubitelj elektronike, uvijek mi je poželjnije izgraditi vlastiti, a ne kupiti onaj koji će imati statičke/nepromjenjive funkcije. U ovom modulu planiram nadogradnju u budućnosti pa sam ostavio prostora u vezi toga.

Kad sam prvi put kupio svoju prethodnu Li-ionsku bateriju od 11,1 V/2200 mAh, na internetu sam tražio punjače za baterije s pametnom kontrolom. Ali pronašao sam vrlo ograničene resurse. Pa sam za tada napravio punjač baterija baziran na LM317 i to je uspjelo jako dobro za mene. Ali kako mi je prethodna baterija s vremenom izumrla (bez razloga), kupio sam drugu Li-ionsku bateriju od 11,1v/4400mah. Ali ovaj put, prethodna postavka nije bila dovoljna za punjenje moje nove baterije. Da bih zadovoljio svoj zahtjev, studirao sam na internetu i uspio sam dizajnirati vlastiti pametni punjač.

Dijelim ovo jer mislim da postoje mnogi hobisti/entuzijasti koji su strastveno zainteresirani za rad na energetskoj elektronici i mikrokontroleru, a također imaju potrebu za izgradnjom vlastitog pametnog punjača.

Pogledajmo nakratko kako napuniti Li-ionsku bateriju.

Korak 1: Protokol punjenja Li-ionske baterije

Da biste napunili Li-ion bateriju, morate ispuniti određene uvjete. Ako ne održimo uvjete, baterija će biti nedovoljno napunjena ili će biti zapaljena (ako je napunjena) ili će biti trajno oštećena.

Postoji jako dobra web stranica za znati sve što je potrebno o različitim vrstama baterija i naravno da znate naziv web stranice ako ste upoznati s radom na baterijama … Da, govorim o batteryuniversity.com.

Ovdje je veza za znati potrebne detalje za punjenje Li-ionske baterije.

Ako ste dovoljno lijeni da pročitate sve te teorije, onda je suština sljedeća.

1. Puno punjenje 3,7v Li-ion baterije iznosi 4,2V. U našem slučaju, 11,1v Li-ion baterija znači 3 x 3,7V bateriju. Za potpuno punjenje baterija mora doseći 12,6V, ali iz sigurnosnih razloga, punit će ga do 12,5 V.

2. Kad se baterija približi svom punom punjenju, tada struja koju baterija puni iz punjača pada na čak 3% nazivnog kapaciteta baterije. Na primjer, kapacitet baterije mojih ćelija iznosi 4400mah. Dakle, kad će se baterija potpuno napuniti, struja koju napuni baterija bit će dosegnuta gotovo 3% -5% od 4400 mA tj. Između 132 do 220 mA. Za sigurno zaustavljanje punjenja, punjenje će se zaustaviti kad iscrpljena struja padne ispod 190 mA (gotovo 4% nazivnog kapaciteta).

3. Ukupni proces punjenja podijeljen je na dva glavna dijela: 1-konstantna struja (način rada CC), 2-konstantan napon (način rada CV). (Postoji i način punjenja s najvećom dopunom, ali to nećemo implementirati u naš punjač kao punjač obavijestit će korisnika o potpunom punjenju alarmiranjem, tada se baterija mora odvojiti od punjača)

CC način rada -

U CC načinu rada, punjač puni bateriju s 0,5c ili 1c brzinom punjenja. Sada, dovraga, 0,5c/1c ???? Da budemo jednostavniji, ako vam je kapacitet baterije recimo 4400mah, onda u CC načinu rada, 0,5c bit će 2200 ma, a 1c će biti 4400 ma struje punjenja. 'c' označava brzinu punjenja/pražnjenja. Neke baterije također podržavaju 2c tj. u CC načinu rada, možete postaviti struju punjenja do 2x kapaciteta baterije, ali to je suludo !!!!!

No, radi sigurnosti, odabrat ću struju punjenja od 1000 mA za bateriju od 4400 mA, tj. 0,22 C. U ovom načinu rada punjač će pratiti struju koju baterija vuče neovisno o naponu punjenja. /smanjenje izlaznog napona sve dok napunjenost baterije ne dosegne 12,4v.

CV način rada -

Sada kad napon baterije dosegne 12,4 V, punjač će na izlazu održavati 12,6 V (neovisno o struji koju vuče baterija). Sada će punjač prekinuti ciklus punjenja ovisno o dvije stvari. Ako naponi baterije prijeđu 12,5 V a također i ako struja punjenja padne ispod 190 mA (4% nazivnog kapaciteta baterije kako je prethodno objašnjeno), tada će se ciklus punjenja zaustaviti i oglasit će se zvučni signal.

Korak 2: Shema i objašnjenje

Pogledajmo sada rad kola. Shema je priložena u pdf formatu u datoteci BIN.pdf.

Ulazni napon kruga može biti 19/20v. Koristio sam stari punjač za prijenosno računalo da dobijem 19v.

J1 je terminalni konektor za povezivanje kruga s izvorom ulaznog napona. Q1, D2, L1, C9 tvore pretvarač u dolarima. Što je, dovraga, ovo ??? Ovo je u osnovi DC do DC pretvarač. pretvarača, u možete postići željeni izlazni napon promjenom radnog ciklusa. Ako želite saznati više o pretvaračima u dolarima, posjetite ovu stranicu. ali da budemo iskreni, oni se potpuno razlikuju od teorije. Za procjenu ispravnih vrijednosti L1 i C9 za moje zahtjeve, trebalo je 3 dana probe i pogreška. Ako ćete puniti različite baterije, moguće je da će se te vrijednosti promijeniti.

Q2 je upravljački tranzistor za napajanje mosfet Q1. R1 je otpornik za Q1. Mi ćemo napajati pwm signal u bazi Q2 za kontrolu izlaznog napona. C13 je kapa za razdvajanje.

Sada se izlaz zatim dovodi u Q3. Može se postaviti pitanje "Kakva je ovdje korist Q3?". Odgovor je prilično jednostavan, djeluje kao jednostavan prekidač. Kad god ćemo mjeriti napon baterije, isključit ćemo Q3 kako bismo odvojili izlaz napona punjenja od pretvarača. Q4 je upravljački program za Q3 s otporom otpornika R3.

Imajte na umu da se na putu nalazi dioda D1. Što dioda radi ovdje na putu? Ovaj odgovor je također vrlo jednostavan. Kad god će se krug isključiti iz ulaznog napajanja dok je baterija priključena na izlaz, struja iz baterije će teče u obrnutom smjeru preko dioda kućišta MOSFET -a Q3 & Q1, pa će U1 i U2 dobiti napon baterije na svojim ulazima i napajat će krug od napona baterije. Da bi se to izbjeglo, koristi se D1.

Izlaz D1 tada se dovodi na ulaz osjetnika struje (IP+). To je osnovni osjetnik osjetnika na hal efekt, tj. Dio osjetnika struje i izlazni dio su izolirani. Izlaz osjetnika struje (IP-) tada se dovodi na baterija. Ovdje R5, RV1, R6 formiraju krug razdjelnika napona za mjerenje napona/izlaznog napona baterije.

Atmega8 -ov ADC ovdje se koristi za mjerenje napona i struje baterije. ADC može mjeriti max 5v. Ali mjerit ćemo maksimalno 20v (s nekim prostorom za glavu). Kako bismo smanjili napon na raspon ADC -a, 4: Koristi se 1 razdjelnik napona. Lonac (RV1) se koristi za fino podešavanje/kalibraciju. O tome ću kasnije razgovarati. C6 je odvajanje kapice.

Izlaz trenutnog osjetnika ACS714 također se napaja na atmega8 -ov ADC0 pin. Preko ovog senzora ACS714 mjerit ćemo struju. Imam ploču za razbijanje od pololua verzije 5A i radi stvarno sjajno. Govorit ću o tome u sljedećoj fazi na kako izmjeriti struju.

LCD je normalni 16x2 lcd. LCD koji se ovdje koristi konfiguriran je u 4 -bitnom načinu rada jer je broj pinova atmega8 ograničen. RV2 je posuda za podešavanje svjetline za LCD.

Atmega8 radi na 16 mhz s vanjskim kristalom X1 s dvije kapice za odvajanje C10/11. ADC jedinica atmega8 se napaja preko Avcc pina preko 10uH induktora. C7, C8 su odvojene kape spojene na Agnd. Postavite ih kao što je moguće bliže Avcc -u i Arefu pri izradi PCB -a. Uočite da Agnd pin nije prikazan u krugu. Agnd pin će biti spojen na masu.

Konfigurirao sam ADC atmega8 za korištenje vanjskog Vrefa, tj. Referentni napon opskrbljivat ćemo putem Arefovog pina. Glavni razlog za to je postizanje najveće moguće točnosti očitanja. Unutarnji referentni napon od 2,56 V nije toliko velik u avrs. Zato sam ga konfigurirao izvana. Sada treba primijetiti. 7805 (U2) opskrbljuje samo senzor ACS714 i Aref pin atmega8. Ovo služi za održavanje optimalne točnosti. ACS714 daje stabilan izlazni napon od 2,5 V kada kroz njega nema protoka struje. Ali, na primjer, ako će se napon napajanja ACS714 smanjiti (recimo 4,7 V), tada će se i trenutni izlazni napon (2,5 V) također smanjiti i stvorit će neprikladno/pogrešno očitanje struje. Također mjerimo napon s obzirom na Vref, tada referentni napon na Arefu mora biti bez grešaka i stabilan. Zato nam je potrebno stabilno 5V.

Ako bismo napajali ACS714 & Aref iz U1 koji opskrbljuje atmega8 i LCD, tada bi došlo do substanijalnog pada napona na izlazu U1, a očitanje ampera i napona bilo bi pogrešno. Zato se ovdje koristi U2 za uklanjanje pogreške opskrbom stabilnih 5V samo za Aref i ACS714.

S1 je pritisnut za kalibriranje očitanja napona. S2 je rezerviran za buduću uporabu. Ovu tipku možete dodati/ne dodati prema vlastitom izboru.

Korak 3: Funkcioniranje ……

Funkcioniranje…
Funkcioniranje…
Funkcioniranje…
Funkcioniranje…
Funkcioniranje…
Funkcioniranje…

Kad se napaja, atmega8 će uključiti pretvarač dolara u pogon dajući 25% pwm izlaza na bazi Q2. Zauzvrat, Q2 će tada pokretati Q1 i pokrenut će se pretvarač dolara. Q3 će se otjerati kako bi se isključio izlaz pretvarača dolara. i baterija. Atmega8 tada očitava napon baterije preko razdjelnika otpornika. Ako nije spojena baterija, tada atmega8 prikazuje poruku "Umetni bateriju" preko 16x2 lcd i čeka bateriju. Ako je baterija zatim priključena, atmega8 će provjeriti napon. Ako je napon niži od 9v, tada će atmega8 na 16x2 lcd -u prikazati "Neispravna baterija".

Ako je pronađena baterija s više od 9V, tada će punjač prvo ući u CC način rada i uključiti izlazni MOSFET Q3. Način punjača (CC) će se ažurirati kako bi se odmah prikazao. Ako je napon baterije veći od 12,4 V, tada mega8 će odmah napustiti CC način rada i ući će u CV način. Ako je napon baterije manji od 12,4 V, tada će mega8 održavati struju punjenja 1A povećanjem/smanjenjem izlaznog napona pretvarača u promjeni radnog ciklusa pwm. Snosni napon ACS714 očitavat će struju punjenja. Izlazni napon, struja punjenja, radni ciklus PWM periodično će se ažurirati na LCD -u.

. Napon baterije će se provjeravati isključivanjem Q3 nakon svakih 500 ms. Napon baterije odmah će se ažurirati na lcd.

Ako napon baterije prijeđe više od 12,4 volta tijekom punjenja, mega8 će napustiti CC način rada i ući u CV način rada. Status načina rada odmah će se ažurirati na lcd.

Tada će mega8 održavati izlazni napon od 12,6 volta promjenom radnog ciklusa. Ovdje će se napon baterije provjeravati nakon svakih 1 s interval. Čim napon baterije bude veći od 12,5 V, tada će se provjeriti ako je izvučena struja ispod 190 mA. Ako su ispunjena oba uvjeta, tada će se ciklus punjenja zaustaviti trajnim isključivanjem Q3, a zvučni signal će se oglasiti uključivanjem Q5. Također će mega8 na LCD -u prikazati "Punjenje je dovršeno".

Korak 4: Potrebni dijelovi

Potrebni dijelovi
Potrebni dijelovi

Dolje su navedeni potrebni dijelovi za dovršetak projekta. Za iscrtavanje pogledajte tehničke listove. Dostupna je samo veza s tablicom s ključnim dijelovima

1) ATMEGA8A x 1. (podatkovni list)

2) ACS714 5A senzor struje iz Pololu x 1 (toplo preporučujem da koristite senzor iz Pololua jer su oni najprecizniji od svih ostalih senzora koje sam koristio. Ovdje ga možete pronaći). Izlaz je opisan na slici.

3) IRF9540 x 2. (podatkovni list)

4) 7805 x 2 (preporučuje se od Toshiba genuinespare jer daju najstabilniji izlaz od 5 V). (Podatkovni list)

5) 2n3904 x 3. (podatkovni list)

6) 1n5820 schottky x 2. (podatkovni list)

7) 16x2 LCD x 1. (podatkovna tablica)

8) Prigušnica snage 330uH/2A x 1 (preporučeno od coilmaster -a)

9) 10uH induktor x 1 (mali)

10) Otpornici -(Svi otpornici su tipa 1% MFR)

150R x 3

680R x 2

1k x 1

2k2 x 1

10k x 2

22k x 1

5k lonac x 2 (tip nosača za PCB)

11) Kondenzatori

Napomena: Nisam koristio C4. Ne morate ga koristiti ako koristite napajanje za prijenosno računalo/regulirano napajanje kao izvor napajanja od 19 V.

100uF/25v x 3

470uF/25v x 1

1000uF/25v x 1

100n x 8

22p x 2

12) Prekidač za montažu na PCB, 2 x

13) 20V zujalica x 1

14) 2 -polni priključak stezaljke x 2

15) Ormarić (koristio sam ovakav ormarić.). Možete koristiti što god želite.

16) Napajanje za prijenosno računalo 19v (izmijenio sam napajanje prijenosnog računala hp. Možete koristiti bilo koji tip napajanja kako želite. Ako ga želite izgraditi, posjetite ove upute.)

17) Srednji hladnjak za U1 i Q1. Možete koristiti ovaj tip. Ili možete pogledati moje slike kruga. Ali svakako upotrijebite hladnjak za oboje.

18) Konektor za banane - ženski (crno -crveni) x 1 + muški (crni i crveni) (ovisno o potrebama konektora)

Korak 5: Vrijeme za izračun ……

Izračun mjerenja napona:

Maksimalni napon, mjerit ćemo pomoću atmega8 adc -a, je 20v. Ali atmega8 -ov adc može izmjeriti max 5v. Dakle, kako bi bio 20v unutar 5v raspona, ovdje se koristi razdjelnik napona 4: 1 (kao 20v/4 = 5v). Tako bismo to mogli implementirati jednostavnom upotrebom dva otpornika, ali u našem slučaju, dodao sam lonac između dva fiksna otpornika kako bismo mogli ručno prilagoditi točnost okretanjem lonca. Razlučivost ADC -a je 10 bita, tj. predstavljat će 0v do 5v kao 0 do 1023 decimalna broja ili 00h do 3FFh. ('h' označava heksadecimalne brojeve). Referenca je postavljena na 5v izvana putem Aref pina.

Tako je izmjereni napon = (očitanje adc -a) x (Vref = 5v) x (faktor razdjelnika otpornika, u ovom slučaju 4) / (maksimalno očitanje adc -a, tj. 1023 za 10 -bitni adc).

Pretpostavimo da dobijemo adc očitanje od 512. Tada će izmjereni napon biti -

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

Izračun trenutnog mjerenja:

ACS714 će dati stabilan izlaz od 2.5v na izlaznom pinu kada struja neće teći od IP+ prema IP-. Dat će 185mv/A preko 2.5v, tj. Ako, primjerice, struja 3A teče kroz krug, acs714 će dati 2.5v+(0.185 x 3) v = 3.055v na svom vanjskom pinu.

Dakle, trenutna formula mjerenja je sljedeća -

Mjerena struja = (((očitanje adc)*(Vref = 5v)/1023) -2,5)/0,185.

recimo, očitanje adc -a je 700, tada će izmjerena struja biti - (((700 x 5)/1023) - 2,5)/0,185 = 4,98A.

Korak 6: Softver

Softver je kodiran u Winavr -u pomoću GCC -a. Modularizirao sam kôd, tj. Stvorio sam različite knjižnice poput biblioteke adc, lcd knjižnice itd. Knjižnica adc sadrži potrebne naredbe za postavljanje i interakciju s adc -om. Lcd biblioteka sadrži sve funkcije za pogon 16x2 lcd -a. Također možete koristiti lcd_updated _library.c jer se redoslijed pokretanja lcd -a mijenja u ovoj biblioteci. Ako želite koristiti ažuriranu knjižnicu, preimenujte je u lcd.c

Datoteka main.c sadrži glavne funkcije. Ovdje je zapisan protokol punjenja za li-ion. Molimo definirajte ref_volt u main.c mjerenjem izlaza U2 (7805) s preciznim multimetrom kako biste dobili točna očitanja tijekom izračuna temelje se na njoj.

Možete jednostavno snimiti.hex datoteku izravno u svoj mega8 kako biste zaobišli headche.

Za one koji žele napisati još jedan protokol punjenja, stavio sam dovoljno komentara pomoću kojih čak i dijete može razumjeti što se događa za svaku izvedbu linije. Samo morate napisati vlastiti protokol za različite vrste baterija. Ako koristite Li- iona različitog napona, morate promijeniti samo parametre. (Iako ovo nije testirano za druge li-ionske/druge vrste baterija. Morate to sami riješiti).

Toplo preporučujem da ne gradite ovaj sklop, ako vam je ovo prvi projekt ili ste tek započeli s mikrokontrolerom/energetskom elektronikom.

Učitao sam svaku datoteku u izvornom formatu osim Makefilea jer stvara problem za otvaranje. Učitao sam ga u.txt formatu. Samo kopirajte sadržaj i zalijepite ga u novi Makefile i izgradite cijeli projekt..spremni ste narezati heksadecimalnu datoteku.

Korak 7: Dosta je teorije … Hajde da to razjasnimo

Dosta je bilo teorije … Budd It It
Dosta je bilo teorije … Budd It It
Dosta je bilo teorije … Budd It It
Dosta je bilo teorije … Budd It It
Dosta je bilo teorije … Budd It It
Dosta je bilo teorije … Budd It It
Dosta je bilo teorije … Budd It It
Dosta je bilo teorije … Budd It It

Evo slika mog prototipa od matične ploče do finalizirane u PCB -u. Molimo vas da pročitate bilješke sa slika da biste saznali više. Slike su raspoređene serijski od početka do kraja.

Korak 8: Prije prvog ciklusa punjenja …….. Kalibrirajte !!

Prije nego što napunite bateriju pomoću punjača, morate je prvo kalibrirati. U suprotnom neće moći napuniti bateriju/previše je napuniti.

Postoje dvije vrste kalibracije 1) Kalibracija napona. 2) Trenutna kalibracija. Koraci su sljedeći za kalibraciju.

Najprije izmjerite izlazni napon U2. Zatim ga definirajte u main.c kao ref_volt. Moj je bio 5.01. Mijenite ga prema svom mjerenju. Ovo je glavni neophodni korak za kalibraciju napona i struje. Za kalibraciju struje ništa drugo je potrebno. Za sve će se pobrinuti sam softver

Pošto ste spalili heksadecimalnu datoteku nakon definiranja ref volta u main.c, ubijte snagu jedinice.

. Sada izmjerite napon baterije koju ćete napuniti pomoću multimetra i spojite bateriju na jedinicu.

Sada pritisnite tipku S1 i držite je te napajajte krug dok je tipka pritisnuta. Nakon kratkog odgode od otprilike 1 s, otpustite gumb S1. Imajte na umu da jedinica neće ući u način kalibracije ako prvo uključite strujni krug, a zatim pritisnite S1.

Sada možete vidjeti na zaslonu da je krug ušao u način kalibracije. "LCD način rada" bit će prikazan na LCD -u zajedno s naponom baterije. Sada uskladite napon baterije prikazan na LCD -u s vašim očitanjem multimetra okretanjem posude. Nakon što ste završili, ponovno pritisnite prekidač S1, držite ga oko sekunde i otpustite. Bit ćete izvan načina kalibracije. Ponovno resetirajte punjač tako da ga isključite i uključite.

Gore navedeni postupak također se može obaviti bez priključene baterije. Morate spojiti vanjski izvor napajanja na izlazni priključak (J2). Nakon ulaska u način kalibracije kalibrirajte pomoću lonca. Ali ovaj put prvo isključite vanjski izvor napajanja, a zatim pritisnite S1 za izlazak iz načina kalibracije. Ovo je potrebno prvo isključiti vanjski izvor napajanja kako bi se izbjegla bilo kakva neispravnost bilo koje jedinice.

Korak 9: Uključivanje nakon kalibracije …..sada ste spremni za rock

Uključivanje nakon kalibracije …..sada ste spremni za rock
Uključivanje nakon kalibracije …..sada ste spremni za rock
Uključivanje nakon kalibracije …..sada ste spremni za rock
Uključivanje nakon kalibracije …..sada ste spremni za rock
Uključivanje nakon kalibracije …..sada ste spremni za rock
Uključivanje nakon kalibracije …..sada ste spremni za rock

Kad je kalibracija završena, sada možete započeti proces punjenja. Prvo priključite bateriju, a zatim uključite jedinicu. Punjač će se pobrinuti za ostalo.

Moj krug je 100% ispravan i testiran. Ali ako primijetite bilo što, javite mi. Također se slobodno obratite za sva pitanja.

Sretna zgrada.

Rgds // Sharanya

Preporučeni: