Компактный 3D принтер

Добавлено в закладки: 6

С детства тяготею ко всему электронному, спасибо большое папе (мы с ним кучу всего собрали от усилителей до доработок компьютеров Апогей, Поиск). Особо восхищают миниатюрные функциональные вещи, я даже езжу на Smart’е )). И в довесок к принтеру стандартных размеров захотелось небольшой изящный станок.

Компактный 3D принтер

3D принтер я увидел в живую году 2014, это был Printbox3D. Конечно это было похоже на магию и фантастику, когда что-то создается практически из ничего. Естественно я видел и работал на многих станках, но в них же из чего то цельного путем отсекания ты получаешь результат, а тут всё наоборот – чудо! В 2016 году озадачившись приобретением каких-то китайских комплектующих на Ali вдруг наткнулся на 3D принтеры по нормальной цене несмотря на курс. Попытавшись проштудировать данную тему и не ошибиться с выбором в конец запутавшись ткнул наугад в TronXY P802M (клон Anet A8). Ждал посылку с нетерпением (отобрал у курьера на маршруте) и собрал всё за один вечер, несмотря на отсутствие некоторого крепежа в комплекте. Собирал вдумчиво и потому печатать смог им как говорится “из коробки” без особых проблем.

Компактный 3D принтер

Потом как раз появился цикл статей о Ultimaker Plastmaska Edition, который я тоже осилил и у меня появился второй принтер. Конечно TronXY помог с изготовлением пластиковых частей к нему.

Компактный 3D принтер

С ним автоматически забылись проблемы с адгезией, уровнем стола и пр. присущие дрыгостолам. И вот спустя какое то время, после нескольких апгрейдов стала расти коллекция запчастей и узлов, TronXY стоял без дела. Прикинув, что для нового принтера остается совсем немного докупить и собрать, я стал перебирать какой принтер выбрать. И в этом решающую роль имело во-первых маленький размер (как многие матерые печатники отмечают даже 200х200 это избыточно для 80% вещей), а во-вторых интерес попробовать рельсы! Автор одного из проектов не пожелал поделится чертежами сославшись на множество недоработок. Тогда я обратил внимание на прародителя этого проекта, а именно Signum CXY150R2 автор Степанов Роман (как я понял, это Signum только поставленный на рельсы). Теперь, немного понимая принципы 3D FDM печати, а также устройство станков, это не представляет сложной задачей даже имея только чертежи без какой либо инструкции. Корпус заказал у проверенных рекламщиков, докупил китайские рельсы, хотэнд, шпули и валы, остальное от доноров (электроника, блок питания, двигатели, винт Z с гайкой и муфтой), пластиковые детали спешно изготовлены Ultimaker PE.

Компактный 3D принтер

СПИСОК КОМПЛЕКТУЮЩИХ (BOM)

  1. Корпус, у меня лазерная резка фанеры 6мм – 1650
  2. Рельсы MGN9H 200 мм 3 шт – 2000
  3. Линейные подшипники LM10LUU 4 шт (надо два) – 620
  4. Вал 10х300мм 2 шт – 700
  5. E3D v6 хотенд для боудена с трубкой в сборе – 370
  6. Ремень GT2 5 метров (хотя достаточно двух) – 190
  7. Шпуля 16Т 3х6 с зубьями 5 шт (надо 6, у меня одна была, по ссылке качество так себе, но работают) – 85
  8. Шпуля 16Т 3х6 без зубьев 5 шт (надо 2) – 85
  9. Шестерня экструдера MK8 – 70
  10. Силиконовый подогрев стола 150х150 160 Вт – 1200

 

Это то, что мне пришлось докупить. То, что у меня уже было (приведу с примерными ценами и где я когда-то покупал):

  1. Двигатели Nema17 – 17HS4401 – 5 шт (надо только 4) – 3000
  2. Arduino Mega + RAMPS 1.4 – 1300
  3. Вентилятор обдува 3010 – 70
  4. Вентиляторы охлаждения подвала 40×10 2 шт – 260
  5. Концевые выключатели 10 шт (надо 3) – 360
  6. Блок питания 240 Вт
  7. Гибкая муфта 5х8мм – 250
  8. Ведущий винт 8х300мм (длина требуется не менее 250мм) – 470
  9. Подшипник экструдера 623ZZ 10 шт (надо 1) – 85
  10. Алюминиевые листы
  11. Алюминиевый Ш-образный профиль 15.6х8.8 – 75
  12. Пружины для стола 10 шт (нужно 4) – 85
  13. Сетевой разьем с выключателем – 87 (можно поискать у местных дешевле)
  14. Светодиодная лента 5м (надо 1.5) – 200
  15. Дюпон пластмаски и разьемы – 100
  16. Приличная горсть различного крепежа М3 – 400

 

