Spisu treści:

Tester pojemności baterii Arduino DIY - V2.0: 11 kroków (ze zdjęciami)
Tester pojemności baterii Arduino DIY - V2.0: 11 kroków (ze zdjęciami)

Wideo: Tester pojemności baterii Arduino DIY - V2.0: 11 kroków (ze zdjęciami)

Wideo: Tester pojemności baterii Arduino DIY - V2.0: 11 kroków (ze zdjęciami)
Wideo: Ups. 2024, Lipiec
Anonim
Image
Image

W dzisiejszych czasach podrabiane baterie litowe i NiMH są wszędzie, które są sprzedawane przez reklamę o pojemności większej niż ich rzeczywista pojemność. Tak więc naprawdę trudno jest odróżnić baterię prawdziwą od fałszywej. Podobnie trudno jest określić pojemność zachowaną w uratowanych akumulatorach do laptopów 18650. Tak więc wymagane jest urządzenie do pomiaru rzeczywistej pojemności akumulatorów.

W roku 2016 napisałem Instruktaż na temat "Tester pojemności Arduino - V1.0", który był bardzo prostym i prostym urządzeniem. Wcześniejsza wersja była oparta na prawie Ohma. Testowany akumulator jest rozładowywany przez stały rezystor, prąd i czas trwania są mierzone przez Arduino, a pojemność jest obliczana przez pomnożenie obu odczytów (prąd i czas rozładowania).

Wadą wcześniejszej wersji było to, że podczas testów wraz ze spadkiem napięcia baterii zmniejsza się również prąd, co powoduje, że obliczenia są skomplikowane i niedokładne. Aby temu zaradzić, stworzyłem V2.0, który został zaprojektowany w taki sposób, aby prąd pozostawał stały przez cały proces rozładowywania. Zrobiłem to urządzenie, inspirując się oryginalnym projektem MyVanitar

Główne cechy testera pojemności V2.0 to:

1. Możliwość pomiaru pojemności akumulatorów AA / AAA NiMh / NiCd, 18650 Li-ion, Li-Polymer i Li FePO4. Nadaje się do prawie każdego rodzaju baterii o napięciu poniżej 5V.

2. Użytkownicy mogą ustawić prąd rozładowania za pomocą przycisków.

3. Interfejs użytkownika OLED

4. Urządzenie może być używane jako obciążenie elektroniczne

Aktualizacja 02.12.2019

Teraz możesz zamówić PCB i komponenty razem w zestawie od PCBWay

Zastrzeżenie: Należy pamiętać, że pracujesz z baterią Li-Ion, która jest wysoce wybuchowa i niebezpieczna. Nie mogę ponosić odpowiedzialności za jakąkolwiek utratę mienia, uszkodzenie lub utratę życia, jeśli do tego dojdzie. Ten samouczek został napisany dla tych, którzy mają wiedzę na temat technologii akumulatorów litowo-jonowych. Nie próbuj tego, jeśli jesteś nowicjuszem. Bądź bezpieczny.

Kieszonkowe dzieci

Używane komponenty

Teraz zamów PCB i wszystkie komponenty do zbudowania tego projektu w zestawie od PCBWay

1. PCB: PCBWay

2. Arduino Nano: Amazon / Banggood

3. Opamp LM358: Amazon / Banggood

4. Wyświetlacz OLED o przekątnej 0,96 cala: Amazon / Banggood

5. Rezystor ceramiczny: Amazon / Banggood

6. Kondensator 100nF: Amazon / Banggood

7. Kondensator 220uF: Amazon / Banggood

8. Rezystory 4.7K i 1M: Amazon / Banggood

9. Przycisk: Amazon / Banggood

10. Czapka z guzikami: Aliexpress

11. Zacisk śrubowy: Amazon / Banggood

12. Płytka prototypowa: Amazon / Banggood

13. Stojak na PCB: Amazon / Banggood

14. Rurki termokurczliwe: Amazon / Banggood

15. Radiator: Aliexpress

Narzędzia użyte

