Marlin

Материал из wolfram
Перейти к навигации Перейти к поиску

Ну описалочка для настройки прошивки Marlin для 32 плат, и не дельта принтеров. В данном случае SKR 1.3.

platformio.ini

Указываем тип процессора LPC1768

[platformio]
default_envs = LPC1768

Configuration.h

Выберите последовательный порт на плате, который будет использоваться для связи с хостом.

Последовательный порт -1 - это последовательный порт, эмулируемый USB, если он доступен.

#define SERIAL_PORT -1
#define SERIAL_PORT_2 0

Этот параметр определяет скорость передачи данных принтера.

#define BAUDRATE 250000

Выберите имя из boards.h, которое соответствует вашей настройке

#ifndef MOTHERBOARD
  #define MOTHERBOARD BOARD_BTT_SKR_V1_3
#endif

Имя отображается на ЖК-дисплее в сообщении «Готово» и в информационном меню.

#define CUSTOM_MACHINE_NAME "Wolfram_2.1"

Это определяет количество экструдеров.

#define EXTRUDERS 1

Обычно ожидаемый диаметр нити (1,75, 2,85, 3,0, ...). Используется для измерения объема, датчика ширины нити и т. Д.

#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75

Температурные настройки

Тип сенсора, если это обычный 100 киломник то ставим 1

#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_BED 1

Максимальная температура хотэнда и стола

#define HEATER_0_MAXTEMP 300
#define BED_MAXTEMP      150

Настройки PID регуляции

Рекомендуется провести тестирование и получить данные для экструдера

Команда:

M303 E0 S250 C8

Получаем данные и вписываем

#define DEFAULT_Kp 19.05
#define DEFAULT_Ki 1.79
#define DEFAULT_Kd 50.61

PID регуляция для стола

Включаем для стола если скорость нагрева до 110 меньше 8 минут.

#define PIDTEMPBED

Выполняем калибровку

M303 E-1 S110 C8

Вписываем результат

#define DEFAULT_bedKp 26.65
#define DEFAULT_bedKi 5.33
#define DEFAULT_bedKd 88.93

Предотвратите выдавливание, если температура ниже EXTRUDE_MINTEMP.

#define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170

Раскомментируйте одну из этих опций, чтобы включить кинематику CoreXY, CoreXZ или CoreYZ в обычном порядке или в обратном порядке.

#define COREXY

Настройка концевиков.

Нужно указать где расположены концевые выключатели. В моём случае у меня X и Y находятся в максимумах.

//#define USE_XMIN_PLUG
//#define USE_YMIN_PLUG
#define USE_ZMIN_PLUG
#define USE_XMAX_PLUG
#define USE_YMAX_PLUG
//#define USE_ZMAX_PLUG

Настройка типа концевика, нормально замкнутый (true) или нормально разомкнутый (false)

#define Z_MIN_ENDSTOP_INVERTING true
#define X_MAX_ENDSTOP_INVERTING true
#define Y_MAX_ENDSTOP_INVERTING true

Выбор драйверов шаговых двигателей

Раскоментровав сроки с нужными осями и вписав драйвер который устанавливаем, мы определением прошивкой работу с типом подключения. SPI, UARD, так же у разных драйверов может отличится распиловка. Настройка драйвера осуществляется как прошивкой, так и аппаратно, перемычками и регулятором тока.

#define X_DRIVER_TYPE  TMC5160
#define Y_DRIVER_TYPE  TMC5160
#define Z_DRIVER_TYPE  TMC2208_STANDALONE
#define E0_DRIVER_TYPE TMC2130


TMC2208

Драйвер UARD типа, может работать и в режиме STANDALONE, без программной надстройки.

В его особенностях:

- Сверх тихая работа на любых скоростях.

- В программном режиме позволяет работать с 256 субшагами

- В режиме STANDALONE перемычками можно установить до 16 субшагов.

Указывает местоположения для установки перемычек для режима STANDALONE
Таблица показывающая в какое положение установить перемычки для получения нужного количества микро шагов.

Так же видно что, у данного драйвера есть постоянно включена интерполяция, на точности это не скажется.

- В программном режиме позволяет управлять током драйвера

- В STANDALONE позволяет регулировать ток резистором.

Указание мест для измерений и настройки tmc2208


Подстройка тока (Спасибо этой статье)


Например нам нужен ток 1A на драйвере

Вращаем резистр (3) измеряя напряжение между (1) и (2 - землёй) Расчет идет по следующей формуле:

Изм. напряжение = (1A * 2.5) / 1.77 = 1.41V

То есть между (1) и (2 - землёй) должно быть 1.41V


Или мы хотим узнать какой ток подаётся в данный момент:

Измеряем напряжение между (1) и (2 - землёй), например это 1.65V

Ток двигателя = (1.65 * 1.77) / 2.5 = 1,1682A

Подаваемый ток 1,1682A


TMC меняют ток в зависимости от нагрузки, хотим задать своего рода максимум.

К примеру максимальный ток для двигателя 1.4A

1.4A / 1.41 = 0,99A

Теперь получим напряжение которое нужно выставить

(0,99A * 2,5) 1.77 = 1,4V

Итого получили нужное нам напряжение


Не забываем что постоянный ток выдаваемый драйвером не должен превышать 1.2A.

TMC2130

Драйвер SPI, особенностью драйвера является свойство определения перегрузки и пропуска шагов. Что позволяет использовать его как концевой выключатель, для поиска домашнего положения.

Но так же имеет широкий функционал, мощность, является также сверх тихим.

В его особенностях:

- Сверх тихая работа на любых скоростях.

- В программном режиме позволяет работать с 256 субшагами

- В режиме STANDALONE перемычками можно установить до 16 субшагов.

Таблица настройки перемычек для 2130
Таблица настройки перемычек для 2130

Как видно можно установить 2 режима Spreadcyle и Stealthchop1. Первый за тихость, второй за скорость.

- В программном режиме позволяет управлять током драйвера

- В STANDALONE позволяет регулировать ток резистором, так же как и для 2208

Максимальный ток 1.2A

Не маловажный факт, данные 2208, 2130 драйверы не способны в тихом режиме работать на скоростях печати более 110 мм/с. Отключение тихого режима решает данную проблему, но возникают проблемы на низких скоростях связанные с появлением резонансов в конструкции принтера. Казалось бы для решения проблемы был придуман гибридный режим. Но это решает проблему очень кустарно. Так как ускорения не линейны, максимальные при разгоне, происходит множественное переключение режимов, при разгоне и торможении, что вызывает стук при печати в лучшем случае. В большинстве случаев срывы шагов.

TMC5160

Драйвер SPI, призван решит все проблемы предыдущих 2208 и 2130, ток до 3A все режимы, полный контроль пропусков щагов.

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

Остается болезнь связанная с тихим режимом, при скоростях выше 120 мм/с возникают сильные резонансы, срывов нет, но звук очень неправильный. Данную проблему решает гибридный режим. Остаются сильные удары во время разгона и торможения, но срывов нет.

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

Самый большой минус - Цена. Еще один минус, совместим с ними только marlin.

- Субшаги выставляются только программно до 256

- Ток управляется только программно.

Настоятельно рекомендуются для установки на принтеры с прочной и жесткой конструкцией на оси XY