This page is hosted for free by zzz.com.ua, if you are owner of this page, you can remove this message and gain access to many additional features by upgrading your hosting to PRO or VIP for just 32.50 UAH.
Do you want to support owner of this site? Click here and donate to his account some amount, he will be able to use it to pay for any of our services, including removing this ad.

Паяльная станция на базе Arduino

Очередная паяльная станция на Arduino с форума Arduino.ru. Автор OlegK. Сборная информация.

Появилась у меня необходимость перепаять BGA чип, а паяльной станции нет, и отдолжить тоже нет у кого. Есть "смельчаки" которые паяют строительными фенами, но это не наши методы, значит надо себе сделать паяльную станцию, которая по любому пригодится в дальнейшем и не один раз.

Нашел на форуме Arduino.ru конструкцию паяльной станции, автор OlegK. Конструкция понравилась, автор предоставил полное описание и разъяснения для повторения его конструкции, а также отвечает на вопросы форумчан, когда у них что-то не получается.

В общей сложности на форуме представлено четыре варианта паяльной станции, точнее один вариант авторский и три "клона" с модификациями, у которых единый вариант совместимой прошивки. Я представляю Вам свой "клон", который имеет свои отличия, и не полностью совместим по прошивке с остальными вариантами паяльных станций.

Изначально планировал делать паяльную станцию с дисплеем 40x2, Arduino ProMicro, энкодером, часами на DS1307 и печатной платой по размеру дисплея. Потом спалил дисплей и заменил его на LCD 20х4, потом печатные платы получились не удобными в сборе и наладке, потом оказалось, что ProMicro не годится, так как из-за таймеров работает или фен или паяльник, или одно включается только после включения другого... Короче не победил я ProMicro и собрал свой четвертый вариант на Arduino Nano v3, LCD 20x4, DS1307 с управлением одним энкодером.

Общее описание:

Диапазон работы паяльника 100...400 °C, фена 100...450 °C, обороты фена 10...100% (задается в прошивке).

Точность поддержания температуры +/- 2 °С.

Управление - один энкодер.

Паяльная станция имеет защиты по обрыву и короткому замыканию датчиков температуры фена и паяльника, а так же превышению текущей температуры относительно заданной на 50 градусов. Защита отключает регулирующий элемент канала и отключает силовую цепь с помощью реле. Также, имеются плавкие предохранители в цепях нагревателей паяльника и фена.

Время работы фена и паяльника, после включения, ограничено индивидуальным таймером (10 минут, задается в прошивке). Таймер сбрасывается при использовании фена и паяльника при снятии или установки их на подставку. То есть пока пользуемся - таймер сбрасывается, не пользуемся - через 10 минут таймер отключит канал. В фене изначально есть геркон, который отключает фен при установке его на магнитную поставку, а для паяльника геркон еще нужно установить внутрь ручки и задействовать под него провод от заземления, как вариант.

После отключения фена защитой или штатно, происходит его продувка полными оборотами вентилятора, независимо от того, какие обороты были использованы ранее. Температура "сдувается" до 35 градусов (задается в прошивке), затем вентилятор отключается. Вся индикация о состоянии станции выводится на 4-х строчный дисплей, а управление энкодером, выход на заданную температуру, окончание времени таймера и срабатывание защиты озвучиваются бипером.

При включенной паяльной станции в сеть но не задействованных инструментах в течении 20 минут, включается так называемый скрин сэйвер, а по простому на экране выводятся часы и календарь.

Паяльная станция выполнена на базе Arduino Nano v3 (можно использовать Arduino Nano на ATmega168, есть вариант клона на Adruino Mini) и конструктивно имеет одну печатную плату размером 100х100 мм, на которой располагается силовая часть, контроллер и усилитель сигнала термодатчиков фена и паяльника. Для удобства, энкодер установлен на свою маленькую платку. Печатные платы разведены со стороны компонентов, то есть при печати отзеркаливать не надо.