1. Lutownica: Amazon / Banggood

2. Miernik cęgowy: Amazon / Banggood

3. Multimetr: Amazon / Banggood

4. Dmuchawa gorącego powietrza: Amazon / Banggood

5. Przecinak do drutu: Amazon / Banggood

6. Narzędzie do ściągania izolacji: Amazon / Banggood

Krok 1: Schemat ideowy

Schemat
Schemat

Cały schemat podzielony jest na następujące sekcje:

1. Obwód zasilania

2. Obwód obciążenia prądu stałego

3. Obwód pomiaru napięcia akumulatora

4. Obwód interfejsu użytkownika

5. Obwód brzęczyka

1. Obwód zasilania

Obwód zasilający składa się z gniazda DC (7-9V) oraz dwóch kondensatorów filtrujących C1 i C2. Wyjście zasilania (Vin) jest podłączone do pinu Vin Arduino. Tutaj używam wbudowanego regulatora napięcia Arduino, aby obniżyć napięcie do 5V.

2. Obwód obciążenia prądu stałego

Podstawowym elementem obwodu jest wzmacniacz operacyjny LM358, który zawiera dwa wzmacniacze operacyjne. Sygnał PWM z pinu D10 Arduino jest filtrowany przez filtr dolnoprzepustowy (R2 i C6) i podawany do drugiego wzmacniacza operacyjnego. Wyjście drugiego wzmacniacza operacyjnego jest połączone z pierwszym wzmacniaczem operacyjnym w konfiguracji wtórnika napięcia. Zasilanie LM358 jest filtrowane przez kondensator odsprzęgający C5.

Pierwszy wzmacniacz operacyjny, R1 i Q1 budują obwód obciążenia stałoprądowego. Więc teraz możemy kontrolować prąd przez rezystor obciążenia (R1), zmieniając szerokość impulsu sygnału PWM.

3. Obwód pomiaru napięcia akumulatora

Napięcie baterii jest mierzone przez wejście analogowe Arduino pin A0. Dwa kondensatory C3 i C4 służą do filtrowania szumów pochodzących z obwodu obciążenia stałoprądowego, które mogą pogorszyć wydajność konwersji ADC.

4. Obwód interfejsu użytkownika

Obwód interfejsu użytkownika składa się z dwóch przycisków i wyświetlacza OLED I2C o przekątnej 0,96 cala. Przyciski w górę i w dół służą do zwiększania lub zmniejszania szerokości impulsu PWM. R3 i R4 to rezystory podciągające dla przycisków w górę i w dół -przyciski C7 i C8 służą do odbicia przycisków. Trzeci przycisk (RST) służy do resetowania Arduino.

5. Obwód brzęczyka

Obwód brzęczyka służy do ostrzegania o rozpoczęciu i zakończeniu testu. Brzęczyk 5V jest podłączony do cyfrowego pinu D9 Arduino.

Krok 2: Jak to działa?

Jak to działa?
Jak to działa?
Jak to działa?
Jak to działa?
Jak to działa?
Jak to działa?

Teoria opiera się na porównaniu napięć wejść odwracających (pin-2) i nieodwracających (pin-3) wzmacniacza OpAmp, skonfigurowanego jako wzmacniacz jedności. Po ustawieniu napięcia przyłożonego do wejścia nieodwracającego poprzez regulację sygnału PWM, wyjście wzmacniacza operacyjnego otwiera bramę MOSFET. Gdy MOSFET włącza się, prąd przepływa przez R1, powoduje spadek napięcia, który dostarcza ujemnego sprzężenia zwrotnego do OpAmp. Kontroluje MOSFET w taki sposób, aby napięcia na jego wejściach odwracających i nieodwracających były równe. Tak więc prąd płynący przez rezystor obciążenia jest proporcjonalny do napięcia na nieodwracającym wejściu wzmacniacza OpAmp.

