Оглавление:

Замыкание петли при пайке для поверхностного монтажа: 4 шага
Замыкание петли при пайке для поверхностного монтажа: 4 шага

Видео: Замыкание петли при пайке для поверхностного монтажа: 4 шага

Видео: Замыкание петли при пайке для поверхностного монтажа: 4 шага
Видео: Академия Эвольвектор: Основы пайки. Урок №3 - Поверхностный монтаж. Как припаять SMD компоненты? 2024, Июль
Anonim
Замыкание петли при пайке на поверхность
Замыкание петли при пайке на поверхность

Кажется, что температуру легче всего контролировать. Включите плиту и установите желаемую температуру. Утром включите печь и установите термостат. Отрегулируйте подачу горячей и холодной воды, чтобы принять душ. Легкий! Но что, если вы хотите контролировать температуру за пределами этих повседневных задач? Если вы хотите, чтобы температура выходила за пределы нормального диапазона или чтобы стабильная температура находилась в узком диапазоне, вы в основном сами.

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

Недостатки:

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

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

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

Примечание. Когда я использую имя «Arduino», я имею в виду не только сам (не совсем) защищенный авторским правом Arduino, но также и многие версии, являющиеся общественным достоянием, известные под общим названием «Freeduino». В некоторых случаях я использую термин «Ard / Free-duino», но эти термины следует считать взаимозаменяемыми для целей данного Руководства.

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

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

Наш подход будет заключаться в замене ШИМ-контроллера на базе AVRTiny2313 на более мощный контроллер на базе ATMega. Программирование будет производиться в среде Arduino. Мы будем использовать компьютер (Linux-Mac-Windows), на котором запущена обработка, для отображения результатов и настройки контроллера.

В качестве датчика мы будем использовать инфракрасный датчик температуры от Harbor Freight. ИК-датчик будет модифицирован для вывода температуры в виде последовательного потока данных, который может считывать контроллер. Мы будем использовать Ard / Free-duino в качестве контроллера с ПК (Mac - Linux - Windows) для ввода в контроллер. Когда все будет готово, система будет выглядеть как на картинке. (Однако у вас может быть меньше посторонних схем на вашей макетной плате. Это нормально.)

Шаг 1. Изменение ИК-датчика

Изменение ИК-датчика
Изменение ИК-датчика
Изменение ИК-датчика
Изменение ИК-датчика
Изменение ИК-датчика
Изменение ИК-датчика

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

Устройство, с которого мы начнем, называется Harbour Freight Part Number: 93984-5VGA. Стоит около 25 долларов. Не беспокойтесь о покупке гарантии.:)} Вот ссылка. На рисунках 1 и 2 показаны виды спереди и сзади. Стрелки на Рисунке 2 указывают, где находятся винты, удерживающие корпус вместе. На рис. 3 показана внутренняя часть корпуса, когда винты вывернуты и корпус открыт. Модуль лазерной указки, вероятно, можно будет снять и использовать для других проектов, хотя я этого еще не делал. Стрелки указывают на винты, которые нужно удалить, если вы хотите вынуть плату и припаять к ней (винты сняты на этом рисунке). Также обозначена область, где должен быть сделан вырез для выхода вашей проводки из корпуса. См. Также рисунок 5. Сделайте вырез, когда плата снята, или, по крайней мере, перед тем, как паять провода. Так проще.;)} На рисунке 4 показано, где будут припаяны провода. Запишите букву каждого соединения, чтобы вы знали, какой провод какой, когда вы закроете корпус. На рис. 5 показаны припаянные провода, проложенные через вырез. Теперь вы можете собрать корпус обратно, и инструмент должен работать так же, как и до операции. Обратите внимание на разъем на проводах. Я использую более длинные провода для подключения к своему контроллеру. Если вы используете небольшой провод, небольшой разъем и короткие провода, вы можете при желании убрать все это обратно в футляр, и прибор будет выглядеть без изменений. Скотт также создал программное обеспечение для взаимодействия с этим устройством. Он использовал этот документ, если вам нужны подробности. Вот и все! Теперь у вас есть ИК-датчик температуры, который будет работать от -33 до 250 C.

Шаг 2: Программное обеспечение для управления

Программное обеспечение для управления
Программное обеспечение для управления

