Это устройство разрабатывалось как контроллер дровяного котла и содержит два полноценных термостата. В меню можно настраивать режим работы выходов управления.
Основной алгоритм меню и работы такой:
Имеем мы кнопки -/+ первого выхода, -/+ второго выхода, MENU , AUTO/HWM. Нажимая на кнопку MENU мы по часовой стрелке "листаем" меню.
Главное меню, в нем происходит измерение температуры и кнопками -/+ можно настраивать температуру (соответствующего выхода).
При удержании кнопок - и + мы переходим в режим настройки дельты.
Если не нажимать на кнопки около 10секунд, мы автоматически выходим с режима настройки дельты в режим настройки температуры.
При кратковременном нажатии на кнопку мы добавляем/убавляем параметр на еденичку. При удержании - быстро (перебираем) добавляем/убавляем параметр.
Благодаря именно такому алгоритму устройством очень удобно пользоваться.
И так нажали кнопку MENU , переходим в первое меню "конфигурация выходов"
Сразу договоримся, что датчики температуры у нас Т1,Т2, а выходы у нас Q1,Q2 соответственно.
Первый режим:
T1=Q1
T2=Q2
Этот параметр выбирается по умолчанию, как только прошили контроллер. В этом режиме выходы работают на свой отдельный датчик температуры.
Два независимых термостата.
T1=Q2
T2=Q1
При такой конфигурации второй выход работает от первого датчика, а первый от второго.
T1=OFF
T2=Q1=Q2
В этом режиме оба выхода работают от второго датчика температуры
Идеально подходит к таким устройствам как: "инкубатор двух уровневого подогрева" , охлаждение и обогрев по двум точкам "климат-контроль", промышленные усадочные машины и т.д.
T1=Q1
T2=OFF
Работает один термостат
T1=Q1=Q2
T2=OFF
В этом режиме оба выхода работают от первого датчика температуры
Идеально подходит к таким устройствам как: "инкубатор двух уровневого подогрева" , охлаждение и обогрев по двум точкам "климат-контроль", промышленные усадочные машины и т.д.
T1=OFF
T2=OFF
Используется без функции термостата только измерение температуры.
В следующем меню у нас настройка закрытия шибера (дверцы котла)
Если проект не используется для дровяного котла то этот параметр нужно выключить.
Если же выставить например 25град.
То когда в котле дрова догорят и температура трубы упадет ниже этого предела, то привод закроет шибер.
Диапазон установки температуры закрытия шибера 20.....69град.
Следующее меню у нас ручной режим управления шибером.
Нажимая кнопку AUTO/HWM мы открываем либо закрываем шибер.
В него можно попасть перебирая меню кнопкой MENU а так же быстро можно попасть нажав кнопку AUTO/HWM
Если не нажимать никаких кнопок примерно 30секунд, мы автоматически возвращаемся в главное меню.
Если мы находимся в первом или втором меню и если нажать кнопку AUTO/HWM мы выходим в главное меню, то есть кнопка эта работает как RETURN.
Все настройки сохраняются в энергонезависимую память, если мы изменили параметр и если прошло около 60секунд.
Устройство еще в своем составе имеет алгоритм определения аварии. Авария генерируется на отдельном выводе микроконтроллера в случае, если обрыв или неисправность датчика или если температура выше 125град.
При активации аварии, все управляющие выходы отключаются, а на отдельном выводе (на выводе аварии) генерируется сигнал высокого уровня. А на дисплее вместо температуры отображается error.
Еще есть статусный светодиод, который сигнализирует нормальную работу устройства и сигнализирует чтение температуры.
Введено автоотключение подсветки дисплея через 5минут.
В будущем планирую добавить обратную связь от привода для вывода сообщения на дисплей при аварии привода.
Проект буду поддерживать и усовершенствовать постоянно.
Выкладываю первую демо версию прошивки контроллера (в демо режиме все функции доступны в полном объеме, только при включении будет отображаться данные разработчика, то есть мои данные )
Прошу меня не ругать за это.
Фьюзы надо запрограммировать на частоту кварца 8мгц
Для этого ЧИТАЕТЕ фьюзы с МК и ставите биты отвечающие за частоту. это у нас CKSEL3..0
Новая версия прошивки V2.0 (от 24.07.2013):
- введена поддержка ATmega88 (отдельная прошивка)
- исправлены программные ошибки
- ускорен опрос термодатчиков вместо ~10сек. - 2сек. (только в ATmega8)
- оптимизирован код в целом.
Описание и вид отображения на дисплее разных сообщений
Ниже вы можете скачать проект в Proteus, файлы печатной платы в LAY и прошивку
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
U1 | МК AVR 8-бит | ATmega8 | 1 | ATmega88 | Поиск в магазине Отрон | |
U2 | Оптопара | MOC3021M | 1 | Поиск в магазине Отрон | ||
U3, U4 | Датчик температуры | DS18B20 | 2 | Поиск в магазине Отрон | ||
Q1 | MOSFET-транзистор | IRF540 | 1 | Поиск в магазине Отрон | ||
Q2 | Биполярный транзистор | 2N5551 | 1 | Поиск в магазине Отрон | ||
LCD1 | LCD-дисплей | LM016 | 1 | Standard HD44780 LCDs 2x16 | Поиск в магазине Отрон | |
D1-D4 | Светодиод | 4 | Поиск в магазине Отрон | |||
R1 | Резистор | 4.7 кОм | 1 | Поиск в магазине Отрон | ||
R2, R4-R8 | Резистор | 1 кОм | 6 | Поиск в магазине Отрон | ||
R3, R9 | Резистор | 10 кОм | 2 | Поиск в магазине Отрон | ||
Кнопка | 6 | Поиск в магазине Отрон | ||||
Скачать список элементов (PDF)
Прикрепленные файлы:
- drova.rar (80 Кб)
Комментарии (50) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
PS: В программировании не силён...
Только есть просьба подправить прошивку для совместной работы водяного нагревателя и простой печи,так устроено отопление в доме.
Шэбера конечно нет, но есть помпа которая гоняет воду.
Хотелось бы следующее; чтобы когда топится печь, включалась помпа. Так же когда упадет температура до установленной и включится нагреватель тоже включалась помпа. Расширить диапазон измерения до 125 градусов, так же диапазон установок маловат.
[Автор]
[Автор]
[Автор]
[Автор]
По поводу шибера:
"Нажимая кнопку AUTO/HWM мы открываем либо закрываем шибер."
Но если мне память не изменяет , то это PB3. Вы можете это проверить , открывая в ручную прямо из меню.
[Автор]
P.S. Работает как 2 независимых термостата 1 выход на охлаждение 2 на нагрев через 5 контактное реле. Фьюз WTDON может поможет проблеме но его надо прописать в коде. Спасибо за разработку.
[Автор]
Сделать так как Вы хотите - можно, но у меня сейчас нету времени...
[Автор]
Чтобы получить его - надо его купить :)
Логично?
[Автор]
1) В прилагаемом архиве печатная плата, по-моему, вообще не для этой схемы.
2) Как контроллер считывает информацию с датчиков DS18B20, если выводы DQ соединены между собой и подаются на 14 ножку МК?
3) В описании схемы указано что Фьюзы надо запрограммировать на частоту кварца 8МГц. А где на схеме кварц?
4) А можно выложить скриншот окошка где выставляются фьюзы для ATmega8?
[Автор]
1) Для этой, просто затачивалась под имеющиеся компоненты + там есть "СМД перемычки".
2) Датчики считываются по очереди. У каждого датчика есть уникальный адрес.
3) Схема взята из файла симуляции. В симуляторе проект тестировался от внутреннего резонатора на частоту 8МГц.
4) Можно, но пишите в личку.
Так как твердотопливные котлы мене регулируемые то эты режиме нужно предусмотреть.
Если возможно еще один режим для обдува и ускоренного подогрева в начальной стадии или вообще иметь этот режим.
[Автор]
[Автор]
[Автор]
[Автор]
Могу ли я установить температуру 37,7 градусов. Этот термостат включен в инкубаторе?
[Автор]
[Автор]
С паяльником то я дружу а вот с программированием совсем никак, а данная разработка очень полезна в хозяйстве... В любом случае огромный респект за ваш труд.
[Автор]
И платная только в том случае, если нужно доработать прошивку под определенные задачи.
T2=Q1=Q2 и T2=OFF
T1=Q1=Q2 т.е. чтобы один из двух можно было физически удалить. Для меги8
[Автор]