Каталог статей

Главная » Все схемы » Схемы устройств на микроконтроллерах » Устройства на микроконтроллерах

Выбранная схема!!!


3620
Программируемый на неделю комнатный термостат.

Автор - Петлюк Игорь, Украина, г. Житомир.

Предлагаю вашему вниманию комнатный термостат для регулировки температуры в доме. Принцип этого устройства, как и в любого термостата основан на включении котла при понижении температуры и отключении при повышении. Управление котлом осуществляется через реле в термостате, подключенного на место перемычки для термостата в плате управления котлом (если замкнуто - значит есть запрос обогрева). 
Основным преимуществом данного термостата является возможность программирования его работы на неделю, наличие часов реального времени, энергонезависимая память параметров настроек и т.д.

Температуру измеряем DS18B20, МК - Atmega8, часы реального времени - DS1307. Дисплей LCD 16Х2. 
Основной дисплей:

Вид макетной платы без дисплея:

Принцип работы его таков:
Есть два температурных режима - повышенный (огонек на дисплее) и пониженный (луна). Они настраиваются в пункте меню - температуры. 
Для каждого дня недели существуют шесть временных интервалов. Каждый интервал может быть "пониженным" или "повышенным". 

Например: вы просыпаетесь в 7:00, значит настраиваете первый интервал примерно на 6:30 (для прогрева) и назначаете повышенный режим. Уходите на работу в 8:00 - настраиваете второй интервал на 8:00 и "пониженный". 
Приходите с работы в 18:00 - устанавливаете 5-й интервал (3-й и 4-й к примеру пропускаем, то есть устанавливаем также "пониженный" режим) на 17:30 и "повышенный". Ложитесь спать в 23:00 - устанавливаете 6-й интервал на 23:00 и "пониженный" (в холоде лучше сохранитесь :). 

Установленный интервал действует с начала установленного для него времени и до начала следующего интервала. При этом держится установленный для первого интервала режим. 
Помимо шести основных интервалов есть не настраиваемый нулевой. Он начинается в 00:00 каждого дня и длится до первого интервала. Режим для него считывается из интервала №6 предыдущего дня. Номер интервала показывается на дисплее до режима. 

Интервалы настраиваются в пункте меню - график:

Для каждого дня недели настраиваем свой график работы по желанию трудящихся. Выбор позиции кнопками влево/вправо. Установка повышенного режима только кнопкой вверх, пониженного - только вниз. Для сохранения нажимаем ОК (средняя). При переходе к след. дню предыдущий автоматически сохраняется. График работы хранится в EEPROM. 

Температурные режими настраиваем в пункте меню-температуры

Влево/вправо - выбор позиции, +/- - установка значений. При нажатии ОК сохраняются в EEPROM. Естественно температуру повышенного режима (огонек) выбираем выше пониженного (луна), иначе получим совсем обратный эффект. 

Часы настраиваются в пункте меню-дата/время

Влево/вправо - выбор позиции, +/- - изменение. В настройках даты учтена проверка на высокостный год, переполнение месяца (30-й или 31-й день). День недели настраивать не нужно, так как он вычисляется автоматически по дате. 

Можно также временно (или постоянно) изменить температуру уставки. Если в основном меню нажать кнопку +/- то появится диалоговое окно изменения температуры. Для временного изменения просто устанавливаем нужную температуру и нажимаем ОК. На дисплее в свою очередь вместо значка режима появляется стрелочка вверх или вниз, что соответственно означает повышение или понижение температуры в сравнении с текущей уставкой по графику. Данный режим прервется по переходу на следующий интервал, при вхождении в меню или обратной настройке на температуру уставки по программе. 
Если же установить режим <Р> вместо переводом в эту позицию клавишей влево или вправо и нажатием +, то установленный температурный режим будет длиться пока на главном дисплее не нажмем кнопку ОК. Флаг этого режима также сохраняется в EEPROM, поэтому режим сохранится и после отключения устройства от питания. 

Временное изменение температуры

Исходник для CV AVR v.2.04.4a прилагаю. Проект еще окончательно не "вылизан", хотя ошибок в работе последней прошивки пока не наблюдаю. Последняя версия заняла 90% памяти контроллера, поэтому возможностей для "апгрейда", например по погодному регулированию маловато. 
Схема в Протеусе ведет себя некорректно, поэтому по ней о работе устройства не судить (ну не хотелось ее отлаживать). 

И еще, реле управления выбрал, какое было под рукой, а под рукой было как раз реле с двумя обмотками на 5В и запоминанием положения. То есть для того чтобы перевести реле в другое положение, нужно подать напряжение на противоположную катушку. После снятия напряжение реле остается в последнем положении, поэтому реле на самом деле одно (в протеусе не нашлось такого), но с двумя катушками, которое управляется импульсами. 
Правильно собранное устройство запускается сразу. Нужно всего лишь настроить первый раз часы реального времени, так как без установки времени они запускаться не хотят.

Файлы:
Прошивка МК с исходником.




Категория: Устройства на микроконтроллерах | Добавил: brys99 (03.12.2011)
Просмотров: 7161 | Комментарии: 1 | Теги: Программируемый на неделю комнатный | Рейтинг: 0.0/0


Всего комментариев: 1
0
1 No4Nik   (11.01.2014 18:07)
Удачная конструкция! Собирал ее и на меге в корпусе TQFP и в DIP и с дисплеем разных производителей, - работает прекрасно! Жаль у меня нет коттеджа, что бы установить в комнату.

Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов! Подробно тут!
Жалоба

Пожалуйста оставьте свои комментарии !!!!

Имя *:
Email:
Код *:


ElectroTOP - Рейтинг сайтов
Copyright Zloy Soft (Company) © 2008 - 2016