Универсальный термостат на микроконтроллере PIC16F628
Главная » Бытовая электроника » Универсальный термостат на микроконтроллере PIC16F628
Схема этого универсального термостата возникла из-за неудовлетворительной работы термостата в холодильнике. При использовании встроенного термостата выяснилось, что необходимо достаточно сильно уменьшить температуру летом, чтобы все оставалось холодным, по сравнению с настройкой зимой.
Вероятно, это связано с тем, что датчик температуры установлен слишком близко к охлаждающему элементу, а это означает, что такие процессы, как тепловая потеря и средняя температура в холодильнике, недостаточно учитываются системой управления.
При разработке схемы этого электронного термостата было принято решение увеличить диапазон регулирования, чтобы он также подходил и для других целей. Диапазон регулирования составляет от -25° C до +75° C с шагом 0,25° C.
Гистерезис также регулируется. Гистерезис — это температурная разница, при которой система будет включаться или выключаться. Очень маленький гистерезис приводит к очень стабильной температуре, но имеет один недостаток, при котором система нагрева или охлаждения включается и выключается с высокой частотой, что обычно приводит к дополнительному износу компрессора (охлаждение).
Гистерезис можно регулировать от 0,1° C (очень стабильная температура) до 10° C (практически никакого контроля) с шагом 0,1° C.
Настройки термостата могут быть изменены с помощью 3-х кнопок, а вся информация отображается на ЖК-дисплее размером 2 × 16 символов. Настройки хранятся в EEPROM внутри PIC микроконтроллера. Во время нормальной работы ЖК-дисплей используется для отображения фактической температуры.
Основной компонент в этой схеме — микроконтроллер PIC16F628. В качестве датчика температуры выбран DS1820. Источником тактовых импульсов для микроконтроллера является керамический резонатор на 4 МГц со встроенными конденсаторами.
Управление охлаждением и нагревом осуществляется отдельными выводами микроконтроллера. Очевидно, что при охлаждении система должна включаться, когда температура слишком высока, а при нагреве необходимо принимать соответствующие меры, когда температура может стать слишком низкой.
Перемычка в этой схеме позволяет выбирать между охлаждением и обогревом. Когда выход активен, на дисплее отображается «
Удерживайте кнопку «Mode», пока не появится надпись «set temperature», после этого вы можете пошагово установить желаемую температуру с помощью кнопок + и —.
Тестер транзисторов / ESR-метр / генератор
Многофункциональный прибор для проверки транзисторов, диодов, тиристоров…
Подробнее
Повторным нажатием кнопки «Mode» можно установить желаемый гистерезис с помощью кнопок
Управление нагрузкой осуществляется при помощи реле. Транзистор (BC547) легко справляется с токами до 100 мА, а обратный диод (1N4001) подавляет обратную ЭДС от катушки реле.
Скачать прошивку (2,3 KiB, скачано: 559)
Блок питания 0…30В/3A
Набор для сборки регулируемого блока питания…
Подробнее
Categories Бытовая электроника Tags PIC16F628, Термостат
Отправить сообщение об ошибке.
Простой термостат на PIC16F628A и DS18B20
Опубликовано автором Moldik
Термометр позволяет измерять температуру в диапазоне от -55 до +125 градусов, а также осуществлять функции термостата во всем диапазоне температур, с любым гистерезисом. Реализована и функция контроля ошибок датчика. Кроме того, я постарался сделать его максимально универсальным, поэтому здесь размещено две схемы, одна под индикатор с общим анодом (ОА), другая под индикатор с общим катодом (ОК). Также есть возможность применять датчики DS18B20 и DS18S20.
Управление осуществляется 2-мя кнопками. Нажатием кнопки +1 активируется режим настройки температуры ВКЛЮЧЕНИЯ реле. Кратковременно выскакивает надпись On и далее мигают цифры установленной температуры включени. Кнопками +1 и -1 можно изменять это значение от -55 до +125 градусов. После установки температуры нужно подождать несколько секунд, на дисплее кратковременно мигнут три тире (—), новые данные будут записаны в EEPROM и прибор перейдет в основной режим отображения температуры. Аналогично, нажав кнопку -1 на дисплее появится надпись OFF и начнет мигать значение температуры ОТКЛЮЧЕНИЯ реле. Точно так же после паузы в несколько секунд появятся три тире и произойдет сохранение в EEPROM температуры отключения реле.
Обратите внимание, что термостат понимает любые ситуации. Температура отключения меньше или больше температуры включения, от этого будет зависить как сработает реле. А в случае если заданные температуры равны, то реле вообще не сработает, прибор будет работать как обычный термометр. Так же важно, что запись в EEPROM происходит именно в момент, когда появляются три тире. По этому до записи данных не отключайте питание.
реклама
Для включения режима настроек типа индикации и типа датчика нужно удерживая кнопку +1 подать питание. Так же этот режим автоматически включается при первом включении устройства, после прошивки микроконтроллера. В этом режиме сначала поочередно на несколько секунд будут отображаться цифры 123 то под общий АНОД, то под общий КАТОД. В момент когда цифры отображаются правильно нужно нажать любую кнопку, режим индикации будет запомнен. Далее на дислее будет мигать надпись или (-S-) или (-b-). Кнопками можно выбрать тип датчика, 18S20 или 18B20 — -S- и -b- соответственно. А не нажимая кнопки несколько секунд выбранный датчик будет запомнен и все настройки сохранятся в EEPROM. Термостат перейдет в основной режим работы.
В случае получения ошибочных данных с датчика на дисплее появляется надпись (Err) — ошибка. Ошибка появляется только в том случае, если ошибочные данные получены с датчика 3 раза подряд (защита от случайных сбоев). При ошибке функции термостата будут выключены, реле отключено.
Простой универсальный термостат на микроконтроллере PIC16F628A и датчике DS18B20 (вер.2)
реклама
Термометр позволяет измерять температуру в диапазоне от -55 до +125 градусов, а также осуществлять функции термостата во всем диапазоне температур, с любым гистерезисом. Реализована и функция контроля ошибок датчика. Кроме того, я постарался сделать его максимально универсальным, поэтому здесь размещено две схемы, одна под индикатор с общим анодом (ОА), другая под индикатор с общим катодом (ОК). Также есть возможность применять датчики DS18B20 и DS18S20.
Управление осуществляется 2-мя кнопками. Нажатием кнопки +1 активируется режим настройки температуры ВКЛЮЧЕНИЯ реле. Кратковременно выскакивает надпись On и далее мигают цифры установленной температуры включени. Кнопками +1 и -1 можно изменять это значение от -55 до +125 градусов. После установки температуры нужно подождать несколько секунд, на дисплее кратковременно мигнут три тире (—), новые данные будут записаны в EEPROM и прибор перейдет в основной режим отображения температуры. Аналогично, нажав кнопку -1 на дисплее появится надпись OFF и начнет мигать значение температуры ОТКЛЮЧЕНИЯ реле. Точно так же после паузы в несколько секунд появятся три тире и произойдет сохранение в EEPROM температуры отключения реле.
Обратите внимание, что термостат понимает любые ситуации. Температура отключения меньше или больше температуры включения, от этого будет зависить как сработает реле. А в случае если заданные температуры равны, то реле вообще не сработает, прибор будет работать как обычный термометр.
Для включения режима настроек типа индикации и типа датчика нужно удерживая кнопку +1 подать питание. Так же этот режим автоматически включается при первом включении устройства, после прошивки микроконтроллера. В этом режиме сначала поочередно на несколько секунд будут отображаться цифры 123 то под общий АНОД, то под общий КАТОД. В момент когда цифры отображаются правильно нужно нажать любую кнопку, режим индикации будет запомнен. Далее на дислее будет мигать надпись или (-S-) или (-b-). Кнопками можно выбрать тип датчика, 18S20 или 18B20 — -S- и -b- соответственно. А не нажимая кнопки несколько секунд выбранный датчик будет запомнен и все настройки сохранятся в EEPROM. Термостат перейдет в основной режим работы.
В случае получения ошибочных данных с датчика на дисплее появляется надпись (Err) — ошибка. Ошибка появляется только в том случае, если ошибочные данные получены с датчика 3 раза подряд (защита от случайных сбоев). При ошибке функции термостата будут выключены, реле отключено.
В термостате применен 3-х разрядный светодиодный индикатор с общим анодом (или общим катодом). Индикация температуры осуществляется так: температура ниже -9 градусов, отображается знак минус и 2 цифры. От -9 до +99 добавляется символ градуса в 3-м знакоместе, при плюсовой температуре знак + естественно не отображается. Температура выше 100 градусов также отображается без символа градуса. В качестве датчика температуры использован ходовой, можно сказать классический датчик — DS18B20 или DS18S20 (DS1820). Хоть термостат и может работать на температурах до 125 градусов, длительная эксплуатация его в таких режимах не рекомендуется, датчик долго не проживет. Оптимальная макс.температура 80…90 градусов.
PIC, Микроконтроллеры, Термометр
термометр
ПИК16Ф628А Резюме: PIC16F648A PIC16C54 PIC16C58A SG01 PIC16C621 PIC16C622 PIC16F716 PIC16C54A PIC16C56 | Оригинал | ПА20СС-П54 розетка/18 PIC16C54 PIC16C56 PIC16C54A PIC16C58A PIC16C620 PIC16C621 PIC16F628A PIC16F648A PIC16C54 PIC16C58A SG01 PIC16C621 PIC16C622 PIC16F716 PIC16C54A PIC16C56 | |
2003 — Исходный код PIC16F627A Реферат: Карта памяти PIC16F628A PIC16F628A PIC16F627A pic16F627A* программирование 628A PIC16F628A микроконтроллера PIC16F648A PIC16LF627A PIC16LF628A | Оригинал | ПИК16Ф627А/628А/648А ПИК16Ф627А/628А/648А PIC16F627A PIC16F628A PIC16F648A PIC16LF627A PIC16LF628A Исходный код PIC16F627A Карта памяти PIC16F628A PIC16F628A PIC16F627A pic16F627A* программирование 628А Микроконтроллер PIC16F628A PIC16F648A PIC16LF627A PIC16LF628A | |
2007 — pic16F627A как программировать Резюме: PIC 628a Карта памяти PIC16F628A PIC16F627A исходный код pic16F627A* программирование программирование pic16f628a pic16f628a замечание по применению на pic16f628a PIC16F628 thld | Оригинал | ПИК16Ф627А/628А/648А ПИК16Ф627А/628А/648А PIC16F627A PIC16F628A PIC16F648A PIC16LF627A PIC16LF628A PIC16LF648A pic16F627A как программировать ПОС 628а Карта памяти PIC16F628A Исходный код PIC16F627A pic16F627A* программирование программирование pic16f628a примечание к применению на pic16f628a PIC16F628 тлд | |
2003 — ПОС 628а Резюме: ds41196 pic16f628a PIC16F627A pic16F627A* программирование PIC16F627A исходный код PIC16LF628A PIC16F648A PIC16F628A DATASHEET pic16f628a программатор | Оригинал | ПИК16Ф627А/628А/648А ПИК16Ф627А/628А/648А PIC16F627A PIC16F628A PIC16F648A PIC16LF627A PIC16LF628A ПОС 628а дс41196 pic16f628a PIC16F627A pic16F627A* программирование Исходный код PIC16F627A PIC16LF628A PIC16F648A ТЕХНИЧЕСКОЕ ОПИСАНИЕ PIC16F628A pic16f628a программист | |
2004 — дс41196 Реферат: ds41204 DS51331 DS40245 «ds41196» DS41191 AC162049 PIC16F684-ICD DS41173 PIC12F675-ICD | Оригинал | AC162050 AC162058 PIC12F629/675 PIC12F683 14-контактный AC162052 AC162057 AC162055 AC162056 PIC16F630/676 дс41196 дс41204 ДС51331 ДС40245 «дс41196» ДС41191 AC162049 PIC16F684-ICD ДС41173 PIC12F675-ICD | |
ПИК16Ф873 Резюме: PIC16F876A pic16f870 PIC18F2320 PIC16C73B PIC16C74B PIC18F458 PIC16C77 PIC16C76 PIC18F242 | Оригинал | PIC12C508 PIC16C72 PIC12C508A PIC16C72A PIC12C509 PIC16C73A PIC12C509A PIC16C73B RFPIC12C509AF PIC16C745 PIC16F873 PIC16F876A pic16f870 PIC18F2320 PIC16C73B PIC16C74B PIC18F458 PIC16C77 PIC16C76 PIC18F242 | |
pic16f84a Резюме: pic16F877 PIC16F628 АЦП В PIC16F877 PIC16F873 pic16f877a Ethernet pic16F723 PIC16F727 pic16f722 PIC16F690 ЖК-дисплей | Оригинал | PIC18 PIC16F726 PIC16F727 PIC16F76 PIC16F77 pic16f84a pic16F877 PIC16F628 АЦП В PIC16F877 PIC16F873 pic16f877a Ethernet pic16F723 PIC16F727 pic16f722 ЖК-дисплей PIC16F690 | |
1999 — 16f628 Аннотация: 16f62x PIC16F628A DATASHEET PIC16f628a pic 16f628 схемы PIC 16F628 PIC16F627 mclr PIC16F628 CVM03F | Оригинал | CVMF628M 16F62X PIC16F627 PIC16F627A PIC16F628 PIC16F628A CVM03F CVMF628M 16f628 ТЕХНИЧЕСКОЕ ОПИСАНИЕ PIC16F628A PIC16f628a рис 16f628 схемы ПОС 16F628 PIC16F627 mclr PIC16F628 CVM03F | |
Программирование сборки PIC16F877A Аннотация: PIC16F877A потоковый код программирования потокового кода PIC16F877 и схема интерфейса параллельного порта стоимость микроконтроллера PIC16F877A микроконтроллер PIC16F877A бесплатно pic16f877a PIC16F84 схема USB-программатора PIC16F877A программатор схем ПРОГРАММА PIC16F73 | Оригинал | EB006 PIC16F88 IC16C765, PIC16C77, PIC16C773, PIC16C774, PIC16C84, PIC16CE623, PIC16CE624, PIC16CE625, Программирование сборки PIC16F877A Программирование потокового кода PIC16F877A код потока PIC16F877 и схема интерфейса параллельного порта Стоимость микроконтроллера PIC16F877A Микроконтроллер PIC16F877A бесплатно pic16f877a Схема USB программатора PIC16F84 Программатор PIC16F877A. ПРОГРАММА PIC16F73 | |
2006 — Спецификация программирования PIC18F4* Резюме: AC162049 Для получения дополнительной информации см. 14-контактный MPLAB ICD 2 DS51331 PIC16F62* код АЦП pic16f630 техническое описание pic16F627A* программирование AC162053 Спецификация платы заголовка PIC12F675-ICD | Оригинал | РЭ36-4803 DS51292M-страница Спецификация программирования PIC18F4* AC162049 Для получения дополнительной информации см. 14-контактный MPLAB ICD 2. ДС51331 PIC16F62* код АЦП pic16f630 даташит pic16F627A* программирование AC162053 PIC12F675-ICD Спецификация платы заголовка | |
2002 — счетчик PIC16F628A Аннотация: PIC16F628A PIC16F627A исходный код PIC16f628a внешний генератор PIC 628a pic16f627a PIC16F628 PIC16LF628A | Оригинал | ПИК16Ф627А/628А 18/20-контактный Внутрисхемный627-144 DS41197A-страница Счетчик PIC16F628A PIC16F628A Исходный код PIC16F627A Внешний генератор PIC16f628a ПОС 628а pic16f627a PIC16F628 PIC16LF628A | |
2003 — учебник pic16f819 Резюме: pic16f628a проекты 13,56 МГц RFID Microchip Technology microID PIC16F676 Технический паспорт PIC16F628a rs232 Генератор pic16f MPLAB C17 picstart plus pic16F627A* проекты программирования rfid | Оригинал | PIC16F PIC18F 18-контактный ПИК12Ф, ДС51339А ДС51339А* учебник pic16f819 проекты pic16f628a 13,56 МГц Технология микрочипов RFID microID Техническое описание PIC16F676 PIC16F628a rs232 осциллятор pic16f МПЛАБ С17 пикстарт плюс pic16F627A* программирование проекты RFID | |
2005 — 16f628a тмр0 Резюме: DS00552 16F628A MPLAB IDE PIC 16F627a 16f628a tmr1 ds41196 16f648a 16f627a 16f648 DS00556 | Оригинал | ПИК16Ф627А/628А/648А DS40044D 16f628a тмр0 ДС00552 16Ф628А MPLAB IDE PIC 16F627a 16f628a тмр1 дс41196 16ф648а 16ф627а 16f648 DS00556 | |
Цепь счетчика объектов из 4 цифр Аннотация: схема счетчика объектов цифровой счетчик объектов счетчик PIC16F628A счетчик объектов 7 СЕГМЕНТНЫЙ ДИСПЛЕЙ sc52 11ewa PIC16f628a внешний осциллятор PIC16f628A ассемблерный код приложение схема счетчика объектов PIC16F628A порт компаратора a | Оригинал | 24-ух 256 кбод com/100715 сделал. Схема 4-разрядного счетчика объектов схема счетчика объектов счетчик цифровых объектов Счетчик PIC16F628A счетчик объектов 7-СЕГМЕНТНЫЙ ДИСПЛЕЙ sc52 11ewa Внешний генератор PIC16f628a Код сборки PIC16f628A схема счетчика прикладного объекта Порт компаратора PIC16F628A | |
2005 — AC162049 Аннотация: PIC16F690 DS51194 Программирование памяти PIC12F510 pic16f630 техническое описание 40-контактный разъем ICD РАЗЪЕМ POWERMATE PIC16F648A-ICD pic16f690 техническое описание AC162059 | Оригинал | ДС51292Л* DS51292L-страница AC162049 PIC16F690 ДС51194 Программирование памяти PIC12F510 pic16f630 даташит 40-контактный разъем ИКД РАЗЪЕМ PIC16F648A-ICD pic16f690 даташит AC162059 | |
2008 — Справочное руководство pic16F628A Резюме: AC162061 AC162083 PIC16F505-ICD PIC16F690-ICD PIC16F677 приложения AC162059 AC162096 AC162050 AC162078 | Оригинал | DS51292P-страница Справочное руководство pic16F628A AC162061 AC162083 PIC16F505-ICD PIC16F690-ICD Приложения PIC16F677 AC162059 AC162096 AC162050 AC162078 | |
2003 — Диммер PIC Реферат: диммер ccs компилятор PIC16f628a внешний генератор 40mhz дистанционное управление передатчик схема пример PIC в ccs pic18f1320 pwm термостат шаговый двигатель PIC16F628A PIC18F пример кода i2c uart PIC16F628a c программа рис 18 | Оригинал | 40 МГц. ДС30493А ПОС Диммер компилятор диммера ccs Внешний генератор PIC16f628a Схема передатчика дистанционного управления 40 МГц пример PIC в ccs pic18f1320 ШИМ-термостат шаговый двигатель PIC16F628A Пример кода PIC18F i2c uart PIC16F628a c программой рис. 18 | |
PIC16F84A Металлоискатель Free Projects Аннотация: PIC16F628A Бесплатные проекты LED PIC16F84A Бесплатные проекты LED PIC16F877A Бесплатные проекты LED METAL DETECTOR PROGRAM PIC16F84 простая электрическая схема монитора сердечного ритма PIC16F877A проект кодового замка PIC16F876A бесплатные проекты PIC16F73 Бесплатные проекты интерфейса с ЖК PIC16F877A металлоискатель | Оригинал | HP488-60-3 16Ф88 PIC16F84 выходF877, PIC16F87, PIC16F88 ПИК18Ф242, ПИК18Ф248, PIC18F252, PIC18F258, Металлоискатель PIC16F84A Free Projects PIC16F628A Бесплатные проекты светодиодов PIC16F84A Бесплатные проекты светодиодов PIC16F877A Бесплатные проекты светодиодов ПРОГРАММА МЕТАЛЛОИСКАТЕЛЯ PIC16F84 схема простого пульсометра электронный проект кодового замка PIC16F877A Бесплатные проекты PIC16F876A PIC16F73 Бесплатные проекты интерфейса с жк Металлоискатель PIC16F877A | |
2003 — схема mplab icd 3 Резюме: ds41196 PIC12F675-ICD AC162053 DS41191 pic12f675 таблицы данных pic16f676-icd AC162050 mplab icd 3 DS51331 | Оригинал | AC162050 PIC12F629/675 14-контактный AC162052 PIC16F630/676 18-контактный AC162053 ПИК16Ф627А/628А/648А QS-9000 QS-9000 схема mplab icd 3 дс41196 PIC12F675-ICD AC162053 ДС41191 pic12f675 даташиты pic16f676-icd AC162050 млаб мкд 3 ДС51331 | |
2004 — код потока Реферат: pic16c745 принципиальная схема PIC16F628A Бесплатные проекты светодиодных матричных проектов pic программист схема pic16f628a светодиодные проекты схема pic16c745 схема pic16f648 микрочип PIC16F628 Бесплатные проекты MATRIX светодиодные проекты pic16f628a | Оригинал | ЭБ-010-00-1. ЭБ-010-00-1 PIC16C745 код потока pic16c745 принципиальная схема PIC16F628A Бесплатные проекты светодиодов светодиодные матричные проекты схема программатора рис. pic16f628a светодиодные проекты схема pic16c745 микросхема pic16f648 PIC16F628 Бесплатные проекты MATRIX LED проекты pic16f628a | |
2005 — ДС51194 Резюме: PIC12F675-ICD AC162053 AC162049 AC162050 AC162052 AC162055 AC162058 PIC12F635 PIC12F683 | Оригинал | PIC12F629/675 AC162058 AC162050 PIC12F683 AC162052 PIC16F630/676 AC162057 PIC16F684 AC162056 PIC16F688 ДС51194 PIC12F675-ICD AC162053 AC162049 AC162050 AC162052 AC162055 AC162058 PIC12F635 PIC12F683 | |
2010 — примеры кодов PIC16f690 Резюме: Примеры кодов PIC12f675 Примеры кодов PIC18 Примеры кодов PIC16F877 на внешнем генераторе Примеры кодов PIC16f688 Примеры приложений PIC18F4480 Коды примеров PIC18F66J60 Примеры кодов PIC18F4580 Примеры кодов PIC18F2330 Примеры кодов PIC18 прерывания | Оригинал | PIC12F609 PIC16F716 PIC12HV609 PIC16F737 PIC12F615 ДС41302 PIC12HV615 PIC12F629PIC12F675 ДС41190 Примеры кодов PIC16f690 Примеры кодов PIC12f675 Примеры кодов PIC18 Пример кода PIC16F877 на внешнем генераторе Пример кода PIC16f688 Пример кода приложения PIC18F4480 Примеры кодов PIC18F66J60 Пример кода PIC18F4580 PIC18F2330 Пример кодов прерывания PIC18 | |
2007 — примеры кодов PIC16f690 Аннотация: pic16f887 Приложения Примеры кодов PIC16f876 Примеры кодов PIC18 sleep Примеры кодов PIC12f675 Примеры кодов c часов реального времени pic18 Коды PIC18 Примеры кодов pic16f887 pic16f887 Описание Прерывание PIC16F877 | Оригинал | DS80233C-страница Примеры кодов PIC16f690 Приложения pic16f887 Примеры кодов PIC16f876 Пример кода PIC18 для сна Примеры кодов PIC12f675 pic18 часы реального времени c код Примеры кодов PIC18 pic16f887 pic16f887 Описания Прерывание PIC16F877 | |
2005 — частотомер на PIC16F73 Резюме: pic18f6680 пример PIC16F877 прерывание PIC16F628A счетчик PIC18 пример кода прерывания PIC16C62B PIC16C63 PIC16C64A PIC16C65A PIC16C66 | Оригинал | DS80233B-страница частотомер на PIC16F73 пример pic18f6680 Прерывание PIC16F877 Счетчик PIC16F628A Пример кода прерывания PIC18 PIC16C62B PIC16C63 PIC16C64A PIC16C65A PIC16C66 | |