Оглавление:

Монитор температуры Arduino с низким энергопотреблением: 4 шага
Монитор температуры Arduino с низким энергопотреблением: 4 шага

Видео: Монитор температуры Arduino с низким энергопотреблением: 4 шага

Видео: Монитор температуры Arduino с низким энергопотреблением: 4 шага
Видео: Сдвиговый регистр и семисегментный индикатор 2024, Июль
Anonim
Image
Image
Получите детали
Получите детали

В этом руководстве мы создаем еще один датчик температуры, использующий датчик температуры DS18B20. Но этот проект другой. Срок службы батареи составляет почти 1,5 года! Да! Используя библиотеку с низким энергопотреблением Arduino, мы можем поддерживать этот проект в течение длительного времени. Продолжайте читать, чтобы узнать больше!

Шаг 1. Получите детали

Детали, необходимые для создания этого проекта, следующие:

ATMEGA328P ▶

ЖК-дисплей Nokia 5110 ▶

DS18B20 ▶

Фоторезистор ▶

Конденсаторы ▶

Кристалл 16 МГц ▶

Резисторы ▶

Мультиметр Mastech 8268 ▶

Общая стоимость проекта на момент написания этой инструкции составляет менее 10 $

Шаг 2: соедините все части

Соединить все части
Соединить все части
Соединить все части
Соединить все части

Теперь, когда у вас есть все части, давайте соединим их вместе в соответствии со схематической диаграммой.

Ключом к низкому энергопотреблению в этом проекте является использование голого чипа ATMEGA вместо платы Arduino. Поскольку платы Arduino используют регулятор напряжения для работы с множеством разных уровней напряжения, им требуется больше мощности. Этот регулятор нам не нужен, так как мы питаем наш проект от батареек 3АА!

В этом проекте я использую ЖК-дисплей Nokia 5110, отличный дисплей, которому требуется ток всего 0,2 мА при выключенной подсветке. Впечатляющий!

Мы также используем фоторезистор для обнаружения света. Итак, если сейчас ночь, мы отключаем ЖК-дисплей в целях экономии энергии.

Еще один маленький секрет - это библиотека LowPower. Когда мы не измеряем температуру, мы переводим Arduino в спящий режим с помощью библиотеки LowPower. Когда голая микросхема ATMEGA находится в спящем режиме, ей требуется ток всего 0,06 мА! Это означает, что микросхема ATMEGA может работать более 4 лет от 3 батареек AA!

Таким образом, благодаря продуманному дизайну программного обеспечения мы добиваемся хорошего времени автономной работы. В активном состоянии микросхеме ATMEGA требуется около 10 мА тока. Итак, наша цель - заставить его спать большую часть времени. По этой причине мы просыпаем его только тогда, когда нам нужно измерить температуру, каждые две минуты. Когда мы будим чип ATMEGA, мы делаем все как можно быстрее и сразу же снова ложимся спать.

Алгоритм

Проект просыпается каждые две минуты. Первое, что он делает, это включает фоторезистор, записывая HIGH на цифровой контакт 6. Он считывает значение с фоторезистора и определяет, день сейчас или ночь. Затем он записывает LOW на цифровой вывод 6, чтобы отключить фоторезистор и сохранить поры. Если сейчас ночь, мы отключаем ЖК-дисплей, если он включен, и сразу ложимся спать на две минуты, не считывая температуру. В этом нет необходимости, так как дисплей выключен. Таким образом мы сохраняем еще больше энергии. Если света достаточно, мы включаем ЖК-дисплей, если он был отключен, считываем температуру, отображаем ее на экране и ложимся спать на две минуты. Этот цикл продолжается вечно.

Шаг 3: измерения

Измерения
Измерения
Измерения
Измерения
Измерения
Измерения
Измерения
Измерения

Как вы можете видеть из изображений, когда проект находится в спящем режиме и дисплей включен, ему требуется ток 0,26 мА, что очень мало, если учесть тот факт, что у нас есть дисплей!

Когда проект измеряет температуру и обновляет дисплей, требуется около 11,5 мА

Наконец, когда темно и ldr отключил ЖК-дисплей Nokia 5110, нам нужно всего 0,07 мА, и это здорово!

Срок службы батареи

Чтобы рассчитать время автономной работы проекта, я создал простой файл Excel. Я ввел измерения с мультиметра, и, как вы можете видеть, мы получаем время автономной работы более 500 дней, если мы измеряем температуру каждые 2 минуты! Это с использованием батарей 3AA емкостью 2.500 мА. Конечно, если вы используете более качественные батареи, такие как литий-ионный аккумулятор емкостью 3,400 мАч, вы можете запустить свой проект более двух лет!

Вы можете скачать файл Excel по этой ссылке.

Шаг 4: Код проекта

Код проекта
Код проекта
Код проекта
Код проекта

Код проекта очень простой. В этом фрагменте кода мы используем некоторые библиотеки. Мы используем следующие библиотеки:

  • Библиотека с низким энергопотреблением:
  • Библиотека датчиков температуры DS18B20:
  • Библиотека ЖК-дисплея Nokia 5110:

Код проекта состоит из двух файлов. В первом файле есть код, который работает на Arduino. Следующий файл содержит некоторые двоичные данные для значков, отображаемых основной программой. Вам необходимо поместить оба файла в папку проекта для правильной компиляции кода.

Код очень простой. Вы можете найти его ниже. Вся магия происходит в функции sleepForTwoMinutes. В этой функции мы переводим Arduino в режим глубокого сна. Проблема в том, что при использовании сторожевого таймера максимальное время, в течение которого мы можем перевести Arduino в спящий режим, составляет 8 секунд. Итак, мы вставляем это в цикл 15 раз и получаем желаемый двухминутный интервал.

Надеюсь, вам понравился этот проект. До скорого!

Рекомендуемые: