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

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

Статус темы:
Закрыта.
  1. Dmitrysh

    Dmitrysh Гуру

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

    Dmitrysh Гуру

    Совсем забыл. Есть ещё одна функция - синхронизация графика с процессом пайки. Т.е при включения пайки график стартует с нуля. Нужно добавить две строчки сюда:
    Код (C++):
    //включаем пайку, кнопка сработает после отпускания "ОК"    
          if (okSwitchState == LOW && button_state && ( millis() - ms_button)>100)
          {    
            ms_button =  millis();
            button_state = false;
            tone(buzzerPin, 1045, 500);  //звуковой сигнал при старте профиля
            //update next screen

            sprintf (buf, "SYNC\r\n");
            Serial.print(buf);
            integra=0;
            integra2=0;
            updateScreen = true;
            reflowStatus = REFLOW_STATUS_ON;
            reflowState = REFLOW_STATE_STEP_RAMP;
          }
          break;
    строчки вот эти -
    sprintf (buf, "SYNC\r\n");
    Serial.print(buf);

    В конец функции loadProfile добавляем
    Код (C++):
     sprintf (buf1, "PR%01d%01d%03d%03d%03d%02d%02d%02d%03d%03d%03d%03d%03d%03d%03d%03d%03d%03d%03d%03d%02d%02d%02d%02d%02d%02d\r\n",
          profileSteps %10, tableSize %10, int(Setpoint2), min_pwr_BOTTOM, max_pwr_BOTTOM, int(rampRateStep[0]) %100,
          int(rampRateStep[1]) %100, int(rampRateStep[2]) %100,temperatureStep[0],temperatureStep[1],temperatureStep[2],
          min_pwr_TOPStep[0], min_pwr_TOPStep[1], min_pwr_TOPStep[2],max_pwr_TOPStep[0],max_pwr_TOPStep[1],max_pwr_TOPStep[2],dwellTimerStep[0],dwellTimerStep[1],dwellTimerStep[2],
          kp2 %100,kp1 %100, ki2 %100,ki1 %100,kd2 %100,kd1 %100);
      Serial.print(buf1);
      delay(100);
     
    Последнее редактирование: 25 май 2018
    SOLOway нравится это.
  3. Dmitrysh

    Dmitrysh Гуру

    Судя по результатам моделирования работает некорректно. Симисторы открываются как попало, но работать как-то будет. В зависимости от версии прошивки присутствует в некоторых версиях ПИД для низа. Для верха ПИДа нет, идут импульсы с периодом 16,3мс и длительностью 15мкс.
     
  4. SOLOway

    SOLOway Гуру

    Мое радиолюбительское об этом меня несколько лет ведь предупреждает, а я так и не смог подружиться с симуляторами...
    У LDZ в последних прошивках реализован полный ПИД на НИ и ВИ и введен "период действия ПИД", на ранних - на НИ только П.
    Кстати, самая первая станция LDZ
    и датчик НИ у него строго на трубках, и все прошивки старые под это заточены. С седьмыми прошивками тоже видел несколько станций с датчиком на нагревателях НИ...
    LDZ.jpg
    Тема LDZ о прошивках: тут
     
    Последнее редактирование: 7 авг 2018
  5. Dmitrysh

    Dmitrysh Гуру

    А где скачать? Я смотрел 7-ю версию.
     
  6. MRKHBotik

    MRKHBotik Нерд

    А можно подключить температурный сенсор pt100?
     

    Вложения:

  7. Dmitrysh

    Dmitrysh Гуру

    Можно. Нужен усилитель сенсора и библиотека для его работы. Вопрос зачем?
     
  8. SOLOway

    SOLOway Гуру

    MRKHbotik обратитесь к alfataks
    я немного дополнил предыдущий пост инфой...
     
  9. MRKHBotik

    MRKHBotik Нерд

    СПС. понял.

    не нужно? я думал с МАХ31865ом лучше будет. значить термопары с усилителям MAX6675 хватает?
     
  10. SOLOway

    SOLOway Гуру

    До сих пор хватало... Надо их правильно позиционировать только и принять для себя поправки, полученные при настройке станции - к примеру, если у вас Pb- плывет на 217*С стабильно на разных платах, а реальная t его плавления вам известна и составляет 225*С, просто примите на ум эту разницу и всё... Главное, чтоб результат был стабильным.
     
    MRKHBotik нравится это.
  11. revolover

    revolover Гик

    Всем привет! Подскажите правильный последний скетч под дисплей 320*480, плату с кнопками, и для 5ти катального самопального ssr. Спасибо!
     
  12. and-payalnik

    and-payalnik Нерд

    Доброго времени суток.
    Какие строчки в код добавить, чтобы можно было откорректировать показания каждой термопары? они не идеальные продаются(
    я так понимаю, что-то типо такого
    (( (thempRead (7)))*(0.00488))/(0.0046))+(16)
     
  13. bamik

    bamik Нерд

    Идеального нет ничего. Думаю, что требуется их нагреть до одинаковой температуры и просто при получении значений температуры вычитать разницу. Но можно этого и не делать, т.к. смысла в этом 0.1%
     
  14. revolover

    revolover Гик

    Всем привет! Относительно построения графиков на ПК, может пригодится:

     
  15. bamik

    bamik Нерд

    Полезно.
     
  16. revolover

    revolover Гик

  17. SOLOway

    SOLOway Гуру

  18. Dmitrysh

    Dmitrysh Гуру

    А чем лучше? Да, мах31865 быстрее - 21мс против 220мс, но сам pt100 инерционнее в разы если не в десятки раз. Да и стоимость великовата. Я заказал себе "на попробовать", приедет напишу что и как.
     
    MRKHBotik нравится это.
  19. Dmitrysh

    Dmitrysh Гуру

    А чем не устраивает то что сейчас есть?
     
  20. SOLOway

    SOLOway Гуру

    Я не о том, что не устраивает, напротив! Спасибо вам за адаптацию, очень хочу попробовать, у меня сейчас железо станции забрал товарищ, чтоб контроллер от LDZ погонять, а выходные такие короткие...
    Просто напомнил. Хотел тот пост дополнить вопросом по скетчу для LCD2004 но пока так и не сформулировал, а пост остался...
    Сегодня проверял два разных типа PT100 с алиэкспресс, мне тоже так показалось, причем непонятно, какого каждый класса, продавцам китайцам веры-то нет...
     
Статус темы:
Закрыта.