Сушилка филамента для 3д принтера
Всем привет! Решил, что тема достаточно узкая и техническая, чтобы кому-то в 3D-печатном сообществе зайти.
Сделал сушилку для филамента сам, потому что жаба душила покупать — и не пожалел (много текста)
Короче, дело было так: филамент у меня, как у всех, постепенно тянул влагу из воздуха, печать начинала потрескивать и плеваться, а покупные сушилки на маркетплейсах либо стоят как небольшая почка, либо по факту греют коробку "на глазок" без нормального контроля температуры. Ну и как человек, у которого руки чешутся, я решил — а почему бы не собрать свою. С экраном, вебом, профилями под разные пластики и вообще по-нормальному.
Осторожно: дальше много технических подробностей и рассказ про то, как я спалил пару деталей по пути.
Что внутри
Мозги — Wemos D1 Mini на ESP8266. Дёшево, есть WiFi из коробки, чего ещё для счастья надо.
Начинка:
PTC-нагреватель 12V 100W — гоняется через силовой модуль, никакого "включил напрямую и молись"
Два датчика SHT31 (не один!) — специально поставил два в разных точках камеры, чтобы видеть реальный разброс температуры, а не верить одной точке
Два вентилятора 4020 — гоняют воздух через нагреватель по кругу
Отдельный вытяжной вентилятор — периодически проветривает камеру, выгоняя влажный воздух наружу
OLED-дисплей и энкодер — управление без веба, если вебом лень пользоваться
Корпус — обычный герметичный контейнер IKEA на 10.6 литра, никакого хитрого 3D-печатного корпуса, зачем плодить сущности
Зачем два датчика температуры, а не один
Вот тут реально было интересно. Поставил два SHT31 в разных концах камеры — и оказалось, что разброс температуры по камере при установившемся режиме составляет ~0.8°C (один датчик показывал 64.6°C, второй 65.4°C). Немного, казалось бы, но это подтвердило то, что я подозревал: одна точка измерения — это не то же самое, что реальная средняя температура по всему объёму, особенно если филамент лежит не прямо под нагревателем.
Как грею — не просто "вкл/выкл"
Сначала было банальное реле "грей пока не дойдёт, потом выключи, потом снова грей" — классический bang-bang контроль. Получалось довольно кривое колебание температуры вокруг заданной. Переделал на пропорциональное управление мощностью нагревателя в зависимости от того, насколько далеко от целевой температуры:
Разница с уставкой Мощность нагревателя больше +2°C 0% от 0 до +2°C 30% от -3 до 0°C 70% меньше -3°C 100%
Стало на порядок стабильнее, без рывков и перегрева.
Вытяжка — тоже не просто "раз в N минут"
Изначально вытяжной вентилятор просто включался каждые 10 минут на 10 секунд, весь цикл сушки одинаково. Но подумал — а ведь влага же не линейно уходит из пластика, в начале сушки испарение самое активное, а к концу цикла филамент уже почти сухой и особо нечего выгонять. Так что сделал убывающую схему по времени:
первые 50% времени сушки — вытяжка каждые 3 минуты на 20 секунд
следующие 25% — каждые 5 минут
последние 25% — каждые 10 минут
По ощущениям (и по графику влажности в вебе) — работает куда логичнее, чем фиксированный интервал на всю сессию.
Веб-интерфейс
Через браузер (телефон/комп) можно:
выбрать профиль (PLA/PETG/ABS/Custom), время и температуру
следить за температурой и влажностью в реальном времени, отдельно по обоим датчикам
смотреть график всего сеанса сушки — отдельно температура, отдельно влажность
ставить на паузу, менять температуру на лету, вручную дёргать вытяжку
заливать обновления прошивки по воздуху (OTA), без разборки корпуса ради USB
А ещё — что оказалось внезапно полезным — устройство теперь всегда поднимает свою точку доступа WiFi, даже если рядом нет вообще никакого роутера. Утащил сушилку на работу, где с интернетом не очень — подключился телефоном прямо к самой сушилке и рулю ей без всякой сети. Мелочь, а приятно.
Про грабли (куда без них)
Спалил один MOSFET (IRLZ44N), перепутав ножки Drain/Source. Горит нагреватель без остановки — весёлый вечер был.
Так же спалил Wemos d1 mini, один раз.
Тот же IRLZ44N норовил открываться сам по себе без резистора между Gate и Source, пока ESP не подключена — тоже не сразу понял, в чём дело.
В итоге перешёл на готовые модули MOSFET-драйверов (типа D4184) — со встроенной обвязкой, вообще никакой головной боли, надёжно работают прямо от 3.3V.
Проверял вытяжной вентилятор: команда с веба вроде срабатывает (лампочка на плате гаснет — значит сигнал реально идёт), а вентилятор физически не крутится. Долго думал на прошивку, оказалось — банально переломаны провода питания (кусок остался от старой светодиодной ленты, светодиодные провода для силовых соединений — так себе решение, не повторяйте).
На главном экране иногда вылезали натуральные иероглифы вместо процента влажности. Грешил на переполнение памяти, на глюки датчика — а по факту оказалось, что просто индикатор WiFi и цифры влажности рисовались на экране друг поверх друга. Классика "баг там, где не ищешь".
Итог
Работает стабильно уже который месяц, сушит PLA за 3-4 часа при 55°C, PETG за 5 часов при 65°C, ABS/ASA — 6 часов при 80°C. Полёт нормальный.
Температуру в 55С нагоняет за 7 мин, в 65С уже за 11 минут. Довольно таки быстро.
Кстати, отдельная маленькая победа: заказывал самоклеящуюся пробку 2мм толщиной — обклеил ей контейнер изнутри. Копейки стоит, клеится без проблем, а разница ощутимая: потери тепла заметно упали, нагреватель стал реже включаться на полную мощность, чтобы держать температуру. По сути, простое утепление — а результат как от апгрейда железа. Так что если у кого-то тоже самодельная сушилка в обычном пластиковом контейнере — маленький, дешёвый и практически бесплатный лайфхак.
Если кому-то интересно повторить — могу выложить исходники прошивки, схему подключения и вообще все подробности. Пишите в комментах, если надо — соберу подробный гайд по сборке отдельным постом.
ИТОГ: по деньгам вышло не сильно дешевле чем Crerality на 2 катушки, но сильно интересней. Приобрел опыт с прошивками ардуино, приобрел опыт пайки. Да и вообще довольно интересное это занятие оказалось.
Всем сухого филамента 🙃




Лига 3D-принтеров
3.9K постов15K подписчиков
Правила сообщества
Запрещено хамство и оскорбления, уважайте чужой опыт и труд