Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Контроллер паяльника для Hakko 907 v.2

Компоненты и расходные материалы

утюг hakko 907
× 1
5-контактный авиационный штекер
× 1
преобразователь постоянного тока в постоянный
× 1
Arduino Nano R3
× 1
ЖК-экран 8x2
× 1
усилитель mcp602 или аналог
× 1
mosfet irfz44n
× 1
fr107 выпрямительный диод быстрого восстановления
× 1
NPN-транзистор общего назначения
× 1
PNP-транзистор общего назначения
× 1
Поворотный энкодер с кнопкой
× 1
Конденсатор 1000 мкФ 35 В
× 1
Конденсатор 100 нФ
× 4
Резистор 1 кОм
× 2
Резистор 10 кОм
× 1
Резистор 100 кОм
× 2
Многооборотный прецизионный потенциометр - 10 кОм (25 витков)
× 1
Многооборотный потенциометр 500 тыс.
× 1
Зуммер
× 1

Необходимые инструменты и машины

Паяльник (общий)

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

Недорогой контроллер пайки

ОБНОВЛЕНО 04/03/2019 обновлены схемы и описание

ОБНОВЛЕНО 18.02.2018:обновлена ​​процедура калибровки

ОБНОВЛЕНО 01.08.2017:исправлена ​​ошибка скетча, добавлен скетч для lcd1602

ОБНОВЛЕНО 31.07.2017:реализованы новые схемы оборудования

ОБНОВЛЕНИЕ 07.04.2017:добавлены новые функции (см. Описание)

Контроллер имеет дело с ручками для пайки hakko 907 со сменными наконечниками и имеет встроенный нагревательный элемент и термистор ИЛИ термопару для проверки температуры утюга. Ручка имеет две независимые электрические цепи для нагрева утюга и контроля температуры. Этот контроллер можно использовать с другой железной ручкой, имеющей аналогичную архитектуру.

Заглушку на ручке утюга лучше заменить на другую, например, на авиационную вилку GX16-5 или GX-12-5.

Ключевые особенности этого контроллера:

  • Контроллер подходит для работы с различными ручками hakko 907, с термопарой или термистором для проверки температуры. Вам следует выбрать подходящую схему.
  • Реализован алгоритм PID для поддержания температуры паяльника. Утюг поднимает температуру примерно за 30 секунд и поддерживает ее в пределах 1-2 градусов Цельсия.
  • Контроллер поддерживает температуру в случае интенсивного использования, потому что алгоритм PID очень чувствителен и может быстро увеличить подаваемую мощность.
  • В процедуре калибровки паяльника реализованы три контрольные точки температуры.
  • Процедура калибровки автоматизирована за счет использования алгоритма PID для поддержания температуры около контрольной точки.
  • Контроллер поддерживает два режима работы:поддержание температуры и поддержание подачи питания.
  • Для обеспечения молчания работы в контроллере реализованы высокочастотные прерывания Timer1. Это позволяет увеличить частоту ШИМ до 31250 Гц вместо 490 Гц с помощью встроенного analogWrite () . функция.
  • В контроллере реализован ускоренный датчик угла поворота. Когда энкодер вращается медленно, установка температуры изменяется на 1 градус. При быстром вращении энкодера установка температуры изменяется на 5 градусов.
  • Температура сохраняется в Arduino EEPROM после использования паяльника в случае изменения настроек температуры.
  • Контроллер поддерживает единицы Цельсия или Фаренгейта, которые можно использовать для отображаемого значения температуры, заданной температуры и данных калибровки.
  • Контроллер имеет режим настройки, чтобы упростить процедуру начальной настройки контроллера.

Меню контроллера

Как я упоминал ранее, у контроллера есть несколько режимов:

  • Режим ожидания
  • Основной режим работы (поддерживать температуру)
  • Режим питания (сохранить подаваемое питание)
  • Режим настройки
  • Режим калибровки
  • Режим настройки (процедура начальной настройки)

Когда контроллер только что включен, активируется режим ожидания. В этом режиме паяльник запитан. На основном дисплее отображается следующая информация:

  • Заданная температура в левой части верхней строки (в выбранных единицах - Цельсия или Фаренгейта);
  • Сообщение "OFF" в правой части верхней строки, указывающее на то, что утюг выключен;
  • Текущая температура утюга в левой части второй строки;

