Главная » Микроконтроллеры
Призовой фонд
на октябрь 2021 г.
1. Рюкзак Mean Well
Компэл
2. Инвертор авто Mean Well 150 Ватт
Компэл
3. Термос MeanWell
Компэл
4. 100 руб.
От пользователей

Датчик температуры и влажности с адаптивной регулировкой яркости индикатора

Целью данного проекта является демонстрация способа реализации адаптивного управления яркостью семи сегментных светодиодных индикаторов. Система постоянно оценивает уровень освещенности при помощи дешёвого фоторезистора (LDR) и использует полученную информацию для регулировки яркости дисплея. Для наглядности этот способ применяется в цифровом измерителе температуры и относительной влажности, в котором яркость семи сегментных индикаторов адаптируется под окружающую среду. В этом проекте используются восьми сегментные светодиодные индикаторы, которыми управляет микросхема MAX7219. Температура окружающего воздуха и относительная влажность измеряются датчиком DHT11. В этом проекте используется 8-битный микроконтроллер PIC12F683 в восьми выводном корпусе. Автоматическая настройка яркости семи сегментных индикаторов повышает удобность чтения в любых условиях.

Датчик температуры и влажности с адаптивной регулировкой яркости индикатора

Теория и схема

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

Автоматическая регулировка яркости это замкнутая система, которая оценивает уровень освещенности  и соответственно регулирует яркость дисплея. Фоторезистор (LDR) и постоянный резистор 10K соединены последовательно  + питания и GND, т.е. они образуют делитель напряжения, как показано на схеме. Обычно сопротивление фоторезистора (LDR) составляет менее 1 кОм на ярком свету и может возрасти до нескольких сотен кОм в темноте. Таким образом, напряжение на 10K резисторе возрастает пропорционально освещенности. В этом проекте напряжение на нем может изменяться от 0,1В в темноте до более чем 4В на свету.  Микроконтроллер PIC12F683 считывает этот аналоговый сигнал через AN3 (GP4) вывод АЦП, а затем посылает соответствующие сигналы драйверу семи сегментных индикаторов MAX7219 для регулировки яркости семи сегментных светодиодных индикаторов.

Схема устройства

Микросхема MAX7219 обеспечивает последовательный интерфейс для управления семи сегментными светодиодными индикаторами с общим катодом до 8 символов и требует всего 3 вывода микроконтроллера. Микросхема имеет BCD декодер, драйвер сегментов и цифр и статическое ОЗУ 8 × 8 для хранения значения цифр. Ток сегмента для всех индикаторов устанавливается одним внешним резистором между контактом ISET и питанием. Тем не менее, он также обеспечивает цифровой контроль яркости (16 шагов от минимального до максимального) через внутренний ШИМ. В этом проекте выводы GP0, GP1 и GP2 PIC12F683 используются для управления LOAD, DIN и CLK сигнальными линиями MAX7219.

Плата устройства

Для измерения температуры и относительной влажности используется датчик DHT11. Он может измерять температуру от 0 до 50°C с точностью ± 2°С и относительную влажности воздуха от 20 до 95% с точностью ± 5%. Датчик имеет полностью откалиброванные цифровые выходы для двух измерений. Он имеет свой собственные 1-Wire протокол, и следовательно, связь между датчиком и микроконтроллером не возможна через обычный периферийный интерфейс. Протокол должен быть заложен в прошивке микроконтроллера с точными расчетами таймингов требуемых датчиком.  PIC12F683 использует вывод GP5 для взаимодействия с DHT11.

Устройство в сборе

Для облегчения сборки макета проекта я использую свою отладочную плату PIC12F и мой последовательный 8-разрядный семи сегментный светодиодный индикатор.

Программа

Прошивка для этого проекта написана на C и скомпилирована в MikroC Pro 5.30 для PIC. Подпрограммы для инициализации MAX7219 и отправки цифр написаны просто и понятно для того, чтобы их легко можно было повторить на других языках программирования. MAX7219 управляет яркость дисплея с помощью своего ШИМ. Выход ШИМ управляется нижними полубайтами (D3-D0) регистра яркости (адрес 0x0A) и имеет 16 уровней яркости. Нулевое значение полубайтов дает минимальную яркость,  а когда все полубайты имеют значение 1, яркость становится максимальной. Для автоматической регулировки яркости, выход с АЦП с фоторезистором (LDR) сокращен до 0-10 (11 уровней яркости) путем простого деления значения 10-разрядного АЦП на 100. Затем используется таблица соответствия значений полубайтов уровню яркости. Температура отображается в градусах Фаренгейта (F), относительная влажность в процентах (Р).

Скачать исходный код и HEX файлы можно внизу статьи.

Микроконтроллер PIC12F683 работает на частоте 4 МГц от внутреннего генератора. MCLR и Power-On Timer включены. Настройка конфигурации фьюзов показана на рисунке.

Фьюзы

Проект был опробован при различном уровне освещенности, от темноты до яркого света, и всё время цифры были удобны для чтения и приятны для глаз.  Если Вы хотите использовать такое или подобное устройство в спальне, вам не придется беспокоиться о выключении его на ночь. Дисплей автоматически будет достаточно тусклым, чтобы не мешать сну. Хотя таблица яркости обеспечивает удовлетворительную регулировку уровня яркости в различных условиях освещения, вы можете изменять эти значения для поиска наиболее удобных для вас.

Оригинал статьи

Прикрепленные файлы:

Теги:

Касьянов А. Опубликована: 2012 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (1) | Я собрал (0) | Подписаться

0
Павел #
Как поменять Фаренгейты на Цельсии?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Pickit 2 - USB-программатор PIC-микроконтроллеров
Pickit 2 - USB-программатор PIC-микроконтроллеров
Конструктор УНЧ 60 Вт на LM3886 200 Вт усилитель класса D на IRS2092
вверх