Как бы то ни было, ИК-датчик температуры является лишь частью системы. Для контроля температуры требуются три элемента: источник тепла, датчик температуры и контроллер, который может считывать данные с датчика и управлять источником тепла. В нашем случае горячая плита является источником тепла, инфракрасный датчик температуры (измененный на последнем шаге) - нашим датчиком, а Ard / Free-duino с соответствующим программным обеспечением - контроллером. Все программное обеспечение для этого Instructable можно загрузить как пакет Arduino и как пакет обработки.

Загрузите файл IR_PID_Ard.zip. Разархивируйте его в свой каталог Arduino (обычно My Documents / Arduino). Загрузите файл PID_Plotter.zip. Разархивируйте его в свой каталог обработки (обычно Мои документы / Обработка). Теперь файлы будут доступны в соответствующих альбомах.

Программное обеспечение, которое мы будем использовать, изначально было написано Тимом Хирзелем. Он модифицируется путем добавления интерфейса к ИК-датчику (предоставлен Скоттом Диксоном). Программное обеспечение реализует алгоритм управления, известный как алгоритм PID. ПИД расшифровывается как Пропорциональный - Интегральный - Производный и представляет собой стандартный алгоритм, используемый для промышленного контроля температуры. Этот алгоритм описан в отличной статье Тима Уэскотта, на которой Тим Хирзель основал свое программное обеспечение. Прочтите статью здесь.

Чтобы настроить алгоритм (читайте об этом в упомянутой статье) и изменить настройки целевой температуры, мы будем использовать скетч обработки, также разработанный Тимом Хирзелем. Он был разработан для обжарки кофейных зерен (еще одно применение контроля температуры) и назывался Bare Bones Coffee Controller, или BBCC. Помимо имени, он отлично подходит для пайки на поверхности. Вы можете скачать оригинальную версию здесь.

Модификация программного обеспечения

Далее я предполагаю, что вы знакомы с Arduino и Processing. Если это не так, то вам следует пройти через учебные пособия, пока все не обретет смысл. Обязательно оставьте комментарии к этому руководству, и я постараюсь помочь.

ПИД-регулятор должен быть изменен для вашего Arduino / Freeduino. Линия часов от ИК-датчика должна быть прикреплена к контакту прерывания. На Arduino это может быть 1 или 0. На Freeduino различных типов вы можете использовать любые доступные прерывания. Подключите линию передачи данных от датчика к другому ближайшему контакту (например, D0, D1 или другому контакту по вашему выбору). Линия управления к конфорке может идти от любого цифрового вывода. В моем конкретном клоне Freeduino (опишите здесь) я использовал D1 и соответствующее прерывание (1) для часов, D0 для данных и B4 для линии управления к горячей пластине.

После загрузки программного обеспечения запустите среду Arduino и откройте IR_PID из пункта меню File / Sketchbook. На вкладке pwm вы можете определить HEAT_RELAY_PIN в соответствии с вашим вариантом Arduino или Freeduino. На вкладке temp сделайте то же самое для PIN-кода IR_CLK, PIN-кода IR_DATA и IR_INT. Вы должны быть готовы к компиляции и загрузке.

Точно так же запустите среду обработки и откройте эскиз PID_Plotter. Настройте BAUDRATE на правильное значение и обязательно установите индекс, используемый в Serial.list () [1], на правильное значение для вашей системы (мой порт - это индекс 1).

Шаг 3: все готово

Все это на крючке
Все это на крючке
Все это на крючке
Все это на крючке
Все это на крючке
Все это на крючке

Система управления переменным током с горячей пластиной подробно описана в уже упомянутом руководстве по пайке для экстремального поверхностного монтажа, или вы можете купить собственное твердотельное реле (SSR). Убедитесь, что он может выдерживать нагрузку на нагревательную плиту с достаточным запасом, скажем, с номинальной мощностью от 20 до 40 Вт, поскольку тестирование, проведенное китайцами, может оставлять желать лучшего. Если вы используете контроллер переменного тока с горячей пластиной из моего Instructable, то подключите перемычку от резистора на управляющем входе к заземлению на Ard / Free-duino и перемычку с управляющего выхода (B4 или как вам угодно) на Control Signal. Вход. Смотрите изображение контроллера. Желтая перемычка соответствует входу управляющего сигнала, а зеленая перемычка - заземлению. Мне нравится использовать мигающий свет (светодиод с резистором на землю) на выходном контакте, чтобы я знал, когда он включен. Подключите перемычку между светодиодом и портом, как показано. См. Схему подключения Teensy ++.