Схема паяльной станции, оформленная пользователем sunjob с форума arduino.ru, хоть и не много отличается от разводки печатной платы, тем не менее понять как, что и куда соединяется - можно.

Источник питания

Блок питания можно использовать как трансформаторный так и импульсный, на 24В. Я использовал импульсный блок питания, который подвергся не большой модификации, а именно межобмоточный обычный конденсатор заменен на специальный Y конденсатор (по обзору kirich с сайта mysku.ru).

Важное дополнение по организации питания паяльной станции

Если Вы питаете станцию от ИБП, то очень вероятен такой момент - на входе ИБП чаще всего имеется цепочка из пары соединённых последовательно конденсаторов, средняя точка которых имеет соединение с заземляющим контактом клеммника и корпусом БП, которые выполняют функцию подавления помех. Возможно, также, и наличие третьего конденсатора, соединяющего общий провод выходной цепи с заземлением.
Если в вашу розетку приходит из щитка земля, то это хорошо, в противном случае, автоматически получаем половину напряжения сети на корпусе БП, т.к. эти конденсаторы образуют делитель напряжения по переменке. Если вы прикручиваете этот БП в металлический корпус, то на корпусе также будет висеть потенциал половины сетевого напряжения. Ну а дальше, в зависимости, соединён ли корпус с землёй контроллера можно получить либо "цирк" с наводками и пощипыванием при касании корпуса, либо даже выход чего-нибудь из строя - контроллера или компьютера (при заливке прошивки).

Тут можно посмотреть схему подобного ИБП - всё вышеописанное относится к конденсаторам С2, С3 и С19 по нумерации этой схемы.

Термофен, разъемы и паяльник

Также заказаны в Китае. Как потом выяснилось - я не умею читать, и заказал паяльник с термопарой, а надо было с терморезистором (в прочем можно было и паяльную станцию переделать), пришлось дозаказать отдельно нагревательный элемент с терморезистором.

Разъемы

 

Термофен

 

Паяльник

 

Нагревательный элемент

Управление

  1. Поворот энкодера влево - уменьшение параметра.
  2. Поворот энкодера вправо - увеличение параметра.
  3. Одиночное короткое нажатие - выбор инструмента.
  4. Одиночное длинное нажатие - включение выбранного инструмента.
  5. Двойное короткое нажатие - выключение выбранного инструмента.
  6. Одиночное длинное нажатие при выбранном параметре "FanRPM" - вход в меню настройки часов и календаря.

Применение компонентов

  1. Полевые транзисторы - можно применить любые N-канальные полевые транзисторы, подходящие по току. В данной конструкции они управляются через оптопару, поэтому logic level полевые транзисторы не требуются.
  2. Симмистор - BT138, BT-139, T410.
  3. Транзистор "возле бипера" - абсолютно любой, маломощный, npn структуры.
  4. Диодный мост в части "контроля нуля сети" - любой маломощный, выдерживающий напряжение сети (не ниже 400 вольт).
  5. Индуктивности любые, 50-200 микрогенри. Можно оставить только ту, что питает операционный усилитель, а вторую заменить перемычкой.
  6. Подстроечные резисторы - лучше применить многооборотные, точнее настройка и дальнейшая стабильность установленных режимов.
  7. Реле подойдут любые с катушкой на 24В, способные коммутировать ток нагрузки. Либо необходимо дополнительно делать цепь питания на другое напряжение, соответствующее напряжению питания катушки реле.
  8. Резисторы - везде будет достаточно 0,125 Вт.
  9. Конденсаторы - если в цепи 24 Вольта, то не менее 35 В. Если в цепи 5 Вольт, то не менее 10 - 16 В. Выше можно, ниже нельзя.
  10. Операционный усилитель. Если применён LM358, то показания АЦП напрямую соответствуют измеренной температуре, для Rail-To-Rail операционного усилителя AD8552 показания АЦП нужно делить пополам. Операционный усилитель указывается в скетче комментированием или раскомментированием #define LM358

