автор Ondřej Slovák
Информационная панель LCDIP2DS.
Информационная панель сочетает в себе несколько устройств.
Термометр, с возможностью контроля температуры в двух разных точках, например наружной и внутренней, а так же регистрацией и запоминанием их максимумов и минимумов; часы; календарь с отображением дня недели, даты и месяца.
Регулируемый гистерезис температур, позволяет использовать панель и для других целей, таких как двойной термостат, для контроля и регулирования двух независимых температур.
Верхний строка индикатора отображает - слева температуру Т1, (например наружный датчик), справа температуру T2, (внутренний датчик). Диапазон измерения температур от -40,0 до 120,0 °C.
Нижняя строка - время, день недели, дата, месяц. Установка этих данных начнется при нажатии кнопки "S" до начала мигания часов. Затем нажатием кнопок "+" и "-" изменяются показания до нужных значений, далее кнопкой "N" выбирается другая корректируемая информация (часы, минуты, месяц ...). После окончания корректировки, снова нажимается кнопка "S" для выхода из режима установки. Если просто нажимать кнопки "+" и "-", то будет переключаться дисплей по кругу. Это записанные максимумы и минимумы температур Т1 и Т2 (эти данные можно сбросить нажав и удерживая кнопку "S"), дата и время их записи, и установки температур Т1 и Т2 и их гистерезисов для термостатирования.
Если будет установлен новый температурный рекорд максимума или минимума, то начнёт мигать светодиод, включенный на выход SN, и эти новые показания запишутся в память и затрут старые.
Если связь с датчиком иногда нарушается, то это не влияет на показания дисплея и регулирующего термостата MIN / MAX температуры. Каждый датчик имеет свой счётчик ошибок. Каждый раз, когда возникают ошибки в соединении с датчиком, вместо нового значения отображаются последние успешно извлечённые температуры. Если соединение с датчиком не восстанавливается, то вместо вывода температуры выводится слово "Ошибка".
Программа при этом по-прежнему пытается общаться с датчиком и, если отказ уже не проходит, переключается в тестовый режим.
В тестовом режиме постоянно ищутся подключенные датчики и отображаются их идентификационные коды (первые 8 бит, - слева T1, справа T2).
Из тестового режима можно выйти, нажав и немного удерживая нажатой любую кнопку.
Большинство установочных значений записей минут, часов минимумов и максимумов температур, и установки гистерезисов температур, хранятся в EEPROM, так что даже когда отключается питание, эти данные сохраняются.
Панель можно использовать и для термостатирования двух температур, для этого нужно установить эти температуры и выставить необходимый гистерезис.
Каждая установка имеет свои собственные регулируемые пределы температуры (-40,0 до 120,0 °C) и гистерезиса (от 0,0 до 25,5). Точность установки 0,1 °C.
Например, если выставить температуру Т1 25,0 градусов, а гистерезис 1,0 градус, то на выходе RT1 будет присутствовать логическая единица - если температура не превышает 25,0 градусов.
Далее после превышения порога в 25,0 градусов считается выставленный гистерезис и после того, как температура достигнет 26,0 градусов (выставленная температура + выставленный гистерезис), на выходе RT1 появится логический ноль. Реле управления отключает, например нагреватель аквариума. Температура начинает падать, а на выходе RT1 по прежнему "0". Когда температура достигает установленной (25,0), то на выходе RT1 вновь появляется "1".
Этот пример наглядно виден на рисунке ниже. Для выхода RT2 управление аналогично.
Для управления нагревателем или компрессором холодильника при термостатировании, имеются два выхода, это RT1 и RT2 (реле термостата). К ним для включения реле можно подключить например следующую схему.
С помощью перемычек можно установить включение реле от логической "1" на выходе RT (красные перемычки), или от логического "0" (зелёные перемычки). Переключение от логического "0" может быть полезно для управления термостатом охлаждения.
Для сборки информационной панели используется микроконтроллер PIC16F88 с внешним кварцевым генератором с частотой кварца 4194304Hz. Выбор такой частоты обусловлен точностью хода часов, так как эта частота делится триггерами до 1 Гц. Более точно корректировка частоты производится подстроечным конденсатором С3.Заданного значения помехозащитного резистора на входе B0 4k7, можно сократить до 1k. Для коротких расстояний и не большой длинны кабеля от датчиков, схема устойчиво работает даже без этого резистора, так как в микропроцессоре имеются свои внутренние подтягивающие резисторы.
На транзисторе Т1 собрана схема подсветки дисплея, и она обеспечивает автоматическое выключение подсветки через несколько секунд после прекращения нажатия на кнопки. Если эта функция не нужна, или не имеется подсветки на индикаторе, то эту часть схемы можно не собирать.
У автора в качестве индикатора, применён двухстрочный 16-ти символьный дисплей с Европейским стандартным набором символов (плюс дополнительные символы) и датчик температуры DS18B20. Оригинальная прошивка программы была рассчитана на этот набор символов и на вывод надписей на чешском языке.
Я имел наглость (думаю автор не обидится), немного подкорректировать прошивку и сделать свои варианты прошивок для дисплеев, встречающихся у нас.
Прошивок получилось две (или даже три), для дисплеев, имеющих набор латиницы, кириллицы и дополнительных символов - русская (смотри фото выше), и для дисплеев с латиницей и набором иероглифов - английская, что Вам и предоставляю для пользования.
Третья прошивка (рус-2), тоже русская, но для дисплеев с латиницей и кириллицей, не имеющие набор дополнительных символов - отличается от первой прошивки (рус-1) лишь тем, что отображение символа градуса "°" перед буквой "С", происходит немного иначе, как более больший круг (фото выше).
У кого с прошивкой "рус-1" не будет отображаться символа градуса "°" перед буквой "С", значит в дисплее отсутствует набор доп. символов и Вам необходимо будет использовать вторую (рус-2.) прошивку.
Английский вариант прошивки (для дисплеев без набора кириллицы) выводит все надписи и дни недели на английском языке (фото выше).
Информационная панель собрана на односторонней печатной плате (смотри фотографии выше).
В формате Sprint-Layout, плата не разрабатывалась, и при желании Вы это сможете сделать самостоятельно по рисунку печатной платы. Имеется печатная плата в формате "brd" для программы "EAGLE" (аналогичная программа для печатных плат по типу Sprint-Layout), которая так же прилагается в прикреплении.
Архив для статьи.