Энергосбережение
Энергосбережение
Добрый день! Есть atmega8A\atmega168A (на выбор), надо наладить энергопотребление. Есть ds18b20, статичный LCD (там меандр надо на 50Гц). Так вот устройство разряжает пару батареек буквально за несколько часов. Я заметил, что 9.8с из 10с МК ждет (delay_ms). В цикле, который инвертирует сигнал стоит delay_ms(10), можно ли усыпить МК на это время?. Частота, к сожалению, должна быть >= 1МГц из-за шины 1-wire.
- Реклама
- НАПАЛМ
- Это не хвост, это антенна
- Сообщения: 1314
- Зарегистрирован: Пт ноя 27, 2009 19:47:13
- Откуда: Казань
Re: Энергосбережение
На время, в течение которого у вас не происходит обещения с датчиком, можно организовать задержку на таймере и спать в режиме Idle, пока не натикает нужное время задержки.
Еще есть такой момент: не знаю как для модернизированных версий мег, а у старой тайни2313 аналоговый компаратор был включен по умолчанию. Для уменьшения потребления его нужно отключать, если не используется.
Еще есть такой момент: не знаю как для модернизированных версий мег, а у старой тайни2313 аналоговый компаратор был включен по умолчанию. Для уменьшения потребления его нужно отключать, если не используется.
-
uk8amk
- Поставщик валерьянки для Кота
- Сообщения: 2222
- Зарегистрирован: Вт ноя 27, 2007 11:32:06
- Откуда: Tashkent
Re: Энергосбережение
В программе, оптимизированной на энергопотребление, необходимо избегать всяких delay_us и тем более delay_ms. Для уменьшения потребления генерировать события по часовому таймеру(TIM2). Использовать максимально глубокие режимы сна с отрубанием "лишней" периферии.
В дальнейшем переходить на МК со встроенным контроллером LCD дисплея.
В дальнейшем переходить на МК со встроенным контроллером LCD дисплея.
- eess9
- Вымогатель припоя
- Сообщения: 672
- Зарегистрирован: Ср фев 29, 2012 01:58:32
- Откуда: Харьков, Украина
Re: Энергосбережение
Это уже ARM серия.uk8amk писал(а):В дальнейшем переходить на МК со встроенным контроллером LCD дисплея.
Если батарейки разряжаются всего за пару часов, подозреваю что у вас включена подсветка индикатора. Отключите ее нафиг, светодиоды едят в ней просто феноменально много. Включайте ее по кнопке, например.
В таком устройстве без сна, батарейки должны умирать за дни, а не часы.
Надо бы еще минимизировать потребление дисплея. Спящие режимы у него есть? Если нет, рубите ему питание через полевик, например.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Энергосбережение
необязательно - ATmega169A/PA/329A/PA/3290A/PA/649A/P/6490A/P a complete on-chip LCD controller with internal contrast controleess9 писал(а):Это уже ARM серия
еще MSP430, STM8L...
- Реклама
- eess9
- Вымогатель припоя
- Сообщения: 672
- Зарегистрирован: Ср фев 29, 2012 01:58:32
- Откуда: Харьков, Украина
Re: Энергосбережение
Не знал, спасибо за информацию. Пригодитсяoleg110592 писал(а): ATmega169A/PA/329A/PA/3290A/PA/649A/P/6490A/P
Re: Энергосбережение
Световой подсветки нет. Но я не понимаю, что у меня не так. Вот потребление:
DS18b20 = 1mA*h (правда при напряжении 5В, у меня 3В) согласно даташиту
ATMEGA8A = 6mA*h (8MHz, опять же при напряжении 5В)
74HC595 (сдвиговый регистр) там вообще потребление в микроамперах.
У дисплея неизвестно потребление.
Расчеты:
Но у меня батарейка разряжается до 2.7В, потом устройство выключается. И я нашел еще такое тестирование:
"Время разряда до уровня 2,7 В
450 ч при 21°C и нагрузке 6,5 КОм
1100 ч при 21°C и нагрузке 15 КОм"
Т.е коэффициент из этого следует 14.04, который определяет зависимость между кол-во часов и сопротивлением. У меня температура 19.9, а сопротивление:
R=U/I; R=3В/((7+x)*10^-3)А;
C учетом коэффициента можно высчитать потребление неизвестного:
14.04*3ч=R => x=64мА.
Из расчетов следует, что на дисплей и всякие погрешности (сопротивление дорожек, чуть подсевшие батарейки (хотя совершенно новую вставил, из коробки) итд..) уходит 65мА. Но ведь так не должно быть, верно? Я понимаю, что необходимо уменьшить тактовую частоту, хотя бы до 4МГц, но все равно слишком большое потребление получается.
DS18b20 = 1mA*h (правда при напряжении 5В, у меня 3В) согласно даташиту
ATMEGA8A = 6mA*h (8MHz, опять же при напряжении 5В)
74HC595 (сдвиговый регистр) там вообще потребление в микроамперах.
У дисплея неизвестно потребление.
Расчеты:
Спойлер
По номинальной емкости батареи: 220мА*ч/(1+6+x)мА=3ч => x=66. Где 220 - емкость батареи, 3 - часа работы устройства (3ч 9мин, если быть точнее - это установлено опытным путем).Но у меня батарейка разряжается до 2.7В, потом устройство выключается. И я нашел еще такое тестирование:
"Время разряда до уровня 2,7 В
450 ч при 21°C и нагрузке 6,5 КОм
1100 ч при 21°C и нагрузке 15 КОм"
Т.е коэффициент из этого следует 14.04, который определяет зависимость между кол-во часов и сопротивлением. У меня температура 19.9, а сопротивление:
R=U/I; R=3В/((7+x)*10^-3)А;
C учетом коэффициента можно высчитать потребление неизвестного:
14.04*3ч=R => x=64мА.
- eess9
- Вымогатель припоя
- Сообщения: 672
- Зарегистрирован: Ср фев 29, 2012 01:58:32
- Откуда: Харьков, Украина
Re: Энергосбережение
Мультиметр у вас в хозяйстве имеется? Берете его в режиме амперметра и меряете потребление всей платы. Дальше убираете поочередно датчик, индикатор и контроллер. Определяете какие элементы потребляют больше чем надо. Короче, стандартный поиск виновного.
- Z_h_e
- Собутыльник Кота
- Сообщения: 2708
- Зарегистрирован: Сб май 14, 2011 21:16:04
- Откуда: г. Чайковский
Re: Энергосбережение
zepar, мы же с Вами уже общались. Я Вам неоднократно предлагал измерить фактический ток каждого модуля схемы. Я так понимаю, Вы это так и не сделали? Болтать можно бесконечно.
Потребление DS18b20 1мА , только в активном состоянии. То есть за час будет зависеть от частоты ее использования и разрядности измеряемой температуры. Уменьшив частоту замеров и точность можно снизить потребление.
Потребление МК на 1МГц и 3В чуть больше 1мА. В даташите есть графики потребления. Но это потребление ядра МК. Сдвиговый регистр вроде до 80мкА.
Если у Вас схема потребляет больше расчетной и Вы уверены в расчетах, то наверное у Вас ошибка в схеме (предоставить Вы ее отказались, назвав это формальностью), ну или в прошивке. Может так оказаться что у Вас модуль битый и потребляет лишнего, сопля в плате, ошибка в трассировке и т.д.
Может уже пора измерить уже что-нибудь?
Потребление DS18b20 1мА , только в активном состоянии. То есть за час будет зависеть от частоты ее использования и разрядности измеряемой температуры. Уменьшив частоту замеров и точность можно снизить потребление.
Потребление МК на 1МГц и 3В чуть больше 1мА. В даташите есть графики потребления. Но это потребление ядра МК. Сдвиговый регистр вроде до 80мкА.
Если у Вас схема потребляет больше расчетной и Вы уверены в расчетах, то наверное у Вас ошибка в схеме (предоставить Вы ее отказались, назвав это формальностью), ну или в прошивке. Может так оказаться что у Вас модуль битый и потребляет лишнего, сопля в плате, ошибка в трассировке и т.д.
Может уже пора измерить уже что-нибудь?
Re: Энергосбережение
Мне пока нужно сойтись с расчетами на практике, потом только оптимизация. Амперметр показывает 22мА, ну никак не 66мА. А у датчика DS18b20 1мА в активном режиме. По отдельности мерить не могу, так как элементы впаяны. Ну никак не может получатся 66мА. Схему приложу.
- Вложения
-
- Project.zip
- (514.7 КБ) 142 скачивания
- eess9
- Вымогатель припоя
- Сообщения: 672
- Зарегистрирован: Ср фев 29, 2012 01:58:32
- Откуда: Харьков, Украина
Re: Энергосбережение
22мА, с учетом драйвера дисплея, похоже на правду. Ошибка в расчетах или начальный данные расчета отличаются от реальных в вашей схеме.zepar писал(а):Амперметр показывает 22мА, ну никак не 66мА.
Извините, конечно, но полной схемы в архиве нет. Недоделка в Proteus и файл разводка.png, который улыбает.zepar писал(а):Схему приложу.
Видимо, спрашивать у вас что такое схема бессмысленно, поэтому вот вам наводящие определение:
Схема электрическая принципиальная – схема, определяющая полный состав элементов и связей между ними и дающая детальное представление о принципах работы изделия.
Re: Энергосбережение
zepar Что-то у Вас не так.
У меня термометр (ATmega8515(внутренний RC 1МГц) ITS0803 DS18B20 паразитное питание) в активном режиме 1,4 мА при напряжении 3V. В ожидании <2мкА.
У меня термометр (ATmega8515(внутренний RC 1МГц) ITS0803 DS18B20 паразитное питание) в активном режиме 1,4 мА при напряжении 3V. В ожидании <2мкА.
Спойлер
-
uk8amk
- Поставщик валерьянки для Кота
- Сообщения: 2222
- Зарегистрирован: Вт ноя 27, 2007 11:32:06
- Откуда: Tashkent
Re: Энергосбережение
Для управления многосегментными стекляшками необходимы напряжения сложной формы. На простых МК их можно получить резисторной матрицей. Интересно как там с током утечки через неё.



