Термостат на базе Arduino

Проект доступен на github.com

Неисправность

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

Поиск решения

Варианты по решению проблемы:

  1. Отремонтировать нерабочий термостат.
  2. Купить новый термостат.
  3. Найти замену.

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

Было решено выбрать 3-ий вариант и искать замену. В этом случае открываются море возможностей для творчества. Минусом является, что все термостаты не совместимы со штатной панелью и придется «колхозить».

Самый простой и дешевый вариант — это поставить механический термостат.

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

Другой бюджетный вариант — приспособить электронный термостат

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

Появилась идея собрать свой термостат на базе Arduino, который позволит выполнить любые «хотелки».

Проект «Термостат на базе Arduino»

Основные требования:

  • гибкая настройка в параметрах прошивки
  • минимальное количество кнопок (в идеале регулировка одной кнопкой)
  • информационный дисплей с подсветкой.

Компоненты для сборки прототипа:

  • Плата Arduino Nano.
  • Дисплей LCD1602 I2C Blue.
  • Реле TONGLING JQC-3FF-S-Z. Для включения нагревателя на 220В от 5В.
  • Потенциометр для регулировки температуры.
  • Кнопка для включения\выключения подсветки.
  • 4 красных светодиода.
  • Датчик для измерения температуры.
  • Резисторы.

Фото прототипа:

В рамках проекта были разработаны новые библиотеки и основной код для работы устройства. Программный код (прошивка) и необходимые библиотеки для Arduino доступны на github.com по ссылке: https://github.com/neosy/arduino_thermostat

Рабочее устройство было собрано в корпусе из белого пластика.

Термостат в рабочем состоянии

Управление термостатом:

  • Кнопка — включение\выключение подсветки.
  • Поворотная ручка — плавная регулировка предельной температуры нагрева (в параметрах прошивки ограничение до 80 градусов). На дисплее T max.

T max — максимальная температура нагрева воды.
T cur — текущая температура воды.

Красные светодиоды — это прогресс текущей температуры. При нагреве светодиоды загораются\мигают последовательно. На дисплее процесс нагрева\остывания отображается стрелкой вверх\вниз.

Термостат работает стабильно и не зависает. В случае с перебоем электричества, устройство перезагружается и продолжает работать. В программе реализована функция Watchdog, которая следит за работой устройства. Если устройство не отвечает в течение 8 секунд, то Arduino автоматически перезагружается.

Процесс сборки устройства и подключения в данной статье не представлены.

Программный код в течение длительного времени тестировался и дорабатывался. Текущая версия прошивки v12.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии