Всем привет, дорогие друзья. Данная статья не ориентирована на ярых программистов, крутых схемотехников и радиоэлектронщиков, поэтому и прошу сильно не критиковать за результаты.
Предыстория
![а вот и сама горелка а вот и сама горелка](https://habrastorage.org/getpro/habr/upload_files/2c6/d85/5cd/2c6d855cdb482b571be99091fdc5e97e.png)
Живу я в ПГТ, относительно недавно обустраиваемся в новом месте жительства. И вот, как бы начинается зима, а мы по старинке отапливаем дом дровами. На самоделку меня сподвигло не мое желание, так как мне и так неплохо было, а отец. Он решил сделать гранульную факельную горелку. Все бы ничего, да когда корпус был уже сварен, гранулы куплены, остаётся вопрос, как это все завести. Принято радикальное решение: шнек подачи движется благодаря моторчику дворника от ВАЗ, коих у нас много, ибо занимаемся ремонтом/разборкой авто, в случае чего можно заменить на такой же, не потеряв характеристики. А вот раздув осуществлён центробежным вентилятором печки от какого-то Ниссана, поломки которого боятся точно не стоит. Собрали, запустили, а управлять то как?
![базовая схема для управления горением котла базовая схема для управления горением котла](https://habrastorage.org/getpro/habr/upload_files/96b/9b2/11e/96b9b211e16309633097ccb18d62fa31.jpg)
Тут уже подключился я, который вроде как даже по диплому "программист", но к сожалению, забил болт на учебу, и естественно, являюсь обычным любителем всякой электроники и не более. Сходу и без разбора заказал реле времени для шнека и ШИМ-регулятор для вентилятора. Подключил, подобрал тайминги работы, но из-за столь простой "автоматики" начались бессонные ночи. А вдруг закипит, прорвет трубу, что дальше делать? А схема была действительно опасна, т.к. КПД котла получилось очень большим для нашей горелки, поэтому температура воды либо 60+, либо котел тухнет. Поэтому отец исправил сваркой систему воздухоснабжения, тем самым снизив минимальный порог температуры. Но теперь, фиг его знает, достаточно ли мощности для нужной температуры, или наоборот, а не закипит ли?
Температура, которую выдает сие изделие
![Типичная температура воды в системе Типичная температура воды в системе](https://habrastorage.org/getpro/habr/upload_files/8f7/b82/55f/8f7b8255ff02ebb02b0353c0bd09af2e.jpg)
![Arduino nano v3 Arduino nano v3](https://habrastorage.org/getpro/habr/upload_files/7b2/f00/775/7b2f007751ce826b9aca54acc3330f9f.jpg)
И тут я вспомнил, что когда-то игрался с Ардуинкой. Ровно с того момента я подумал, а почему бы не запилить автоматику на ее базе? Да, я знаю, что доверять столь опасную приблуду ардуине - идея плохая. Но выбора у меня нет, ибо бюджет в зиму немного жмёт, да и заводская автоматика не столь прекрасна ( у друга моего отца именно такая, долго он с ней игрался). Как только я сообщил о этой идее отцу, сразу был поставлен ультиматум: тыжпрограммист, давай делай, иначе будешь сам ночами сидеть у котла и крутить настроечки котла, дабы не спалить все к чертям.
Схема, сборка, код и запуск
Задача поставлена, надо двигаться. Главный плюс в том, что моторы работают от 12В, как и ардуино с драйвером двигателя. Заказываю я Ардуину, реле с высоким порогом нагрузки (оказывается, моторчик дворника жрет ток, как голодная собака, 20 А блок не с самой большой лёгкостью переваривал ее), ну и ШИМ-контроллер моторчика L298N на 2 А, вентилятор печки не такой уж и прожорливый, к счастью(я так думал до реальных тестов). Датчик температуры взял ds18b20, не знаю почему. Приехали ко мне комплектушки, решил я поиграться, а оказывается, датчику температуры резистор нужен. Я расстроился и забыл на пару дней. Т.к. живу я в пригороде, магазинов радиоэлектроники у меня нет, а в город не особо нужно было, забыл я о проекте на недели две. Но вот, купил я наконец резисторы, собрал поигрался, в качестве индикатора работы прицепил компьютерный вентилятор к ШИМ, а к реле ничего не цеплял, т.к. у него есть индикатор работы в виде светодиода. Обрадовался, бегу хвастаться отцу, но случайно соприкоснув ардуино к чему-то металлическому, закоротил ее. Но я не отчаился, заказал ещё две штуки, и в нагрузку докупил дисплей 1602, а то как-то не по-боярски выходит, автоматика и без дисплея.
![все нужные компоненты все нужные компоненты](https://habrastorage.org/getpro/habr/upload_files/f5b/165/b3e/f5b165b3e49ecc399f8153041074f8e2.jpg)
Список конкретных комплектующих:
В моем случае - Arduino Nano
Датчик температуры L298N
Резистор 4.7кОм для датчика
Твердотельное Реле SSR 40 DA
Дисплей 1602 с I2C переходником
Кучка беспаечных проводов (паять я не умею, поэтому собрал все на фишках и клеммах)
Сначала была взята коробка от роутера, а потом большая электрическая доза
![тестовая сборка тестовая сборка](https://habrastorage.org/getpro/habr/upload_files/354/d4e/4b9/354d4e4b93edc7d40c13404f4d31d0b3.png)
И вот приехала ко мне пачка ардуин и дисплей - я принялся "кодить". Код к вечеру был готов, в качестве DIY коробки выбрал корпус от старого роутера, но не рассчитав высоту радиатора ШИМ-контроллера, удалил часть крышки, дабы она закрылась. С того момента было решено, что коробка тестовая, так как уже изуродована и я особо не старался над внешним видом.
![Схема, сделанная моими кривыми ручками Схема, сделанная моими кривыми ручками](https://habrastorage.org/getpro/habr/upload_files/5d0/f80/fb4/5d0f80fb4291db968fb83fa6109a4b1a.png)
По факту написания статьи долго игрался с ШИМ, а точнее с устранением шума, издаваемого с ардуино. Решил все библиотекой Gyver, которая увеличивает частоту ШИМ-сигнала. И раз уж полез менять код, который работает на трёхслойных матах и кривых руках, то решил сразу найти библиотеку, которая добавит русские символы в мой и так никудышний дисплей. спустя полчаса рысканий по просторам интернета, нашел подходящую библиотеку, которая подошла к моему I2C адаптеру дисплея.
![](https://habrastorage.org/getpro/habr/upload_files/b1b/a23/e10/b1ba23e10767681c380ff7f5184453d2.jpg)
Вот такие дела, народ, ну а теперь - выводы:
![окончательный вариант сборки окончательный вариант сборки](https://habrastorage.org/getpro/habr/upload_files/9b4/f0a/ff5/9b4f0aff55ede3384bd9256bae7fe548.jpg)
В итоге, что у меня есть: кнопка отдельной подачи пеллеты для розжига (над идеей авторозжига я думаю ещё), режим "разгона" температурного режима, путем быстрой подачи пеллет и высоких оборотов раздува, ну и температурные пороги в виде 60 и 80 градусов, в которых автоматика и работает. Если конкретней, то от 60 до 80 горелка работает в быстром режиме. Как только доходит до 80, то вплоть до 60 градусов снижает свою мощность, и все это до бесконечности: вверх-вниз. В качестве отсекателя всей электроники поставлю реле инкубатора, а то не доверяю своему коду. Естественно, все это отображается на дисплее, а именно: текущее состояние подачи( ожидание/подача), режим работы( разжигательный, нагрев, охлаждение), ну и конечно, температура, которая по ощущениям обновляется раз в 0.7-0.8 секунд. Один нюанс, подача реализована через delay(), из-за чего, во время подачи (6-8 секунд) ничего не происходит, кроме подачи, вплоть до вычисления температуры. Не думаю, что это столь критическая проблема, так как когда котел работает в режиме, за эти 6-8 секунд он даже 0,2 градуса не наберёт/скинет. А на этом всё, если вам тема будет интересна, то попробую реализовать систему авторозжига и систему тушения (путем прекращения подачи и продувки на максимальной мощности). Да и вообще, голове куча идей, нужна только мотивация и хоть какой-то бюджет, для их реализации. Благо, ещё одна ардуина осталась, можно что-то да придумать.
Ostrovv
… а планируются статьи на тему "… умный дом" или "… оборачиваем пины IO в классы"?