Если утюг не подключен к контроллеру, во второй строке отображается сообщение «нет железа». Когда утюг становится холодным (после использования), во второй строке отображается сообщение «холодно», указывающее на то, что прикасаться к утюгу безопасно.

Заданную температуру можно отрегулировать, поворачивая ручку энкодера при выключенном утюге. Чтобы включить паяльник, слегка нажмите на ручку энкодера. Контроллер перейдет в основной режим. Теперь контроллер поддерживает температуру утюга около заданной. При интенсивном использовании утюга температура может незначительно отклоняться от заданной.

В основном режиме на дисплее отображается следующая информация:

  • Заданная температура в левой части верхней строки (в выбранных единицах измерения - Цельсия или Фаренгейта)
  • Сообщение "ON" в правой части верхней строки означает, что утюг включен и все еще нагревается. Когда утюг достигнет заданной температуры, значок rdy Появится сообщение (готово);
  • Текущая температура утюга отображается слева во второй строке;
  • Мощность, подаваемая на утюг (в процентах от максимально допустимой), отображается в правой части экрана;

Вращая энкодер, можно изменить заданную температуру. Сообщение «ON» будет отображаться снова, пока утюг не достигнет новой заданной температуры. Чтобы вернуться в режим ожидания, слегка нажмите ручку кодировщика.

В основном режиме контроллер проверяет исправность работы утюга. Если через 10 секунд после запуска температура не изменится, контроллер отключит питание и появится сообщение « Failed . 'будет отображаться на экране. В этом случае слегка нажмите кнопку кодировщика, чтобы вернуться в режим ожидания.

Режим питания можно включить долгим нажатием на энкодер, когда он находится в основном режиме. В режиме питания можно вручную регулировать мощность, подаваемую на паяльник, вращая энкодер. В режиме питания на экране отображается мощность, подаваемая на утюг во внутренних блоках, и температура утюга в единицах, удобочитаемых человеком. Легкое нажатие на энкодер включает / выключает питание в режиме питания. Длительное нажатие ручки поворотного энкодера вернет контроллер из режима питания в основной режим.

Чтобы перейти в режим настройки, нажмите и удерживайте энкодер в режиме ожидания. В режиме настройки можно настроить параметры конфигурации. В этом режиме есть 7 пунктов меню:

  • тайм-аут автоматического отключения (в минутах)
  • единицы измерения температуры (Цельсий или Фаренгейт)
  • калибровка железа ('калибр.')
  • процедура начальной настройки ("настройка")
  • сохранить изменения
  • отменить изменения
  • восстановить значения по умолчанию

Поверните ручку, чтобы выбрать пункт меню. Чтобы изменить выбранный элемент, слегка нажмите ручку кодировщика. После настройки параметра снова нажмите ручку, чтобы вернуться в меню настройки. Длительное нажатие ручки энкодера можно использовать для возврата в режим ожидания и сохранения параметров в EEPROM.

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

Схема показаний датчика

Схема считывания показаний датчика этого контроллера зависит от типа термодатчика паяльника:термистор или термопара. Обе схемы объединены на одном изображении ниже.

В обеих схемах используется точный операционный усилитель MCP602, реализующий технологию rail-to-rail. Этот усилитель значительно увеличивает точность измерения температуры и обеспечивает почти полное напряжение, подаваемое на выходной контакт. Таким образом, интервал показаний на выводе A0 составляет 0-1023. Можно заменить усилитель mcp602 на его аналог. Использование точного операционного усилителя позволяет контроллеру поддерживать температуру утюга в меньшем интервале.

В случае варианта стальной рукоятки с термопарой обе перемычки JP1 и JP2 должны быть открыты, а в случае рукоятки термистора они должны быть замкнуты.

Если в ручку утюга входит термистор, сопротивление датчика увеличивается с примерно 50 Ом, когда холодно, до примерно 200 Ом, когда температура паяльника становится 400 градусов Цельсия. Если в ручку утюга входит термопара, генерируемое напряжение увеличивается от нуля при температуре окружающей среды до 9 мВ, когда паяльник достигает 400 градусов Цельсия. В любом случае другая железная ручка может иметь другие параметры, поэтому я решил использовать многооборотный потенциометр для настройки усилителя MCP602. Впервые этот потенциометр следует настроить следующим образом:когда температура утюга составляет 400 градусов Цельсия, выходное напряжение должно стать около 5 вольт (показание вывода A0 в Arduino около 900). Для упрощения процедуры начальной настройки в программном обеспечении контроллера реализован режим настройки. Режим настройки можно запустить из меню настроек.

Первоначальная настройка контроллера

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

В скетче программы предполагается, что интервал рабочих температур паяльника составляет 180 - 400 градусов Цельсия. Этот интервал можно изменить, отредактировав константы в эскизе программы, прежде чем вы планируете настраивать контроллер.

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

Выберите пункт меню «tune» в меню настройки. Утюг начинает нагреваться. В этом режиме контроллер отображает показания температуры с вывода A0 внутренних блоков (0-1023). Вращая энкодер, вы можете отрегулировать мощность, чтобы поддерживать температуру утюга на уровне 400 градусов по Цельсию (используйте внешний термометр). Вначале вы можете увеличить подаваемую мощность до максимального значения, чтобы ускорить нагрев утюга, затем уменьшите мощность, чтобы поддерживать температуру на уровне 400 градусов. Теперь поверните ручку многооборотного потенциометра, чтобы получить показания датчика около 900. Убедитесь, что это показание не является максимальным, поверните регистр переменных и получите 930-950, затем вернитесь к 900. Это важно, потому что контроллер должен быть способен измерять температуру выше 400 градусов по Цельсию.

Когда регистр переменных настроен, нажмите и удерживайте ручку кодировщика около 2 секунд. На этом процедура начальной настройки завершена.

Нагреватель паяльника

Главная особенность контроллера второго поколения - высокочастотный ШИМ-сигнал, используемый для нагрева утюга. К сожалению, управление высокочастотным сигналом на MOSFET-транзисторе требует дополнительных элементов в схемах. Эта ветка форума подробно объясняет проблему. Короче говоря, у полевого МОП-транзистора есть емкость в затворе, которая требует времени для зарядки или разрядки. Для увеличения быстродействия полевого МОП-транзистора (irfz44n) двухтранзисторный драйвер реализован на биполярных транзисторах. Вы можете использовать другую пару биполярных транзисторов.

Стабилитрон (D2, 15 В) используется для ограничения напряжения затвора (Vgs) полевого МОП-транзистора, когда он открыт, поскольку напряжение источника питания выше, чем максимальное значение напряжения VGs МОП-транзистора. Диод FR107 снимает питание с утюга, когда полевой МОП-транзистор закрыт. Вы можете заменить этот диод на другой, но вы должны использовать быстро восстанавливаемый диод.

Сопротивление нагревательного элемента холодного железа очень низкое, и некоторые блоки питания ноутбуков могут отказываться работать. Контроллер просто перезагружается, и утюг в этом случае остается холодным. Чтобы избежать этой ситуации, конденсатор емкостью 1000 мкФ устанавливается сразу после входа 24 В (см. Полную схему контроллера).

Откалибруйте паяльник

Контроллер считывает температуру во внутренних единицах (0-1023), считывая напряжение на выводе A0 Arduino. Нам удобно использовать удобочитаемые единицы измерения, такие как градусы Цельсия или Фаренгейта. Контроллер имеет параметры по умолчанию, которые позволяют переводить показания внутренней температуры в удобочитаемые единицы. Но паяльник мог быть другим, поэтому процедура калибровки реализована в контроллере. Есть три реперных точки для калибровки паяльника:200, 300 и 400 градусов Цельсия. Контроллер сохраняет внутренние показания для этих трех контрольных точек и использует их для преобразования температуры из внутренних показаний в понятные человеку значения.