Теперь установите подставку, чтобы удерживать ИК-датчик температуры над плитой. На картинке показано, что я сделал. Простое, но надежное - это правило. Держите легковоспламеняющиеся предметы вдали от плиты; Датчик сделан из пластика и, кажется, на 3 дюйма выше поверхности пластины. Проложите провода от разъема на датчике к соответствующим контактам на Ard / Free-duino. Подключения ИК-датчика показаны на схеме подключения Teensy ++. Адаптируйте их по мере необходимости для вашего Ard / Free-duino.

Важное примечание по безопасности: ИК-датчик имеет светодиодный указатель, который помогает при наведении на него. Если у вас есть такие кошки, как моя, они любят гоняться за светодиодной указкой. Поэтому закройте светодиод непрозрачной лентой, чтобы кошки не прыгали на плиту, когда вы ею пользуетесь.

Перед тем, как подключить контроллер переменного тока с конфоркой к напряжению 120 В, выполните следующие действия для проверки системы и установки начальных целевых значений температуры. Я предлагаю целевую температуру 20 C, чтобы нагрев не начался сразу. Эти значения будут сохранены в EEPROM и использованы в следующий раз, поэтому убедитесь, что вы всегда сохраняете низкое значение в качестве целевой температуры, когда закончите сеанс пайки. Я считаю хорошей идеей сначала запустить терморегулятор с отключенной горячей плитой. Перед подключением убедитесь, что все работает.

Подключите последовательный порт к Arduino и включите его. Скомпилируйте скетч Arduino и загрузите его. Запустите эскиз обработки, чтобы взаимодействовать с контроллером и отображать результаты. Иногда эскиз Arduino не синхронизируется с эскизом обработки. Когда это произойдет, вы увидите сообщение «Нет обновления» в окне консоли скетча обработки. Просто остановите и перезапустите скетч обработки, и все должно быть в порядке. В противном случае ознакомьтесь с разделом «Устранение неполадок» ниже.

Вот команды для контроллера. «Дельта» - это величина, на которую параметр будет изменяться по команде. Сначала установите значение дельты, которое вы хотите использовать. Затем отрегулируйте желаемый параметр, используя эту дельту. Например, используйте + и -, чтобы сделать дельту 10. Затем используйте T (заглавная «T»), чтобы увеличить настройку целевой температуры на 10 градусов C, или t (нижний регистр «t»), чтобы уменьшить целевую температуру на 10 градусов.. Команды:

+/-: отрегулируйте дельту в десять раз.: вверх / вниз отрегулировать заданную температуру по дельте h: включить и выключить экран справки R: сбросить значения - сделайте это при первом запуске контроллера

После получения обновлений температуры графическое окно эскиза должно выглядеть как на картинке. Если у вас есть большая серая область, наложенная на экран с некоторыми описанными командами, просто введите «h», чтобы очистить ее. При первом запуске вам может быть предложено сбросить начальные значения. Давай, сделай это. Значения в правом верхнем углу - это текущие показания и настройки. «Цель» - это текущая целевая температура, которую можно изменить с помощью команды «t», как описано выше. «Curr» - текущее показание температуры с датчика. «P», «I» и «D» - это параметры алгоритма ПИД-регулирования. Используйте команды «p», «i» и «d», чтобы изменить их. Я расскажу о них чуть позже. «Pow» - это команда мощности от ПИД-регулятора к нагревательной плите. Это значение от 0 (всегда выключено) до 1000 (всегда включено).

Если вы поместите руку под датчик, вы должны увидеть, как значение температуры (Curr) подскочит. Если вы теперь увеличите целевую температуру, вы увидите, что значение мощности (Pow) увеличится, и индикатор выхода будет мигать. Увеличьте заданную температуру, и выходной светодиод будет гореть дольше. Когда конфорка подключена и работает, повышение целевой температуры приведет к включению конфорки. Когда текущая температура приближается к целевой температуре, время включения будет уменьшаться, так что заданная температура будет приближаться с минимальным превышением. Тогда времени будет достаточно для поддержания заданной температуры.

