Схема контроллера для управления охлаждением и нагревом (AT89C4051-24PU)

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

Функциональная схема

Предлагаемая система терморегулирования позволяет автоматически поддерживать заданные температуры в дневное и ночное время. Функциональная схема системы представлена на рис. 1.

Функциональная схема системы термоконтроля

Рис. 1. Функциональная схема системы термоконтроля.

Основные функциональные узлы: терморегулятор А1; плата контроллера А2; блок симисторов АЗ, нагреватель (охладитель) А4. Временная диаграмма, поясняющая алгоритм работы системы представлена на рис. 2.

Сформулируем основные требования к системе терморегулирования (далее - система):

  • система должна автоматически поддерживать в двух интервалах времени (дневном и ночном) в диапазоне от 1 мин до 24 ч заданные температуры (в каждом заданном временном интервале своя заданная температура);
  • система работает в режиме реального времени;
  • работа в режимах нагрева и охлаждения (в системе может быть задействован либо нагреватель, либо охладитель);
  • в качестве нагревателя может быть применена мощная тепловая пушка (электронагреватель + вентилятор).

Функцию поддержания заданных температур, в системе выполняет терморегулятор ТРМ202 (А1 по рис. 1) фирмы ’’ОВЕН”. В данном терморегуляторе имеется два независимых канала измерения и поддержания заданной температуры №1 и №2.

Заданные температуры (дневная и ночная), режим работы (нагреватель/холодильник) и другие параметры каналов программируются заранее. Выходные сигналы терморегулятора поступают на плату контроллера А2. Данная плата контроллера обеспечивает подержание заданных температур терморегулятором в заданные интервалы времени.

На плате контроллера реализован таймер, который функционирует в режиме реального времени. До момента времени t1 (рис. 2) система поддерживает температуру, заданную в канале №1 терморегулятора (дневная температура).

Временная диаграмма, поясняющая алгоритм работы системы

Рис. 2. Временная диаграмма, поясняющая алгоритм работы системы.

С момента времени t1 до момента времени t2 система поддерживает температуру, заданную в канале №2 терморегулятора (ночная температура). Интервал поддержания ночной температуры (дельта_t = t2 - t1) программируется. Рассмотрим вариант с подключением в качестве нагревателя тепловой пушки, имеющей в своем составе электронагреватель и тепловую пушку.

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

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

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

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

  • Режим №1 (часы 1): отсчет и индикация текущего времени: минуты - секунды.
  • Режим № 2 (часы 2): отсчет и индикация текущего времени: часы - минуты.
  • Режим № 3 (время 1): задание и индикация значения времени t1 (начало интервала поддержания ночной температуры).
  • Режим № 4 (время 2): задание и индикация значения времени t2 (конец интервала поддержания ночной температуры).
  • Режим № 5 (задержка): задание и индикация значения задержки At1 (временная задержка выключения вентилятора после выключения электронагревателя).
  • Режим № 6 (контроль задержки): визуальный контроль увеличения (инкремент) времени задержки дельта_t1, начиная с нулевого значения (текущее значение). Как только, текущее значение сравняется с заданным, то сразу выключается вентилятор в тепловой пушке. На дисплее снова индицируется нулевое значение.

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

Принципиальная схема системы, приведена на рис.3. Принципиальная схема нагревателя приведена на рис. 4. Терморегулятор А1 подключается к плате контроллера А2 через жгут 1. Нагреватель (охладитель) подключается к плате контроллера через жгут 2.

Принципиальная схема системы термоконтроля на микроконтроллере AT89C4051-24PU (часть 1)

Рис. 3. Принципиальная схема системы термоконтроля на микроконтроллере AT89C4051-24PU (часть 1).

Принципиальная схема системы термоконтроля на микроконтроллере AT89C4051-24PU (часть 2)

Рис. 3. Принципиальная схема системы термоконтроля на микроконтроллере AT89C4051-24PU (часть 2).