Общие рекомендации по запуску и проверке станции

  1. Проверка питания платы. Ничего к ней не подключаем, кроме источника питания - проверяем величины питающих напряжений (особенно 5 вольт, для контроллера) и их наличие на требуемых пинах. Если всё в норме, можно, подавая +5В, через резистор 470-510 Ом на соответствующие пины разъёма, к которому подключается Arduino, убедиться, что срабатывают реле и открываются силовые ключи (можно вместо нагрузки повесить, к примеру, лампочки или фен/паяльник, но в последнем случае открыть ключи кратковременно, на несколько секунд).
  2. Далее подключаем Arduino, фен, паяльник и смотрим, правильно ли выводится индикация (если применялся отличный от проекта дисплей и в коде что-то менялось) и корректно ли происходит ли выбор параметров и их регулирование.
  3. Настройка усилителя термодатчиков (самое гиморное занятие).
  • Потребуется мультиметр или отдельный термометр с термопарой. У меня такой -  TM-902C

  • Подстроечником "Начало" выставляется начальное смещение операционного усилителя, соответствующее температуре окружающей среды (рядом можно положить термометр). Далее, нужно привязать термопару от мультиметра к жалу паяльника и установив небольшую (градусов 100), заданную температуру, ждём, когда устаканится и смотрим на показания дисплея и образцового термометра. Подстроечником "Шкала" устанавливаем текущие показания по образцовому термометру. Затем, можно поднять заданную температуру до 300 град и проверить соответствие её с "эталоном". При необходимости - подстроить. После этого, даём паяльнику полностью остыть и проверяем показания при комнатной температуре. В заключение, можно "прогнать" вышеуказанное ещё разок и убедиться, что диапазон разогнан верно.
  • Для канала фена настройка происходит аналогично, но с учётом того, что расстояние от сопла фена до образцовой термопары выбирается в зависимости от расстояния, при котором планируется работать с феном. У себя я настроил соответствие с образцовым термометром на расстоянии 10 мм.
  • При настройке можно ограничить мощность паяльника и фена, тогда при неполадках устройство не уйдет в "разнос" и не перегреется. Чем меньше мощность тем дольше будет набор температуры.
    В скетче это процедура
     
    S_P для паяльника 
    SPower = constrain(TempPower, 0, max_power);//вместо max_power, к примеру пишем 125, получим примерно 50% ограничение 
     
    и HA_PI для фена 
    HAPower = constrain(tmp_power, 0.0, max_power);//вместо max_power пишем, к примеру, 30, получим 30% ограничение

Применённый способ измерения, при его достаточно неудобной настройке, позволяет диагностировать аварийное состояние цепей термодатчиков - если показания ниже 10 градусов - короткое замыкание в цепи датчика, а при показаниях 500 и выше - обрыв.

Важно!!!

Первое включение всегда контролируйте термометром - пока усилитель термодатчиков не "разогнан" по диапазону, он может сильно занижать считываемую температуру и, соответственно, станция будет сильно разогревать нагрузку. Особенно это относится к фену, т.к. он раскаляется очень быстро и его можно сжечь. Скорость вентилятора фена, при настройке, лучше устанавливать максимальную.

