ИК паяльная станция на Arduino Mega 2560. Доработка скетча "ARS_v2_Lilium_JSN"

Тема в разделе "Глядите, что я сделал", создана пользователем Jalnin, 2 ноя 2012.

  1. b707

    b707 Гуру

    скорее код. Я мельком посмотрел, работа с кнопками довольно криво написана. Антидребез общий на все кнопки, задержки огромные
     
  2. CLON2

    CLON2 Нерд

    На счет миллисекунд согласен... На счет того что код антидребезга нужно "подшаманить" то же согласен... можно даже организовать опрос кнопок по прерыванию, источник питания тут не причем, может еще влиять качество механики самих кнопок. На счет того что 250 миллисекунд много, я думаю это значение как раз граничное (больше не стоит поднимать для этого кода) т.к. примерно это время - среднее время реакции человека на визуальный сигнал... (больше будет сильно заметно и будет раздражать...)
     
  3. Airbus

    Airbus Радиохулиган Модератор

    Так вот жеш она - ИК паяльная станция.Дёшево и сердито!


    Нафига какие то скетчи?
     
    Последнее редактирование: 2 фев 2018
    ostrov и b707 нравится это.
  4. b707

    b707 Гуру

    ну да, шикарная вещь. Сделаю себе такую...
    А она элементы не пережгет? К ней надо бы простенький регулятор на мосфете и с ШИМ.
     
  5. Airbus

    Airbus Радиохулиган Модератор

    В идеале да.Можно безмозглый ШИМ на 555.Но зачем усложнять?Пусть срок службы 2 месяца но и цена вопроса смешная а у меня этих прикуривателей несколько штук валяется.Подавать напряжение не постоянно а только когда надо что то отпаять/припаять и прослужит дольше.
     
    Последнее редактирование: 2 фев 2018
    Roniks59 нравится это.
  6. b707

    b707 Гуру

    нет, я спрашивал о другом - не слишком ли сильно эта штука будет жарить элементы, мне кажется при таком нагреве пластиковые корпуса микрух и транзисторов уже поплыть должны...
     
  7. Airbus

    Airbus Радиохулиган Модератор

    А подальше держать?
     
  8. vector99

    vector99 Гик

    Пробовал я такую штуку. Жарит неплохо, около пластиковых элементов лучше не паять, или экранировать хорошо надо. Но мелкую рассыпуху паять можно, как альтернатива отсутствующего термофена сгодится.
     
    Roniks59 нравится это.
  9. CLON2

    CLON2 Нерд

    Тоже делал такую, "на безрыбье" мелочь отпаять фен заменит, а что то серьезное не годится... Держа в руках тяжело выдерживать нужную дистанцию, можно запросто поджарить как элемент так и текстолит... Правда ШИМ не делал, жарил от 12В UPSовой батарейки...
     
    Roniks59 нравится это.
  10. and-payalnik

    and-payalnik Нерд

    Доброго времени суток. собрал сие созидание - одни положительные моменты!!
    интересует
    1) при старте установка показывает 700 вместо 070
    2) четыре выхода(слева светодиоды повесил ) - это для разрешение подключения нижних нагревателей
    (у меня снизу 4, регулирую тумблерами) ?
    3) может кто скинуть приблизительные установки?(верх 80*80 450вт, низ 60*240*4 по 600вт )
    4) благодаря фильтру калмана показания довольно стабильные, а есть возможность корректировки каждой термопары программно? проверял на таящем льду было плюс 4-6, в кипятке 99-104. проверял на трех TM-902C и пирометре ms6520a/

    https://yadi.sk/i/dMzVPilo3S3cHi
     
    Roniks59 нравится это.
  11. vector99

    vector99 Гик

    По поводу не верного отображения температуры уставки сейчас сказать не могу (на вахте сейчас и без компа), гдето ошибка в коде.
    А насчёт термопар, гдето я встречал библиотеку MAX6675 там можно было установить температуру смещения. Как раз то что Вам надо, но где не помню, надо искать.
    Вот здесь есть эта библиотека
    Использовать её так в нашем случае
    Код (C++):

    //MAX6675(int CS_pin, int SO_pin, int SCK_pin, int units, float error);
    int units = 1;    // Units to readout temp (0 = ˚F, 1 = ˚C)
    float error1 = 0.0; // Temperature compensation error
    float error2 = 0.0; // Temperature compensation error

    //MAX6675 thermocouple1(thermoCLK1, thermoCS1, thermoSO1); //термопара "ВЕРХНЕГО" нагревателя
    MAX6675 thermocouple1(thermoCStop,  thermoSO, thermoCLK, units, error1);
    //MAX6675 thermocouple2(thermoCLK2, thermoCS2, thermoSO2);//термопара "НИЖНЕГО"  нагревателя
    MAX6675 thermocouple2(thermoCSbott, thermoSO, thermoCLK, units, error2);
     

    Вложения:

    Последнее редактирование: 2 фев 2018
    Roniks59 нравится это.
  12. sschurik

    sschurik Нуб

    Здравствуйте.Собрал контроллер пока на lcd 2004 +arduino uno и столкнулся с проблеммами
    1.После второго шага показания температуры завышается на 10-12 градусов
    2. Настройки профиля .После настройки профиля 1 настраевая профиль 2 в первом профиле меняются значения мощности верх и низ так и в PID тоже меняются значения . как это исправить?
    Больше понравился на TFT LCD 320x480 +MEGA пока жду комплектуюющих с китая Спасибо.
     
  13. Roniks59

    Roniks59 Нерд

    Всем привет. Мне кажется на дисплее очень не хватает таймера, который стартует вместе с профилем. Я бы не писал, сделал бы скетч и выложил, но увы, не хватает опыта. Таймер можно вывести на верхнюю строчку 2004 вместо бегающих звезд, а Run сместить влево или вправо. Звезд пару штук мигающих оставить для индикации работы профиля. Я вообще думал для индикации светодиод задействовать. Но, так как пины почти все заняты, решил попозже попробую кулер прикрутить после остановки профиля для охлаждения верха. Плата UNO или NANO, дисплей 2004. Мега вот вот придет с графическим дисплеем 320*480, на нем бы тоже найти место для таймера. Там больше 15 минут для BGA) и не надо. После остановки таймер не убирать, обнулить только при следующем старте. Как вам эта мысль, ребят? Я вот щас тестю свою сборку, и на сторонний таймер просто забываю глянуть, а на контроллер все равно смотрю. буду признателен за помощь в реализации. Вложил прошивку, на которой работаю сейчас.
    Да, и вопрос по SSR, они что, только на всю работают как мех реле? Или можно димировать? Сколько процентов не ставлю, все равно на полный накал моргают. У меня галоген стоит и низ и верх. Профиль все равно держит, но хотелось бы поплавнее, помягче. Особенно верх. Детектор нуля собран на 4N35 без моста. Или попробовать свои ключи на BTA16-600 и MOC3023? Но мне кажется SSR собраны по той же схеме.
     

    Вложения:

    Последнее редактирование: 4 фев 2018
  14. and-payalnik

    and-payalnik Нерд

    Прежде всего выражаю благодарность тому , кто решился на такие подвиги в написании кода!!!

    выкладываю свои установки, может кому пригодятся при настройке и понимании работы

    верх 80*80 450вт, низ 60*240*4 по 600вт. китайская черная керамика. расстояние от низа до
    платы 7 см+ сетка (конструктивно получилось), от платы до верха =5 см.проверка на бумаге - равномерное пятно. если меньше(от верха)- сказывается "подвальный китай со своей равномерностью":D

    настройка низа : шаги 3, размер 3, 100'С, мощн. мин 50 мах 70%. пид 40-40-40
    при этой уставке от 25 до 100 доходит за 2,5 минуты, включение верха 5,2минуты(общ)
    фактическая температура низа около 150+-5 С

    настройка верха пид 100-100-100
    шаг 1. скорость 3,0. 60 С(включение верха). 50,100%, 0 сек переход на сл.шаг
    шаг 2. скорость 1,5. 160 С(активация флюса). 50,80%, 45 сек переход на сл.шаг
    шаг 3. скорость 3,0. 230С Pb- (205 Pb+) (пайка) 50,80%, 30 сек время ликвидуса. по факту пик 233(210)

    общее время пайки 10-11 минут. текстолит не темнеет. чип остается красивый

    использовал
    мега 2560 (CH340)+3,2"+max6675(v1.2) Все китай
    вместо ssr использовал силовую от ldz. с индикаторами активности на входе оптотронов и на нагревателях.
    версия прошивки 3,2 с дополнением

    Код (C++):
    //MAX6675(int CS_pin, int SO_pin, int SCK_pin, int units, float error);
    int units = 1;    // Units to readout temp (0 = ˚F, 1 = ˚C)
    float error1 = 0.0; // Temperature compensation error
    float error2 = 0.0; // Temperature compensation error
    изначально было зеркальное отображение - поменял библиотеку, которая стояла после установки.
    и не совпадали температуры верха, замена термопары (которая шла с MAX6675) на термопару от тестера K-типа решила проблему.

    Хотелось пожелать для увеличения комфортности и удобства:
    1. добавить вентилятор охлаждения. с таймером или по температуре (30-45 С). авто или ручное
    2. таймер общий и каждого шага.
    вопрос: шаги низа как реализуются при пайке(подогреве)?
     
  15. and-payalnik

    and-payalnik Нерд

    так и не получилось.
    при возможности укажите как или добавьте пункт в меню по настройке оптопар по таяющему льду и кипятку.
    Благодарю за труды Ваши!
     
  16. Roniks59

    Roniks59 Нерд

    Вот мои пробы. Пока не очень. Но может кому надо будет хоть от чего то оттолкнуться.
    видео работы с этими настройками https://yadi.sk/i/P7dbi-wn3S62Ub

    устанавливаем количество шагов профиля
    case REFLOW_STATE_MENU_STEPS: 3

    устанавливаем температуру "Нижнего Нагревателя"
    case REFLOW_STATE_MENU_BOTTOM_HEAT: 100

    устанавливаем максимальную мощность "НИЖНЕГО НАГРЕВАТЕЛЯ"
    case REFLOW_STATE_MENU_BOTTOM_PWR: 65%

    устанавливаем максимальную мощность "ВЕРХНЕГО НАГРЕВАТЕЛЯ"
    case REFLOW_STATE_MENU_TOP_PWR: 82%

    устанавливаем скорость нагрева "Верхним Нагревателем"
    case REFLOW_STATE_MENU_STEP_RAMP: St1 1,0 St2 1.0 St3 0.75

    устанавливаем температуру "Верхнего Нагревателя"
    case REFLOW_STATE_MENU_STEP_TARGET: St1 101, St2 150, St3 200

    устанавливаем время перехода на следующий шаг
    case REFLOW_STATE_MENU_STEP_DWELL: St1 15, St2 10, St3 5

    настройка "ПИД" нижнего нагревателя
    case REFLOW_STATE_MENU_BOTTOM_P: P 100 I 0.4 D 21

    настройка "ПИД" верхнего нагревателя
    case REFLOW_STATE_MENU_TOP_P: P 100 I 0.7 D 16


    Чип поплыл через 6.20 очень горячё, остановил профиль.

    Тест 2

    устанавливаем количество шагов профиля
    case REFLOW_STATE_MENU_STEPS: 3

    устанавливаем температуру "Нижнего Нагревателя"
    case REFLOW_STATE_MENU_BOTTOM_HEAT: 100

    устанавливаем максимальную мощность "НИЖНЕГО НАГРЕВАТЕЛЯ"
    case REFLOW_STATE_MENU_BOTTOM_PWR: 65%

    устанавливаем максимальную мощность "ВЕРХНЕГО НАГРЕВАТЕЛЯ"
    case REFLOW_STATE_MENU_TOP_PWR: 59%

    устанавливаем скорость нагрева "Верхним Нагревателем"
    case REFLOW_STATE_MENU_STEP_RAMP: St1 1,0 St2 1.0 St3 0.75

    устанавливаем температуру "Верхнего Нагревателя"
    case REFLOW_STATE_MENU_STEP_TARGET: St1 101, St2 150, St3 180

    устанавливаем время перехода на следующий шаг
    case REFLOW_STATE_MENU_STEP_DWELL: St1 30, St2 10, St3 5

    настройка "ПИД" нижнего нагревателя
    case REFLOW_STATE_MENU_BOTTOM_P: P 10 I 0.4 D 21

    настройка "ПИД" верхнего нагревателя
    case REFLOW_STATE_MENU_TOP_P: P 50 I 0.7 D 16
    Оочень быстро греет.

    Тест 3 Профиль 2 видео https://yadi.sk/i/DSyaMCwj3S5zhg

    устанавливаем количество шагов профиля
    case REFLOW_STATE_MENU_STEPS: 4

    устанавливаем температуру "Нижнего Нагревателя"
    case REFLOW_STATE_MENU_BOTTOM_HEAT: 100

    устанавливаем максимальную мощность "НИЖНЕГО НАГРЕВАТЕЛЯ"
    case REFLOW_STATE_MENU_BOTTOM_PWR: 69%

    устанавливаем максимальную мощность "ВЕРХНЕГО НАГРЕВАТЕЛЯ"
    case REFLOW_STATE_MENU_TOP_PWR: 50%

    устанавливаем скорость нагрева "Верхним Нагревателем"
    case REFLOW_STATE_MENU_STEP_RAMP: St1 1,0 St2 1.75 St3 1.25 St4 1.75

    устанавливаем температуру "Верхнего Нагревателя"
    case REFLOW_STATE_MENU_STEP_TARGET: St1 83, St2 122, St3 170 St4 199

    устанавливаем время перехода на следующий шаг
    case REFLOW_STATE_MENU_STEP_DWELL: St1 20, St2 15, St3 10 St4 10

    настройка "ПИД" нижнего нагревателя
    case REFLOW_STATE_MENU_BOTTOM_P: P 100 I 10 D 2.0

    настройка "ПИД" верхнего нагревателя
    case REFLOW_STATE_MENU_TOP_P: P 59 I 6.5 D 7.0

    Отрабатывает за 4.4 мин. Чип поплыл чере 3.5 минуты. Пациент- убитая плата пк сокет 478. Лампы низа открыты, до платы 5 см, верх тоже лампы открыты, 5 см до чипа
     
    Последнее редактирование: 4 фев 2018
  17. alfataks

    alfataks Гик

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

    sschurik Нуб

    По пробуй настройки ПИД P-8.00 I-0.10 D-25.00 будет не так быстро
     
  19. alfataks

    alfataks Гик

    Пользуюсь собранной станцией пол года, несколько раз вносил изменения и в принципе все устраивает. По китайским термопарам могу сказать одно, кот в мешьке. Покупал и дешевые и дорогие, у всех есть отклонения и в процессе работы нужно учитывать расхождения в температуре и коректировать профиль пайки по температуре.
    В планах кординально переделать управление станцией и избавиться от термопары верхнего нагревателя, заменив ее на платиновый PT100 с модулем MAX31865. Управление станцией сделать на дисплее NEXTION NX4832T035 3,5 дюйма и Мега 2560.
     
  20. buivol135

    buivol135 Нерд

    https://3dxsite.wordpress.com/2017/02/24/ir_station/amp/