Съдържание:

Направи си сам тестер за капацитет на батерията Arduino - V1.0: 12 стъпки (със снимки)
Направи си сам тестер за капацитет на батерията Arduino - V1.0: 12 стъпки (със снимки)

Видео: Направи си сам тестер за капацитет на батерията Arduino - V1.0: 12 стъпки (със снимки)

Видео: Направи си сам тестер за капацитет на батерията Arduino - V1.0: 12 стъпки (със снимки)
Видео: Setting up a 3d Printer with MKS sGen L v1.0 Part 3 2024, Ноември
Anonim
Image
Image
Направи си сам тестер за капацитет на батерията Arduino - V1.0
Направи си сам тестер за капацитет на батерията Arduino - V1.0

[Пускане на видео] Спасих толкова много стари батерии (18650), за да ги използвам отново в моите слънчеви проекти. Много е трудно да се идентифицират добрите клетки в батерията. По -рано в един от моите Power Bank Instructable разказах как да идентифицирам добри клетки чрез измерване на техните напрежения, но този метод изобщо не е надежден. Така че наистина исках начин да измерим точния капацитет на всяка клетка вместо напрежението им.

Актуализация на 30.10.2019

Можете да видите новата ми версия

Преди няколко седмици започнах проекта от основите. Тази версия е наистина проста, която се основава на закона на Ом. Точността на тестера няма да бъде 100% перфектна, но дава разумни резултати, които могат да бъдат използвани и в сравнение с друга батерия, така че лесно можете да идентифицирате добри клетки в стара батерия. По време на работата си разбрах, че има много неща, които могат да бъдат подобрени. В бъдеще ще се опитам да приложа тези неща. Но засега съм доволен от това. Надявам се, че този малък тестер ще бъде полезен, затова го споделям с всички вас. Забележка: Моля, изхвърлете лошите батерии правилно. Отказ от отговорност: Моля, обърнете внимание, че работите с Li -Ионна батерия, която е силно експлозивна и опасна. Не мога да нося отговорност за загуба на собственост, щети или загуба на живот, ако се стигне до това. Този урок е написан за тези, които имат познания за акумулаторната литиево-йонна технология. Моля, не опитвайте това, ако сте начинаещ. Пази се.

Стъпка 1: Необходими части и инструменти:

Необходими части: 1. Arduino Nano (Gear Best / Banggood) 2. 0,96 OLED дисплей (Amazon / Banggood) 3. MOSFET - IRLZ44 (Amazon) 4. Резистори (4 x 10K, 1 / 4W) (Amazon / Banggood) 5. Захранващ резистор (10R, 10W) (Amazon) 6. Винтови клеми (3 Nos) (Amazon / Banggood) 7. Buzer (Amazon / Banggood) 8. Прототипна дъска (Amazon / Banggood) 9. 18650 държач за батерия (Amazon)

10. 18650 батерия (GearBest / Banggood) 11. Разделители (Amazon / Banggood) Необходими инструменти: 1. Тел за рязане / стриптер (Gear Best) 2. Паялник (Amazon / Banggood) Използва се инструмент: Зарядно устройство за баланс IMAX (Gearbest / Banggood)

Инфрачервен термометър (Amazon /Gearbest)

Стъпка 2: Схеми и работа

Схематичен и работен
Схематичен и работен
Схематичен и работен
Схематичен и работен

Схема:

За да разбера схемата лесно, нарисувах я и на перфорирана дъска. Позициите на компонентите и окабеляването са подобни на моята реална платка. Единствените изключения са зумерът и OLED дисплеят. В действителната дъска те са вътре, но в схемата те лежат отвън.

Дизайнът е много прост, базиран на Arduino Nano. OLED дисплей се използва за показване на параметрите на батерията. 3 винтови клеми се използват за свързване на батерията и съпротивлението на натоварване. Звуков сигнал се използва за подаване на различни сигнали. Две вериги разделители на напрежение се използват за наблюдение на напреженията в съпротивлението на товара. Функцията на MOSFET е да свързва или изключва съпротивлението на натоварване с батерията.

Работещи:

Arduino проверява състоянието на батерията, ако батерията е добра, дайте командата да включите MOSFET. Той позволява на тока да преминава от положителния извод на батерията през резистора и MOSFET след това завършва пътя обратно към отрицателния извод. Това разрежда батерията за определен период от време. Arduino измерва напрежението в натоварващия резистор и след това се разделя на съпротивлението, за да открие разрядния ток. Умножете това по време, за да получите стойността на милиампер-часа (капацитет).

Стъпка 3: Измерване на напрежение, ток и капацитет

Измерване на напрежение

Трябва да намерим напрежението на товарния резистор. Напреженията се измерват с помощта на две вериги разделители на напрежение. Състои се от два резистора със стойности 10k всеки. Изходът от разделителя е свързан към аналоговия щифт A0 и A1 на Arduino.

