Алгоритм энергосбережения на практике

Создан радио-модуль, включающий atmega129rfa1 с радиопередатчиком и датчик температуры, работающий от одной батарейки CR2022. Используется в качестве дополнения к датчикам движения, для включения освещения, для сбора информации о температуре

Если не выключать прибор, то батареи 200 мА хватает на 17 часов.

Нужно, чтобы модуль от батарейки 200 мА в обычных внешних условиях работал не менее года при неэкстремальном использовании.

Значит, необходимо применение не просто спящего режима, а «глубокого сна».

У микроконтроллеров имеются различные разные режимы сна и «способы пробуждения».

Важно, чтобы контроллер реагировал на команды сервера — значит, передатчик обязан быть активен — есть такой режим, когда контроллер спит, но «слушает» эфир на предмет сообщений для него и пробуждается, когда такие поступают — он не годится.

Что в таком случае выполнять. Ведь в порядке «полного сна», радиовещание выключено (т.е. МК уже ничего не станет принимать либо отдавать), и вывести его из данного распорядка, возможно только лишь согласно сигналу с наружного прерывания, ИЛИ согласно «собачьему таймеру» (Watch Dog), какой может функционировать как в порядке сбрасывания МК, так и в порядке вызова прерывания — вот он в таком случае нас и выручит!

И таким образом, с целью решения установленной миссии был сконструирован, отстроен и протестирован последующий метод:

1) МК все без исключения время располагается в порядке «глубокого сна» (power down mode).

2) При срабатывании наружного прерывания (перемена утверждения выключателя), МК пробуждается, отправляет известие серверу, приобретает доказательство способа и вновь укладывается в сон.

3) Т.к. нам надо осуществлять указания сервера, следует время от времени содержать радиовещание и слушать среда в объект уведомлений для МК. Устанавливаем Watch Dog в порядок прерывания с периодичностью 0.016 вплоть до 8 сек. (с целью наших потребностей довольно этапа в 8 сек). В прерывании прослушиваем среда, в случае если с целью MK ни капли не имеется, в таком случае вновь покрываемся в сновидение.

Воплотив метод в код, устройство (в целом их ряд) в настоящий период отработал более 378 суток. Избыток емкости для батареи 40 миллиампер — так что ещё станет функционировать. Порядок эксплуатации разумеется наиболее облегченный, нежели планировалось в обрисованном ранее порядке «обыкновенной эксплуатации» — однако такая жизнь, приготовлялись к наихудшему, рассчитывая в наилучшее.

Интересные записи