Выберите "калиб." пункт меню из меню настройки, чтобы начать процесс калибровки. Выберите желаемую точку калибровки из списка меню (200, 300 или 400) и включите утюг, нажав ручку энкодера. Паяльник начинает нагреваться. Алгоритм PID позволяет достичь желаемой температуры за короткое время. Когда температура контрольной точки будет достигнута, контроллер издаст звуковой сигнал, показывая, что он готов проверить температуру внешним датчиком. Подождите немного, чтобы температура стабилизировалась, затем проверьте реальную температуру паяльника с помощью внешнего датчика (термопары). Затем поверните ручку поворотного энкодера и выберите реальную температуру утюга. Слегка нажмите на ручку энкодера. Контроллер сохраняет реальную температуру для контрольной точки. Выберите следующую эталонную температуру и повторите процедуру. Вы можете откалибровать эталонную температуру еще раз, выбрав нужную эталонную точку. Вы можете установить любую контрольную точку несколько раз. Каждый раз, когда вы сохраняете реальную температуру для контрольной точки, контроллер обновляет формулу перевода. Это позволяет более точно откалибровать утюг. Когда вы закончите калибровку, нажмите и удерживайте ручку поворотного энкодера. Теперь контроллер сохранил новые значения для всех выбранных эталонных температур.

Функция автоматического отключения питания

Функция автоматического отключения реализована во втором поколении контроллера. Это было серьезной проблемой, потому что ручка утюга не имеет датчика удара или другого способа правильно проверить, используется ли утюг сейчас или просто лежит на столе. Основная идея заключалась в том, чтобы использовать значение мощности, подаваемой на утюг. В состоянии покоя контроллер снизил мощность до минимального значения, чтобы сохранить заданную температуру. К сожалению, математические разбросы температуры и подаваемой мощности непостоянны в состоянии покоя и могут периодически отклоняться. Настраивая параметры ПИД-алгоритма, я стабилизировал показания и минимизировал обе дисперсии. Теперь контроллер в состоянии покоя поддерживает минимально возможный разброс температур. Критериями использования железа является небольшое увеличение мощности от наименьшего зарегистрированного значения. Этот алгоритм некоторое время тестировался и доказал, что его можно использовать для функции автоматического отключения питания.

Это решение не очень надежно, поэтому вы можете отключить эту функцию, если что-то пойдет не так. Также скетч содержит класс для отладки и настройки параметров PID вручную.

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

Эскиз для дисплея 1602

Получить дисплей 0802 в некоторых странах сложно. Поэтому был выпущен еще один эскиз для поддержки дисплея 1602. Скетч доступен в дистрибутиве github. Или вы можете использовать другой блестящий проект от Manoj, который создал схемы в редакторе Eagle и создал печатную плату, чтобы упростить процесс пайки.

О преобразовании температуры и различных типах датчиков

Для отображения температуры в удобочитаемых единицах (Цельсия или Фаренгейта) в скетче реализована функция IRON_CFG ::tempHuman (). Как было сказано выше, контроллер считывает температуру железа во внутренних блоках (напряжение на аналоговом выводе A0). Процедура калибровки позволяет измерить реальную температуру около трех контрольных точек (200, 300 и 400 градусов Цельсия). Упомянутый метод (tempHuman ()) использует линейную интерполяцию температуры с использованием двух контрольных точек, которые понижают и повышают текущие показания температуры железа. Но есть еще один не откалиброванный момент:температура окружающей среды. Когда температура утюга ниже 200 градусов Цельсия, контроллер интерполирует фактическую температуру по двум точкам:температуре окружающей среды и 200 градусам. Температура окружающей среды определяется линиями № 244 и № 245 эскиза. Эти значения можно отрегулировать для вашего собственного случая. Как видите, эти значения предполагают, что вы используете термистор в качестве датчика температуры железа (температура окружающей среды 350 во внутренних единицах). Конечно, если вы используете утюг с термопарой, вы должны изменить это значение на 0.

Заключение

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

Код

Исходный код
https://github.com/sfrwmaker/soldering_907_lcd/blob/master/soldering_907_lcd.ino

Схема

complete_9vLI2a96Rv.sch

Производственный процесс

  1. Многотемпературный датчик
  2. Игровой контроллер Arduino
  3. Управление паяльником DIY для 862D +
  4. MotionSense
  5. Пожарная безопасность 3D-принтера
  6. MIDI для цифровых органов
  7. Отталкивающая электромагнитная левитация Arduino
  8. CoroFence - Тепловой детектор🖖
  9. Процесс Finex для производства жидкого чугуна
  10. Материалы для компонентов Invar 36