Сетевое трехфазное с глухозаземленной нейтралью напряжение 380В поступает на блок симисторов через соединитель Х1 типа 2РТТ36Б5Ш18-В. Более подробную информацию на терморегулятор ТРМ202 (функции и технические характеристики) можно найти на сайте организации - изготовителя [3]. Прибор имеет очень много различных настроек.

Но следует отметить, что руководство по эксплуатации написано достаточно внятно и доходчиво. Программирование прибора не вызывает сложностей. Режим работы (нагреватель или охладитель) и многое другое - программируется. Рассмотрим основные часовые функции платы контроллера.

В таймере предусмотрены следующие функции - счет реального времени, индикации текущего времени в 24-часовом формате в режимах часы-минуты и минуты-секунды; установка текущего времени; установка времени включения времени t1 и времени включения времени t2, установка задержки At1 выключения вентилятора. Все вышеуказанные параметры могут быть перепрограммированы.

Если текущее время совпало с установленными значениями t1 и t2, то на 10 с включается звуковая сигнализация, с частотой повторения 1 Гц. Интерфейс управления системы включает в себя интерфейс терморегулятора и интерфейс платы контроллера.

Интерфейс платы контроллера включает в себя: клавиатуру (кнопки S1...S5), световые полосы HL1...HL2, и блок индикации (дисплей) из шести цифровых семисегментных индикаторах HG1...HG6.

Принципиальная схема соединения блоков

Рис. 4. Принципиальная схема соединения блоков.

Кнопки клавиатуры имеют следующее назначение:

  • S1 ( Р) - выбор режима работы часов: “часы 1”, “часы 2”, “время 1”, “время 2”, “задержка”, “контроль задержки”;
  • S2 ( дельта ) - увеличение на единицу значение каждого разряда при установки времени в режиме “часы 2”, а также при установки времени в режиме “время 1”, “время 2”, “задержка”, “контроль задержки”;
  • S3 (В) - выбор разряда, при установки текущего значения времени в режиме “часы2” и в режимах “время 1”,“время 2”, “задержка”, “контроль задержки”. В выбранном разряде включается, точка h;
  • S4 ( С) - кнопка пуск/стоп. Данной кнопкой разрешается/запрещается счет времени;
  • S5 ( К) - кнопка выбора каналов температуры (№ 1 или № 2) терморегулятора А1 к микроконтроллеру DD2 при текущем времени. Если выбран канал температуры № 1 - включена световая полоса HL1, к микроконтроллеру DD2 подключен выход № 1 терморегулятора, если выбран канал температуры № 2 - включена световая полоса HL2, соответственно к микроконтроллеру DD2 подключен выход № 2 терморегулятора.

Например, в режиме “часы2”, при первом нажатии на кнопку S3, для установки нужного значения выбирается разряд единицы минут (точка h включена у индикатора HG5). Значение разряда устанавливается кнопкой S2. При следующем нажатии на S3 выбирается разряд десятки минут (индикатор HG4) и т. д. После установки значения разряда десятки часов (индикатор HG2), при нажатии на S4 разрешается счет времени.

Разряды индикации интерфейса платы контроллера, имеют следующее назначение (позиционные обозначения по рис. 3):

  • 1 разряд (индикатор HG6) отображает "1" в режиме "часы 1", "2" в режиме "часы 2", "3" - в режиме "время 1", "4" - в режиме "время 2", "5" - в режиме "задержка", "6" - в режиме "контроль задержки";
  • 2 разряд (индикатор HG5) отображает "единицы минут" в режимах "часы 2", "время 1", "время 2", "единицы секунд" в режимах "часы 1", "задержка", "контроль задержки";
  • 3 разряд (индикатор HG4) отображает "десятки минут" в режимах "часы 2", "время 1", "время 2", "десятки секунд" в режимах "часы 1", "задержка" и "контроль задержки";
  • 4 разряд (индикатор HG3) отображает сегмент g с периодом включения 1 сек. во всех режимах;
  • 5 разряд (индикатор HG2) отображает "единицы часов" в режимах "часы 2" и "время 1", "время 2", в режиме "часы 1" отображает "единицы минут";
  • 6 разряд (индикатор HG1) отображает "десятки часов" в режимах "часы 2" и "время 1", "время 2", в режиме "часы 1" отображает "десятки минут".