Sygnał PWM z Arduino jest filtrowany za pomocą obwodu filtra dolnoprzepustowego (R2 i C1). Aby przetestować działanie sygnału PWM i obwodu filtra, podłączyłem mój DSO ch-1 na wejściu i ch-2 na wyjściu obwodu filtra. Przebieg wyjściowy pokazano powyżej.

Krok 3: Pomiar pojemności

Pomiar pojemności
Pomiar pojemności

Tutaj akumulator jest rozładowywany do niskiego napięcia progowego (3,2 V).

Pojemność baterii (mAh) = Prąd (I) w mA x Czas (T) w godzinach

Z powyższego równania wynika, że aby obliczyć pojemność baterii (mAh), musimy znać prąd w mA i czas w godzinach. Zaprojektowany obwód jest obwodem stałoprądowym, więc prąd rozładowania pozostaje stały przez cały okres testowania.

Prąd rozładowania można regulować, naciskając przycisk w górę i w dół. Czas trwania mierzony jest za pomocą timera w kodzie Arduino.

Krok 4: Tworzenie obwodu

Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu

W poprzednich krokach wyjaśniłem funkcję każdego z elementów w obwodzie. Przed skokiem do ostatniej płytki, najpierw przetestuj obwód na płytce stykowej. Jeśli obwód działa idealnie na płytce prototypowej, przejdź do lutowania komponentów na płytce prototypowej.

Użyłem płyty prototypowej 7cm X 5cm.

Montaż Nano: Najpierw wytnij dwa rzędy żeńskiego kołka głowicy z 15 pinami w każdym. Do cięcia nagłówków użyłem szczypiec ukośnych. Następnie przylutuj szpilki głowicy. Upewnij się, że odległość między dwiema szynami pasuje do Arduino nano.

Montaż wyświetlacza OLED: Wytnij żeński nagłówek z 4 pinami. Następnie przylutuj go tak, jak pokazano na zdjęciu.

Montaż zacisków i komponentów: Przylutuj pozostałe komponenty, jak pokazano na rysunkach.

Okablowanie: Wykonaj okablowanie zgodnie ze schematem. Użyłem kolorowych przewodów do wykonania okablowania, abym mógł je łatwo zidentyfikować.

Krok 5: Wyświetlacz OLED

Wyświetlacz OLED
Wyświetlacz OLED
Wyświetlacz OLED
Wyświetlacz OLED

Do wyświetlenia napięcia akumulatora, prądu rozładowania i pojemności użyłem wyświetlacza OLED o przekątnej 0,96 . Ma rozdzielczość 128x64 i wykorzystuje magistralę I2C do komunikacji z Arduino. Wykorzystane są dwa piny SCL (A5), SDA (A4) w Arduino Uno Dla komunikacji.

Do wyświetlania parametrów używam biblioteki Adafruit_SSD1306.

Najpierw musisz pobrać Adafruit_SSD1306. Następnie zainstalowałem go.

Połączenia powinny wyglądać następująco

Arduino OLED

5V-VCC

GND GND

A4 - SDA

A5-- SCL

Krok 6: Brzęczyk ostrzegawczy

Brzęczyk ostrzeżenia
Brzęczyk ostrzeżenia
Brzęczyk ostrzeżenia
Brzęczyk ostrzeżenia
Brzęczyk ostrzeżenia
Brzęczyk ostrzeżenia
Brzęczyk ostrzeżenia
Brzęczyk ostrzeżenia

Aby zapewnić alerty podczas startu i zawodów testu, używany jest brzęczyk piezoelektryczny. Brzęczyk ma dwa zaciski, dłuższa jest dodatnia, a krótsza ujemna. Naklejka na nowym brzęczyku ma również znak „+” wskazujący dodatni zacisk.

Ponieważ na płytce prototypowej nie ma miejsca na umieszczenie brzęczyka, podłączyłem brzęczyk do płyty głównej za pomocą dwóch przewodów. Do zaizolowania nieosłoniętego połączenia użyłem rurki termokurczliwej.

Połączenia powinny wyglądać następująco

Arduino Buzzer

D9 Zacisk dodatni

Ujemny zacisk GND

Krok 7: Montaż wsporników

