Indholdsfortegnelse:

DIY Arduino batterikapacitetstester - V1.0: 12 trin (med billeder)
DIY Arduino batterikapacitetstester - V1.0: 12 trin (med billeder)

Video: DIY Arduino batterikapacitetstester - V1.0: 12 trin (med billeder)

Video: DIY Arduino batterikapacitetstester - V1.0: 12 trin (med billeder)
Video: DIY Easy & accurate lithium battery capacity tester using Arduino by Joule Works 2024, November
Anonim
Image
Image
DIY Arduino batterikapacitetstester - V1.0
DIY Arduino batterikapacitetstester - V1.0

[Afspil video] Jeg har reddet så mange gamle lap-top batterier (18650) til at genbruge dem i mine solprojekter. Det er meget svært at identificere de gode celler i batteripakken. Tidligere i en af mine Power Bank Instructable har jeg fortalt, hvordan man identificerer gode celler ved at måle deres spændinger, men denne metode er slet ikke pålidelig. Så jeg ville virkelig have en måde at måle hver celles nøjagtige kapacitet i stedet for deres spændinger.

Opdatering den 30.10.2019

Du kan se min nye version

For et par uger siden startede jeg projektet ud fra det grundlæggende. Denne version er virkelig enkel, som er baseret på Ohms Law. Testerens nøjagtighed vil ikke være 100% perfekt, men det giver rimelige resultater, der kan bruges og sammenlignet med andre batterier, så du let kan identificere gode celler i en gammel batteripakke. I løbet af mit arbejde indså jeg, at der er mange ting, der kan forbedres. I fremtiden vil jeg prøve at implementere disse ting. Men foreløbig er jeg glad for det. Jeg håber, at denne lille tester vil være nyttig, så jeg deler den med jer alle. Bemærk: Bortskaf de dårlige batterier korrekt. Ansvarsfraskrivelse: Bemærk, at du arbejder med Li -Ionbatteri, som er meget eksplosivt og farligt. Jeg kan ikke holdes ansvarlig for tab af ejendom, skader eller tab af liv, hvis det kommer til det. Denne vejledning blev skrevet til dem, der har viden om genopladelig lithium-ion-teknologi. Prøv ikke dette, hvis du er nybegynder. Pas på dig selv.

Trin 1: Påkrævede dele og værktøjer:

Nødvendige dele: 1. Arduino Nano (Gear Best / Banggood) 2. 0,96 OLED -skærm (Amazon / Banggood) 3. MOSFET - IRLZ44 (Amazon) 4. Resistorer (4 x 10K, 1 / 4W) (Amazon / Banggood) 5. Strømmodstand (10R, 10W) (Amazon) 6. Skrueterminaler (3 nr.) (Amazon / Banggood) 7. Buzzer (Amazon / Banggood) 8. Prototype Board (Amazon / Banggood) 9. 18650 batteriholder (Amazon)

10. 18650 batteri (GearBest / Banggood) 11. Afstandsstykker (Amazon / Banggood) Nødvendige værktøjer: 1. Wire Cutter / Stripper (Gear Best) 2. Loddejern (Amazon / Banggood) Brugt instrument: IMAX Balance Charger (Gearbest / Banggood)

Infrarødt termometerpistol (Amazon /Gearbest)

Trin 2: Skematisk og arbejdende

Skematisk og arbejdende
Skematisk og arbejdende
Skematisk og arbejdende
Skematisk og arbejdende

Skematisk:

For let at forstå skematikken har jeg også tegnet den på et perforeret bræt. Positionerne på komponenterne og ledningerne ligner mit egentlige bord. De eneste undtagelser er summer og OLED -display. I selve tavlen er de inde, men i skematisk ligger de udenfor.

Designet er meget enkelt, som er baseret på Arduino Nano. Et OLED -display bruges til at vise batteriparametrene. 3 skrueterminaler bruges til tilslutning af batteri og belastningsmodstand. En summer bruges til at give forskellige advarsler. To spændingsdelere kredsløb bruges til at overvåge spændingerne over belastningsmodstanden. MOSFET's funktion er at tilslutte eller afbryde belastningsmodstanden med batteriet.

Arbejder:

Arduino kontrollerer batteriets tilstand, hvis batteriet er godt, skal du give kommandoen til at tænde MOSFET. Det tillader strøm at passere fra batteriets positive terminal, gennem modstanden, og MOSFET fuldender derefter stien tilbage til den negative terminal. Dette aflader batteriet over en periode. Arduino måler spændingen over belastningsmodstanden og divideres derefter med modstanden for at finde ud af udladningsstrømmen. Multiplicerede dette med tiden for at opnå værdien milliamp-time (kapacitet).

Trin 3: Spændings-, strøm- og kapacitetsmåling

Spændingsmåling

