Главная » Измерение и контроль » Простой термостат – термометр с энкодером на микроконтроллере PIC16F628. Схема

Простой термостат – термометр с энкодером на микроконтроллере PIC16F628. Схема

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

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

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

prostoj-termostat-termometr-s-enkoderom-na-mikrokontrollere-pic16f628-sxema-min

В данной статье термостат снабжен буквенно-цифровым дисплеем 16х1, информирующий о текущей и заданной температуре. Благодаря этому, помимо функции регулировки, устройство также играет роль электронного термометра.

Температура измеряется с использованием цифрового датчика DS18B20, работающего в диапазоне -55…+125°C. Однако отображаемый диапазон ограничен диапазоном от -55…+99,9°C, и в таком же диапазоне можно установить контролируемую термостатом температуру. Этот диапазон значительно превышает потребности пользователя, однако из-за функции термометра это может быть полезно.

Простой термостат – термометр с энкодером на микроконтроллере PIC16F628

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

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

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

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

Увеличив гистерезис в приведенном выше примере до 0,5°C, при поддержании температуры на уровне 25°C, переключение реле не будет происходить при температуре в диапазоне 24,5…25,5°C.

Блок питания 0...30В/3A
Набор для сборки регулируемого блока питания...
Подробнее

Значение гистерезиса необходимо подбирать в соответствии с поставленной задачей. В данном устройстве гистерезис может быть отрегулирован в диапазоне 0…5°C.

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

Коммутационная схема — это реле с управляемой мощностью 16А. Это дает возможность управлять нагревателем мощностью до 3 кВт. Для обеспечения безопасности, коммутационная схема выполнена на отдельной плате. Благодаря этому панель управления термостатом может быть размещена в любом удобном месте.

Управляющим элементом термостата является микроконтроллер PIC16F628 от «Microchip», который работает от внешнего кварцевого резонатора с частотой 4 МГц. Для отображения установленной и измеренной температуры применен однострочный буквенно-цифровой дисплей с возможностью отображения 16 символов. Контраст дисплея настраивается потенциометром R5.

Параметры термостата выставляются с помощью энкодера (Sw1) со встроенной кнопкой. Сигналы данных подаются на порт RA, а от кнопки — на порт RB.

Как уже было сказано выше, в качестве датчика температуры используется микросхема DS18B20, которая измеряет температуру и передает информацию в 12-битном формате. Микроконтроллер считывает результат через интерфейс 1-Wire и после вычислений выводит на дисплей температуру с разрешением 0,1°C.

Сигнал, управляющий реле, через транзисторный ключ VT1 подается на реле.

Питание термометра осуществляется с помощью стабилизатора напряжения DA1 (78l05), который обеспечивает выходное напряжение 5 В. Конденсаторы С1…С4 сглаживаю входное и выходное напряжение. Диод VD1 (1N4007) защищает схему от переплюсовки входного источника питания.

Термостат собран на двух платах: одна для системы управления с микроконтроллером и дисплеем, вторая для коммутации.

Простой термостат – термометр

Для питания схемы термостата необходим источник питания с выходным напряжением около 12 В и током не менее 100 мА. После включения на дисплее будет отображаться фактическая температура и значение температуры, которое поддерживается термостатом.

В термостате можно запрограммировать два параметра: желаемую температуру и точность (гистерезис). Эти параметры сохраняются в энергонезависимой памяти EEPROM.

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

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

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

Второй параметр — гистерезис. Чтобы войти в режим изменения гистерезиса, нажмите кнопку энкодера во время нормальной работы термостата. На дисплее отобразится текущее значение в формате Term = T ± 0,0°C (значение по умолчанию 0,0°C). Изменения делаются поворотом ручки энкодера. Как и при настройке температуры, после первого шага начинает мигать измененное значение. Чтобы отказаться от введенных изменений, кратко нажмите клавишу. Чтобы сохранить его нажмите кнопку примерно на две секунды.

Статус активации реле отображается индикацией точки между фактической и контролируемой температурой.

Скачать рисунок печатной платы и прошивку (78,3 KiB, скачано: 2 121)



Инвертор 12 В/ 220 В
Инвертор с чистой синусоидой, может обеспечивать питание переменно...
Подробнее



10 комментариев

  1. Есть ли сама программа, а не прошивка?

    Ответить
  2. что толку от этой схемы где прошивка

    Ответить
    • Поправил ссылку, можете скачивать

      Ответить
  3. А двухстрочный можно подключить экран

    Ответить
  4. подскажите, где переделать в коде, чтобы термостат работал на охлаждение, а не на нагрев. Понятно можно поменять транзистор, или контакты на реле. но хочется индикации на дисплее.

    спасибо

    Ответить
  5. В статье указан однострочный индикатор, а прошивка под двухстрочный или 8х2. Как исправить?

    Ответить
  6. Прошивка под 16х2 нужно под 16х1 как исправить?

    Ответить
    • Работает на 1601, все как на картинке . С 1602 просто в 2 строки выводится.
      Тут наверное уже не отвечают))

      Ответить
  7. Так где файл для скачивания? А то одни ромбы.

    Ответить

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