Montaż wsporników
Montaż wsporników
Montaż wsporników
Montaż wsporników

Po lutowaniu i okablowaniu zamontuj wsporniki w 4 rogach. Zapewni dostateczny odstęp od ziemi do złączy lutowniczych i przewodów.

Krok 8: Projekt PCB

Projektowanie PCB
Projektowanie PCB

Schemat narysowałem za pomocą oprogramowania online EasyEDA, po czym przełączyłem się na układ PCB.

Wszystkie komponenty dodane na schemacie powinny tam być, ułożone jeden na drugim, gotowe do umieszczenia i trasowania. Przeciągnij elementy, chwytając za podkładki. Następnie umieść go wewnątrz prostokątnej granicy.

Ułóż wszystkie elementy w taki sposób, aby płytka zajmowała jak najmniej miejsca. Mniejszy rozmiar płytki, tym tańszy będzie koszt produkcji PCB. Przyda się, jeśli ta płytka będzie miała na sobie otwory montażowe, aby można ją było zamontować w obudowie.

Teraz musisz jechać. Routing to najfajniejsza część tego całego procesu. To jak rozwiązywanie zagadki! Za pomocą narzędzia śledzącego musimy połączyć wszystkie komponenty. Możesz użyć zarówno górnej, jak i dolnej warstwy, aby uniknąć nakładania się dwóch różnych ścieżek i skrócić ścieżki.

Możesz użyć warstwy Silk, aby dodać tekst do tablicy. Ponadto jesteśmy w stanie wstawić plik graficzny, więc dodaję obraz logo mojej witryny do wydrukowania na tablicy. Na koniec, używając narzędzia do powierzchni miedzi, musimy utworzyć obszar uziemienia płytki drukowanej.

Możesz go zamówić w PCBWay.

Zarejestruj się teraz PCBWay, aby otrzymać kupon o wartości 5 USD. Oznacza to, że pierwsze zamówienie jest bezpłatne, tylko Ty musisz zapłacić koszty wysyłki.

Kiedy złożysz zamówienie, otrzymam 10% darowizny od PCBWay za wkład w moją pracę. Twoja niewielka pomoc może zachęcić mnie do dalszej pracy w przyszłości. Dziękuję za współpracę.

Krok 9: Złóż PCB

Złóż płytkę drukowaną
Złóż płytkę drukowaną
Złóż płytkę drukowaną
Złóż płytkę drukowaną

Do lutowania potrzebujesz porządnej lutownicy, lutownicy, szczypiec i multimetru. Dobrą praktyką jest lutowanie elementów zgodnie z ich wysokością. Najpierw przylutuj komponenty o mniejszej wysokości.

Możesz wykonać następujące kroki, aby przylutować komponenty:

1. Przełóż nogi komponentów przez otwory i obróć płytkę PCB na tylną stronę.

2. Przytrzymaj końcówkę lutownicy do połączenia podkładki i nóżki elementu.

3. Wprowadzić lut do złącza tak, aby opływał przewód i zakrywał pad. Gdy wszystko opłynie, odsuń końcówkę.

Krok 10: Oprogramowanie i biblioteki

Oprogramowanie i biblioteki
Oprogramowanie i biblioteki
Oprogramowanie i biblioteki
Oprogramowanie i biblioteki
Oprogramowanie i biblioteki
Oprogramowanie i biblioteki
Oprogramowanie i biblioteki
Oprogramowanie i biblioteki

Najpierw pobierz załączony kod Arduino. Następnie pobierz poniższe biblioteki i zainstaluj je.

Biblioteki:

Pobierz i zainstaluj następujące biblioteki:

1. JC_Button:

2. Adafruit_SSD1306:

W kodzie musisz zmienić następujące dwie rzeczy.

1. Wartości Current Arrays: Można to zrobić przez podłączenie multimetru szeregowo z baterią. Naciśnij przycisk w górę i zmierz prąd, aktualne wartości są elementami tablicy.