Сразу после подачи питания устройство переходит в режим работы "часы Г', отсчет текущего времени - запрещается. Отсчет текущего времени разрешается только после нажатия на кнопку S4 ( С) (пуск/стоп). При совпадении текущего времени с установленными "время 1", "время 2" , на 10 сек. включается прерывистая звуковая сигнализация ВА1.

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

Каналы №1 и №2 работают в режиме нагревателя (тип логики -1). Допускаем так же, что включаем систему в дневное время и текущая температура меньше Т1.

На плате контроллера А2: значение времени tl; значение времени t2, значение времени задержки ДИ. После нажатия на кнопку S4 ( С) (пуск/стоп) лог. 0 с вывода 5 клеммной колодки ХТ1 терморегулятора поступает, через жгут 1 и контакт 1 соединителя Х2, через замкнутые контакты 1, 7 реле DA1 на вывод 9 микроконтроллера DD2. (На выводе 11 микроконтроллера присутствует лог. 1)

При этом, микроконтроллер DD2 выставляет лог. 0 на выводы 2, 3. Включаются соответственно реле DA2, DA3. В данных реле, через замкнутые контакты 7, 4 напряжения +24 В поступает через соединитель Х3 и жгут 2 на соединитель X1 нагревателя. В тепловой пушке одновременно включатся электронагреватель и вентилятор.

Как только текущая температура достигнет заданной установки, выходная оптопара канала № 1 терморегулятора закрывается. Лог. 1 с вывода 5 клеммной колодки ХТ1 терморегулятора поступает на вход 9 микроконтроллера DD2. При этом микроконтроллер выставляет лог. 1 на вывод 2 и через время равное ДИ лог.

1 на вывод 3. Тем самым выключая сначала в тепловой пушке электронагреватель и через время равное ДИ вентилятор. Подобные циклы включения и выключения тепловой пушки будут поддерживать температуру в помещении равную заданной установке Т1. Пусть текущее время стало равным значению И (начало ночного интервала времени).

Тогда микроконтроллер DD2 устанавливает лог. 0 на выводе 11, включая реле DA1. В данном реле замыкаются контакты 7, 14. Теперь на вывод 9 микроконтроллера DD1 поступает сигнал с вывода 8 клеммной колодки ХТ1 терморегулятора. То есть подключается канал №2 терморегулятора.

Теперь тепловая пушка будет поддерживать температуру в помещении равную заданной уставноке Т2. Пусть текущее время стало равным значению t2 (конец ночного интервала времени). Тогда микроконтроллер DD1 устанавливает лог. 1 на выводе 11, отключая реле DA1. Снова замыкаются контакты 1, 7 реле DA1.

Теперь тепловая пушка будет снова поддерживать температуру в помещении равную заданной установке Т1.

При работе системы в режиме охлаждения - канал управления вентилятором - не задействован. Вентилятор к блоку симисторному - не подключается. Каналы №1 и № 2 в терморегуляторе программируются в режим работы охладителя (тип логики -2).

Рассмотрим основные, функциональные узлы принципиальной схемы платы управления. Основой устройства служит микроконтроллер DD2, рабочая частота которого задается генератором с внешним резонатором ZQ1 на 10 МГц. Пьезоэлектрический излучатель ВА1 включается с вывода 15 регистра DD1.

Сигнал с выхода 13 микроконтроллера через резистор R16 периодически (с периодом 1 сек) включает сегмент g индикатора HG3. Клавиатура собрана на кнопках S1...S5. Для функционирования клавиатуры так же задействован вывод 8 микроконтроллера DD2.

Резисторы R17, R18-токоограничительные, для световых полос HL1 и HL2. Выходные сигналы с каналов №1 и №2 терморегулятора А1 подключаются к выводу 9 микроконтроллера DD2 через контакты реле DA1.

