Аккумуляторные датчики

Следующие советы помогут снизить энергопотребление вашего сенсорного узла на Arduino, что позволит ему работать на батареях в течение длительного периода времени.

Примечание: при программировании с использованием адаптера FTDI на модифицированном 3v3 Pro Mini с удаленным регулятором. Обязательно убедитесь, что ваш стабильный источник питания 3v3 подключён на контакт VCC.

  1. Используйте версию 3.3V Arduino Pro Mini с более низкой тактовой частотой процессора (8 МГц)
  2. Спать, когда это возможно, выключив Arduino и радио. Узел датчика может периодически просыпаться от прерывания по таймеру, либо с помощью присоединенного датчика, регистрирующего события на одном из выводов с поддержкой прерывания Arduino. Большинство примеров MySensors реализуют спящий режим. В этом режиме, при отключении питания процессора, датчик температуры DS18B20 и радиопередатчик потребляют (примерно) 120 мкА — что аналогично саморазряду батареи.
  3. Отсоедините светодиодный индикатор питания Arduino, перерезав дорожку между светодиодом и резистором или просто удалите один из них. Это сохранит около 1,5 мА
  4. От паяйте или отсоедините регулятор 3.3в, поскольку он не нужен. Отрежьте вывод Vout острым мелким скальпелем. Смотрите изображения справа, где находится регулятор. Сэкономит около 220 мкА.
  5. Подключите устройство к двум последовательно подключенным батареям типа АА. Вы можете использовать датчики с напряжением 5в, используя повышающий преобразователь напряжения малой мощности (см. Руководство по покупке ниже). Регуляторы напряжения уменьшают срок службы батареи из-за постоянного потребления энергии.

Короткое видео, показывающее, как удалить LED и регулятор:

Теоретический срок службы батареи

Срок службы батареи (для гипотетического датчика температуры) может быть рассчитан путем определения среднего тока для схемы с использованием следующей формулы:

Iavg = (t0I0 + t1I1 … + tx*Ix) / (t0 + t1 … + tx)

Обратите внимание, что эти цифры приведены в показательных целях — Они будут отличаться он ваших. Ток измеряется на батарее с напряжением 3,0 В.

Холостой ход: I0 = 28 мА, t0 = 0,65 с (с использованием задержек, заданных в эскизе) Передача: I1 = 31 мА, t1 = скажем 50 мсек (время только примерное) Сон: I2 = 120 uA (Очень грубо), t2 = 15 минут (частота выборки температуры)

Используя приведенные выше цифры, эффективный ток = 0,142 мА. Ток спящего режима трудно измерить точно, поэтому этот показатель может меняться и повлияет на расчет срока службы.

Предположим, что батарея хорошая около 2000 мАч, что дает срок службы 14 101 час, что равно 19,6 месяцам. Время жизни определяется преобладанием тока сна и частоты дискретизации. Если цифры и расчеты верны (сообщите нам, если это не так), скорее всего, батарея сядет от старости, а не от фактического использования.

Ускорьте свои батареи

Arduino 3.3V 8mhz может работать приблизительно до 2.8V, а Nrf24l01+ вплоть до 1.9V

Чтобы иметь возможность высасывать как можно больше сока из батарей, вы можете использовать DC-DC повышающий преобразователь напряжения. Этот усилитель будет преобразовывать все от 0.8V в 3.3V. Обратите внимание, что усилитель может быть немного шумным (и мешать радио).

Для исправления этого можно подключить керамический конденсатор 0,1 мкФ к GND и VOut. Чтобы избежать шума на радио (NRF24l01 +), вы можете подключить его непосредственно к батареям, так как он может работать до 1,9 В и подавать питание на Arduino через усилитель.

Измерение Уровня заряда аккумулятора

Используйте последовательно резистор 1MΩ (R1) и 470KΩ (R2), подключенный к плюсу аккумулятора и минусу, а затем среднюю точку к входу A0 на CPU.

Средняя точка может быть сглажена с помощью конденсатора емкостью 0,1 мкФ, чтобы поддержать низкий уровень шума.

АЦП настроен на использование внутреннего эталонного значения 1,1 В, поэтому Vмакс при ADC max = 1,1 * (16 + 4703) / 4703 = 3,44 В

Значение мощности батареи должно быть преобразовано в процентное значение, совместимый с вашим контроллером.

См. Следующий пример о том, как измерить уровень заряда аккумулятора на A0 и сообщить об этом контроллеру.

 

Share