Индикация ошибок

  1. 0. Всё в порядке.
  2. E1. Защита от критического повышения температуры (макс. рабочая + 20 град. - т.е. 420 для паяльника и 470 для фена). В основном, может отработать при обрыве в канале измерения. К примеру, провод оборвался на термодатчик или неисправность измерительного ОУ. Оно, как бы, не опасно, т.к. при этом выход регулятора обнулится и физически нагрева не должно быть, но есть ситуация, когда контакт может быть неустойчивым и работа будет некорректной. Также, может возникнуть пробой регулирующего элемента, в этом случае всё серьёзнее и выполняется подстраховка одной из защит по перегреву, что описаны ниже.
    Данная защита введена всегда и удалять её не рекомендуется.
  3. E2. Защита по низкой температуре (измеренное значение ниже 10 град.). Это свидетельствует также о неисправности в канале измерения (к примеру замкнулись провода с термодатчика или неисправность измерительного ОУ). В этом случае, автоматика будет думать, что нужно греть на максимуме, что само-собой ни к чему хорошему не приведёт.
    Данная защита введена всегда и удалять её не рекомендуется.
  4. E3. Защита по относительно небольшому перегреву (превышение над заданной на 20 град.).
    Эта защита автоматически выводится при изменении задания "вниз" и вводится при подтягивании измеренной температуры к заданной + 15 град. При изменении задания вверх защита не выводится. Может сработать при излишнем перерегулировании (более 20 град.) вверх.
    Является необязательной, можно удалить/закомментировать, если считаете, что не требуется.
  5. E4. Защита при повышении температуры на +10 град относительно заданной.
    Вводится в работу только при достижении точки стабилизации (два коротких бипа) и выводится из работы при выходе из режима стабилизации. Является необязательной, можно удалить/закомментировать, если считаете, что не требуется.
  6. E5. то же, что E4, только срабатывает на понижение -10 град, относительно задания. Разделены они только для того, что бы можно было их опознавать. Является необязательной, можно удалить/закомментировать, если считаете, что не требуется. Для паяльника не имеет смысла.
  7. E6. Защита при падении температуры и "от зависания температуры". Условие - в течении нескольких секунд, если температура падает или "стоит" и она ниже заданной и мощность больше 0.
    То есть условия, когда станция работала, но внезапно перестала греть, к примеру, по причине обрыва регулирующего элемента или нагревателя. По зависанию (гипотетический случай) - некая неисправность измерительного ОУ. Недостаток - не сработает, если зависнет именно в точке стабилизации, что, думается, маловероятно.
    Защита выводится из работы при достижении режима стабилизации и вводится автоматически при выходе из него. Является необязательной, можно удалить/закомментировать, если считаете, что не требуется.
  8. E7. Защита при неконтролируемом нагреве. Частично дублирует E3, но тот не сработает, если было изменено задание вниз, температура ещё не спустилась до значения ввода защиты в работу и произошёл пробой регулирующего элемента. Должна успеть "поймать ситуацию" до срабатывания E1.
    Защита выводится из работы при достижении режима стабилизации и вводится автоматически при выходе из него. Является необязательной, можно удалить/закомментировать, если считаете, что не требуется.

Корпус

Каждый сам выбирает материал из чего делать корпус, или от чего его приспособить. Я решил сделать корпус из оргстекла, при чем попалось именно оргстекло (из каких-то залежей времен СССР), что немного негативно сказалось на внешнем виде конечного изделия.

Корпус был начерчен в AutoCAD и отдан на лазерную порезку. В рекомендациях контор занимающихся лазерной порезкой и у некоторых производителей акриловых листов, можно увидеть рекомендацию по отпуску вырезанных деталей. Скажу от себя - это надо делать обязательно, иначе деталь растрескается. Сначала я не мог понять зачем это надо, пока при сборке не начало все растрескиваться и мааааленький кусочек попал мне в глаз, который я почувствовал только на третий день и пришлось идти к врачу, чтобы этот кусочек удалить.

Корпус состоит из двух частей: первая это собственно основная коробка с электроникой; вторая - для хранения фена, паяльника и прочего, а также как подставка.

Как делал я потом. На работе есть обогреватель UFO, который я выставил горизонтально над некоторой поверхностью и с помощью ИК термометра подобрал оптимальную высоту установки обогревателя так, чтобы в зоне обогрева была температура 70-80 градусов. Затем разложив под обогревателем детали корпуса из оргстекла я давал прогреться им примерно 30-40 минут с каждой стороны и давал остыть естественным путем. Эта процедура сняла напряжения в местах лазерного реза и сделала детали более "пластичными".

MaD-TuX

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

Просто делюсь своими наработками

Медиа

Паяльная станция на базе Arduino Nano v3 MaD-TuX