2. Vcc: Używasz multimetru do pomiaru napięcia na pinie Arduino 5V. W moim przypadku jest to 4,96V.

Zaktualizowano 20.11.2019

Możesz zmienić wartość Low_BAT_Level w kodzie zgodnie z chemią baterii. Lepiej jest zrobić mały margines w stosunku do napięcia odcięcia podanego poniżej.

Oto szybkości rozładowania i napięcia odcięcia dla różnych chemikaliów akumulatorów litowo-jonowych:

1. Tlenek litowo-kobaltowy: Napięcie odcięcia = 2,5 V przy szybkości rozładowania 1C

2. Tlenek litowo-manganowy: napięcie odcięcia = 2,5 V przy szybkości rozładowania 1C

3. Fosforan litowo-żelazowy: napięcie odcięcia = 2,5 V przy szybkości rozładowania 1C

4. Tytanian litu: napięcie odcięcia = 1,8 V przy szybkości rozładowania 1C

5. Tlenek kobaltu litowo-niklowo-manganowy: napięcie odcięcia = 2,5 V przy szybkości rozładowania 1C

6. Tlenek glinu litowo-niklowo-kobaltowy: napięcie odcięcia = 3,0 V przy szybkości rozładowania 1C

Zaktualizowano 01.04.2020

jcgrabo, zasugerował kilka zmian w oryginalnym projekcie, aby poprawić precyzję. Zmiany są wymienione poniżej:

1. Dodaj referencję precyzji (LM385BLP-1.2) i podłącz ją do A1. Podczas konfiguracji odczytaj jego wartość, o której wiadomo, że wynosi 1,215 woltów, a następnie oblicz Vcc, eliminując w ten sposób potrzebę pomiaru Vcc.

2. Wymień rezystor 1 ohm 5% na rezystor 1 ohm 1% mocy, zmniejszając w ten sposób błędy zależne od wartości rezystancji.

3. Zamiast używać ustalonego zestawu wartości PWM dla każdego bieżącego kroku (w przyrostach co 5), utwórz tablicę pożądanych wartości prądu, które posłużyły do obliczenia niezbędnych wartości PWM, aby osiągnąć te aktualne wartości jak najbardziej zbliżone. Podążył za tym, obliczając rzeczywiste wartości prądu, które zostaną osiągnięte z obliczonymi wartościami PWM.

Rozważając powyższe zmiany, zrewidował kod i udostępnił go w sekcji komentarzy. Zmieniony kod znajduje się poniżej.

Dziękuję bardzo jcgrabo za cenny wkład w mój projekt. Mam nadzieję, że to ulepszenie przyda się znacznie większej liczbie użytkowników.

Krok 11: Wniosek

Wniosek
Wniosek
Wniosek
Wniosek
Wniosek
Wniosek
Wniosek
Wniosek

Aby przetestować obwód, najpierw naładowałem dobry akumulator Samsung 18650 za pomocą mojej ładowarki ISDT C4. Następnie podłącz akumulator do zacisku akumulatora. Teraz ustaw prąd zgodnie z wymaganiami i długo wciśnięty przycisk „UP”. Następnie powinieneś usłyszeć sygnał dźwiękowy i rozpocznie się procedura testowa. Podczas testu będziesz monitorować wszystkie parametry na wyświetlaczu OLED. Akumulator będzie się rozładowywał, aż jego napięcie osiągnie próg niskiego poziomu (3,2 V). Proces testowy zostanie zakończony dwoma długimi dźwiękami.

Uwaga: Projekt jest jeszcze w fazie rozwoju. Możesz dołączyć do mnie po wszelkie ulepszenia. Zgłoś uwagi, jeśli wystąpią jakiekolwiek błędy lub błędy. Projektuję płytkę PCB do tego projektu. Pozostań w kontakcie, aby uzyskać więcej aktualizacji projektu.

Mam nadzieję, że mój samouczek jest pomocny. Jeśli Ci się spodoba, nie zapomnij się podzielić:) Zapisz się na więcej projektów DIY. Dziękuję.

Zalecana: