Charalampos / Haris Andrianakis, Греция
В статье мы рассмотрим устройство, которое предназначено для установки в помещении для отображения внутренней и внешней температуры и относительной влажности на двухстрочном символьном ЖК индикаторе. Отличительной особенностью схемы является использование цифрового датчика температуры и относительной влажности DHT-11 (DHT-22), который подключается к микроконтроллеру по интерфейсу 1-Wire.
Сразу хочется отметить, что печатная плата и конструкция были разработаны с расчетом на то, чтобы сделать компактное устройство, крепящееся на стене.
Управление устройством осуществляется с помощью одной кнопки. Программа для микроконтроллера написана на Си, снабжена комментариями, и пользователи могут модифицировать ее под свои конкретные задачи, или же расширить функционал. Для управления ЖК индикатором используется готовая библиотека Peter Fleury (архив для скачивания доступен в разделе загрузок). Дополнительно, данные могут отображаться в градусах Цельсия или Фаренгейта. Имеется несколько режимов управления подсветкой индикатора.
Также стоит отметить еще один важный момент: устройство может осуществлять беспроводную передачу данных по протоколу Bluetooth посредством специального модуля (опционально).
Принципиальная схема
С точки зрения схемотехники устройство несложное, и мы рассмотрим отдельно составляющие элементы.
Источник питания термометра выполнен на базе интегрального регулятора напряжения LM7805 в стандартном включении (с соответствующими фильтрующими конденсаторами). Регулятор напряжения 3.3 В AMS1117 включен в состав схемы, но применяться может в случае использования Bluetooth модуля, т.к. зачастую питание таких модулей 3.3 В.
Индикатор используемый в устройстве – это стандартный двухстрочный индикатор на контроллере HD44780. Транзистор BC547 предназначен для управления подсветкой индикатора логическими сигналами с микроконтроллера или же ШИМ сигналом с микроконтоллера. Резистор R3 ограничивает ток через базу транзистора, резистор R1 подтягивает базу к нулевому потенциалу.
Основа термометра – микроконтроллер Atmel ATmega8, работающий на частоте 8 МГц и управляющий все окружающей периферией.
Датчик DHT-11 – это недорогой датчик температуры и относительной влажности, используемый в проекте в качестве уличного датчика. Он не отличается высоким быстродействием и точностью, однако находит свое применение в радиолюбительских проектах из-за своей невысокой стоимости. DHT-11 состоит из емкостного датчика влажности и термистора. Также, датчик содержит в себе простой АЦП для преобразования аналоговых значений влажности и температуры.
Основные характеристики:
- низкая стоимость;
- напряжение питания 3 В - 5 В;
- предача данных по 1-Wire шине на расстояния до 20 м;
- определение влажности 20-80% с 5% точностью;
- максимальный потребляемый ток 2.5 мА;
- определение температуры 0…50° с точностью 2%;
- частота опроса не более 1 Гц (не более раза в 1 с);
- размеры 15.5 × 12 × 5.5 мм;
Следует отметить, что в продаже можно найти датчик DHT-22, который имеет тот же интерфейс, но лучшие характеристики.
Датчик подключается к микроконтроллеру по шине 1-Wire (на схеме кннектор JP3) с использованием подтягивающего резистора по линии данных и блокирующего конденсатора по питанию.
В качестве внутреннего датчика используется широко распространенный аналоговый датчик температуры LM35 IC5, который подключается к каналу 1 АЦП микроконтроллера.
Коннектор J1 интерфейса внутрисхемного программирования микроконтроллера позволяет быстро сменить программный код или обновить ПО. Для подключения термометра по интерфейсу UART используется коннектор JP1. Кнопка управления SW1 подключена ко входу внешнего прерывания микроконтроллера, данный вход подтянут к питанию внутренним резистором порта.
Bluetooth модуль для беспроводной передачи данных, на схеме обозначен как IC3, GP-GC021 также подключается к интерфейсу UART микроконтроллера и позволяет передавать данные на ПК, мобильный телефон или web-сервер. На печатной плате предусмотрено место для установки модуля. В разделе загрузок имеется описание модуля, процесс взаимодействия и команды.
ЖК индикатор устанавливается на лицевую часть печатной платы в коннектор, скрываяя, таким образом, установленные на основной платее компоненты, и мы получаем компактное устройство. Место для установки Bluetooth модуля находится на тыльной стороне печатной платы (см. фото платы).
Внешний вид готовой печатной платы для термометра
Рисунок печатной платы в САПР Eagle
Плата с установленными компонентами
Плата с установленным Bluetooth модулем
Загрузки
Принципиальная схема и печатная плата (Eagle), ПО (исходный код, прошивка) – скачать
Библиотека для работы с ЖК индикатором на контроллере HD44780 – скачать
Техническое описание на Bluetooth модуль GP-GC021 – скачать