Паяльная станция (контроллер фена)

Блог им. kvital
Дело было так: со временем у меня появилась потребность в паяльном фене. Эта вещь бесспорно полезная и уже, можно сказать, незаменима. Сам фен я купил у китайцев, а контроллер решил сделать самому…


Можно с легкостью найти кучу готовых конструкций. К примеру, вот эта является довольно популярной, но мне не нравится 317 на вентиляторе. Это можно заменить шимом и полевичком. Тем более моторчик на 24 В 0.15А и он дует он довольно слабо.

Наиболее мне понравилась эта конструкция. Особенно схема включения / выключения: здесь по нажатии кнопки контроллер включает реле и держит питания на плату. А при необходимости выключения — охладит фен, выключит реле и сам себя. Возможно это типична схема такого включения, но увидел её я впервые.

Я решил сделать ни сё, ни то, а что-то своё. Пытался использовать минимум деталей. Получился не минимум, но удовлетворительно.


Интерфейс реализован на 3х сегментных индикаторах и энкодере с кнопкой. Меню контроллера имеет три режима: отображение текущей температуры, установление температуры и установления потока. Выключается фен при замыкании геркона (в подставке в фена должна быть магнитик). На подставке нагреватель выключается, но вентилятор работает пока его не охладит.

Начитавшись о самовоспламенения паяльных станций поставил на линию нагревателя реле. Когда фен работает, то реле включено и корректировка температуры происходит с помощью 2х тиристоров, включенных антипараллельно. Управление тиристорами стандартно — через оптопары. Последовательно с диодами оптопар включено светодиод для визуально контроля нагрева. Это все можно заменить и одним симистором, но тогда стоит поставить фильтр на 220.

В контроллере еще осталось 3 ноги + RST. В принципе можно подключить ещёпаяльник типа Т12 (как раз нагреватель, термопара и вибродатчик).
С аппаратной частью все. Все узлы достаточно стандартны.

Программная часть тоже короткая. В основном все происходит в прерывании по таймеру, а в while (1) крутится простое меню. Выставленную температуру и поток контроллер записывает в eeprom. Для стабилизации показа термопары использовал простенький фильтр Калмана:
   adc_val= read_adc(4);//read new adc value
   adc=0.8*adc+0.2*adc_val;   //Kalman filter <s></s>
Я этот проект делал для своего саморазвития, поэтому схему и код добавил к статье. Я не спорю, что у китайцев это проще купить (возможно даже дешевле).

Если будете повторять, то следует поставить dc / dc преобразователь на плате, это уменьшит количество подключений и необходимых напряжений. Сначала я ставил кренку, но она сильно грелась. Стоит, также, разнести на плате низковольтную часть и часть 220. У меня, например, она вынесенное в хвост платы.

10 комментариев

avatar
Просто и эффективно! Мне нравится! Только не понял, насчет симистора, почему ему нужен будет фильтр, а двум тиристорам нет?
avatar
Симистор может открыться сам. Тиристор считается более надёжным. Но по большему счёту фильтр нужен и там, и там.
avatar
Float для МК = зло, так будет лучше:
adc_val= read_adc(4);//read new adc value
adc=(8*adc)/10+(2*adc_val)/10; //Kalman filter
avatar
может уж тогда и умножения заменить сдвигами и одно деление на 5 оставить?
avatar
компилятор опитизирует умножения на сдвиг, но согласен можно указать явно.
Комментарий отредактирован 2019-05-07 21:09:07 пользователем Nemo
avatar
Крутая конструкция, прямо добавить стенки и на продажу. :D
avatar
альо, поц? прошивка где?
avatar
Здравствуйте. Заинтересовала конструкция. Скажите, а исходник под CVAVR? Мне просто надо переделать под общий анод. Фьюзы заводские по умолчанию? Можно ли использовать мегу8 без L, там какая частота?
avatar
Я писал в CVAVR.
Фьюзы по умолчанию.
У меня в конструкции стоит просто мега, без L. Частота внутреннего RC генератора 1 МГц.
avatar
Спасибо, я уже по делителю таймера и по синтаксису понял. Соберу — отпишусь.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.