Цифровой программируемый термостат на AVR

Автор: | 22.03.2015

LCD_screen_1602

Данный термостат разрабатывался как универсальный для применения в максимально возможных конфигурациях. Устройство состоит из микроконтроллера AtMege8, дисплея 1602, датчика DS18B20, пары кнопок и нескольких резисторов.  Его основные характеристики:

  • Работает в диапазоне от -50 до 50 градусов Цельсия;
  • 1 Датчик;
  • 2 Независимых настраиваемых канала управления;
  • Энергонезависимая память для сохранения всех параметров.

принцип работы термостата

На стартовом дисплее отображается 3 параметра, статус контролирования нагрузкой 1 HOT, нагрузкой 2 COLD и текущая температура на датчике. Если датчик дает сбой три раза подряд, то на дисплей выводится сообщения «Error».

Нажав кнопку меню мы попадаем в настройки первого плеча нагрузки HOT, где можно включить или отключить контроль, выставить температуру удержания, и дельту удержания. Нагрузка включается если температура опускается ниже температуры удержания.

Аналогично для плеча два COLD. Только нагрузка включается если температура поднимается выше температуры удержания.

Принципиальная схема универсального термостата на AtMega8

Параметры такие как статус управления плечом нагрузки (ON/OFF), температура удержания (t), и точность  удержания (dt) записываются в энергонезависимую память и считываются от туда при включении устройства.

Скачать  исходники для  Code Vision AVR, симуляцию в Proteus,  а так же скомпилированную прошивку можно по ссылке —  Скачать (Зеркало)

Fuse bit необходимо устанавливать на внутренний тактовый генератор в 8 мГц.:

  • hight fuse: 0xD9
  • low fuse: 0xE4

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *