Cuprins:
- Provizii
- Pasul 1: Diagrama schematică
- Pasul 2: Cum funcționează?
- Pasul 3: Măsurarea capacității
- Pasul 4: Realizarea circuitului
- Pasul 5: Afișaj OLED
- Pasul 6: Buzzer pentru avertisment
- Pasul 7: Montarea distanțelor
- Pasul 8: Proiectare PCB
- Pasul 9: Asamblați PCB-ul
- Pasul 10: Software și biblioteci
- Pasul 11: Concluzie
Video: Tester de capacitate a bateriei DIY Arduino - V2.0: 11 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
În prezent, bateriile false Lithium și NiMH sunt peste tot, care sunt vândute prin publicitate cu capacități mai mari decât capacitatea lor reală. Deci, este foarte dificil să se facă distincția între o baterie reală și una falsă. În mod similar, este dificil să se cunoască capacitatea reținută în bateriile de laptop 18650 recuperate. Deci, este necesar un dispozitiv pentru a măsura capacitatea reală a bateriilor.
În anul 2016, am scris un Instructable pe "Arduino Capacity Tester - V1.0", care a fost un dispozitiv foarte simplu și simplu. Versiunea anterioară se baza pe legea Ohms. Bateria care urmează să fie testată este descărcată printr-un rezistor fix, durata curentului și a timpului este măsurată de Arduino, iar capacitatea este calculată prin înmulțirea ambelor citiri (curent și timp de descărcare).
Dezavantajul versiunii anterioare era că în timpul testării, pe măsură ce scade tensiunea bateriei, scade și curentul, ceea ce face calculele complexe și inexacte. Pentru a depăși acest lucru, am făcut V2.0, care este proiectat în așa fel încât curentul să rămână constant pe tot parcursul procesului de descărcare. Am creat acest dispozitiv inspirând designul original de la MyVanitar
Principalele caracteristici ale Capacity Tester V2.0 sunt:
1. Capabil să măsoare capacitatea bateriei AA / AAA NiMh / NiCd, 18650 Li-ion, Li-Polymer și Li FePO4. Este potrivit pentru aproape orice tip de baterie cu o valoare mai mică de 5V.
2. Utilizatorii pot seta curentul de descărcare utilizând butoanele.
3. Interfață utilizator OLED
4. Dispozitivul poate fi folosit ca încărcare electronică
Actualizare la 02.12.2019
Acum puteți comanda PCB și componentele împreună într-un kit de la PCBWay
Declinare de responsabilitate: Vă rugăm să rețineți că lucrați cu baterie Li-Ion, care este extrem de explozivă și periculoasă. Nu pot fi tras la răspundere pentru orice pierdere de bunuri, daune sau pierderi de vieți umane, dacă este vorba despre asta. Acest tutorial a fost scris pentru cei care au cunoștințe despre tehnologia reîncărcabilă litiu-ion. Vă rugăm să nu încercați acest lucru dacă sunteți un novice. Stai in siguranta.
Provizii
Componente utilizate
Acum comandați PCB și toate componentele pentru a construi acest proiect într-un kit de la PCBWay
1. PCB: PCBWay
2. Arduino Nano: Amazon / Banggood
3. Opamp LM358: Amazon / Banggood
4. Afișaj OLED de 0,96 : Amazon / Banggood
5. Rezistor de ceramică: Amazon / Banggood
6. Condensator 100nF: Amazon / Banggood
7. Condensator 220uF: Amazon / Banggood
8. Rezistențe 4.7K și 1M: Amazon / Banggood
9. Buton: Amazon / Banggood
10. Push-Buton Cap: Aliexpress
11. Terminal cu șurub: Amazon / Banggood
12. Placă prototip: Amazon / Banggood
13. Stand-off PCB: Amazon / Banggood
14. Tuburi termocontractabile: Amazon / Banggood
15. Radiator: Aliexpress
Instrumente utilizate
1. Fier de lipit: Amazon / Banggood
2. Clamp Meter: Amazon / Banggood
3. Multimetru: Amazon / Banggood
4. Suflant de aer cald: Amazon / Banggood
5. Cutter de sârmă: Amazon / Banggood
6. Stripper de sârmă: Amazon / Banggood
Pasul 1: Diagrama schematică
Întreaga schemă este împărțită în secțiuni următoare:
1. Circuitul de alimentare
2. Circuit de încărcare a curentului constant
3. Circuitul de măsurare a tensiunii bateriei
4. Circuit interfață utilizator
5. Circuit sonor
1. Circuitul de alimentare
Circuitul de alimentare este format dintr-un conector DC (7-9V) și doi condensatori de filtrare C1 și C2. Ieșirea de putere (Vin) este conectată la pinul Arduino Vin. Aici folosesc regulatorul de tensiune integrat Arduino pentru a reduce tensiunea la 5V.
2. Circuit de încărcare a curentului constant
Componenta de bază a circuitului este Op-amp LM358 care conține doi amplificatori operaționali. Semnalul PWM de la pinul Arduino D10 este filtrat de un filtru low-pass (R2 și C6) și alimentat la al doilea amplificator operațional. Ieșirea celui de-al doilea amplificator opțional este conectat la primul amplificator opțional în configurația adeptului de tensiune. Alimentarea la LM358 este filtrată de un condensator de decuplare C5.
Primul amplificator opțional, R1 și Q1 construiesc un circuit de sarcină de curent constant. Deci, acum putem controla curentul prin rezistorul de sarcină (R1) modificând lățimea impulsului semnalului PWM.
3. Circuitul de măsurare a tensiunii bateriei
Tensiunea bateriei este măsurată de pinul de intrare analogică Arduino A0. Două condensatoare C3 și C4 sunt utilizate pentru a filtra zgomotele provenite de la circuitul de sarcină de curent constant care poate degrada performanța de conversie ADC.
4. Circuit interfață utilizator
Circuitul interfeței utilizatorului este format din două butoane și un afișaj OLED de 0,96 . Butoanele Sus și Jos sunt pentru a crește sau micșora lățimea impulsului PWM. R3 și R4 sunt rezistențe pull-up pentru apăsarea Sus și Jos -butoane. C7 și C8 sunt folosite pentru a elimina butoanele. Al treilea buton (RST) este utilizat pentru resetarea Arduino.
5. Circuit sonor
Circuitul sonor este utilizat pentru a alerta începutul și sfârșitul testului. Un buzzer de 5V este conectat la pinul digital Arduino D9.
Pasul 2: Cum funcționează?
Teoria se bazează pe comparația de tensiune a intrărilor inversoare (pin-2) și intrări non-inversoare (pin-3) ale OpAmp, configurate ca amplificator de unitate. Când setați tensiunea aplicată intrării fără inversare prin ajustarea semnalului PWM, ieșirea opampului deschide poarta MOSFET. Pe măsură ce pornește MOSFET, curentul trece prin R1, creează o cădere de tensiune, care oferă feedback negativ la OpAmp. Controlează MOSFET în așa fel încât tensiunile la intrările sale inversoare și non-inversoare să fie egale. Deci, curentul prin rezistența de sarcină este proporțional cu tensiunea la intrarea non-inversă a OpAmp.
Semnalul PWM de la Arduino este filtrat utilizând un circuit de filtrare trece-jos (R2 și C1). Pentru a testa semnalul PWM și performanța circuitului de filtrare, am conectat DSO ch-1 la intrare și ch-2 la ieșirea circuitului de filtrare. Forma de undă de ieșire este prezentată mai sus.
Pasul 3: Măsurarea capacității
Aici bateria este descărcată la tensiunea sa prag de nivel scăzut (3,2V).
Capacitatea bateriei (mAh) = Curent (I) în mA x Timp (T) în ore
Din ecuația de mai sus este clar că pentru a calcula capacitatea bateriei (mAh), trebuie să cunoaștem curentul în mA și timpul în oră. Circuitul proiectat este un circuit de sarcină de curent constant, astfel încât curentul de descărcare rămâne constant pe toată durata testării.
Curentul de descărcare poate fi ajustat apăsând butonul Sus și Jos. Durata timpului este măsurată utilizând un cronometru în codul Arduino.
Pasul 4: Realizarea circuitului
În pașii anteriori, am explicat funcția fiecărei componente din circuit. Înainte de a sari pentru a face placa finală, testați mai întâi circuitul pe o placă de calcul. Dacă circuitul funcționează perfect pe panoul de control, deplasați-vă pentru a lipi componentele de pe placa prototip.
Am folosit placa prototip de 7cm X 5cm.
Montarea Nano: Tăiați mai întâi două rânduri de știfturi feminine cu 15 știfturi în fiecare. Am folosit un nipper diagonal pentru a tăia antetele. Apoi lipiți știfturile antetului. Asigurați-vă că distanța dintre cele două șine se potrivește cu Arduino nano.
Montarea ecranului OLED: tăiați un antet feminin cu 4 pini. Apoi lipiți-l așa cum se arată în imagine.
Montarea terminalelor și componentelor: lipiți componentele rămase așa cum se arată în imagini.
Cablare: Faceți cablarea conform schemei. Am folosit fire colorate pentru a face cablajul, astfel încât să le pot identifica cu ușurință.
Pasul 5: Afișaj OLED
Pentru a afișa tensiunea bateriei, curentul de descărcare și capacitatea, am folosit un afișaj OLED de 0,96 . Are rezoluție 128x64 și folosește o magistrală I2C pentru a comunica cu Arduino. Se folosesc doi pini SCL (A5), SDA (A4) în Arduino Uno pentru comunicare.
Folosesc biblioteca Adafruit_SSD1306 pentru a afișa parametrii.
Mai întâi, trebuie să descărcați Adafruit_SSD1306. Apoi l-ați instalat.
Conexiunile ar trebui să fie după cum urmează
Arduino OLED
5V -VCC
GND GND
A4-- SDA
A5-- SCL
Pasul 6: Buzzer pentru avertisment
Pentru a oferi alerte în timpul începerii și competiției testului, se utilizează un buzzer piezo. Buzzer-ul are două terminale, cel mai lung este pozitiv, iar piciorul mai scurt este negativ. Eticheta de pe noul buzzer are, de asemenea, marcat „+” pentru a indica terminalul pozitiv.
Deoarece placa prototip nu are suficient spațiu pentru a amplasa buzzer-ul, am conectat buzzer-ul la placa principală cu ajutorul a două fire. Pentru a izola conexiunea goală, am folosit tuburi termocontractabile.
Conexiunile ar trebui să fie după cum urmează
Arduino Buzzer
D9 Terminal pozitiv
GND Terminal negativ
Pasul 7: Montarea distanțelor
După lipire și cablare, montați distanțele la 4 colțuri. Acesta va oferi suficient spațiu pentru îmbinările și firele de lipit de la sol.
Pasul 8: Proiectare PCB
Am desenat schema utilizând software-ul online EasyEDA după ce am trecut la aspectul PCB.
Toate componentele pe care le-ați adăugat în schemă ar trebui să fie acolo, stivuite una peste alta, gata pentru a fi plasate și direcționate. Trageți componentele apucând de tampoanele sale. Apoi, așezați-l în interiorul liniei dreptunghiulare.
Aranjați toate componentele în așa fel încât placa să ocupe un spațiu minim. Cu cât dimensiunea plăcii este mai mică, cu atât costul de fabricație a PCB va fi mai mic. Va fi util dacă această placă are niște găuri de montare pe ea, astfel încât să poată fi montată într-o incintă.
Acum trebuie să parcurgeți ruta. Rutare este cea mai distractivă parte a întregului proces. Este ca și cum ai rezolva un puzzle! Folosind instrumentul de urmărire trebuie să conectăm toate componentele. Puteți utiliza atât stratul superior, cât și stratul inferior pentru a evita suprapunerea între două piese diferite și pentru a face piesele mai scurte.
Puteți utiliza stratul Silk pentru a adăuga text pe tablă. De asemenea, putem introduce un fișier imagine, așa că adaug o imagine a siglei site-ului meu web pentru a fi tipărită pe tablă. În cele din urmă, folosind instrumentul pentru zona de cupru, trebuie să creăm zona de sol a PCB-ului.
O puteți comanda de la PCBWay.
Înscrieți-vă acum PCBWay pentru a obține un cupon de 5 USD. Asta înseamnă că prima comandă este gratuită doar că trebuie să plătiți taxele de expediere.
Când plasați o comandă, voi primi o donație de 10% de la PCBWay pentru o contribuție la munca mea. Micul tău ajutor mă poate încuraja să fac o muncă mai grozavă în viitor. Multumesc pentru cooperare.
Pasul 9: Asamblați PCB-ul
Pentru lipire, veți avea nevoie de un fier de lipit decent, de lipit, de șnur și de un multimetru. Este o bună practică să lipiți componentele în funcție de înălțimea lor. Lipiți mai întâi componentele cu înălțime mai mică.
Puteți urma următorii pași pentru lipirea componentelor:
1. Împingeți picioarele componente prin găurile lor și rotiți PCB-ul pe spate.
2. Țineți vârful fierului de lipit la joncțiunea tamponului și a piciorului componentei.
3. Introduceți lipirea în articulație astfel încât să curgă în jurul plumbului și să acopere tamponul. Odată ce a trecut de jur împrejur, îndepărtează vârful.
Pasul 10: Software și biblioteci
Mai întâi, descărcați codul Arduino atașat. Apoi descărcați următoarele biblioteci și instalați-le.
Biblioteci:
Descărcați și instalați următoarele biblioteci:
1. JC_Button:
2. Adafruit_SSD1306:
În cod, trebuie să schimbați următoarele două lucruri.
1. Valorile matricelor curente: Acest lucru se poate face prin conectarea unui multimetru în serie cu bateria. Apăsați butonul sus și măsurați curentul, valorile curente sunt elementele matricei.
2. Vcc: Folosiți un multimetru pentru a măsura tensiunea la pinul Arduino 5V. În cazul meu este de 4.96V.
Actualizat la 20.11.2019
Puteți modifica valoarea Low_BAT_Level din cod conform chimiei bateriei. Este mai bine să luați o mică marjă peste tensiunea de întrerupere menționată mai jos.
Iată ratele de descărcare și tensiunile de întrerupere pentru diverse chimie ale bateriilor litiu-ion:
1. Oxid de cobalt de litiu: Tensiune de întrerupere = 2,5V la o rată de descărcare de 1C
2. Oxid de litiu și mangan: Tensiune de întrerupere = 2,5V la o rată de descărcare de 1C
3. Fosfat de litiu-fier: Tensiune de tăiere = 2,5V la o rată de descărcare de 1C
4. Titanat de litiu: Tensiune de întrerupere = 1,8 V la o rată de descărcare 1C
5. Lithium Nickel Manganese Cobalt Oxide: Tensiune de întrerupere = 2,5V la o rată de descărcare de 1C
6. Litiu, nichel, cobalt, oxid de aluminiu: Tensiune de întrerupere = 3,0V la o rată de descărcare de 1C
Actualizat la 01.04.2020
jcgrabo, a sugerat câteva modificări ale designului original pentru a îmbunătăți precizia. Modificările sunt enumerate mai jos:
1. Adăugați o referință de precizie (LM385BLP-1.2) și conectați-o la A1. În timpul configurării, citiți valoarea sa, care este cunoscută a fi 1.215 volți, apoi calculați Vcc, eliminând astfel necesitatea de a măsura Vcc.
2. Înlocuiți rezistorul de 1 ohm 5% cu un rezistor de putere de 1 ohm 1% reducând astfel erorile care depind de valoarea rezistenței.
3. Mai degrabă decât să folosiți un set fix de valori PWM pentru fiecare pas curent (în trepte de 5) creați o serie de valori de curent dorite care au fost utilizate pentru a calcula valorile PWM necesare pentru a obține acele valori curente cât mai aproape posibil. El a urmat acest lucru prin calcularea valorilor actuale curente care vor fi atinse cu valorile PWM calculate.
Luând în considerare modificările de mai sus, el a revizuit codul și l-a distribuit în secțiunea de comentarii. Codul revizuit este atașat mai jos.
Vă mulțumesc mult jcgrabo pentru contribuția dvs. valoroasă la proiectul meu. Sper că această îmbunătățire va fi utilă pentru mai mulți utilizatori.
Pasul 11: Concluzie
Pentru a testa circuitul, am încărcat mai întâi o baterie bună Samsung 18650 folosind încărcătorul ISDT C4. Apoi conectați bateria la borna bateriei. Acum setați curentul în funcție de cerințele dvs. și apăsați lung butonul „SUS”. Apoi, ar trebui să auziți un semnal sonor și începe procedura de testare. În timpul testului, veți monitoriza toți parametrii de pe ecranul OLED. Bateria se va descărca până când tensiunea atinge pragul de nivel scăzut (3,2V). Procesul de testare va fi finalizat prin două bipuri lungi.
Notă: Proiectul este încă în faza de dezvoltare. Vă puteți alătura pentru orice îmbunătățiri. Ridicați comentarii dacă există greșeli sau erori. Proiectez un PCB pentru acest proiect. Rămâneți conectat pentru mai multe actualizări ale proiectului.
Sper că tutorialul meu este util. Dacă vă place, nu uitați să partajați:) Abonați-vă pentru mai multe proiecte DIY. Mulțumesc.
Recomandat:
Tester de capacitate a bateriei utilizând Arduino [Litiu-NiMH-NiCd]: 15 pași (cu imagini)
Tester de capacitate a bateriei folosind Arduino [Lithium-NiMH-NiCd]: Caracteristici: Identificați o baterie falsă Lithium-Ion / Lithium-Polymer / NiCd / NiMH Sarcină de curent constant reglabilă (poate fi modificată și de utilizator) Capabilă să măsoare capacitatea de aproape orice tip de baterie (sub 5V) Ușor de lipit, construit și utilizat
Tester de capacitate a bateriei DIY Arduino - V1.0: 12 pași (cu imagini)
DIY Arduino Battery Capacity Tester - V1.0: [Redare video] Am recuperat atâtea baterii vechi de tip lap-top (18650) pentru a le refolosi în proiectele mele solare. Este foarte dificil să identifici celulele bune din acumulator. Mai devreme, într-unul din Power Bank-ul meu instructabil, v-am spus cum să identific
Un alt tester de capacitate a bateriei: 6 pași
Un alt tester de capacitate a bateriei: De ce încă un tester de capacitate Am citit o mulțime de instrucțiuni diferite de construire a testerului, dar niciunul dintre ele nu se potrivește nevoilor mele. Am vrut să pot testa și mai mult decât celule NiCd / NiMH sau Lion singulare. Am vrut să pot testa un instrument electric
Tester simplu de capacitate autorange / contor de capacitate cu Arduino și manual: 4 pași
Tester de condensator Autorange simplu / contor de capacitate cu Arduino și manual: Bună ziua! Pentru această unitate de fizică aveți nevoie de: * o sursă de alimentare cu 0-12V * unul sau mai mulți condensatori * unul sau mai multe rezistențe de încărcare * un cronometru * un multimetru pentru tensiune măsurare * un arduino nano * un afișaj de 16x2 I²C * rezistențe 1 / 4W cu 220, 10k, 4.7M și
Tester de capacitate a bateriei Li-Ion (Tester de putere litiu): 5 pași
Tester de capacitate a bateriei Li-Ion (Lithium Power Tester): =========== AVERTISMENT & DISCLAIMER ========== Bateriile Li-Ion sunt foarte periculoase dacă nu sunt manipulate corespunzător. =====================================