Катушка реле управляется с вывода 11 микроконтроллера DD2. Каналы управления нагревателем вентилятором собраны соответственно на реле DA2 и DA3, которые соответственно управляются с выводов 2 и 3 микроконтроллера DD2. Динамическая индикация собрана на регистре DD1; транзисторах VT1...VT5; цифровых семисегментных индикаторах HG1...HG2, HG4...HG6. Коды для включения вышеуказанных индикаторов при функционировании динамической индикации поступают на выходы порта Р1 микроконтроллера DD2.

Цифровая часть принципиальной схемы устройства гальванически развязана от сети, и от напряжения управления нагревателем и вентилятором +24 В.

Питающие напряжения поступает на плату контроллера с соединителя X1. Конденсатор С1 фильтрует пульсации в цепи питания +5 В. Сразу после подачи питания на выводе 1 микроконтроллера DD1 через RC-цепь (резистор R2, конденсатор С4) формируется сигнал системного аппаратного сброса микроконтроллера DD2. Дальше идет инициализация микроконтроллера.

Программа

Программа состоит из трех основных частей: процедуры инициализации, основной программы, работающей в замкнутом цикле и подпрограммы обработки прерывания от таймера TF0.

В основной программе происходит счет текущего времени, установка текущего времени и времен tl, t2, дельта_t. Сравнение текущего времени с временами tl и t2, включение звукового сигнала и преобразование двоичного числа значений.

В памяти данных микроконтроллера с адреса 30Н по 4DH организован буфер отображения для динамической индикации. По своему функциональному назначению адресное пространство данного буфера можно условно разбить на шесть функциональных групп:

  • 30Н...34Н - адреса, где хранится текущее время в минутах и секундах. Эти адреса выводятся на индикацию в режиме "часы 1".
  • 35Н...39Н - адреса, где хранится текущее время в часах и минутах. Эти адреса выводятся на индикацию в режиме "часы2
  • 3АН...3ЕН - адреса, где хранится время tl. Эти адреса выводятся на индикацию в режиме "время 1".
  • 3FH...43H - адреса, где хранится время t2. Эти адреса выводятся на индикацию в режиме "время 2.
  • 44Н...48Н - адреса, где хранится заданное значение времени дельта_t1. Эти адреса выводятся на индикацию в режиме "задержка".
  • 49H...4DH - адреса, где хранится текущее значение времени дельта_t1. Эти адреса выводятся на индикацию в режиме "контроль задержки".

Данные адреса загружаются в регистр R0 микроконтроллера. Правильнее сказать, в каждом режиме, в регистр R0 записываются адреса определенной функциональной группы (метки ТЕМО0, TEMO1, ТЕМ02, ТЕМО3, ТЕМО4, ТЕМО5). Каждый байт из функциональной группы в цикле, в подпрограмме обработки прерывания таймера TF0 (метка ОТ), после перекодировки выводится в порт Р1 микроконтроллера.

Для включения индикаторов HG1, HG2, FIG4...FIG6 необходимо установить лог. 0 на выводах 2, 5, 6, 9, 12 регистра DD1 соответственно. Так например для того чтобы в режиме "часы 1" на индикаторе HG6 индицировалась "1", необходимо двоично-десятичное число расположенное по адресу ЗОН перекодировать, вывести в порт Р1 микроконтроллера и записать лог.

0 в пятый разряд регистра DD1 (вывод 12). Записывая поочередно после перекодировки, в цикле, в порт Р1 микроконтроллера байты из функциональной группы буфера отображения, и лог. 0 на соответствующий вывод регистра DD1 мы получаем режим динамической индикации.

Понятно, что каждый разряд индикатора устройства "привязан" к своему определенному адресу в функциональной группе. Так например значение числа или символа отображаемого на индикаторе HG6 находится в первом адресе функциональной группы (для режима "часы 1"-это 30Н, а для режима "часы 2"- 35Н). Нa регистре R1 реализован счетчик разрядов.

При инициализации в R0 загружается адрес 30Н (режим "часы 1") - , а в R1 число 1. В памяти данных в ячейке с адресом 20Н находится байт, который управляет разрядами динамической индикации и внешними, исполнительными устройствами: пьезоэлектрическим излучателем ВА1 и световыми полосами HL1 и HL2.