Vi skal finde spændingen over belastningsmodstanden. Spændingerne måles ved hjælp af to spændingsdelerkredsløb. Den består af to modstande med værdier 10k hver. Output fra divideren er forbundet til Arduino analog pin A0 og A1.

Arduino analog pin kan måle spænding op til 5V, i vores tilfælde er den maksimale spænding 4,2V (fuldt opladet). Så kan du spørge, hvorfor jeg unødigt bruger to skillevægge. Årsagen er, at min fremtidsplan er at bruge den samme tester til multikemibatteriet. Så dette design kan let tilpasses for at nå mit mål.

Nuværende måling:

Strøm (I) = Spænding (V) - Spændingsfald over MOSFET / modstand (R)

Bemærk: Jeg går ud fra, at spændingsfaldet over MOSFET er ubetydeligt.

Her er V = Spænding over belastningsmodstanden og R = 10 Ohm

Det opnåede resultat er i ampere. Gang 1000 for at konvertere det til milliamper.

Så maksimal afladningsstrøm = 4,2 / 10 = 0,42A = 420mA

Kapacitetsmåling:

Lagret opladning (Q) = Aktuel (I) x Tid (T).

Vi har allerede beregnet strømmen, det eneste ukendte i ovenstående ligning er tid. Millis () -funktionen i Arduino kan bruges til at måle den forløbne tid.

Trin 4: Valg af belastningsmodstand

Valg af belastningsmodstand
Valg af belastningsmodstand

Valget af belastningsmodstand afhænger af den mængde udladningsstrøm, vi har brug for. Antag, at du vil aflade batteriet @ 500mA, så er modstandsværdien

Modstand (R) = Max batterispænding / afladningsstrøm = 4,2 / 0,5 = 8,4 Ohm

Modstanden skal sprede lidt strøm, så størrelsen betyder noget i dette tilfælde.

Varme spredt = I^2 x R = 0,5^2 x 8,4 = 2,1 Watt

Ved at beholde en vis margin kan du vælge 5W. Hvis du vil have mere sikkerhed, skal du bruge 10W.

Jeg brugte 10 Ohm, 10W modstand i stedet for 8,4 Ohm, fordi den var på lager på det tidspunkt.

Trin 5: Valg af MOSFET

Valg af MOSFET
Valg af MOSFET

Her fungerer MOSFET som en switch. Den digitale udgang fra Arduino pin D2 styrer kontakten. Når 5V (HIGH) signal føres til porten til MOSFET, tillader det strøm at passere fra batteriets positive terminal, gennem modstanden, og MOSFET fuldender derefter stien tilbage til den negative terminal. Dette aflader batteriet over en periode. Så MOSFET bør vælges på en sådan måde, at den kan håndtere maksimal afladningsstrøm uden overophedning.

Jeg brugte en n-channel logic level power MOSFET-IRLZ44. L viser, at det er et logisk niveau MOSFET. Et logisk niveau MOSFET betyder, at det er designet til at tænde fuldt ud fra det logiske niveau for en mikrokontroller. Standard MOSFET (IRF -serien osv.) Er designet til at køre fra 10V.

Hvis du bruger en IRF -serie MOSFET, tændes den ikke helt ved at anvende 5V fra Arduino. Jeg mener, at MOSFET ikke vil bære mærkestrømmen. For at indstille disse MOSFET'er har du brug for et ekstra kredsløb for at øge portspændingen.

Så jeg vil anbefale at bruge et MOSFET på logisk niveau, ikke nødvendigvis IRLZ44. Du kan også bruge enhver anden MOSFET.

Trin 6: OLED -skærm

OLED Display
OLED Display

For at vise batterispænding, afladningsstrøm og kapacitet brugte jeg en 0,96 OLED -skærm. Den har en opløsning på 128x64 og bruger I2C -bus til at kommunikere med Arduino. To ben SCL (A5), SDA (A4) i Arduino Uno bruges til meddelelse.

Jeg bruger U8glib bibliotek til at vise parametrene. Først skal du downloade U8glib biblioteket. Derefter installerede det.

Hvis du vil starte i OLED -display og Arduino, skal du klikke her

Forbindelserne skal være som følger

Arduino OLED

5V -Vcc

GND GND

A4-- SDA

A5-- SCL

Trin 7: summer til advarsel

Summer til advarsel
Summer til advarsel
Summer til advarsel
Summer til advarsel

For at give en anden advarsel eller advarsel bruges en piezo -summer. De forskellige advarsler er

1. Lav batterispænding

2. Batteri højspænding

3. Intet batteri

Summeren har to terminaler, den længere er positiv og den kortere ben er negativ. Mærkaten på den nye summer har også " +" mærket til for at angive den positive terminal.

Forbindelserne skal være som følger

Arduino summer

D9 Positiv terminal

