В настоящее время я работаю над проектом Arduino, который отправляет мне зарядку автомобильного аккумулятора один раз в день через ESP8266. Зимой я не езжу на своей машине, и мне хотелось бы получать информацию, когда батарея падает до критического значения, чтобы я мог зарядить ее и предотвратить повреждение.
Поэтому энергоэффективность важна для проекта, поэтому она не разряжает саму батарею. Я много читал о спящем режиме, эффективных регуляторах сброса и т. Д. Общим является то, что регулятор напряжения всегда работает, а это не то, чего я хочу.
Я ищу какую-то "схему по таймеру". Он должен вести обратный отсчет 24 часа, а затем включить реле или полевой МОП-транзистор, который подключает регулятор напряжения к источнику питания, а затем включает Arduino и ESP8266. Когда Arduino завершает передачу, он сбрасывает таймер, который отключает регулятор напряжения от питания и так далее. Конечно, схема таймера должна потреблять очень мало энергии.
Кто-нибудь знает такую схему? Я искал на AliExpress все варианты слов, которые мне приходили в голову, но безуспешно. Или, может быть, IC, которая может быть использована (легко) для создания такой схемы?
Ответы:
Одним из подходов было бы использование модуля DS3231 (точные часы реального времени). Такие модули продаются на Ebay менее чем за 1 доллар. Ищите
ds3231 arduino
.Как правило, эти модули имеют шестиконтактный разъем с контактами, обозначенными 32K, SQW, SCL, SDA, VCC и GND. Как отмечено в спецификациях DS3231, вывод INT / SQW используется либо для прямоугольного выхода, либо для выхода прерывания. На странице 13 спецификации в разделе «Регистр управления» написано:
Первоначально вы должны запустить эскиз для настройки DS3231: включить ежедневную сигнализацию, включить прерывание, а не прямоугольную волну, установить текущее время и т. Д. Затем загрузить рабочую программу, которая каждый раз считывает напряжение аккумулятора автомобиля. и действует соответственно.
Вывод DS3231 INT / SQW будет подключен к затвору мосфета с P-каналом, который переключает питание 12 В на Arduino. P-fet будет включаться, когда включается выходной контакт INT / SQW с открытым стоком. Операционная программа выполняет свою работу, а затем сбрасывает флаг прерывания DS3231, чтобы отключить питание до следующего аварийного сигнала. (Для отладки установите более короткие интервалы, чем один день; например, раз в минуту, как описано в Таблице 2, Биты маски сигнализации, на странице 12 спецификаций.)
Как правило, DS3231 потребляет 0,84 мкА при работе от батареи 3,3 В или 1 мкА от 5 В. См. Электрические характеристики, стр. 3 спецификации.
источник
Таймер или цепь таймера должны были бы потреблять некоторый ток. Любой из микросхем AVR пико-мощности потребляет очень мало тока в спящем режиме - если не ошибаюсь, в десятках микроампер для 328-го. Спящий AVR для наименьшего потребления тока требует, чтобы практически все было отключено, кроме сторожевого таймера, и максимальный период WDT составляет 8 секунд. Такая библиотека, как Narcoleptic, будет управлять вами дольше. Однако вам нужно обеспечить гораздо более эффективный регулируемый источник питания, чем тот, который встроен в плату Arduino (если это то, что вы будете использовать). После этого нагрузка Arduino на автомобильный аккумулятор должна быть микроскопической.
Одним из возможных вариантов эффективного питания является набор щелочных батарей, скажем, 3 последовательно для выходной 4,5 (в то время как свежая) 2 или более таких параллельных цепей, подключенных непосредственно к шине 5 В.
Я не занимался планированием энергопотребления, чтобы узнать, какая емкость вам нужна, и нужны ли вам D-ячейки или можно создать практичный массив из более мелких, например, AA, но это способ достичь нулевой нагрузки на автомобильный аккумулятор. (без учета требования к датчику напряжения автомобильного аккумулятора). Возможно, вы захотите включить информацию о состоянии батарейного массива Arduino в ежедневный отчет, или, по цене нескольких щелочных батарей, вы можете перепроектировать батарею Arduino, так что мониторинг ее станет ненужным.
Пара данных указывает на то, что возможен отдельный аккумулятор:
источник
SLEEP_MODE_PWR_SAVE
, с активным только асинхронным таймером, потребовал что-то вроде 2 мкА.Попробуйте использовать «Таймер питания Adafruit TPL5110»
https://learn.adafruit.com/adafruit-tpl5110-power-timer-breakout/overview
источник
Вы можете использовать таймер. Вы можете купить его на Ebay примерно за 5 евро. я использую этот
https://www.ebay.com/itm/CN101-DC-12V-16A-Digital-LCD-Power-Programmable-Timer-Time-Relay-Switch-New/401190616827?hash=item5d68d2fefb:g:K3sAAOSwNRdX3ggT
Я также пробовал DS3231, но Arduino находится в режиме ожидания, и он потребляет энергию. это лучшее решение, которое я нашел
источник