Данный байт записывается в регистр DD1 сразу после записи перекодированного байта из функциональной группы в порт Р1 микроконтроллера DD2.

Данный байт представляет собой код "бегущий нуль" для включения знакомест (разрядов) динамической индикации. Цикл для динамической индикации - порядка 3,328 мс. В данном цикле регистры R0 и R1 инкрементируется.

Задача "часовой части" программы - формирование точных временных интервалов длительностью 1 с в микроконтроллере, решена с помощью прерываний от таймера TF0, и счетчиков на регистрах R4 и R5. Таймер TF0 формирует запрос на прерывание чрез каждые 80 мкс.

Счетчики на данных регистрах, подсчитывают количество прерываний и как только количество прерываний станет равно определенному числу, устанавливается флаг, по которому в основной программе инкрементируется ячейка памяти микроконтроллера, где хранятся единицы секунд.

Каждый байт из функциональной группы буфера отображения, в подпрограмме обработки прерывания таймера TF0 выводится в порт Р1 микроконтроллера DD1. Номер группы или режим работы записан в регистре R2. В процессе обработке подпрограммы прерывания происходит опрос клавиатуры.

Нажатием кнопки S1 инкрементируется регистр R2, и тем самым задается один из шести режимов работ. При нажатии на кнопку S2 устанавливается флаг, разрешающий инкрементировать разряд, выбранный кнопкой S3.

В подпрограмме обработки прерывания от таймера TF0 "завязаны" процедуры для динамической индикации. Сразу после подачи питания при инициализации во все разряды порта Р3 микроконтроллера DD2 записываются лог. 1. Разработанная программа на ассемблере занимает порядка 1,3 Кбайт памяти программ.

Прошивка для микроконтроллера - Скачать.

Детали

В устройстве использованы резисторы С2-ЗЗН-0.125, подойдут любые другие с такой же мощностью рассеивания и погрешностью 5 %. Конденсаторы C1, С4 - К50-35. Конденсаторы С2, С3 типа К10-17-НІ90-0.1мкФ. Индикатор HG3 типа АЛС324Б.

В индикаторе HG3 для формирования знака "-" используется только сегмент д. Можно применить индикаторы типа FIDSP-F507 или FIDSP-F157. Световые полосы HL1, HL2 - KB-2300EW красного цвета. Fla плате контроллера установлены соединители WF-4 (вилки). Ответные части HU-4 (розетки).

Пьезоэлектрический излучатель ВА1 FIPM14AX можно заменить на FIPA17AX или FIРАНАХ. Терморегулятор А1 типа ТРМ202-Щ2.КК (выходное устройство - оптопара транзисторная, структуры п-р-п типа), термопреобразователи сопротивления (датчики температуры) типа ДТС125-РТ100.В2.60. Более подробную информацию на датчики температуры можно найти в [3].

В тепловой пушке применен электронагреватель типа LHS PREMIUM 60L 5 кВт 3 х 380В, вентилятор типа АСО 550 Вт 1x220В, с конденсатором. Технические характеристики электронагревателя и вентилятора можно найти в [4]. В блоке симисторном А3 применены симисторы типа БС-440- 63/40-Н. Технические характеристики симисторов можно найти в [5].

Уместно напомнить, что при работе с системой необходимо соблюдать требования по электробезопасности. Fla плате контроллера нет никаких настроек и регулировок, и если монтаж выполнен правильно, то она начинает работать сразу после подачи на него напряжения питания.

Шишкин С. РК-12-17.

Литература:

  1. В. Б. Бродин, И. И. Шагурин - Микроконтроллеры. Архитектура, программирование, интерфейс.1999.
  2. www.tme.pl.
  3. www.owen.ru.
  4. www.olmax.ru.
  5. www.contravt.ru.
0 184 На микроконтроллерах
термостабилизатор термостат микроконтроллер тепловая пушка
pcbway
х (мм)
Получи купон на $5.00!
Написать комментарий:

cashback