Расчёт расхода заряда батареек
Обратимся немного к теории, необходимой для получения точных цифр при расчёте времени работы датчиков от комплекта батареек.
Итак, сначала рассмотрим, когда и на что тратится электроэнергия, на примере самого популярного модуля Z-Wave ZM3102.
- При отправке данных модуль тратит 36 мА. Отправка одного пакета длится обычно не более 7 мс (на самой медленной скорости).
- Ожидание данных или нажатия кнопки при включенном на приём модуле расходует 23 мА. В худшем случае на доставку пакета с подтверждением о получении требуется время 10мс * [количество ретрансляторов на пути + 1]. Однако при неудачной отправке пакета через примерно 50-100 мс происходит повторная попытка.
- Состояние глубокого сна самое экономичное — в нём модуль расходует лишь 2.5 μА.
- Ко всему этому требуется добавить расход оборудования вокруг модул. Например, включенный светодиод потребляет порядка 20 мА.
Ёмкость типичной батарейки AAA составляет примерно 800 мА*ч. Таким образом, если устройство непрерывно пребывает в режиме ожидания, батареек хватит на 800 мА*ч / 23 мА = 34 часа, т.е. менее двух суток! Именно столько будет жить на батарейках датчик движения Express Control EZ-Motion, если у его переключить в режим постоянной работы (обычно это делается при подключении постоянного питания). Кстати, столько же будет гореть светодиод, подключенный к этим же батарейкам. Совершенно очевидно, что для работы в течение продолжительного срока требуется отправлять устройство в режим сна. Если же устройство будет всё время находиться во сне, то батареек хватит на 800 мА*ч / 2.5 μА = 36.5 лет. Очевидно, что саморазряд батарейки происходит быстрее.
Теперь рассчитаем лучший и худший варианты отправки пакета (20 байт с заголовками) от нашего узла, питающегося от батареек, к получателю (контроллеру, реле или другому устройству).
- Лучший вариант — отправленный пакет доставляется сразу без маршрутизации на скорости 40 кбод. Затраченная электроэнергия составит 36 мА * 160 бит / 40 кбод + 23 мА * 10 мс = 0.37 мА*с.
- Средний вариант — отправленный пакет доставляется через 2 роутера на скорости 40 кбод. Затраченная электроэнергия составит 36 мА * 160 бит / 40 кбод + 23 мА * 10 мс * (2 роутера +1)= 0.83 мА*с.
- Худший вариант — отправленный пакет не доставляется после перебора 4х доступных маршрутов, по 3 попытки на маршрут на скорости 9600 бод. Затраченная электроэнергия составит (36 мА * 160 бит / 9.6 кбод + 23 мА * (10 мс * (2 роутера + 1) + 50 мс)) * 3 попытки * 4 маршрута = 29.3 мА*с.
- Простое ожидание пакета от контроллера в течение одной секунды потребует 23 мА*с.
- Для сравнения, представим здесь же энергопотребление за время 3 часов сна: 2.5 μА * 10800 c = 27 мА*с.
Видно, что разница в энергопотреблении лучшего и худшего вариантов составляет более, чем в 70 раз!
Также видно, что попытка доставить пакет недоступному узлу стоит столько же, сколько ожидание ответа от контроллера в течение одной секунды, включение светодиода на одну секунду или 3 часа сна устройства!
Первый вывод: получатели пакетов быть доступны.
Второй вывод: при получении от датчика сообщения Я проснулся контроллер должен как можно скорей отправить датчику сообщение Спи дальше.
Третий вывод: датчик должен включать как можно меньше периферии и делать это как можно реже.
Рассмотрим жизненный цикл типичного Z-Wave датчика открытия двери, работающего на батарейках:
- Просыпается по прерыванию, проверяет состояние сенсоров
- В случае, если наступило событие, требующее отправки управляющих команд, включает радио-модуль и отправляет пакеты устройствам из списка ассоциированных с эти событием
- Ждёт доставки и засыпает
- Просыпается раз в N секунд (от 10мс до 2.55 секунд — это аппаратная особенность модуля Z-Wave) для проверки, счётчика просыпаний. Если он достиг заданной величины K, просыпается
- T = N*K равно периоду регулярных просыпаний, упомянутому ранее. Период прошёл, датчик отправляет пакет WakeUp Notification (Уведомление о пробуждении) контроллеру и ждёт
- Если за определённое время W (в зависимости от производителя, от 2 до 60 секунд) ничего не пришло, датчик засыпает
- Если пришли данные, обрабатывает их, отвечает, если надо, и сбрасывает счётчик времени W и ждёт опять
- Если пришёл пакет WakeUp NoMoreInformation (Спи дальше), то датчик мгновенно заканчивает текущие дела и засыпает
Давайте проведём расчёт срока жизни датчика при условиях периодического просыпания раз в час (T=3600 с) и отправке 20 событий открывания/закрывания в день (10 раз дверь открывали — реалистичное предположение для входной двери квартиры). Затраты за день составят 0.374 мА*с * (20 отправок по событию + 24 отправки по просыпанию) + 216 мА*с (сон) = 234 мА*с. Получается 34 года! На практике это значение значительно меньше, т.к. здесь мы не учли расхода на периферию чипа и срок службы батареек.
Теперь давайте поиграем разными параметрами.
Включение светодиода на секунду при каждой отправке события открывания (20 раз в день) изменить срок службы до 11 лет.
Представим, что датчик будет просыпаться не раз в час, а раз в 5 минут. Уже 24 года, а с горящим светодиодом (20 раз в день) 10 лет. Видно, как частые периодические просыпания существенно сократили срок жизни устройства от батареек. Хотя по сравнению с вкладом от светодиода это не существенно.
А что, если контроллер оказался выключенным? Теперь сообщение о просыпании не доставляется и датчик вынужден ждать W = 2 секунды до ухода назад в сон и мигать светодиодом 1 секунду для уведомления пользователя о проблеме. Тех же батареек хватит лишь на 2.5 года для при просыпании раз в час и всего на 3 месяцев при просыпании раз в 5 минут!
Очевидно, что в этих расчётах все времена более двух лет не реализуются из-за химических особенностей устройства батареек. Батарейки типа AA и AAA не способны работать более двух лет при постоянном питании устройства даже ничтожным током, несмотря на то, что ёмкости должно хватать. А вот всё, что меньше двух лет, уже станет ограничением по ёмкости.
FLiRS
Рассмотрим немного Часто Слушающие Устройства (FLiRS). Эти устройства просыпаются каждую секунду примерно на 5 мс, чтобы послушать, не посылают ли им специальный пакет WakeUp Beam. Если три часа сна требуют 27 мА*с, то FLiRS устройство потребит 1255 мА*с, что в 50 раз больше затрат на сон, но и в 200 раз меньше, чем при постоянном пребывании в режиме ожидания пакетов. Такие устройства обычно работают около 7-8 месяцев от комплекта батареек AAA. Однако производители стараются использовать более ёмкие батарейки, чтобы достичь времени работы более года.