GND Negativ terminal

I Arduino Sketch har jeg brugt et separat funktionsbip (), der sender PWM -signalet til summeren, venter på en lille forsinkelse, derefter slukker det og derefter har en anden lille forsinkelse. Således bipper den en gang.

Trin 8: Lav kredsløbet

Gør kredsløbet
Gør kredsløbet
Gør kredsløbet
Gør kredsløbet
Gør kredsløbet
Gør kredsløbet

I de foregående trin har jeg forklaret funktionen af hver af komponenterne i kredsløbet. Inden du hopper for at lave det sidste bræt, skal du først teste kredsløbet på et brødbræt. Hvis kredsløbet fungerer perfekt på brødbrættet, skal du derefter flytte til lodning af komponenterne på prototypebrættet.

Jeg brugte 7 cm x 5 cm prototype bord.

Montering af Nano: Skær først to rækker med hunstik med 15 ben i hver. Jeg brugte en diagonal nipper til at skære overskrifterne. Lod derefter hovedstifterne. Sørg for, at afstanden mellem de to skinner passer til arduino nano.

Montering OLED -skærm: Klip en kvindelig header med 4pins. Derefter loddes det som vist på billedet.

Montering af terminaler og komponenter: Lod de resterende komponenter som vist på billederne

Ledninger: Lav ledningerne ifølge skematisk. Jeg brugte farvede ledninger til at lave ledningerne, så jeg let kan identificere dem.

Trin 9: Montering af standoffs

Montering af standoffs
Montering af standoffs
Montering af standoffs
Montering af standoffs
Montering af standoffs
Montering af standoffs

Efter lodning og ledninger monteres afstandene i 4 hjørner, hvilket giver tilstrækkelig afstand til lodningerne og ledningerne fra jorden.

Trin 10: Software

Software
Software
Software
Software

Softwaren udfører følgende opgaver

1. Mål spændinger

Ved at tage 100 ADC -prøver, tilføje dem og beregne resultatet i gennemsnit. Dette gøres for at reducere støj.

2. Kontroller batteriets tilstand for at give besked eller starte afladningscyklussen

Advarsler

i) Lav-V!: Hvis batterispændingen er under det laveste afladningsniveau (2,9V for Li Ion)

ii) Høj-V!: Hvis batterispændingen er over den fuldt opladede tilstand

iii) Intet batteri!: Hvis batteriholderen er tom

Udskrivningscyklus

Hvis batterispændingen er inden for lavspændingen (2,9V) og højspændingen (4,3V), startes afladningscyklussen. Beregn strøm og kapacitet som forklaret tidligere.

3. Vis parametrene på OLED

4. Datalogning på seriel skærm

Download Arduino -koden vedhæftet nedenfor.

Trin 11: Eksport af serielle data og aftegning på Excel -ark

Eksport af serielle data og plotning på Excel -ark
Eksport af serielle data og plotning på Excel -ark
Eksport af serielle data og plotting på Excel -ark
Eksport af serielle data og plotting på Excel -ark

For at teste kredsløbet opladede jeg først et godt Samsung 18650 -batteri ved hjælp af min IMAX -oplader. Sæt derefter batteriet i min nye tester. For at analysere hele decharge -processen eksporterer jeg de serielle data til et regneark. Derefter plottede jeg udledningskurven. Resultatet er virkelig fantastisk. Jeg brugte en software ved navn PLX-DAQ til at gøre det. Du kan downloade den her.

Du kan gennemgå denne vejledning for at lære at bruge PLX-DAQ. Det er meget enkelt.

Bemærk: Det fungerer kun i Windows.

Trin 12: Konklusion

Konklusion
Konklusion
Konklusion
Konklusion

Efter få test konkluderer jeg, at testerens resultat er ganske rimeligt. Resultatet er 50 til 70mAh væk fra et mærket batterikapacitetstesterresultat. Ved hjælp af en IR -temperaturpistol målte jeg også temperaturstigningen i belastningsmodstanden, den maksimale værdi er 51 grader C.

I dette design er afladningsstrømmen ikke konstant, det afhænger af batterispænding. Så afbildet afladningskurve ligner ikke afladningskurven i batterifremstillingsdatabladet. Det understøtter kun et enkelt Li Ion -batteri.

Så i min fremtidige version vil jeg prøve at løse de ovennævnte short comings i V1.0.

Kredit: Jeg vil gerne give kredit til Adam Welch, hvis projekt på YouTube inspirerede mig til at starte dette projekt. Du kan se hans YouTube -video.

Foreslå eventuelle forbedringer. Giv en kommentar, hvis der er fejl eller fejl.

Håber min tutorial er nyttig. Hvis du kan lide det, så glem ikke at dele:)

Abonner på flere gør -det -selv -projekter. Tak skal du have.

Anbefalede: