- Режим CC и CV для зарядного устройства:
- Принципиальная электрическая схема
- Регулятор тока LM317
- Регулятор напряжения LM317
- Расположение реле для переключения между режимами CC и CV
- Измерение напряжения литиевой батареи
- Измерение зарядного тока
- Ардуино и ЖК-дисплей
- Проектирование и изготовление печатных плат с использованием EasyEDA
- Расчет и заказ образцов онлайн
- Программирование Arduino для двухэтапной зарядки литиевой батареи
- Работа от двухступенчатого зарядного устройства для литиевых батарей 7,4 В
Развитие электромобилей, дронов и другой мобильной электроники, такой как устройства IoT, кажется многообещающим для будущего. Их объединяет то, что все они питаются от батарей. Следуя закону Мура, электронные устройства имеют тенденцию становиться меньше и более пригодными для питья, эти портативные устройства должны иметь собственный источник питания для работы. Наиболее распространенным выбором батарей для портативной электроники сегодня являются литий-ионные или литий-полимерные батареи. Хотя эти батареи имеют очень хорошую плотность заряда, они химически нестабильны в суровых условиях, поэтому при их зарядке и использовании следует соблюдать осторожность.
В этом проекте мы построим двухступенчатое зарядное устройство (CC и CV), которое можно будет использовать для зарядки литий-ионных или литий-полимерных батарей. Схема зарядного устройства разработана для литиевого аккумулятора 7,4 В (два 18650 последовательно), который я обычно использую в большинстве проектов робототехники, но схему можно легко изменить, чтобы она соответствовала более низким или немного более высоким аккумуляторным блокам, например, для создания зарядного устройства для литиевых аккумуляторов 3,7 или Зарядное устройство для литий-ионных аккумуляторов 12 В. Как вы, возможно, знаете, для этих аккумуляторов доступны готовые зарядные устройства, но те, что дешевые, очень медленные, а те, что быстрые, очень дорогие. Итак, в этой схеме я решил построить простое грубое зарядное устройство на микросхемах LM317 с режимами CC и CV.. Кроме того, что может быть интереснее, чем создание собственного гаджета и обучение в его процессе.
Помните, что с литиевыми батареями следует обращаться осторожно. Перезарядка или короткое замыкание может привести к опасности взрыва и пожара, поэтому будьте осторожны рядом с ним. Если вы совершенно не знакомы с литиевыми батареями, я настоятельно рекомендую вам прочитать статью о литиевых батареях, прежде чем продолжить. При этом давайте перейдем к проекту.
Режим CC и CV для зарядного устройства:
Зарядное устройство, которое мы намереваемся создать, представляет собой двухступенчатое зарядное устройство, что означает, что оно будет иметь два режима зарядки, а именно постоянный заряд (CC) и постоянное напряжение (CV). Объединив эти два режима, мы сможем заряжать аккумулятор быстрее, чем обычно.
Постоянный заряд (CC):
Первым будет запущен режим CC. Здесь фиксируется величина зарядного тока, который должен поступать в аккумулятор. Для поддержания этого тока напряжение будет соответственно изменяться.
Постоянное напряжение (CV):
После завершения режима CC включается режим CV. Здесь напряжение будет оставаться фиксированным, а ток будет изменяться в соответствии с требованиями к зарядке аккумулятора.
В нашем случае у нас есть литиевый аккумулятор 7,4 В, который представляет собой не что иное, как две ячейки 18650 по 3,7 В каждая, подключенные последовательно (3,7 В + 3,7 В = 7,4 В). Этот аккумулятор необходимо заряжать, когда напряжение достигает 6,4 В (3,2 В на элемент), и его можно заряжать до 8,4 В (4,2 В на элемент). Следовательно, эти значения уже установлены для нашей аккумуляторной батареи.
Затем мы определились с зарядным током в режиме CC, его обычно можно найти в техническом описании батареи, и значение зависит от емкости батареи в Ач. В нашем случае я выбрал значение 800 мА как постоянный ток зарядки. Таким образом, изначально, когда батарея подключена для зарядки, зарядное устройство должно перейти в режим CC и подать в батарею 800 мА, изменяя соответственно напряжение зарядки. Это зарядит аккумулятор, и напряжение аккумулятора начнет медленно расти.
Поскольку мы проталкиваем в батарею сильный ток с более высокими значениями напряжения, мы не можем оставить его в режиме CC, пока батарея не будет полностью заряжена. Мы должны переключить зарядное устройство из режима CC в режим CV, когда напряжение батареи достигнет значительного значения. Наша аккумуляторная батарея должна быть 8,4 В при полной зарядке, поэтому мы можем переключить ее из режима CC в режим CV при 8,2 В.
Как только зарядное устройство перешло в режим CV, мы должны поддерживать постоянное напряжение, в нашем случае значение постоянного напряжения составляет 8,6 В. Батарея потребляет значительно меньший ток в режиме CV, чем в режиме CC, так как в самом режиме CC батарея почти заряжена. Следовательно, при фиксированном напряжении 8,6 В батарея будет потреблять меньше тока, и этот ток будет уменьшаться по мере зарядки батареи. Таким образом, мы должны контролировать ток, когда он достигает очень низкого значения, например менее 50 мА, мы предполагаем, что аккумулятор полностью заряжен, и автоматически отключаем аккумулятор от зарядного устройства с помощью реле.
Подводя итог, мы можем перечислить процедуру зарядки аккумулятора следующим образом.
- Войдите в режим CC и зарядите аккумулятор фиксированным регулируемым током 800 мА.
- Следите за напряжением аккумулятора, и когда оно достигнет 8,2 В, перейдите в режим CV.
- В режиме CV заряжайте аккумулятор фиксированным регулируемым напряжением 8,6 В.
- Контролируйте зарядный ток по мере его уменьшения.
- Когда ток достигнет 50 мА, автоматически отключите аккумулятор от зарядного устройства.
Значения 800 мА, 8,2 В и 8,6 В являются фиксированными, поскольку у нас есть литиевая батарея 7,4 В. Вы можете легко изменить эти значения в соответствии с требованиями вашего аккумуляторного блока. Также обратите внимание, что существует множество сценических зарядных устройств. Такое двухступенчатое зарядное устройство используется чаще всего. В трехступенчатом зарядном устройстве ступени будут CC, CV и поплавок. В четырех- или шестиступенчатом зарядном устройстве будут учитываться внутреннее сопротивление, температура и т. Д. Теперь, когда у нас есть краткое представление о том, как на самом деле должно работать двухступенчатое зарядное устройство, давайте перейдем к принципиальной схеме.
Принципиальная электрическая схема
Полную принципиальную схему зарядного устройства для литиевых батарей можно найти ниже. Схема была сделана с использованием EasyEDA, и печатная плата также будет изготовлена с ее использованием.
Как видите, схема довольно проста. Мы использовали две ИС регулятора переменного напряжения LM317, одну для регулирования тока, а другую - для регулирования напряжения. Первое реле используется для переключения между режимами CC и CV, а второе реле используется для подключения или отключения аккумулятора от зарядного устройства. Разобьем схему на сегменты и разберемся с ее устройством.
Регулятор тока LM317
Микросхема LM317 может действовать как регулятор тока с помощью одного резистора. Схема для того же показана ниже
Для нашего зарядного устройства нам нужно отрегулировать ток 800 мА, как описано выше. Формула для расчета номинала резистора для требуемого тока приведена в даташите как
Резистор (Ом) = 1,25 / Ток (А)
В нашем случае значение тока составляет 0,8 А, и для этого мы получаем значение сопротивления резистора 1,56 Ом. Но ближайшее значение, которое мы могли бы использовать, составляет 1,5 Ом, что указано на принципиальной схеме выше.
Регулятор напряжения LM317
Для режима постоянного напряжения зарядного устройства с литиевой батареей мы должны отрегулировать напряжение до 8,6 В, как обсуждалось ранее. Опять же, LM317 может сделать это с помощью всего двух резисторов. Схема для того же показана ниже.
Формула для расчета выходного напряжения для регулятора LM317 имеет вид
В нашем случае выходное напряжение (Vout) должно быть 8,6 В, а значение R1 (здесь R2) должно быть меньше 1000 Ом, поэтому я выбрал значение 560 Ом. Таким образом, если мы вычислим значение R2, мы получим 3,3 кОм. В качестве альтернативы вы можете использовать любые значения комбинации резисторов при условии, что вы получаете выходное напряжение 8,6 В. Вы можете использовать этот онлайн-калькулятор LM317, чтобы упростить себе работу.
Расположение реле для переключения между режимами CC и CV
У нас есть два реле на 12 В, каждое из которых управляется Arduino через транзистор BC547 NPN. Расположение обоих реле показано ниже.
Первое реле используется для переключения между CC и CV режимом зарядного устройства, это реле срабатывают по Arduino штифтом, помечен как «Режим». По умолчанию реле находится в режиме CC, когда оно срабатывает, оно переключается из режима CC в режим CV.
Аналогичным образом второе реле используется для подключения или отключения зарядного устройства от аккумулятора; это реле запускается контактом Arduino, помеченным как «Charge». По умолчанию реле отключает аккумулятор от зарядного устройства, при срабатывании реле подключает зарядное устройство к аккумулятору. Помимо этого, два диода D1 и D2 используются для защиты схемы от обратного тока, а резисторы R4 и R5 1 кОм используются для ограничения тока, протекающего через базу транзистора.
Измерение напряжения литиевой батареи
Чтобы контролировать процесс зарядки, мы должны измерить напряжение батареи, только тогда мы можем переключить зарядное устройство из режима CC в режим CV, когда напряжение батареи достигнет 8,2 В, как обсуждалось. Наиболее распространенный метод, используемый для измерения напряжения с помощью микроконтроллеров, таких как Arduino, - это использование схемы делителя напряжения. Используемый здесь показан ниже.
Как мы знаем, максимальное напряжение, которое может измерять аналоговый вывод Arduino, составляет 5 В, но наша батарея может достигать 8,6 В в режиме CV, поэтому нам нужно понизить его до более низкого напряжения. Именно это и делает схема делителя напряжения. Вы можете рассчитать значение резистора и узнать больше о делителе напряжения с помощью этого онлайн-калькулятора делителя напряжения. Здесь мы вывели выходное напряжение как половину исходного входного напряжения, это выходное напряжение затем отправляется на аналоговый вывод Arduino через метку « B_Voltage ». Позже мы сможем получить исходное значение при программировании Arduino.
Измерение зарядного тока
Еще один важный параметр, который необходимо измерить, - это зарядный ток. В режиме CV аккумулятор будет отключен от зарядного устройства, когда зарядный ток станет ниже 50 мА, что указывает на завершение зарядки. Существует множество методов измерения тока, наиболее часто используемый метод - использование шунтирующего резистора. Схема для того же показана ниже
В основе этого лежит простой закон Ома. Весь ток, протекающий к батарее, проходит через шунтирующий резистор 2.2R. Тогда по закону Ома (V = IR) мы знаем, что падение напряжения на этом резисторе будет пропорционально току, протекающему через него. Поскольку мы знаем значение резистора и напряжение на нем, можно измерить с помощью аналогового вывода Arduino, значение тока можно легко вычислить. Значение падения напряжения на резисторе отправляется в Arduino через метку «B_Current ». Мы знаем, что максимальный ток зарядки будет 800 мА, поэтому, используя формулы V = IR и P = I 2 R, мы можем рассчитать значение сопротивления и значение мощности резистора.
Ардуино и ЖК-дисплей
Наконец, на стороне Arduino мы должны связать ЖК-дисплей с Arduino, чтобы отображать процесс зарядки для пользователя и управлять зарядкой, измеряя напряжение, ток и затем соответственно запуская реле.
Arduino Nano имеет встроенный регулятор напряжения, поэтому напряжение питания подается на Vin, а регулируемые 5 В используются для работы Arduino и ЖК-дисплея 16x2. Напряжение и ток можно измерить аналоговыми выводами A0 и A1 соответственно с помощью меток «B_Voltage» и «B_Current». Реле можно активировать, переключая контакты GPIO D8 и D9, которые подключены через метки «Mode» и «Charge». Как только схемы будут готовы, мы можем приступить к изготовлению печатной платы.
Проектирование и изготовление печатных плат с использованием EasyEDA
Чтобы разработать схему зарядного устройства для литиевых батарей, мы выбрали онлайн-инструмент EDA под названием EasyEDA. Раньше я много раз использовал EasyEDA и нашел его очень удобным в использовании, поскольку он имеет хороший набор следов и имеет открытый исходный код. После проектирования печатной платы мы можем заказать образцы печатной платы в их недорогих услугах по изготовлению печатных плат. Они также предлагают услуги по подбору компонентов, если у них есть большой запас электронных компонентов, и пользователи могут заказать необходимые компоненты вместе с заказом печатной платы.
При разработке схем и печатных плат вы также можете сделать общедоступными свои схемы и конструкции печатных плат, чтобы другие пользователи могли их копировать или редактировать и извлекать выгоду из вашей работы. Мы также сделали общедоступными макеты всех схем и печатных плат для этой схемы, проверьте ссылка ниже:
easyeda.com/CircuitDigest/7.4V-Lithium-Charger-with-MCU
Вы можете просмотреть любой слой (верхний, нижний, верхний, нижний, шелковый и т. Д.) Печатной платы, выбрав слой в окне «Слои». Вы также можете просмотреть печатную плату зарядного устройства для литиевой батареи, как она будет выглядеть после изготовления, используя кнопку просмотра фотографий в EasyEDA:
Расчет и заказ образцов онлайн
После завершения проектирования печатной платы зарядного устройства для литиевой батареи вы можете заказать печатную плату на сайте JLCPCB.com. Чтобы заказать печатную плату в JLCPCB, вам потребуется файл Gerber. Чтобы загрузить файлы Gerber для вашей печатной платы, просто нажмите кнопку Generate Fabrication File на странице редактора EasyEDA, затем загрузите файл Gerber оттуда или вы можете щелкнуть Order at JLCPCB, как показано на изображении ниже. Это перенаправит вас на JLCPCB.com, где вы можете выбрать количество плат, которые вы хотите заказать, сколько слоев меди вам нужно, толщину печатной платы, вес меди и даже цвет печатной платы, как на снимке, показанном ниже:
После нажатия кнопки «Заказать» на JLCPCB вы попадете на веб-сайт JLCPCB, где сможете заказать печатную плату по очень низкой цене, которая составляет 2 доллара. Их время сборки также очень мало, что составляет 48 часов с доставкой DHL 3-5 дней, в основном вы получите свои печатные платы в течение недели с момента заказа.
После заказа печатной платы вы можете проверить ход производства вашей печатной платы с указанием даты и времени. Вы можете проверить это, перейдя на страницу учетной записи и щелкнув ссылку «Production Progress» под печатной платой, как показано на изображении ниже.
После нескольких дней заказа печатных плат я получил образцы печатных плат в красивой упаковке, как показано на рисунках ниже.
Убедившись, что следы и следы правильные. Я приступил к сборке печатной платы, я использовал женские разъемы для размещения Arduino Nano и ЖК-дисплея, чтобы я мог удалить их позже, если они мне понадобятся для других проектов. Полностью спаянная плата выглядит так ниже
Программирование Arduino для двухэтапной зарядки литиевой батареи
Когда оборудование будет готово, мы можем приступить к написанию кода для Arduino Nano. Полная программа для этого проекта представлена внизу страницы, вы можете загрузить ее прямо на свой Arduino. Теперь давайте разберем программу на небольшие фрагменты и поймем, что на самом деле делает код.
Как всегда, мы начинаем программу с инициализации контактов ввода / вывода. Как мы знаем из нашего оборудования, контакты A0 и A2 используются для измерения напряжения и тока соответственно, а контакты D8 и D9 используются для управления реле режима и реле заряда. Код для определения того же показан ниже.
const int rs = 2, en = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7; // Указываем номер контакта для подключения ЖК-дисплея LiquidCrystal lcd (rs, en, d4, d5, d6, d7); int Charge = 9; // Вывод для подключения или отключения аккумулятора к цепи int Mode = 8; // Пин для переключения между режимом CC и режимом CV int Voltage_divider = A0; // Для измерения напряжения батареи int Shunt_resistor = A1; // Для измерения зарядного тока float Charge_Voltage; float Charge_current;
Внутри функции настройки мы инициализируем функцию ЖК-дисплея и выводим на экран вводное сообщение. Мы также определяем контакты реле как выходные контакты. Затем активируйте реле зарядки, подключите аккумулятор к зарядному устройству, и по умолчанию зарядное устройство остается в режиме CC.
void setup () { lcd.begin (16, 2); // Инициализируем 16 * 2 LCD lcd.print («Литий-ионный аккумулятор 7,4 В + зарядное устройство»); // Вступительное сообщение, строка 1 lcd.setCursor (0, 1); lcd.print ("- CircuitDigest"); // Вступительное сообщение, строка 2 lcd.clear (); pinMode (Зарядка, ВЫХОД); pinMode (Режим, ВЫХОД); digitalWrite (Charge, HIGH); // Начинаем зарядку Первоначально подключив аккумулятор digitalWrite (Mode, LOW); // ВЫСОКИЙ для режима CV и НИЗКИЙ для режима CC, изначально задержка режима CC (1000); }
Затем внутри функции бесконечного цикла мы начинаем программу с измерения напряжения аккумулятора и тока зарядки. Значение 0,0095 и 1,78 умножается на аналоговое значение для преобразования от 0 до 1024 в фактическое значение напряжения и тока. Вы можете использовать мультиметр и токоизмерительные клещи для измерения реального значения, а затем вычислить значение множителя. Он также теоретически рассчитывает значения множителя на основе используемых резисторов, но он не был таким точным, как я ожидал.
// Изначально измеряем напряжение и ток Charge_Voltage = analogRead (Voltage_divider) * 0.0092; // Измерение напряжения батареи Charge_current = analogRead (Shunt_resistor) * 1.78; // Измеряем ток зарядки
Если напряжение заряда меньше 8,2 В, мы переходим в режим CC, а если оно выше 8,2 В, мы переходим в режим CV. Каждый режим имеет свой собственный то время как цикл. Внутри цикла режима CC мы сохраняем вывод Mode как LOW, чтобы оставаться в режиме CC, а затем продолжаем отслеживать напряжение и ток. Если напряжение превышает пороговое значение 8,2 В, мы разрываем контур CC с помощью оператора break. Состояние напряжения заряда также отображается на ЖК-дисплее внутри контура CC.
// Если напряжение батареи меньше 8,2 В, войдите в режим CC while (Charge_Voltage <8,2) // CC MODE Loop { digitalWrite (Mode, LOW); // Оставаться в режиме CC // Измерение напряжения и тока Charge_Voltage = analogRead (Voltage_divider) * 0.0095; // Измерение напряжения батареи Charge_current = analogRead (Shunt_resistor) * 1.78; // Измеряем ток зарядки // выводим данные на ЖК-дисплей lcd.print ("V ="); lcd.print (Charge_Voltage); lcd.setCursor (0, 1); lcd.print («В режиме CC»); задержка (1000); lcd.clear (); // Проверяем, нужно ли нам выйти из режима CC if (Charge_Voltage> = 8.2) // Если да { digitalWrite (Mode, HIGH); // Переход в режим CV break; } }
Эту же технику можно использовать и для режима CV. Если напряжение превышает 8,2 В, зарядное устройство переходит в режим CV, установив на вывод Mode высокий уровень. При этом на батарее действует постоянное напряжение 8,6 В, а ток зарядки может изменяться в зависимости от требований к батарее. Затем этот зарядный ток контролируется, и когда он достигает значения ниже 50 мА, мы можем прекратить процесс зарядки, отсоединив аккумулятор от зарядного устройства. Для этого нам просто нужно выключить реле заряда, как показано в коде ниже.
// Если напряжение батареи больше 8,2 В, войдите в режим CV while (Charge_Voltage> = 8,2) // Цикл РЕЖИМА CV { digitalWrite (Mode, HIGH); // Оставаться в режиме CV // Измерение напряжения и тока Charge_Voltage = analogRead (Voltage_divider) * 0.0092; // Измерение напряжения батареи Charge_current = analogRead (Shunt_resistor) * 1.78; // Измерение зарядного тока // Отображение подробностей пользователю на ЖК-дисплее lcd.print ("V ="); lcd.print (Charge_Voltage); lcd.print ("I ="); lcd.print (Charge_current); lcd.setCursor (0, 1); lcd.print («В режиме CV»); задержка (1000); lcd.clear (); // Проверяем, заряжен ли аккумулятор, отслеживая ток зарядки if (Charge_current <50) // Если да { digitalWrite (Charge, LOW); // Выключаем зарядку while (1) // Не выключаем зарядное устройство до перезапуска { lcd.setCursor (0, 1); lcd.print («Зарядка завершена»); задержка (1000); lcd.clear (); } } } }
Работа от двухступенчатого зарядного устройства для литиевых батарей 7,4 В
Когда оборудование будет готово, загрузите код в плату Arduino. Затем подключите аккумулятор к зарядному разъему платы. Убедитесь, что вы подключаете их с соблюдением полярности, изменение полярности приведет к серьезному повреждению батареи и платы. После подключения аккумулятора включите зарядное устройство с помощью адаптера 12 В. Вас встретит вводный текст, и зарядное устройство перейдет в режим CC или CV в зависимости от состояния аккумулятора. Если во время зарядки аккумулятор полностью разряжен, он перейдет в режим CC, и на ЖК-дисплее отобразится что-то вроде этого.
По мере зарядки аккумулятора напряжение будет увеличиваться, как показано на видео ниже . Когда это напряжение достигнет 8,2 В, зарядное устройство перейдет в режим CV из режима CC, и теперь оно будет отображать напряжение и ток, как показано ниже.
Отсюда постепенно потребление тока аккумулятора будет снижаться по мере его зарядки. Когда ток достигает 50 мА или менее, зарядное устройство предполагает, что аккумулятор полностью заряжен, а затем отключает аккумулятор от зарядного устройства с помощью реле и отображает следующий экран. После этого вы можете отключить аккумулятор от зарядного устройства и использовать его в своих приложениях.
Надеюсь, вы поняли проект и получили удовольствие от его создания. Полную работу можно посмотреть на видео ниже. Если у вас есть какие-либо вопросы, задавайте их в разделе комментариев ниже или используйте форумы для других технических вопросов. Опять же, схема предназначена только для образовательных целей, поэтому используйте ее с ответственностью, поскольку литиевые батареи нестабильны в суровых условиях.