Вот как установить параметры для алгоритма PID. Вы можете начать со значений, которые я использую. P = 40, I = 0,1 и D = 100. Моя система сделает шаг 50 ° C примерно за 30 секунд с перерегулированием менее 5 градусов. Если ваша система работает значительно иначе, вам нужно ее настроить. Настройка ПИД-регулятора может быть сложной задачей, но в упомянутой выше статье объясняется, как это сделать очень эффективно.

Теперь пришло время по-настоящему. Подключите электрическую пластину к контроллеру переменного тока горячей пластины, как описано в разделе «Пайка экстремального поверхностного монтажа». Обязательно прочтите там все предостережения. Расположите датчик температуры так, чтобы он находился примерно на 3 дюйма над плитой и был направлен прямо на нее. Включите ваш Ard / Free-duino. Убедитесь, что все соединения правильны и ваше программное обеспечение (ПИД-регулятор и программа мониторинга) работает правильно. Начните с заданной температуры, установленной на 20 C. Затем увеличьте заданную температуру до 40 C. Горячая плита должна включиться, и температура должна плавно увеличиваться до 40 C +/- 2 C. Теперь вы можете попробовать увеличить температуру, наблюдая за работой. вашей системы. Вы заметите, что пластина остывает гораздо дольше, чем нагревается.

Исправление проблем

Если скетч обработки не запускается или не обновляет температуру, остановите скетч обработки и запустите последовательный терминал (например, Hyperterminal в Windows). Коснитесь пробела и нажмите «Return». Arduino должен ответить текущим показанием температуры. Отрегулируйте настройки скорости передачи данных и т. Д., Пока не получите желаемый ответ. Как только это сработает, должен запуститься скетч обработки. Если у вас все еще есть проблемы, убедитесь, что назначение ваших контактов соответствует вашей физической проводке и что вы подключили питание и заземление к соответствующим контактам датчика температуры.

Шаг 4: пайка для поверхностного монтажа

Пайка для поверхностного монтажа
Пайка для поверхностного монтажа

Использование системы контроля температуры, описанной в данном руководстве, улучшает пайку при экстремальном поверхностном монтаже двумя способами. Во-первых, контроль температуры более точный и значительно более быстрый. Таким образом, вместо того, чтобы иметь медленный переход от 120 ° C до 180 ° C в течение 6 минут или около того, мы можем быстро перейти к 180 ° C, подождать от 2 ½ до 3 минут и быстро перейти к температуре от 220 ° C до 240 ° C примерно на минуту. Нам еще нужно следить за точкой, когда припой потечет и выключить питание, или просто быстро понизить целевую температуру. Поскольку температура снижается очень медленно, я обычно снимаю контуры с плиты, как только температура опускается ниже 210 ° C. Положите их на кусок перфорированной доски или дерева, а не на металл. Металл может вызвать их слишком быстрое охлаждение. Также обратите внимание, что вам, возможно, придется поднять целевую температуру выше 250 ° C (максимум, который покажет датчик), чтобы пластина была достаточно горячей в определенных областях. Пластина не будет достигать единой температуры по всей поверхности, но в одних областях будет холоднее, чем в других. Вы узнаете это, экспериментируя.

Вторая область улучшения - это сокращение времени между циклами пайки. В системе с открытым контуром мне пришлось подождать, пока горячая пластина остынет до комнатной температуры (около 20 ° C), чтобы начать новый цикл пайки. Если бы я этого не делал, то температурный цикл не был бы правильным (изменение начальных условий). Теперь мне нужно только дождаться стабильной температуры около 100С, и я могу начать новый цикл.

Температурный цикл, который я сейчас использую, подразумевается выше, но здесь он точно. Начните с 100C. Положите доски на плиту на две-три минуты, чтобы они нагрелись, - дольше с крупными деталями. Установите целевую температуру на 180 ° C. Эта температура достигается менее чем за минуту. Подержите здесь 2 ½ минуты. Установите цель на 250C. Как только весь припой растечется, уменьшите заданную температуру примерно до 100 ° C. Температура вашей тарелки останется высокой. Как только температура упадет до 210 ° C или пройдет 1 минута, сдвиньте доски с горячей плиты на охлаждающую платформу из перфорированного картона или дерева. Пайка сделана.

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

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

Удачной пайки!

Рекомендуемые: