Arduino питание от аккумулятора

Питание для Arduino UNO r3 (Ардуино УНО)

В этой статье расскажу о нескольких простых способах как можно запитать (включить) Arduino UNO практически без денежных затрат. Уверен на 95% что у вас найдется все необходимое для этого дома, или у ваших соседей, в этом случае уверенность возрастает до 99% ))). Рекомендованное напряжение для питания Ардуино, от 7-12 вольт. Так как при напряжении менее 7 вольт возможна не стабильная работа платы, а более 12 возможен перегрев преобразователя напряжения и выход его из строя.
На моей практике питания 5V вполне достаточно для работы простейших схем и небольшого количества датчиков. Подключал одновременно дисплей 5110 и датчик DHT11, и они прекрасно себя чувствовали от 5-ти вольт. Для того чтобы поиграться и изучить принцип работы этого достаточно.

Варианты питания для Arduino UNO

Первый — кабелем от usb порта компьютера:
Такое подключение не только запитает Ардуинку, но и пригодится для заливки скетчей и библиотек. Если вы купили плату без кабеля, то такой кабель часто используется в принтерах, сканерах или МФУ — называется USB A-B.

Второй — кабель и зарядка:
Берем этот же кабель и зарядное устройство от мобильного телефона с usb выходом и выходным напряжением 5V. И подключаем через розетку.

Читайте также:  Аккумулятор для mac allister msdd12 li

Третий — блок питания от чего нибудь:
Возможно у вас есть ненужный (или нужный) блок питания от какой либо техники, который выдает напряжение от 5 до 12 вольт и от 300 до 1000 миллиампер на выходе. У себя нашел БП уже не помню от чего, он дает 9V и 500ma. Плюс еще на БП должен быть штекер нужного размера, если не подходит, тогда ищите нужного размера и перепаивайте. Найти его можно в интернете по запросу (штекер 5.5×2.5 мм)
Но прежде чем подключать, советую проверить выходящее напряжение мультиметром (на всякий случай). У меня один БП вместо написанных 9V выдавал почти 15.

Четвертый — от батареек:
Сначала сделаем автономное питание от батарейки типа Крона.
Для этого варианта понадобится переходник с кроны на разъем Arduino.

Его можно купить, или сделать самим. Что бы его сделать, понадобится дополнительная батарейка донор крона, и кабель с нужным разъемом.
Для начала нужно извлечь из донора контакты, разогнув сверху металлический корпус кроны.

Припаиваем заранее найденный или купленный провод или штекер к снятым контактам. При пайке главное не ошибиться с плюсом и минусом. Что касается штекера который подключается к Ардуино, то внутри находится плюс, а снаружи минус.
Припаивание проводов к снятой площадке с кроны происходит зеркально, там где у кроны плюс, припаиваем минус, а где минус паяем плюс. В итоге должно получится вот так.

Еще можно запитать от пальчиковых батареек, используя вот такие блоки. Их можно вытащить например из сломанной машинки на радиоуправлении, или купить на рынке.

Можно еще подать питание на пины ардуино, но об этом писать не буду. Так как мое мнение что таким способом пользуются довольно редко.

Напишите в комментариях, от чего и как вы запитали Arduino.

Источник

Battery Shield для автономного и резервного питания Arduino

Общие сведения:

Battery Shield — это источник автономного питания для 5В плат Arduino, позволяющий сделать Ваши устройства по настоящему мобильными. Battery Shield устанавливается на Arduino снабжая её питанием, как обычный аккумулятор снабжает питанием Ваш смартфон, планшет и т.д. Если к шинам питания Arduino подключены иные устройства, они также получат питание от Battery Shield. Уровень заряда LiPo (литий-полимерного) аккумулятора можно контролировать либо программно (по шине I2C), либо визуально (по светодиодному индикатору на плате). При необходимости аккумулятор можно зарядить через порт micro USB (питание Arduino не исчезнет во время заряда аккумулятора), блок зарядного устройства автоматически включается, выключается и выбирает тип заряда аккумулятора в зависимости от уровня его разряженности.

