Как стать автором
Обновить

Cамодельная автоматика пеллетной горелки на базе Arduino nano

Время на прочтение 4 мин
Количество просмотров 20K

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

Предыстория

а вот и сама горелка
а вот и сама горелка

Живу я в ПГТ, относительно недавно обустраиваемся в новом месте жительства. И вот, как бы начинается зима, а мы по старинке отапливаем дом дровами. На самоделку меня сподвигло не мое желание, так как мне и так неплохо было, а отец. Он решил сделать гранульную факельную горелку. Все бы ничего, да когда корпус был уже сварен, гранулы куплены, остаётся вопрос, как это все завести. Принято радикальное решение: шнек подачи движется благодаря моторчику дворника от ВАЗ, коих у нас много, ибо занимаемся ремонтом/разборкой авто, в случае чего можно заменить на такой же, не потеряв характеристики. А вот раздув осуществлён центробежным вентилятором печки от какого-то Ниссана, поломки которого боятся точно не стоит. Собрали, запустили, а управлять то как?

базовая схема для управления горением котла
базовая схема для управления горением котла

Тут уже подключился я, который вроде как даже по диплому "программист", но к сожалению, забил болт на учебу, и естественно, являюсь обычным любителем всякой электроники и не более. Сходу и без разбора заказал реле времени для шнека и ШИМ-регулятор для вентилятора. Подключил, подобрал тайминги работы, но из-за столь простой "автоматики" начались бессонные ночи. А вдруг закипит, прорвет трубу, что дальше делать? А схема была действительно опасна, т.к. КПД котла получилось очень большим для нашей горелки, поэтому температура воды либо 60+, либо котел тухнет. Поэтому отец исправил сваркой систему воздухоснабжения, тем самым снизив минимальный порог температуры. Но теперь, фиг его знает, достаточно ли мощности для нужной температуры, или наоборот, а не закипит ли?

Температура, которую выдает сие изделие
Типичная температура воды в системе
Типичная температура воды в системе
Arduino nano v3
Arduino nano v3

И тут я вспомнил, что когда-то игрался с Ардуинкой. Ровно с того момента я подумал, а почему бы не запилить автоматику на ее базе? Да, я знаю, что доверять столь опасную приблуду ардуине - идея плохая. Но выбора у меня нет, ибо бюджет в зиму немного жмёт, да и заводская автоматика не столь прекрасна ( у друга моего отца именно такая, долго он с ней игрался). Как только я сообщил о этой идее отцу, сразу был поставлен ультиматум: тыжпрограммист, давай делай, иначе будешь сам ночами сидеть у котла и крутить настроечки котла, дабы не спалить все к чертям.

Схема, сборка, код и запуск

Задача поставлена, надо двигаться. Главный плюс в том, что моторы работают от 12В, как и ардуино с драйвером двигателя. Заказываю я Ардуину, реле с высоким порогом нагрузки (оказывается, моторчик дворника жрет ток, как голодная собака, 20 А блок не с самой большой лёгкостью переваривал ее), ну и ШИМ-контроллер моторчика L298N на 2 А, вентилятор печки не такой уж и прожорливый, к счастью(я так думал до реальных тестов). Датчик температуры взял ds18b20, не знаю почему. Приехали ко мне комплектушки, решил я поиграться, а оказывается, датчику температуры резистор нужен. Я расстроился и забыл на пару дней. Т.к. живу я в пригороде, магазинов радиоэлектроники у меня нет, а в город не особо нужно было, забыл я о проекте на недели две. Но вот, купил я наконец резисторы, собрал поигрался, в качестве индикатора работы прицепил компьютерный вентилятор к ШИМ, а к реле ничего не цеплял, т.к. у него есть индикатор работы в виде светодиода. Обрадовался, бегу хвастаться отцу, но случайно соприкоснув ардуино к чему-то металлическому, закоротил ее. Но я не отчаился, заказал ещё две штуки, и в нагрузку докупил дисплей 1602, а то как-то не по-боярски выходит, автоматика и без дисплея.

все нужные компоненты
все нужные компоненты
Список конкретных комплектующих:
  1. В моем случае - Arduino Nano

  2. Датчик температуры L298N

  3. Резистор 4.7кОм для датчика

  4. Твердотельное Реле SSR 40 DA

  5. Дисплей 1602 с I2C переходником

  6. Кучка беспаечных проводов (паять я не умею, поэтому собрал все на фишках и клеммах)

  7. Сначала была взята коробка от роутера, а потом большая электрическая доза

тестовая сборка
тестовая сборка

И вот приехала ко мне пачка ардуин и дисплей - я принялся "кодить". Код к вечеру был готов, в качестве DIY коробки выбрал корпус от старого роутера, но не рассчитав высоту радиатора ШИМ-контроллера, удалил часть крышки, дабы она закрылась. С того момента было решено, что коробка тестовая, так как уже изуродована и я особо не старался над внешним видом.

Схема, сделанная моими кривыми ручками
Схема, сделанная моими кривыми ручками

По факту написания статьи долго игрался с ШИМ, а точнее с устранением шума, издаваемого с ардуино. Решил все библиотекой Gyver, которая увеличивает частоту ШИМ-сигнала. И раз уж полез менять код, который работает на трёхслойных матах и кривых руках, то решил сразу найти библиотеку, которая добавит русские символы в мой и так никудышний дисплей. спустя полчаса рысканий по просторам интернета, нашел подходящую библиотеку, которая подошла к моему I2C адаптеру дисплея.

Вот такие дела, народ, ну а теперь - выводы:

окончательный вариант сборки
окончательный вариант сборки

В итоге, что у меня есть: кнопка отдельной подачи пеллеты для розжига (над идеей авторозжига я думаю ещё), режим "разгона" температурного режима, путем быстрой подачи пеллет и высоких оборотов раздува, ну и температурные пороги в виде 60 и 80 градусов, в которых автоматика и работает. Если конкретней, то от 60 до 80 горелка работает в быстром режиме. Как только доходит до 80, то вплоть до 60 градусов снижает свою мощность, и все это до бесконечности: вверх-вниз. В качестве отсекателя всей электроники поставлю реле инкубатора, а то не доверяю своему коду. Естественно, все это отображается на дисплее, а именно: текущее состояние подачи( ожидание/подача), режим работы( разжигательный, нагрев, охлаждение), ну и конечно, температура, которая по ощущениям обновляется раз в 0.7-0.8 секунд. Один нюанс, подача реализована через delay(), из-за чего, во время подачи (6-8 секунд) ничего не происходит, кроме подачи, вплоть до вычисления температуры. Не думаю, что это столь критическая проблема, так как когда котел работает в режиме, за эти 6-8 секунд он даже 0,2 градуса не наберёт/скинет. А на этом всё, если вам тема будет интересна, то попробую реализовать систему авторозжига и систему тушения (путем прекращения подачи и продувки на максимальной мощности). Да и вообще, голове куча идей, нужна только мотивация и хоть какой-то бюджет, для их реализации. Благо, ещё одна ардуина осталась, можно что-то да придумать.

схема, код и библиотеки <---

Теги:
Хабы:
+14
Комментарии 26
Комментарии Комментарии 26

Публикации

Истории

Ближайшие события

PG Bootcamp 2024
Дата 16 апреля
Время 09:30 – 21:00
Место
Минск Онлайн
EvaConf 2024
Дата 16 апреля
Время 11:00 – 16:00
Место
Москва Онлайн
Weekend Offer в AliExpress
Дата 20 – 21 апреля
Время 10:00 – 20:00
Место
Онлайн