Зарядник на Ардуино - ViktoRi v1.4. Модульное, универсальное ЗУ. Все последние изменения и дополнения.

1,7K прочитали

Всем привет.

Год с лишним назад, это было в январе 2021 года, мне захотелось сделать зарядное устройство на микроконтроллере, которое не уступало бы по функционалу и удобству пользования, дорогим зарядным устройствам имеющимся в продаже. Выбор пал на Ардуино нано и я начал изучать возможности данного микроконтроллера. Для новичка самое то. Спустя 9 месяцев "родилось" готовое устройство собранное в железе и вполне рабочей программой. Все наработки по данному заряднику являются полностью открытыми и выложены в свободный доступ на Яндекс диск.

С месяц назад, когда корпел над прошивкой добавляя новые функции, я осознал что данный зарядник является не просто конечным устройством - сделал и забыл, а состоит из различных модулей. И эти модули можно подключать/отключать , дорабатывать в зависимости от своих нужд.

Подключаемые модули - это аппаратные компоненты и соответствующая управляющая функция в программе.

Основными компонентами являются:

  • Ардуино - Atmega328 или LGT8F328;
  • Стабилизатор питания Ардуино на LM7812;
  • INA226 - измерение напряжения и тока;
  • Кнопки и энкодер для управления;
  • Дисплей - LCD16*2_I2C;
  • Силовой блок - изменение напряжения и тока заряда.
  • Индикатор подключения аккумулятора и он же индикатор работы силового блока.

Собрав эти компоненты и подключив внешний блок питания от 18 В до 30 В, уже можно заряжать аккумуляторы. В качестве БП можно подключать БП от ноутбука, трансформатор с диодным мостом, различные импульсные БП. Подбирайте БП с необходимым вам током отдачи.

Дополнительные компоненты:

  • Измерение входного напряжения от блока питания - довольно важный компонент. Можно обойтись и без него, но тогда не будет контроля входного напряжения и общая надежность будет меньше;
  • Модуль защиты от КЗ и переполюсовки - случайно перепутать плюс и минус может каждый в любой момент, потому дополнительная защита никогда не повредит, к тому же защитным транзистором можно управлять с Ардуино через дополнительную оптопару;
  • Разрядный модуль - нужен для разряда аккумулятора при организации циклов разряд-заряд, различных алгоритмов заряда, измерения внутреннего сопротивления аккумулятора;
  • Датчик температуры - для включения кулера при превышении установленной температуры и для снижения тока заряда если схема перегреется (при больших токах заряда силовой транзистор, дроссель и диод Шотки сильно греются);
  • Модуль управления кулером - для плавного изменения скорости вращения кулера;
  • Динамик (пищалка) - для звукового оповещения о текущем состоянии зарядника;
  • Твердотельное реле - для автоматического подключения и отключения зарядника к сети 220В.

Каждому дополнительном модулю соответствует своя функция в программе. И каждую функцию можно включать в код или исключать из кода.

Данное зарядное устройство - это мой первый большой проект в котором можно еще много чего менять, добавлять и улучшать. Все зависит только от ваших потребностей. Если занимаетесь программированием то можете улучшить мою программу, написать свои функции и алгоритмы или выложить свои мысли и предложения в чате Телеграмм.

Уже сегодня зарядник полностью выполняет свои функции, заряжает/разряжает аккумуляторы, измеряет внутреннее сопротивление, работает стабильно и достаточно надежно что бы можно было включить и забыть. Для задания начальных параметров заряда достаточно выставить емкость аккумулятора в Ач и напряжение (12 В стоит по умолчанию), все остальные параметры рассчитаются автоматически. Все параметры можно менять в дополнительных настройках.

В ближайшее время я добавлю режимы работы: блока питания, хранения аккумулятора, бесперебойник на 12В.