РадиоКот :: Таймер-термостат для управления отоплением
Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Бытовая техника >

Теги статьи: Добавить тег

Таймер-термостат для управления отоплением

Автор: Шабаров Андрей aka htscooter
Опубликовано 31.08.2012
Создано при помощи КотоРед.
Участник Конкурса "Поздравь Кота по-человечески 2012!"

Описание

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

  * Номер цифрового датчика, с которого учитывается температура для управления каналом.

  * Работа канала на нагрев или охлаждение.

  * 6 отметок времени (точность установки до минуты). Каждая метка времени в свою очередь имеет  следующие настройки:

         - состояние канала нагрузки (включено/выключено);

         - верхний предел температуры (точность установки 0,1 оС);

         - нижний предел температуры (точность установки 0,1 оС).

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

     Дата, время и температура датчиков выводится на ЖК индикатор, состояние выходов отображается светодиодами. Внешний вид термостата показан на рис.1 и рис.2.

Рис.1 Общий вид

                 
Рис.2 Вид внутри

     
Рис.3 Процесс сборки термостата и пускателей в шкаф

     Диапазон измеряемых температур определяется параметрами цифрового датчика температуры и составляет от -50 °С до +125 °С. Условия эксплуатации самого термостата достаточно стандартны – температура окружающей среды от +5 до +40 °С при влажности воздуха не более 80%. Допускается непосредственное подключение нагрузки, потребляющей не более 2А при напряжении до 250В переменного тока (ограничение обусловлено шириной дорожек печатной платы). Для более мощной нагрузки следует использовать мощные контакторы/пускатели, обмотки которых запитываются через реле термостата, например как на рис.3. Часы в данном устройстве выполнены на отдельной микросхеме , которая самостоятельно ведет подсчет времени суток, дней недели, месяца и года, и имеет собственное аварийное питание (батарейка на рис.2), т.е. при пропадании питания термостата показания часов не сбиваются и не пропадают. Точность часов зависит от примененного кварца и качества изготовления печатной платы (отсутствие флюса и т.п.). В работе термостата используется только текущее время суток, дата не используется. Корректная работа датчиков температуры возможна при длине проводов подключения до 30м, но, при наличии помех, эта цифра будет существенно меньше. В случае если какой-то датчик не определился, привязанный к нему канал нагрузки отключится вне зависимости от остальных своих настроек.
     Принцип управления нагрузкой сугубо релейный, то есть нагрузка может быть или включена, или выключена, никаких ШИМов и прочего. На рис.4 показана зависимость состояния канала нагрузки от температуры датчика.


Рис.4 Зависимость состояния канала нагрузки от температуры датчика

 Схемотехника и детали

     Принципиальная схема показана на рис.5


Рис.5 Принципиальная схема


     Основой термостата является микроконтроллер ATmega32A, часы/календарь реализованы на микросхеме DS1307, работающей по интерфейсу I2C. Датчики температуры – DS18B20. Подключения микросхем выполнены стандартно, согласно даташитам, все микросхемы и рассыпуха выбраны в SMD исполнении чтобы уместиться в габаритах печатной платы (ну и чтоб плату меньше сверлить :) ). Микроконтроллер тактируется от внешнего кварца 14,7456 Мгц. Эта частота была выбрана для упрощения дальнейшей реализации связи термостата с ПК по UARTу. Для этого же на печатной плате предусмотрены места для микросхемы преобразователя интерфейсов USB to UART FT232RL и разъема USB. Также предусмотрено место для установки микросхемы внешней памяти типа 24Схх (связь с ПК и использование внешней памяти в данной версии прошивки не реализовано). Что касается подключения датчиков температуры, следует отметить стабилитроны на линии данных и подстроечный резистор подтяжки линии данных, которые желательно поставить в случае длинных линий к датчикам температуры. Стабилитроны служат роль защиты портов микроконтроллера от возможных помех, а подстроечный резистор поможет обеспечить корректный обмен данными между микроконтроллером и датчиком температуры, если провода подключения будут чересчур длинные. Но уменьшением сопротивления подтяжки линии данных не следует увлекаться, к тому же это не спасет, если на провода к датчикам температуры будут наводиться сколь-нибудь заметные помехи. 
     Термостат выполнен на двух односторонних печатных платах. На плате индикации расположены ЖКИ 16х2, кнопки управления и светодиоды индикации состояния выходов, на основной плате размещено всё остальное. Печатные платы соединяются между собой с помощью 10-ти и 14-ти пиновых разъемов под плоские шлейфы типа BH, обозначенных на схеме и печатной плате как «LCD» и «LED». Разъем XS1 служит для отключения питания реле при программировании микроконтроллера, XS2 – для подключения частотомера к выходу SQW/OUT микросхемы DS1307 с целью подстройки рабочей частоты. Для подстройки использовались smd конденсаторы малой емкости (1-5 pF), включенные между ногами часового кварца и землей. Такая подстройка возможна, если без конденсаторов часы спешат, так как конденсаторы уменьшают частоту генерации кварца. Часовой кварц для микросхемы часов - 32768 Гц и имеющий емкость 12,5 pF, это позволит получить более точный ход часов. Очень хороший вариант - кварц с неисправных или ненужных материнских плат, оттуда же можно взять и батарейку.
     Датчики температуры подключаются через разъемы типа 6P4C (или проще говоря RJ-12, телефонные линейные). Выбор именно таких разъемов сделан для упрощения процесса монтажа термостата, а именно уменьшение количества паяемых соединений. На рис.2, кстати, показан первый вариант печатной платы с немного другими разъемами - межплатные типа PLS и для датчиков - 4P4C (RJ-11, телефонные трубочные), расположенные вертикально (не очень удобно, но других на тот момент не было). Нормально разомкнутые контакты реле и подвод питающего напряжения выведены на клеммную колодку с шагом 7,5 мм.
     Применненый ЖКИ - RC1602B-GKY-CSX фирмы Raystar. Его можно заменить на любой ЖКИ 16х2 со стандартным контроллером HD44780, но нужно смотреть на конкретное его исполнение, возможно придется переделывать плату индикации. 
     Транзисторы можно применить практически любые N-P-N типа или полевые с управлением от логического уровня. Диодный мост - на ток 1А, можно и меньше, просто такой был. Реле - самые обычные, обмотка которых расчитана на 12 вольт. Можно поставить и пятивольтовые, но тогда нужно будет применить другой стабилизатор на 5 вольт, MC34063 может не справиться с нагрузкой и выключиться от перегрева (такое случилось в 6-ти канальном термостате с LED индикаторами, пришлось менять на обычную кренку с радиатором).
     Источником питания термостата является расположенный на плате трансформатор типа ТПП-112 с напряжением вторичной обмотки 9В. По входу трансформатора стоят помехоподавляющие элементы и предохранитель. Выпрямленное нестабилизированное напряжение 12В идет на реле, управляющие нагрузкой и импульсный понижающий преобразователь, выполненный на м/сх MC34063, рассчитанный на выходное напряжение 5В. Помехоподавляющий конденсатор по входу трансформатора обязательно должен быть специального типа – Х2 или Х1. Если такого нет, то лучше ничего вместо него не ставить. В принципе можно обойтись и без помехоподавляющих элементов, но тогда термостат должен быть запитан не от силовой фазы, иначе помехи при работе/включении мощных электроприборов могут повлиять на работу термостата. Если он зависнет, то ничего смертельного не случится, сработает сторожевой таймер, и термостат перезапустится, но и хорошего в этом тоже ничего нет.
     Собран термостат в пластиковом корпусе Z-46A, который относительно просторный и его можно удобно закрепить на вертикальной поверхности.

Настройка

     Управляется и настраивается термостат с помощью трех кнопок. В рабочем режиме кнопками  “←(-)” (далее «влево») и “(+)→” (далее «вправо») осуществляется перебор по кольцу показаний датчиков температуры. В режимах меню кнопками «влево» и «вправо» происходит навигация по пунктам меню или изменение какого-либо параметра, кнопкой «ВВОД» подтверждается изменение параметра или подтверждение перехода по пунктам меню. Термостат имеет два вида меню для настройки – сервисное (для настройки термостата при первом включении) и рабочее. Вход в сервисное меню происходит при нажатии кнопки «ВВОД» в течение первых двух секунд после включения/сброса (пока на ЖКИ отображается заставка с названием и версией прошивки). В сервисном меню настраиваются следующие параметры:

    • количество опрашиваемых датчиков температуры, от 1 до 8;
    • количество задействованных каналов управления нагрузкой, от 1 до 8;
    • время до гашения подсветки, 0-240 секунд, от момента последнего нажатия кнопок;
    • сброс часов в дефолтное значение.

Последний пункт сервисного меню выполняет не только сброс значения часов и даты, но и начальную инициализацию и настройку микросхемы часов, поэтому при первом включении выполнить сброс часов необходимо для корректной работы термостата (выход SQW/OUT настраивается на частоту 1 Гц).  

Вход в рабочее меню происходит кнопкой «ВВОД» из рабочего режима термостата. Структура меню представлена на рис.6.


Рис.6 Структура меню

     Сохранение параметров в подменю настройки каналов реле происходит после изменения значения и нажатия кнопки «ВВОД», после чего происходит переход к следующему параметру для настройки. Сохранение даты и времени в подменю настройки даты/времени происходит после изменения последнего параметра (минуты) и нажатия кнопки «ВВОД». После чего следует выход в основное меню. Выход из основного меню в рабочий режим осуществляется выбором пункта меню «Выход» и его подтверждением кнопкой «ВВОД».
     Минимальная разница между верхним и нижним пределами температуры, которую можно сделать -  0,1 °С. Если значение верхнего предела будет равно или меньше нижнего, то поведение термостата будет непредсказуемым, такие настройки недопустимы. Значение верхнего порога температуры должно быть всегда больше, чем значение нижнего. Метки времени также должны идти последовательно. Так, например установка первой метки времени на 8 часов утра, а второй - на 6 часов утра является неверной. Поскольку в управляющей программе "защиты от дурака" нет, нужно быть внимательным при настройке.

Прошивка, фьюзы

Прошивка написана с помощью BASCOM AVR. Скриншот фьюзов для AVR Studio показан на рис.7


Рис.7 Скриншот фьюзов для AVR Studio

     Если на словах - микроконтроллер настроен на работу от внешнего кварца, также включен BOD, чтобы не повредились настройки, сохраняемые в EEPROMе, в случае проблем с питанием. Также обязательно нужно выключить JTAG. Скриншотов для других программ нет, но в случае затруднений можно воспользоваться калькулятором AVR фьюзов, например этим. Там можно ввести HIGH и LOW значения фьюзов (0xD1 и 0x3F соответственно) и получить разные варианты отображения установки нужных фьюзов. 
     Микроконтроллер прошивается через разъем "LED" на плате, назначение пинов для прошивки следующие:

10 pin - MOSI
7 pin  - MISO     
8 pin  - SCK
5 pin  - Reset
3 pin  - GND
6 pin  - +5V (можно не использовать при штатном питании термостата)

     При прошивке конечно нужно вытащить шлейф, идущий к плате индикаторов и вытащить перемычку XS1 чтоб не подрабатывали реле.

Вот собственно и все, комфортных вам помещений !


Файлы:
Печатные платы
Принципиальная схема
Файлы прошивки для flash и eeprom


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

14 0 0
3 1 0