Можно немного уменьшить стоимость на комплекте движок+винт с гайкой и взять не 5, а 3 движка и не нужна гибкая муфта (экономим 1300 рублей). Так же можно было взять с TronXY 8мм валы и подшипники для оси Z, но мне 10мм показалось надежнее.

КОРПУС

Здесь всё просто, заказал там же, где резал корпус из фанеры 6мм на Ultimaker (в тексте не буду давать ссылки на компании Екатеринбурга, дабы не делать рекламы, если кого-то заинтересует, то в комментариях отвечу). С крепежом тоже никаких особенностей и сложностей.

КИНЕМАТИКА

В Signum используется кинематическая схема CoreXY. Шпули 16 зубцовые 6 штук (выше скорость, но меньше момент для таких габаритов и масс не критично), ещё 2 просто ролика.
Так как инструкций по сборке к принтеру не было, а был 3D проект в Fusion 360, то некоторые моменты приходилось обдумывать и корректировать по ходу дела. Например, так как ремни у CoreXY находятся на двух уровнях, а рельсы по Y крепятся на “потолок”, то для свободного хода ремня пришлось утопить гайки крепления правой рельсы.

Компактный 3D принтер
Компактный 3D принтер

По оси Z классические два вала и ходовой винт 8мм.

СТОЛ

Компактный 3D принтер

В оригинале основа стола фанерная, я сделал алюминиевый лист (2мм сверху, 3мм снизу), фанеру судя по отзывам часто ведет со временем, потому не пошел по пути фанерных столов. Профиль легко найти в строительном супермаркете. Сложно найти грелку 150х150, единственный китаец очень долго отправлял, но всё же я её получил. Стекло обычное 2мм. Без всяких утеплителей стол греется очень шустро.

ЭКСТРУДЕР

Компактный 3D принтер

Сначала экструдер так же перекочевал с Ультика (там заменил на E3D Titan), но изъяны его конструкции, хотя и допиленной требуют чего то другого для надежной работы. В итоге пока пробую конструкцию с UlTi (кстати его пластиковые части были напечатаны на самом же Signum’е).

ЭЛЕКТРОНИКА

Компактный 3D принтер

Так же досталась от Ультика, после его перехода на MKS SBase. Для запуска использовал классику – Mega+RAMPS+A4988, но без свистелок (экран, энкодер, кнопки нам не нужны! только хардкор!). Управляется уже опробованным решением OrangePi Zero 256mb. Софт: принтер сначала на TeaCup, апельсинка на DietPi с Repetier-Server.

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

В установке этой прошивки ничего мудреного для себя я не встретил, есть достаточно подробная инструкция. Взял исходники. Запустил конфигуратор (работаю в праведном Linux, поэтому не пришлось возиться с установкой python). В предустановках только RAMPS 1.3, но не сложно исходя из схемы 1.4 сделать новый (мой можно скачать здесь). Выставляю параметры принтера и сохраняю файл. Открываю Arduino IDE и шью Мегу. Всё!

Микрики концевиков остались от постройки Ультика, движки 17HS8401 были сняты с TronXY.

Блок питания на 240Вт вроде как слабоват (160Вт стол+40Вт экструдер+20Вт движки+10Вт освещение и ардуина), но за счет того что нагреватели стартуют последовательно а потом лишь поддерживают температуру на половине мощности его с лихвой хватило. Силиконовая грелка 12В 160Вт нагревает термистор до 100 градусов буквально за три минуты.

До этого я с кинематикой CoreXY или H-bot дела не имел и неприятным сюрпризом был резонанс, в которой входили движки при одновременном вращении. Стал бороться с этим (помимо резинок на ножки) уменьшением микрошага основных двигателей. Заказал интересные TMC2130 и пока их ждал решил попробовать на зуб дешевый HR4988 (китайский аналог А4988 но с делением шага на 4,8,16,32,64,128 и на мой взгляд оказались ничем не хуже LV8729, а стоят дешевле в пять раз). Так как электроника 8 бит, а HR4988 не умеет интерполировать микрошаги, то оптимальный режим был выбран 1/64. Шум и резонанс существенно снизился, но скорость печати теперь не превышала 40мм/с, так и продержался до прибытия TMC2130.

С прибытием TMC2130 наступил комфорт и тишина. Да, эти драйвера также чертовски греются как и TMC2100, но у них есть управление по SPI! Так как китайская версия уже запаяна, то сперва пришлось “перевернуть” четыре вывода и распаять перемычку.Компактный 3D принтер

