Этот прибор, построенный на микроконтроллере ATmega8, может быть сконфигурирован как термометр или как термостат независимо для каждого из двух каналов. Имеется возможность задавать температуру выключения нагревателя в пределах от +5 до +95 °С, разность значений температуры его выключения и включения от 0 до 4 °С и компенсировать систематическую погрешность датчиков температуры от -2 до +2 °С. Схема термометра-термостата показана на рисунке.

Двухканальный термометр-термостат 5-95 градусов

Два датчика DS18B20 подключают к разъемам Х1 и Х2, причем номера гнезд соответствуют номерам их выводов. Использована трехпроводная схема подключения. Уже много раз я убеждался в том, что только так можно добиться максимальной длины соединительных проводов, и везде, где это возможно, стараюсь избегать паразитного питания датчиков. При медных проводах сечением 0,5 мм2 устойчивую связь удавалось обеспечить на расстоянии до 40 м. Показания датчиков выводятся на HG1 - трехразрядный светодиодный индикатор с общими анодами светодиодов каждого разряда. Двухцветные светодиоды HL1 и HL2 отображают состояние каждого из каналов. Сигналы управления нагревателями в режиме термостата формируются на выходах микроконтроллера РВ6 (первый канал) и РВ7 (второй канал). Управление двухпозиционное; нагреватель включен или выключен.

Для гальванической развязки прибора от исполнительных устройств установлены оптроны U1 и U2. В моем варианте к разъемам Х4 и Х5 подключены цепи управления двух симисторов ВТ139, коммутирующих нагревательные элементы. При необходимости оптроны можно заменить транзисторами, включив в их коллекторные цепи обмотки электромагнитных реле. В течение 4...5 с после подачи на прибор питания происходит инициализация датчиков и начальный сбор их показаний. В это время поочередно мигают все элементы индикатора HG1. Далее устанавливается режим измерения и отображения температуры. В этом режиме нагреватели выключены. Показания датчиков на индикаторе чередуются с периодом 5 с. Если температура измерена датчиком, подключенным к разъему Х1, светится светодиод HL1, а подключенным к разъему Х2 - HL2. При этом, если соответствующий канал сконфигурирован как термометр, цвет свечения желтый, если как термостат, то при поданной команде на включение нагревателя он красный, а при ее отсутствии - зеленый. После нажатия на кнопку SB2 отображаются показания только первого датчика, а после нажатия на SB3 - только второго. Если какой-либо датчик не подключен, в его цепи произошел обрыв, замыкание или температура вышла за пределы 0,1...99,9 °С, на индикатор вместо значения температуры выводится надпись "Err", а соответствующий нагреватель выключается.

Если во время отображения температуры, измеренной, например, первым датчиком, несколько раз нажимать на кнопку SB2, то с каждым нажатием соответствующий канал будет переходить из режима термостата в режим термометра и обратно. При кратковременном нажатии на кнопку SB1 восстанавливается режим поочередного отображения температуры в двух каналах. Но если удерживать кнопку SB1 нажатой длительное время, термометр-термостат войдет в режим настройки того канала, во время отображения температуры которого была нажата кнопка.

В этом режиме кнопками SB2 и SB3 выбирают необходимый параметр:

ut1 (ut2) - установка температуры выключения нагревателя в канале 1 (2);
dt1 (dt2) -установка разности температуры выключения и включения нагревателя в канале 1 (2).

Например, при установке температуры выключения 35 °С и разности 1,5 °С нагревание произойдет до температуры 35 °С, по ее достижении нагреватель будет выключен и вновь включен, когда температура понизится до 33,5 °С. Оптимальным выбором разности достигают компромисса между точностью поддержания температуры и частотой включений нагревателя.

со1 (со2) - корректировка показаний датчика 1 (2). Введенное значение суммируется (с учетом знака) с этими показаниями прежде, чем они поступят на дальнейшую обработку. Это позволяет скомпенсировать возможную погрешность датчика. В случае повторного кратковременного нажатия на кнопку SB1 на индикатор выводится хранящееся в памяти микроконтроллера значение выбранного параметра, после чего кнопками SB2 и SB3 (соответственно уменьшение и увеличение на 0,1 °С) задают его новое значение. При длительном удержании этих кнопок изменение параметра начинает происходить быстрее (приблизительно 10 раз в секунду). Через 5 с после последнего нажатия на любую кнопку установленное значение запоминается в энергонезависимой памяти микроконтроллера, а на индикатор выводится текущая температура. Коды программы из файла Termo2ch.hex записывают в программную (FLASH) память микроконтроллера, а информацию из файла Termo2ch.epp - в его EEPROM. Разряды конфигурации микроконтроллера программируют в соответствии с таблицей.

Разряд Знач. Разряд Знач. BODEN 0 SKCEL0 0 BODLEVEL 1 SKCEL1 0 BOOTRST 1 SKCEL2 1 BOOTSZ0 1 SKCEL3 0 BOOTSZ1 1 SPIEN 0 CKOPT 1 SUT0 0 EESAVE 1 SUT1 1 RSTDISBL 1 WDTON 0

Для защиты от зависания программы в микроконтроллере должен быть включен сторожевой таймер. Поскольку интерфейс 1-Wire, используемый датчиками, критичен к тактовой частоте микроконтроллера, необходима точная настройка его внутреннего тактового генератора на 8 МГц. Для этого следует, подключив используемый экземпляр микроконтроллера к программатору, прочитать калибровочную константу, находящуюся в старшем байте слова, расположенного по адресу 0x0003 сигнатуры микроконтроллера. После загрузки в программатор файла Termo2ch.epp, но перед программированием, эту константу записывают в нулевую ячейку буфера EEPROM программатора. Микроконтроллер АТmega8 может быть заменен на ATmega8L При замене индикатора CPD-05211SR2/A аналогичным другого типа придется, возможно, подобрать резисторы R8-R15, чтобы обеспечить приемлемую яркость.

Скачать программы микроконтроллера

Автор: И. Котов, г. Красноармейск Донецкой обл., Украина; Публикация: www.cxem.net

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

Защитный код
Обновить

Навигация

Инструкции по эксплуатации

Модуль RP023 питания 5/3,3 В для беспаечных макетных плат.
Модуль питания для беспаечных плат
Плата представляет собой модуль питания, имеющий в своем составе два стабилизатора напряжений 5 и 3,3 В. Модуль имеет форму и размеры, позволяющие его устанавливать на стандартные макетные платы, используемые на начальном этапе разработки электронных устройств. При этом значительно экономится драгоценное место на макете, которого, как известно, много не бывает. Напряжение каждой шины питания выбирается с помощью установленного на ней переключателя, что позволяет независимо устанавливать требуемое напряжение на каждой из линий питания. Входное напряжение в диапазоне от 5 до 12 В может подаваться на любой из имеющихся разъемов: стандартный круглый разъем типа DJK-02A или miniUSB. Для контроля выходных напряжений на плате имеется индикатор. Технические характеристики: Входное напряжение постоянное, В - 5…12 Нагрузочная способность каждого выхода, А - 1 Габаритные размеры без
Цена 300.00 руб.
Copyright © 2017 Электрические принципиальные схемы.