Аналоговият щифт на Arduino може да измерва напрежение до 5V, в нашия случай максималното напрежение е 4.2V (напълно заредено). Тогава може да попитате защо ненужно използвам два разделителя. Причината е, че бъдещият ми план е да използвам същия тестер за батерията с много химии. Така че този дизайн може лесно да се адаптира за постигане на целта ми.

Текущо измерване:

Ток (I) = напрежение (V) - спад на напрежението в MOSFET / съпротивление (R)

Забележка: Предполагам, че спадът на напрежението в MOSFET е незначителен.

Тук V = напрежение в товарния резистор и R = 10 ома

Полученият резултат е в ампери. Умножете 1000, за да го преобразувате в милиампери.

Така че максималният ток на разреждане = 4.2 / 10 = 0.42A = 420mA

Измерване на капацитет:

Съхранено зареждане (Q) = Ток (I) x Време (T).

Вече сме изчислили тока, единственото неизвестно в горното уравнение е времето. Функцията millis () в Arduino може да се използва за измерване на изминалото време.

Стъпка 4: Избор на натоварващ резистор

Избор на натоварващ резистор
Избор на натоварващ резистор

Изборът на натоварващ резистор зависи от количеството разряден ток, от който се нуждаем. Да предположим, че искате да разредите батерията при 500mA, тогава стойността на резистора е

Съпротивление (R) = максимално напрежение на батерията / разряд на ток = 4,2 / 0,5 = 8,4 ома

Резисторът трябва да разсее малко енергия, така че размерът има значение в този случай.

Разсейване на топлина = I^2 x R = 0,5^2 x 8,4 = 2,1 Watt

Като запазите някакъв марж, можете да изберете 5W. Ако искате повече безопасност, използвайте 10W.

Използвах 10 Ohm, 10W резистор вместо 8.4 Ohm, защото по това време той беше в моя склад.

Стъпка 5: Избор на MOSFET

Избор на MOSFET
Избор на MOSFET

Тук MOSFET действа като превключвател. Цифровият изход от щифт D2 на Arduino управлява превключвателя. Когато сигнал 5V (HIGH) се подава към портата на MOSFET, той позволява токът да премине от положителния извод на батерията през резистора и MOSFET след това завършва пътя обратно към отрицателния извод. Това разрежда батерията за определен период от време. Така че MOSFET трябва да бъде избран по такъв начин, че да може да издържи максимален разряден ток без прегряване.

Използвах n-channel логическо ниво на мощност MOSFET-IRLZ44. L показва, че това е MOSFET на логическо ниво. MOSFET на логическо ниво означава, че е проектиран да се включва напълно от логическото ниво на микроконтролер. Стандартният MOSFET (серия IRF и др.) Е проектиран да работи от 10V.

Ако използвате MOSFET от серия IRF, той няма да се включи напълно, като приложи 5V от Arduino. Искам да кажа, че MOSFET няма да носи номиналния ток. За да настроите тези МОП -транзистори, се нуждаете от допълнителна схема за повишаване на напрежението на портата.

Затова ще препоръчам използването на MOSFET на логическо ниво, не непременно IRLZ44. Можете също да използвате всеки друг MOSFET.

Стъпка 6: OLED дисплей

OLED дисплей
OLED дисплей

За да покажа напрежението на батерията, разрядния ток и капацитета, използвах 0,96 OLED дисплей. Той има резолюция 128x64 и използва I2C шина за комуникация с Arduino. Два пина SCL (A5), SDA (A4) в Arduino Uno се използват за комуникация.

Използвам библиотеката U8glib за показване на параметрите. Първо трябва да изтеглите библиотеката U8glib. След това я инсталирайте.

Ако искате да започнете с OLED дисплея и Arduino, щракнете тук

Връзките трябва да бъдат както следва

Arduino OLED

5V -Vcc

GND GND

A4- SDA

A5- SCL

Стъпка 7: Звуков сигнал за предупреждение

Звуков сигнал за предупреждение
Звуков сигнал за предупреждение
Звуков сигнал за предупреждение
Звуков сигнал за предупреждение

За да се даде различно предупреждение или предупреждение, се използва пиезо зумер. Различните сигнали са

1. Ниско напрежение на батерията

2. Високо напрежение на батерията

3. Няма батерия

Звуковият сигнал има два извода, по -дългият е положителен, а по -късият крак е отрицателен. Стикерът на новия зумер има също " +", маркиран с, за да покаже положителния извод.

Връзките трябва да бъдат както следва

Звуков сигнал на Arduino

D9 Положителен терминал

GND Отрицателен терминал

В Arduino Sketch съм използвал отделна функция beep (), която изпраща PWM сигнала до зумера, изчаква малко закъснение, след което го изключва, след което има друго малко забавяне. По този начин той издава звуков сигнал веднъж.

Стъпка 8: Изграждане на веригата

Осъществяване на веригата
Осъществяване на веригата
Осъществяване на веригата
Осъществяване на веригата
Осъществяване на веригата
Осъществяване на веригата

В предишните стъпки обясних функцията на всеки от компонентите във веригата. Преди да скочите, за да направите последната дъска, първо тествайте веригата на дъска за хляб. Ако схемата работи перфектно върху дъската за хляб, след това преминете към запояване на компонентите на платката с прототип.

Използвах прототипна дъска 7cm X 5cm.

Монтиране на Nano: Първо изрежете два реда женски щифт за глава с по 15 щифта във всеки. Използвах диагонална щипка за изрязване на заглавките. След това запоявайте щифтовете на заглавието. Уверете се, че разстоянието между двете релси отговаря на arduino nano.

Монтаж на OLED дисплей: Изрежете женска глава с 4 щифта. След това го запоявайте, както е показано на снимката.

Монтиране на клемите и компонентите: Запоявайте останалите компоненти, както е показано на снимките

Окабеляване: Направете окабеляването според схемата. Използвах цветни проводници, за да направя окабеляването, за да мога лесно да ги идентифицирам.

Стъпка 9: Монтиране на стойките

Монтиране на стойките
Монтиране на стойките
Монтиране на стойките
Монтиране на стойките
Монтиране на стойките
Монтиране на стойките

След запояване и окабеляване монтирайте стойките в 4 ъгъла, което ще осигури достатъчно разстояние до запояващите съединения и проводници от земята.

Стъпка 10: Софтуер

Софтуер
Софтуер
Софтуер
Софтуер

Софтуерът изпълнява следните задачи

1. Измерете напреженията

Вземете 100 ADC проби, добавете ги и осреднете резултата. Това се прави за намаляване на шума.

2. Проверете състоянието на батерията, за да подадете сигнал или стартирайте цикъла на разреждане

Сигнали

i) Ниско-V!: Ако напрежението на акумулатора е под най -ниското ниво на разреждане (2.9V за Li Ion)

ii) Високо-V!: Ако напрежението на акумулатора е над напълно зареденото състояние

iii) Без батерия!: Ако държачът на батерията е празен

Цикъл на разреждане

Ако напрежението на акумулатора е в рамките на ниско напрежение (2.9V) и високо напрежение (4.3V), стартирайте цикъла на разреждане. Изчислете тока и капацитета, както е обяснено по -рано.

3. Покажете параметрите на OLED

4. Регистриране на данни на сериен монитор

Изтеглете кода Arduino, приложен по -долу.

Стъпка 11: Експортиране на серийни данни и начертаване в Excel лист

Експортиране на серийни данни и начертаване в Excel лист
Експортиране на серийни данни и начертаване в Excel лист
Експортиране на серийни данни и начертаване в Excel лист
Експортиране на серийни данни и начертаване в Excel лист

За да тествам веригата, първо заредих добра батерия Samsung 18650, използвайки зарядното си устройство IMAX. След това поставете батерията в новия ми тестер. За да анализирам целия процес на освобождаване от отговорност, експортирам серийните данни в електронна таблица. След това начертах кривата на разтоварване. Резултатът е наистина страхотен. Използвах софтуер, наречен PLX-DAQ, за да го направя. Можете да го изтеглите тук.

Можете да преминете през този урок, за да научите как да използвате PLX-DAQ. Много е просто.

Забележка: Работи само в Windows.

Стъпка 12: Заключение

Заключение
Заключение
Заключение
Заключение

След няколко теста стигам до извода, че резултатът от тестера е доста разумен. Резултатът е на 50 до 70mAh далеч от резултата от тестер за марка на батерията на марката. С помощта на IR температурен пистолет измерих и повишаването на температурата в натоварващия резистор, максималната стойност е 51 градуса С.

В този дизайн разрядният ток не е постоянен, той зависи от напрежението на акумулатора. Така че нанесената крива на разряд не е подобна на кривата на разреждане, дадена в информационния лист за производството на батерията. Поддържа само една литиево -йонна батерия.

Така че в бъдещата си версия ще се опитам да разреша горните кратки коментари във V1.0.

Кредит: Бих искал да отдам признание на Адам Уелч, чийто проект в YouTube ме вдъхнови да започна този проект. Можете да гледате неговото видео в YouTube.

Моля, предложете подобрения. Поставете коментар, ако има грешки или грешки.

Надявам се, че моят урок е полезен. Ако ви харесва, не забравяйте да споделите:)

Абонирайте се за още DIY проекти. Благодаря ти.

Препоръчано: