Innholdsfortegnelse:

DIY Arduino batterikapasitetstester - V2.0: 11 trinn (med bilder)
DIY Arduino batterikapasitetstester - V2.0: 11 trinn (med bilder)

Video: DIY Arduino batterikapasitetstester - V2.0: 11 trinn (med bilder)

Video: DIY Arduino batterikapasitetstester - V2.0: 11 trinn (med bilder)
Video: Подборка новых интересных устройств собранных на Ардуино DIY ( Arduino CNC ) 2024, November
Anonim
Image
Image

I dag er falske litium- og NiMH -batterier overalt som selges ved reklame med høyere kapasitet enn deres sanne kapasitet. Så det er veldig vanskelig å skille mellom et ekte og et falskt batteri. På samme måte er det vanskelig å vite kapasiteten som beholdes i de redde 18650 bærbare batteriene. Så det kreves en enhet for å måle batteriets sanne kapasitet.

I år 2016 har jeg skrevet en Instructable om "Arduino Capacity Tester - V1.0" som var en veldig rett frem og enkel enhet. Den tidligere versjonen var basert på Ohms Law. Batteriet som skal testes lades ut gjennom en fast motstand, strøm og varighet måles av Arduino og kapasiteten beregnes ved å multiplisere begge avlesningene (utladningsstrøm og tid).

Ulempen med den tidligere versjonen var at under testen, ettersom batterispenningen reduseres, reduseres også strømmen, noe som gjør beregningene komplekse og unøyaktige. For å overvinne dette har jeg laget V2.0 som er designet på en slik måte at strømmen vil forbli konstant gjennom utladningsprosessen. Jeg lagde denne enheten ved å inspirere det originale designet av MyVanitar

Hovedtrekkene til Capacity Tester V2.0 er:

1. Kan måle kapasiteten til AA / AAA NiMh / NiCd, 18650 Li-ion, Li-Polymer og Li FePO4 batteri. Den er egnet for nesten alle typer batterier som er under 5V.

2. Brukere kan stille utladningsstrømmen ved hjelp av trykknappene.

3. OLED brukergrensesnitt

4. Enheten kan brukes som en elektronisk last

Oppdatering 02.12.2019

Nå kan du bestille PCB og komponenter sammen i et sett fra PCBWay

Ansvarsfraskrivelse: Vær oppmerksom på at du jobber med Li-Ion-batteri som er svært eksplosivt og farlig. Jeg kan ikke holdes ansvarlig for tap av eiendom, skade eller tap av liv hvis det kommer til det. Denne opplæringen ble skrevet for de som har kunnskap om oppladbar litiumionteknologi. Vennligst ikke prøv dette hvis du er en nybegynner. Vær trygg.

Rekvisita

Komponenter som brukes

Bestill nå PCB og alle komponentene for å bygge dette prosjektet i et sett fra PCBWay

1. PCB: PCBWay

2. Arduino Nano: Amazon / Banggood

3. Opamp LM358: Amazon / Banggood

4. 0,96 OLED -skjerm: Amazon / Banggood

5. Keramisk motstand: Amazon / Banggood

6. Kondensator 100nF: Amazon / Banggood

7. Kondensator 220uF: Amazon / Banggood

8. Motstander 4.7K & 1M: Amazon / Banggood

9. Trykknapp: Amazon / Banggood

10. Trykknapp-hette: Aliexpress

11. Skrueterminal: Amazon / Banggood

12. Prototypebrett: Amazon / Banggood

13. PCB Stand-off: Amazon / Banggood

14. Heatshrink Tubing: Amazon/ Banggood

15. Varmeavleder: Aliexpress

Verktøy som brukes

1. Loddejern: Amazon / Banggood

2. Clamp Meter: Amazon / Banggood

3. Multimeter: Amazon / Banggood

4. Varmluftsblåser: Amazon / Banggood

5. Wire Cutter: Amazon / Banggood

6. Wire Stripper: Amazon / Banggood

Trinn 1: Skjematisk diagram

Skjematisk diagram
Skjematisk diagram

Hele skjematikken er delt inn i følgende seksjoner:

1. Strømforsyningskrets

2. Konstant strømbelastningskrets

3. Krets for måling av batterispenning

4. Krets for brukergrensesnitt

5. summer krets

1. Strømforsyningskrets

Strømforsyningskretsen består av en DC-kontakt (7-9V) og to filterkondensatorer C1 og C2. Utgangseffekten (Vin) er koblet til Arduino -pinnen Vin. Her bruker jeg Arduino innebygde spenningsregulator for å trappe ned spenningen til 5V.

2. Konstant strømbelastningskrets

Kjernekomponenten i kretsen er Op-amp LM358 som inneholder to operasjonsforsterkere. PWM-signalet fra Arduino-pinnen D10 filtreres av et lavpassfilter (R2 og C6) og mates til den andre operasjonsforsterkeren. Utgangen til den andre op-forsterkeren er koblet til den første op-amp i konfigurasjon for spenningsfølger. Strømforsyningen til LM358 filtreres av en avkoblingskondensator C5.

Den første op-amp, R1 og Q1 bygger en konstant strømbelastningskrets. Så nå kan vi kontrollere strømmen gjennom lastmotstanden (R1) ved å endre PWM -signalpulsbredden.

3. Krets for måling av batterispenning

Batterispenningen måles av den analoge Arduino -inngangspinnen A0. To kondensatorer C3 og C4 brukes til å filtrere ut støyene fra konstantstrømbelastningskretsen som kan forringe ADC -konverteringsytelsen.

4. Krets for brukergrensesnitt

Brukergrensesnittkretsen består av to trykknapper og en 0,96 I2C OLED-skjerm. Trykk opp-og ned-knappen for å øke eller redusere PWM-pulsbredden. R3 og R4 er opptrekkmotstander for opp- og ned-trykk -knappene. C7 og C8 brukes til å avbryte trykknappene. Den tredje trykknappen (RST) brukes til å tilbakestille Arduino.

5. summer krets

Summerkretsen brukes til å varsle start og slutt på testen. En 5V summer er koblet til Arduino digital pin D9.

Trinn 2: Hvordan fungerer det?

Hvordan virker det?
Hvordan virker det?
Hvordan virker det?
Hvordan virker det?
Hvordan virker det?
Hvordan virker det?

Teorien er basert på spenningssammenligningen av inverterte (pin-2) og ikke-inverterende (pin-3) innganger til OpAmp, konfigurert som en enhetsforsterker. Når du angir spenningen som tilføres den ikke-inverterende inngangen ved å justere PWM-signalet, åpner utgangen fra opampen porten til MOSFET. Når MOSFET slås på, går strømmen gjennom R1, det skaper et spenningsfall som gir negativ tilbakemelding til OpAmp. Den styrer MOSFET på en slik måte at spenningene ved dens inverterende og ikke-inverterende innganger er like. Så strømmen gjennom lastmotstanden er proporsjonal med spenningen ved den ikke-inverterende inngangen til OpAmp.

PWM -signalet fra Arduino filtreres ved å bruke en lavpassfilterkrets (R2 og C1). For å teste PWM-signalet og filterkretsens ytelse, koblet jeg til DSO ch-1 ved inngangen og ch-2 ved utgangen til filterkretsen. Utgangsbølgeformen er vist ovenfor.

Trinn 3: Kapasitetsmåling

Kapasitetsmåling
Kapasitetsmåling

Her er batteriet utladet til sin lave terskelspenning (3,2V).

Batterikapasitet (mAh) = Strøm (I) i mA x Tid (T) i timer

Fra ligningen ovenfor er det klart at for å beregne batterikapasitet (mAh) må vi kjenne strømmen i mA og tiden i Time. Den designede kretsen er en konstant strømbelastningskrets, så utladningsstrømmen forblir konstant gjennom testperioden.

Utladningsstrømmen kan justeres ved å trykke opp og ned -knappen. Tidsvarigheten måles ved hjelp av en timer i Arduino -koden.

Trinn 4: Lag kretsen

Gjør kretsen
Gjør kretsen
Gjør kretsen
Gjør kretsen
Gjør kretsen
Gjør kretsen

I de foregående trinnene har jeg forklart funksjonen til hver av komponentene i kretsen. Før du hopper for å lage det siste brettet, må du først teste kretsen på et brødbrett. Hvis kretsen fungerer perfekt på brødbrettet, flytt deretter for å lodde komponentene på prototypebrettet.

Jeg brukte prototypebrettet på 7 cm x 5 cm.

Montering av Nano: Klipp først to rader med kvinnelig toppnål med 15 pinner i hver. Jeg brukte en diagonal nipper til å klippe overskriftene. Deretter loddes toppnålene. Sørg for at avstanden mellom de to skinnene passer til Arduino nano.

Montering av OLED -skjerm: Klipp en kvinnelig topptekst med 4 pins. Deretter loddes det som vist på bildet.

Montering av terminaler og komponenter: Lodd de resterende komponentene som vist på bildene.

Kabling: Gjør ledningene i henhold til skjematisk. Jeg brukte fargede ledninger for å lage ledningene slik at jeg lett kan identifisere dem.

Trinn 5: OLED -skjerm

OLED -skjerm
OLED -skjerm
OLED -skjerm
OLED -skjerm

For å vise batterispenning, utladningsstrøm og kapasitet brukte jeg en 0,96 OLED -skjerm. Den har 128x64 oppløsning og bruker en I2C -buss for å kommunisere med Arduino. To pins SCL (A5), SDA (A4) i Arduino Uno brukes for kommunikasjon.

Jeg bruker Adafruit_SSD1306 -biblioteket til å vise parametrene.

Først må du laste ned Adafruit_SSD1306. Deretter installerte den.

Tilkoblingene skal være som følger

Arduino OLED

5V -VCC

GND GND

A4-- SDA

A5-- SCL

Trinn 6: summer for advarsel

Summer for advarsel
Summer for advarsel
Summer for advarsel
Summer for advarsel
Summer for advarsel
Summer for advarsel
Summer for advarsel
Summer for advarsel

For å gi varsler under starten og konkurransen av testen, brukes en piezo -summer. Summeren har to terminaler, den lengre er positiv og den kortere etappen er negativ. Klistremerket på den nye summeren har også " +" merket for å indikere den positive terminalen.

Siden prototypekortet ikke har nok plass til å plassere summeren, har jeg koblet summeren til hovedkortet ved hjelp av to ledninger. For å isolere den blotte tilkoblingen har jeg brukt varmekrympeslanger.

Tilkoblingene skal være som følger

Arduino summer

D9 Positiv terminal

GND Negativ terminal

Trinn 7: Montering av avstandene

Montering av avstandene
Montering av avstandene
Montering av avstandene
Montering av avstandene

Etter lodding og ledninger, monter avstandene i 4 hjørner. Det vil gi tilstrekkelig klaring til loddeskjøtene og ledningene fra bakken.

Trinn 8: PCB -design

PCB -design
PCB -design

Jeg har tegnet skjemaet ved å bruke EasyEDA online programvare etter at jeg byttet til PCB -oppsettet.

Alle komponentene du la til i skjematikken, skal være der, stablet oppå hverandre, klare til å bli plassert og ført. Dra komponentene ved å ta tak i putene. Plasser den deretter inne i den rektangulære kantlinjen.

Ordne alle komponentene på en slik måte at brettet opptar minst mulig plass. Jo mindre brettstørrelse, desto billigere blir produksjonskostnaden for kretskort. Det vil være nyttig hvis dette brettet har noen monteringshull på det slik at det kan monteres i et kabinett.

Nå må du rute. Ruting er den morsomste delen av hele denne prosessen. Det er som å løse et puslespill! Ved å bruke sporingsverktøyet må vi koble til alle komponentene. Du kan bruke både topp- og bunnlaget for å unngå overlapping mellom to forskjellige spor og gjøre sporene kortere.

Du kan bruke Silk -laget til å legge til tekst på tavlen. Vi kan også sette inn en bildefil, så jeg legger til et bilde av logoet på nettstedet mitt for å bli skrevet ut på tavlen. Til slutt, ved å bruke kobberområdet, må vi lage grunnområdet til PCB.

Du kan bestille den fra PCBWay.

Registrer deg på PCBWay nå for å få en kupong på 5 USD. Det betyr at din første bestilling er gratis, bare du må betale fraktkostnadene.

Når du legger inn en bestilling, får jeg 10% donasjon fra PCBWay for et bidrag til arbeidet mitt. Din lille hjelp kan oppmuntre meg til å gjøre mer fantastisk arbeid i fremtiden. Takk for samarbeidet.

Trinn 9: Monter kretskortet

Sett sammen kretskortet
Sett sammen kretskortet
Sett sammen kretskortet
Sett sammen kretskortet

For lodding trenger du et anstendig loddejern, loddetinn, nipper og et multimeter. Det er god praksis å lodde komponentene i henhold til høyden. Lodd de mindre høydekomponentene først.

Du kan følge følgende trinn for å lodde komponentene:

1. Skyv komponentbeina gjennom hullene, og snu kretskortet på ryggen.