Далее соединяем управление в соответствие со схемой:

Компактный 3D принтер

Компактный 3D принтер

Как не был бы хорош TeaCup, но для управления TMC2130 пока что подходит Marlin. Раскомментируем соответствующие настройки в configuration_adv.h:

// включаем поддержку драйвера
#define HAVE_TMC2130

#if ENABLED(HAVE_TMC2130)

  // выбираем на каких движках они установлены
  #define X_IS_TMC2130
  //#define X2_IS_TMC2130
  #define Y_IS_TMC2130
  //#define Y2_IS_TMC2130
  //#define Z_IS_TMC2130

// настройки драйверов:

  #define R_SENSE           0.11  // R_sense resistor for SilentStepStick2130
  #define HOLD_MULTIPLIER    0.5  // коэффициент уменьшения тока удержания
  #define INTERPOLATE          1  // Использовать интерполяцию микрошагов до 256

  #define X_CURRENT         850  // rms current in mA. Multiply by 1.41 for peak current.
  #define X_MICROSTEPS        16  // 0..256

  #define Y_CURRENT         850
  #define Y_MICROSTEPS        16

  /**
   * использование тихого режима работы движков
   * если закоментировать то движки будут работать в более шумном но более динамичном режиме spreadCycle
   */
  #define STEALTHCHOP

  /**
   * Возможность настройки тока во время работы.
   * Увеличивает ток каждые 5 секунд до появления предупреждения о перегреве драйвера,
   * потом уменьшает ток до достижения рабочей температуры.
   * Настройка начинается со значения X/Y/Z/E_CURRENT, но не превысит заданного AUTO_ADJUST_MAX тока
   * Используемые g-коды:
   * M906 - Установка (например M906 X935 Y950) или просмотр (просто M906) тока двигателя в мА.
   * M906 S1 - Начать настройки тока
   * M906 S0 - Закончить настройку тока
   * M911 - Установить состояние возможного перегрева
   * M912 - Сброс состояния возможного перегрева 
   */
  #define AUTOMATIC_CURRENT_CONTROL

  #if ENABLED(AUTOMATIC_CURRENT_CONTROL)
    #define CURRENT_STEP          50  // [mA] шаг настройки тока
    #define AUTO_ADJUST_MAX     1300  // [mA], 1300mA_rms = 1840mA_peak максимальное достижимое значение тока
    #define REPORT_CURRENT_CHANGE // сообщать в консоль об изменениях тока
  #endif

  /**
   * Переключение режима драйвера в spreadCycle когда скорость превысит заданную HYBRID_THRESHOLD.
   * В этом режиме двигатель более динамично вращается, но повышается шум от работы.
   * требуется активации опции STEALTHCHOP.
   * командой M913 X/Y/Z/E можно изменять значения этого порога перехода режимов
   * <span style="text-decoration: underline"><strong><em>У меня на при активации этой опции двигатели вообще не вращались</em> (прим. demonx)</strong></span>
   */
  //#define HYBRID_THRESHOLD

  #define X_HYBRID_THRESHOLD     100  // [mm/s]
  #define X2_HYBRID_THRESHOLD    100
  #define Y_HYBRID_THRESHOLD     100
  #define Y2_HYBRID_THRESHOLD    100
  #define Z_HYBRID_THRESHOLD       4
  #define Z2_HYBRID_THRESHOLD      4
  #define E0_HYBRID_THRESHOLD     30
  #define E1_HYBRID_THRESHOLD     30
  #define E2_HYBRID_THRESHOLD     30
  #define E3_HYBRID_THRESHOLD     30
  #define E4_HYBRID_THRESHOLD     30

  /**
   * Использование stallGuard2 для определения момента парковки (режим работы без концевых выключателей).
   * Необходимо соединить проводником вывод DIAG1 на драйвере с выводом для концевика на плате контроллера.
   * При использовании с STEALTHCHOP, движение парковки будет более громким. Это нормально.
   *
   * Значения X/Y_HOMING_SENSITIVITY настраивают чувствительность срабатывания.
   * Чем выше значение тем чувствительность УМЕНЬШАЕТСЯ.
   * Ниже значение УВЕЛИЧИВАЕТ чувствительность.
   * Слишком низкое значение может привести к ложному срабатыванию, а слишком высокое к механическим повреждениям.
   * Для начала рекомендуется значение X/Y_HOME_BUMP_MM в 0.
   * Команда M914 X/Y позволяет задавать значения чувствительности
   * <em><strong><span style="text-decoration: underline">У меня пока что не срабатывает (прим. demonx)</span></strong></em>
   */
  //#define SENSORLESS_HOMING

  #if ENABLED(SENSORLESS_HOMING)
    #define X_HOMING_SENSITIVITY  19
    #define Y_HOMING_SENSITIVITY  19
  #endif

  /**
   * Задание дополнительных значений для тонкой настройки.
   * Список доступных к изменению значений можно найти в библиотеке для драйверов:
   * https://github.com/teemuatlut/TMC2130Stepper
   *
   * Например:
   * #define TMC2130_ADV() { \
   *   stepperX.diag0_temp_prewarn(1); \
   *   stepperX.interpolate(0); \
   * }
   */
 #define  TMC2130_ADV() {  }

#endif // HAVE_TMC2130

Главная проблема TMC2100 – пропуск шагов, как следствие перегрева чипа драйвера, так вот TMC2130 в связке с Marlin умеют сами настраивать так ток на двигателе, чтобы драйвер не перегрелся и не ушел в защиту! Например это можно сделать так через консоль:

  1. запускаем печать
  2. выставляем начальный ток в миллиамперах – M906 X650 Y650
  3. запуск автоматического подбора тока – M906 S1
  4. в терминале можно наблюдать как прошивка сначала повышает ток, а потом понижает при опасности перегрева. Значения настроенных токов в последствии сохраняются.

 

Работа на А4988 –

Работа на TMC2130 –

К сожалению пока не удается работать с главной фишкой драйверов – детектором нагрузки StallGuard 2. Пытаюсь выяснить в чем причина. Драйвера хоть и китайские, построены на фирменном немецком чипе, обвязка взята из референсного даташита, являются точной копией того, что продает Watterott. Заказал MKS Gen-L, посмотрю как будет с ним.

Архив с текущей прошивкой с поддержкой TMC2130.

ОБЩАЯ СБОРКА И НАСТРОЙКА

Железки прикручены, провода на соплях, руки чешутся, запускаем как есть…

Компактный 3D принтер
И станок заработал! Без обдува, без подогрева стола, мятых ремнях, на соплях, буквально без фитинга в экструдере (пришлось полчаса боуден трубку рукой держать))), но поехало! Проверяем перворожденный калибровочный куб:
Компактный 3D принтер

Компактный 3D принтер

Компактный 3D принтер

Результат замеров хорош на мой взгляд (не обращаем внимания на подтеки, отсутствие фитинга сказалось и искажения букв, тут отсутствие обдува виновато)!

Из изначального проекта были немного изменены:

  1. Обдув (хотя и у моего варианта эффективность под вопросом, надо как то турбину монтировать)
  2. Держатель катушки удлинил
  3. Проставка для движка оси Z (можно её конечно из фанеры выпилить)
  4. Втулка передних шпуль второго этажа

РЕЗУЛЬТАТЫ ПЕЧАТИ

Слой 0,15мм, пластики PLA, ABS от FDPlast, скорость 60мм/с.

Компактный 3D принтер

Компактный 3D принтер

Видео работы –

ДАЛЬНЕЙШИЕ ПЛАНЫ

Компактный 3D принтер

  1. Модернизация обдува за счет установки вентилятора 40х10 на обдув хотенда и двух турбин 40х10 на обдув изделия
  2. Установка MKS Gen-L c 4-мя TMC2130, нормальный кабель-менеджмент ))
  3. Настройка и отладка кинематики, точный подбор ускорений, джерков и пр.
  4. Возможно попробовать перейти на 3мм пруток.
  5. Дальнейшие изыскания и использования всего возможного функционала TMC2130 (отказ от концевиков, контроль пропусков шагов, оптимальный ток, шум)
25

Метки: , ,    2017-11-29      Раздел: На конкурс, Постройка 3D принтера, Своими руками  
Автор: Просмотров: 9 253   2 комментария



2 комментария на «Компактный 3D принтер»

    1. Внешние габариты без учета боудена и экструдера 300х300х365мм. Поле для печати сейчас 135х140х145мм, когда заработает StallGuard2 на TMC2100, то поле немного увеличится на величину концевиков.
      В принтере используется принт-сервер на микрокомпьютере, поэтому особой потребности при данной связке в дисплее нет, максимум пользы это быстрый мониторинг параметров температуры, а в остальном он будет бесполезен. Более выигрышный вариант это установить дисплей не на контроллер принтера а на микрокомпьютер принт-сервера, тогда это будет полезней и более информативней.

      0

Добавить комментарий




     
Авторизация
*
*
Генерация пароля
Яндекс.Метрика