Источник автономного питания выполнен в виде Shield, что удобно при его использовании с платами Arduino Uno, Arduino Mega, Arduino Leonardo и им подобных плат Arduino с рабочим напряжением питания 5В. Если Вы используете платы Arduino Nano или Arduino Pro Mini 5V 16MHz, то их так же можно запитать от Battery Shield, без проводов, предварительно установив Arduino в модуль Trema Shield NANO. Использование Battery Shield не только превратит Ваши устройства в мобильные, но и избавит Вас от необходимости использования силовых проводов, блоков питания, батарейных отсеков с аккумуляторами, преобразователями и т.д.

Видео:

Спецификация:

  • Входное напряжение питания зарядного устройства: 5 В (порт micro USB).
  • Выходное напряжение питания модуля: 5 В (постоянного тока).
  • Напряжение заряда аккумулятора: 4,2 В.
  • Тип аккумулятора: LiPo (литий-полимерный) 3,7 В.
  • Ток заряда аккумулятора: до 2,1 А.
  • Ток на выходе модуля: до 1 А (в пиках до 1,5 А).
  • Время обнаружения перегрузки по току: 30 мс.
  • Время обнаружения КЗ нагрузки: до 200 мкс.
  • Время пробуждения: 50 мс.
  • Порог срабатывания защиты от перегрева: 125 °С.
  • Порог срабатывания защиты от пониженного питания на входе micro USB: 4,5 В.
  • Частота повышающего DC-DC преобразователя: 650 кГц.
  • Интерфейс: I2C.
  • Адрес на шине I2C: 0x75.
  • Рабочая температура: 0 . 70 °С.
  • Габариты: Shield.

Подключение:

  • Перед установкой Battery Shield дважды нажмите кнопку на плате, что бы выключить модуль.
  • Battery Shield устанавливается на Arduino или Trema Shield NANO, так чтобы все штекеры разъёмов модуля установились в гнёзда разъемов Arduino.
  • Колодка «POWER» на плате модуля должна совпадать с одноимённой колодкой на плате Arduino или Trema Shield NANO.

Отключение спящего режима:

Для предотвращения случайной разрядки батареи в модуле предусмотрена функция автоматического выключения при простое без нагрузки. Функция по умолчанию включена, если микроконтроллер не подключён или подключён, но не инициировал модуль или переключатель модуля находится в положении LED. Для отключения этой функции необходимо:

1) Перевести переключатель в положение I2C:

2) Подключить Shield к Arduino

3) Скачать и установить библиотеку Battery_Shield. О том как устанавливать библиотеки можно узнать здесь.

4) Добавить следующие строки в скетч:

Подробнее о Battery Shield:

Battery Shield построен на базе чипа IP-5108 оснащенным блоком управления заряда/разряда аккумулятора блоком управления повышающего DC-DC преобразователя, многоканальным управлением питанием, 14-ти битным АЦП для чтения напряжений в различных цепях схемы, защитой от перегрузки по току (на входе и выходе), от короткого замыкания, от перенапряжения, от перезарядки аккумулятора, от перегрева чипа. При срабатывании защиты, выходное напряжение отключается, для возобновления работы Battery Shield, необходимо подать питание на порт micro USB. Для согласования логических уровней шины I2C используется чип PCA9306. Контролировать текущее состояние аккумулятора и процесса его заряда, можно как программно (по шине I2C), так и визуально (посредством светодиодов на плате модуля). Установить подходящий Вам метод контроля можно используя переключатель на плате модуля.

Специально для Battery Shield, нами разработана библиотека Battery_Shield, которая позволяет управлять источником автономного питания по шине I2C. Для работы библиотеки, переключатель на плате должен находиться в положении «I2C». Библиотека позволяет: выключать модуль, включать/выключать зарядное устройство, получать силу тока аккумулятора, получать силу тока в цепи нагрузки, получать напряжение на аккумуляторе, получать напряжение на аккумуляторе без нагрузки, получать напряжение в цепи нагрузки, получать % заряда аккумулятора, получать используемый тип заряда аккумулятора (заряд не осуществляется, TK — заряд малым током, CC — заряд постоянным током, CV — заряд постоянным напряжением, Time Over). Дополнительно можно получить текущее КПД повышающего DC-DC преобразователя, а так же точное сопротивление резистора в цепи аккумулятора, используемого для расчёта силы тока аккумулятора.

Для включения модуля необходимо однократно нажать на единственную кнопку на плате.
Выключить модуль можно либо двойным нажатием на ту же кнопку, либо программно (по шине I2C).

  • Перед первым включением Battery Shield (после покупки), подайте питание на порт micro USB (не менее чем на 2 секунды).
  • Для включения модуля необходимо однократно нажать на единственную кнопку на плате.
  • Для выключения модуля необходимо выполнить двойное нажатие на единственную кнопку на плате (выключайте модуль перед его установкой на Arduino).
  • Для заряда аккумулятора подайте питание на порт micro USB (при наличии питания от micro USB, модуль включится и не будет выключаться при нажатии на кнопку).
  • При срабатывании защиты Battery Shield (перегрузка по току, КЗ, перегрев и т.д), выходное напряжение модуля отключается, для возобновления работы Battery Shield, необходимо его включить, однократно нажав на кнопку.
  • При срабатывании защиты аккумулятора, его схема отключит питание на выходе, для возобновления работы аккумулятора необходимо подать питание на порт micro USB.
  • Для визуальной индикации (посредством светодиодов) состояния аккумулятора и его зарядки, переведите выключатель на плате модуля в положение «LED».
  • Для управления модулем и получения данных по шине I2C, переведите выключатель на плате модуля в положение «I2C».
  • Обратите внимание на то, что в режиме «LED» светодиодная индикация потребляет ток.
  • Если модуль находится без нагрузки (ток на выходе ниже 120 мА) дольше 32 секунд, то он автоматически выключится.
  • Для работы с Battery Shield по шине I2C предлагаем воспользоваться библиотекой Battery_Shield.
  • Библиотека Battery_Shield запрещает автоматическое выключение модуля при отсутствии нагрузки.

Примеры:

Вывод тока и напряжения:

Данный пример будет постоянно выводить IBAT, VBAT, IOUT, VOUT в монитор последовательного порта.

Вывод состояния и заряда аккумулятора:

Данный пример будет постоянно выводить состояние зарядного устройства, тип заряда и текущую ёмкость аккумулятора (в т.ч. и во время заряда).

Отключение Battery Shield:

Данный пример отключит Battery Shield через 5 секунд после его включения.
Отключение не будет работать, если подано питание на разъем mocro USB.

Программная защита от перегрузки по току:

Данный скетч отключит Battery Shield если сила тока потребляемая Arduino и другими устройствами превысит 700 мА.

Описание основных функций библиотеки:

Библиотека Battery_Shield позволяет управлять источником автономного питания по шине I2C. Для работы библиотеки, переключатель на плате должен находиться в положении «I2C». Библиотека позволяет: выключать модуль, включать/выключать зарядное устройство, получать значения IBAT, VBAT, IOUT, VOUT, % заряда аккумулятора, текущий тип заряда аккумулятора (TK, CC, CV).

Подключение библиотеки:

Функция begin();

  • Назначение: Инициализация работы с Battery Shield.
  • Синтаксис: begin( RES [, КПД] );
  • Параметры:
    • RES — значение сопротивления в цепи аккумулятора, указывается в Ом (тип float).
    • КПД — необязательный параметр, коэффициент полезного действия повышающего DC-DC преобразователя, указывается в % (тип float).
  • Возвращаемое значение: (bool) результат инициализации true/false.
  • Примечание:
    • RES — сопротивление RBAT значение указано на вкладыше к Battery Shield, оно используется для расчёта IBAT.
    • КПД — значение (по умолчанию 94%) используется для расчёта IOUT.
    • Значение RES выше чем номинал резистора, так как оно учитывает сопротивление дорожек, припоя.
    • Точные значения RES и КПД Вашего Battery Shield можно получить используя функции ohmmeter() и efficiency().
  • Пример:

Функция off();

  • Назначение: Выключение Battery Shield.
  • Синтаксис: off();
  • Параметр: отсутствует.
  • Возвращаемое значение: (bool) результат выключения true/false.
  • Примечание: Функция не работает при наличии питания на micro USB.
  • Пример:

Функция charging();

  • Назначение: Включение/выключение зарядного устройства.
  • Синтаксис: charging( ФЛАГ );
  • Параметр: (bool) флаг разрешающий работу ЗУ. true — разрешить / false — запретить.
  • Возвращаемое значение: отсутствует.
  • Примечание: Если разрешить работу ЗУ но не подать питание на micro USB, то аккумулятор заряжаться не будет.
  • Пример:

Функция getLevel();

  • Назначение: Получение уровня заряда аккумулятора в %.
  • Синтаксис: getLevel();
  • Параметр: отсутствует.
  • Возвращаемое значение: (uint8_t) уровень заряда (от 0% до 100%).
  • Примечание:
    • возвращаемое значение кратно 5%.
    • ёмкость аккумулятора рассчитывается по его напряжению без нагрузки.
    • функция работает вне зависимости от работы зарядного устройства.
  • Пример:

Функция getState();

  • Назначение: Получение состояния Battery Shield.
  • Синтаксис: getState();
  • Параметр: отсутствует.
  • Возвращаемое значение:
    • CHARGING_IDLE — в данное время аккумулятор не заряжается.
    • CHARGING_TK — аккумулятор заряжается в режиме TK — малым током.
    • CHARGING_CC — аккумулятор заряжается в режиме CC — постоянным током.
    • CHARGING_CV — аккумулятор заряжается в режиме CV — постоянным напряжением.
    • CHARGING_TO — аккумулятор не заряжается, так как истекло отведённое время заряда.
  • Пример:

Функция voltmeter();

  • Назначение: Получение напряжения.
  • Синтаксис: voltmeter( БЛОК );
  • Параметр БЛОК — определяет блок схемы на котором требуется измерить напряжение:
    • BATTERY — измерить напряжение на аккумуляторе (UBAT). Вместо BATTERY можно указать INPUT.
    • BATTERY_IDLE — измерить напряжение на аккумуляторе (UBAT) без нагрузки.
    • OUTPUT — измерить напряжение на выходе (UOUT).
  • Возвращаемое значение: (float) значение измеренного напряжения в В.
  • Пример:

Функция amperemeter();

  • Назначение: Получение силы тока.
  • Синтаксис: amperemeter( ЦЕПЬ );
  • Параметр ЦЕПЬ — ток которой требуется получить:
    • BATTERY — измерить ток в цепи аккумулятора (IBAT). Вместо BATTERY можно указать INPUT.
    • OUTPUT- измерить ток нагрузки в цепи выхода (IOUT).
  • Возвращаемое значение: (float) значение силы тока в А.
  • Примечание:
    • Значение IBAT может быть отрицательным (это значит что аккумулятор заряжается).
    • Значения IBAT и IOUT рассчитываются в библиотеке, а не измеряются чипом модуля.
    • Значение IBAT зависит от RBAT (от сопротивления указанного в качестве параметра функции begin).
    • Значение IOUT зависит от КПД повышающего DC-DC преобразователя (по умолчанию 94%).
    • Точные значения RBAT и КПД Вашего Battery Shield можно получить используя функции ohmmeter() и efficiency().
  • Пример:

Описание дополнительных функций библиотеки:

Дополнительные функции требуют ввода токов измеренных внешними приборами (амперметром или мультиметром). Для выполнения указанных измерений требуются технические навыки и приборы. Любые конструктивные изменения в Battery Shield (в т.ч. обрыв проводов, следы пайки и т.д.) исключают гарантию и работоспособность устройства. Помните что аккумулятор является пожароопасным устройством.

Источник

Оцените статью