2. Hold tuppen av loddejernet til krysset mellom puten og benet på komponenten.

3. Før loddetinn inn i skjøten slik at den renner rundt ledningen og dekker puten. Når den har strømmet rundt, flytt spissen bort.

Trinn 10: Programvare og biblioteker

Programvare og biblioteker
Programvare og biblioteker
Programvare og biblioteker
Programvare og biblioteker
Programvare og biblioteker
Programvare og biblioteker
Programvare og biblioteker
Programvare og biblioteker

Last ned først den vedlagte Arduino -koden. Last deretter ned følgende biblioteker og installer dem.

Biblioteker:

Last ned og installer følgende biblioteker:

1. JC_Button:

2. Adafruit_SSD1306:

I koden må du endre følgende to ting.

1. Gjeldende matriser: Dette kan gjøres ved å koble et multimeter i serie med batteriet. Trykk på opp -knappen og mål strømmen, gjeldende verdier er elementene i matrisen.

2. Vcc: Du bruker et multimeter til å måle spenningen ved Arduino 5V -pinnen. I mitt tilfelle er den 4,96V.

Oppdatert 20.11.2019

Du kan endre Low_BAT_Level -verdien i koden i henhold til batterikjemien. Det er bedre å ta en liten margin over sperrespenningen som er angitt nedenfor.

Her er utladningshastigheter og spenningsspenninger for forskjellige litium-ion-batterikjemikalier:

1. Litiumkoboltoksid: Avbruddsspenning = 2,5V ved 1C utladningshastighet

2. Litium Mangan Oxide: Cut-off Voltage = 2.5V ved 1C utladningshastighet

3. Litiumjernfosfat: Avbruddsspenning = 2,5V ved 1C utladningshastighet

4. Litiumtitanat: Avbruddsspenning = 1,8V ved 1C utladningshastighet

5. Litiumnikkel mangan koboltoksid: Cut-off spenning = 2,5V ved 1C utladningshastighet

6. Litium nikkel kobolt aluminiumoksid: Cut-off spenning = 3.0V ved 1C utladningshastighet

Oppdatert 01.04.2020

jcgrabo, foreslo noen endringer i det opprinnelige designet for å forbedre presisjonen. Endringene er listet opp nedenfor:

1. Legg til en presisjonsreferanse (LM385BLP-1.2) og koble den til A1. Under oppsettet, les verdien som er kjent for å være 1,215 volt, og beregne deretter Vcc og dermed eliminere behovet for å måle Vcc.

2. Bytt ut 1 ohm 5% motstand med 1 ohm 1% effektmotstand og reduser dermed feil som er avhengig av verdien av motstanden.

3. I stedet for å bruke et fast sett med PWM -verdier for hvert nåværende trinn (i trinn på 5), må du lage en rekke ønskede nåværende verdier som brukes til å beregne de nødvendige PWM -verdiene for å oppnå de nåværende verdiene så nært som mulig. Han fulgte det ved å beregne de faktiske nåværende verdiene som vil oppnås med de beregnede PWM -verdiene.

Ved å vurdere endringene ovenfor, reviderte han koden og delte den i kommentarfeltet. Den reviderte koden er vedlagt nedenfor.

Tusen takk jcgrabo for ditt verdifulle bidrag til prosjektet mitt. Jeg håper denne forbedringen vil være nyttig for mange flere brukere.

Trinn 11: Konklusjon

Konklusjon
Konklusjon
Konklusjon
Konklusjon
Konklusjon
Konklusjon
Konklusjon
Konklusjon

For å teste kretsen, ladet jeg først opp et godt Samsung 18650 -batteri ved å bruke min ISDT C4 -lader. Koble deretter batteriet til batteripolen. Sett nå strømmen til i henhold til kravet ditt og trykk lenge på "OPP" -knappen. Deretter bør du høre et pip og testprosedyren starter. Under testen vil du overvåke alle parameterne på OLED -skjermen. Batteriet vil lade ut til spenningen når lavterskel (3,2V). Testprosessen avsluttes med to lange pip.

Merk: Prosjektet er fortsatt under utvikling. Du kan bli med meg for eventuelle forbedringer. Kom med kommentarer hvis det er feil eller feil. Jeg designer en PCB for dette prosjektet. Hold kontakten for flere oppdateringer til prosjektet.

Håper opplæringen min er nyttig. Hvis du liker det, ikke glem å dele:) Abonner på flere DIY -prosjekter. Takk skal du ha.

Anbefalt: