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

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

  1. SOLOway

    SOLOway Гуру

    Кто-нибудь, кроме @SNMar4enko, сделал так для версий скетчей из этой темы?
     
    Последнее редактирование: 6 окт 2019
  2. Yurik-o

    Yurik-o Нерд

    Только в компьютерах глюки возникают из ничего, файлы исчезают в никуда, а объем измеряется в метрах и называется весом.
    пути господни байтов неисповедимы
    подробности ищите в своей прошивке, проверяйте ВСЕ условия
    тут уж я не смогу помочь, к сожалению
     
    SOLOway нравится это.
  3. Yojiq

    Yojiq Гик

  4. SOLOway

    SOLOway Гуру

    @Yojiq: http://monitor.net.ru/forum/viewtopic.php?p=5638461#5638461
    Вы видели, что во всех своих видео, на всех своих станциях, он показывает маленькие видюхи?!
    Скорость остывания платы по термопрофилю - это Martin & Ersa & Pace горько рыдают ...
    Мля... 6*С/сек не превышать скорость остывания - и всё счастье у вас в руках! - Это не я выдумал! Не ведитесь на ненужные "плюшки". Для потокового производства наши самоделки не годятся никак! А для частного использования хардкор, вроде "звуков закипающего чайника", "термопрофиля остывания платы", "уведомления по смс о моменте расплавления шаров", "бестеневой подсветки без ШИМ"... Сами подумайте!
    Я в скетче @Roniks59 (пост #452) не могу настроить корректное задание значений во всех (всего лишь четырёх!!!) профилях (у @SNMar4enko их при LCD 1602 аж 14!!!). А там в скетче @Roniks59 (пост #452) ещё, возможно, и ПИД кривой...
    А ведь у @SNMar4enko в скетчах два вентилятора задействованы - один охлаждает силовую, второй - плату по окончании пайки. А mvm_ksaa вообще на Pro Mini управу блоком охлаждения платы забацал, почти как у техноальянса (его софт ещё и микроскоп выводит электронный на экран!)!
     
    Последнее редактирование: 6 окт 2019
  5. SOLOway

    SOLOway Гуру

    Последнее редактирование: 6 окт 2019
  6. Yojiq

    Yojiq Гик

    Кривой пид это интересно, но я не пробовал.
    У меня долгий выход на заданную точку верха когда остается 2-3 градуса до конца шага (эти 2-3 гр. могут тянуться 1-2 минуты), возможно кривой пид это решит (может когда то попробую), мощность излучателя поднимать не вижу смысла т.к. тогда термоудар при старте 2-3 шага может возникнуть.
    Конструкция более чем удачная - кварц снизу накрыт стеклокерамикой, верх открытый кварц 500W/
    Долго с положением нижнего датчика игрался - остановился на положении сверху платы в стороне от верхнего излучателя, результатом доволен более чем.
     
  7. SOLOway

    SOLOway Гуру

    Правильное решение.
    А вот это можно Ersa или Quick предъявить с их 800W в ВИ? ИМХО, несовершенство алгоритма или недостаточно точная настройка значений в меню...
    Мои поздравления ;););)
     
  8. Dmitrysh

    Dmitrysh Гуру

    Выложите скетч, я посмотрю, что там с eeprom.
     
  9. Dmitrysh

    Dmitrysh Гуру

    Не надо забивать EEPROM никому не нужными данными, будь то еденицы или семёрки. При настройке скетч сам пропишет заданные вами значения.
    У вас проблема в этом блоке кода:
    Код (C++):
    EEPROM.write(((currentProfile - 1) * 6 + 122), kp1);
            EEPROM.write(((currentProfile - 1) * 6 + 123), ki1);
            EEPROM.write(((currentProfile - 1) * 6 + 124), kd1);
            EEPROM.write(((currentProfile - 1) * 6 + 125), kp2);
            EEPROM.write(((currentProfile - 1) * 6 + 126), ki2);
            EEPROM.write(((currentProfile - 1) * 6 + 127), kd2);

            EEPROM.write(((currentProfile - 1) * 6 + 128), pwr_TOP);
            EEPROM.write(((currentProfile - 1) * 6 + 129), pwr_BOTTOM);
    Добавлены два параметра pwr_TOP и pwr_BOTTOM а адресация осталась прежней. Поэтому добавленные параметры пересекаются с параметрами kp1 и ki1. Для исправления переписываем в теле скетча так:
    Код (C++):
    EEPROM.write(((currentProfile - 1) * 8 + 122), kp1);
            EEPROM.write(((currentProfile - 1) * 8 + 123), ki1);
            EEPROM.write(((currentProfile - 1) * 8 + 124), kd1);
            EEPROM.write(((currentProfile - 1) * 8 + 125), kp2);
            EEPROM.write(((currentProfile - 1) * 8 + 126), ki2);
            EEPROM.write(((currentProfile - 1) * 8 + 127), kd2);

            EEPROM.write(((currentProfile - 1) * 8 + 128), pwr_TOP);
            EEPROM.write(((currentProfile - 1) * 8 + 129), pwr_BOTTOM);
    и вот эту часть при считывании loadprofile :
    Код (C++):
    kp1 = EEPROM.read((currentProfile - 1) * 8 + 122);
      ki1 = EEPROM.read((currentProfile - 1) * 8 + 123);
      kd1 = EEPROM.read((currentProfile - 1) * 8 + 124);
      kp2 = EEPROM.read((currentProfile - 1) * 8 + 125);
      ki2 = EEPROM.read((currentProfile - 1) * 8 + 126);
      kd2 = EEPROM.read((currentProfile - 1) * 8 + 127);
      pwr_TOP = EEPROM.read((currentProfile - 1) * 8 + 128);
      pwr_BOTTOM = EEPROM.read((currentProfile - 1) * 8 + 129);
     
    Последнее редактирование: 25 окт 2018
    SOLOway нравится это.
  10. Dmitrysh

    Dmitrysh Гуру

    И ещё по поводу EEPROM. Эта штука не очень надёжная, хотя у меня проблем не было. Было бы не плохо ввести проверку контрольной суммы EEPROM и если сумма не идёт, то переходим в режим настройки параметров.
     
  11. SOLOway

    SOLOway Гуру

    Читаю. Эту функцию мне давно хотелось внедрить!
     
  12. Watashi

    Watashi Гик

  13. SOLOway

    SOLOway Гуру

    Обозначенная в постах #1830 - #1835 проблема решена!
    Нужно
    Код (C++):
    double rampRateStep[9];
    , а после моих неграмотных замен длинных переменных - было
    Код (C++):
    byte rampRateStep[9];
     
  14. SOLOway

    SOLOway Гуру

    Наверное так и есть...
    Еще раз прочувствовал свою тупость :) . Теперь, после вашей корректировки, всё заколосилось! :)

    P.S.: Есть изменения в посте #1619
     
    Последнее редактирование: 28 окт 2018
  15. SOLOway

    SOLOway Гуру

    Версия скетча под UNO + LCD2004 с выводом графиков в прогу heater из поста #627
     

    Вложения:

    Нафаня нравится это.
  16. PavTS

    PavTS Нуб

    Немного проясню. На всех видео не только маленькие видюхи. В большинстве видео использую их так как есть много испорченных. Суть не в этом. В последнем видео я объяснил почему использую охлаждение и нужно ли оно. С маленькими платами не нужно только по тому, что низ мало разогрет в виду того, что температура на плате поддерживается еще верхом (плата маленькая). Если плата большая и контроль ведется по краю плату, то низ будет работать интенсивней и от этого остывать плата будет долго.
    В сравнении с керамикой у плит гораздо больше инерция.
    В следующий раз возьму плату побольше, чтобы продемонстрировать остывание.
     
  17. Dmitrysh

    Dmitrysh Гуру

    По контрольной сумме можно использовать вот такую простейшую реализацию:
    Код (C++):
    byte crc (void)
    { int i; byte CRC;
    for (i=0; i<4094;i++)
    CRC = CRC + EEPROM.read(i);
    return CRC;
    }
    Это код для EEPROM размером 4 килобайта, сумму надо записывать в последний байт, для данного примера это байт 4095.
     
    SOLOway нравится это.
  18. witcherden

    witcherden Нуб

    вопрос чем отличаются наполненные керамические нагреватели от полых
    https://www.mirnagreva.ru/catalog/i...keramicheskie_izluchateli_ik_ploskie_ffe/#ffe
    https://www.mirnagreva.ru/catalog/i...polye_ik_nagrevateli_ffeh/?clear_cache=Y#ffeh
    заметил что в станциях achi идут полые, почему именно полые, чем они лучше и кто ставил 600 ватные китайские панели на низ под стеклокерамику, такие вот
    https://ru.aliexpress.com/item/Orig...lgo_pvid=ae5da334-9cd0-4dc6-b48b-d0ec4f922e28

    хватает мощности или нужно мощнее
     
  19. SOLOway

    SOLOway Гуру

    Заметка по поводу выбора мощности симистора при использовании галогеновых ламп:
    Когда преднагреватель из линейных галогенок...
    Попробовал с электронно-механическим уклоном решить задачку поддержания температуры низом после выхода его на уставку и включения верха, который, когда размер платы маленький, заставляет своим воздействием низ полностью отрубаться.
    После выхода низа на уставку и включения верха, я тумблером переключаю силовой канал ламп с выхода ардуинки на выход беспомехового регулятора мощности по схеме Falconist отсюда:
    http://forum.cxem.net/index.php?/topic/73835-регулятор-мощности-для-паяльника-подойдёт/&tab=comments#comment-746557
    Сей регулятор заранее выставлен так, чтобы в лампы подавалось довольно мало мощности, что вычислено экспериментально. Результатом доволен.
    Вопрос в следующем: А чем в это самое время занимается ПИД низа? Ну и, конечно, в "хотелках" - видеть такой режим в скетче с возможностью контроля температуры низа и выставлением нужной фиксированной мощности при выходе низа на уставку, через меню...
     
    Последнее редактирование: 17 май 2020
  20. SOLOway

    SOLOway Гуру

    Полые занимают места больше и греются в месте крепления немного меньше "наполненных" (бредовое название).
    Едрён-батон...
    Чем выше инерционность системы, тем сложнее настроить ПИД. Полые немного меньше греют то, что греть не надо. Все-равно это не важный показатель, применительно к нашей теме - равномерность распределения спирали в обоих типах ТЭНов вы узрите лишь когда их в розетку включите :) . А от увиденного уже будете принимать решение о том, готовы ли вы пойти на дополнительные траты электроэнергии из-за необходимости высоко над ТЭНами фиксировать плату для её равномерного облучения и соответствующей потери тепловой энергии при корявой укладке спиралей в ТЭНах...
    Читать весьма полезно вот тут:
    http://radioservice.at.ua/_fr/0/Solderstation.pdf
    здесь @tssergej и в профильных темах на других ресурсах сей вопрос хорошо рассмотрен - если живете на экваторе и электроэнергия халявная - ставьте хоть стеклопакет :) . Китайцы в ACHI-подобных станциях по причине корявости ТЭН-ов стеклокерамику ставят, а платы еще и над поверхностью в холдеры крепить предлагают - они же Чубайсам не платят за электричество :)
     
    Последнее редактирование: 6 окт 2019