Marlin: различия между версиями
Владимир (обсуждение | вклад) |
Владимир (обсуждение | вклад) |
||
| Строка 75: | Строка 75: | ||
#define Y_MAX_ENDSTOP_INVERTING true | #define Y_MAX_ENDSTOP_INVERTING true | ||
=== Выбор драйверов шаговых двигателей === | ===Выбор драйверов шаговых двигателей=== | ||
Раскоментровав сроки с нужными осями и вписав драйвер который устанавливаем, мы определением прошивкой работу с типом подключения. SPI, UARD, так же у разных драйверов может отличится распиловка. Настройка драйвера осуществляется как прошивкой, так и аппаратно, перемычками и регулятором тока. | Раскоментровав сроки с нужными осями и вписав драйвер который устанавливаем, мы определением прошивкой работу с типом подключения. SPI, UARD, так же у разных драйверов может отличится распиловка. Настройка драйвера осуществляется как прошивкой, так и аппаратно, перемычками и регулятором тока. | ||
| Строка 96: | Строка 96: | ||
- В STANDALONE позволяет регулировать ток резистором. | - В STANDALONE позволяет регулировать ток резистором. | ||
[[Файл:Marlin измерения драйвера 2208.png|мини|Указание мест для измерений и настройки tmc2208]] | [[Файл:Marlin измерения драйвера 2208.png|мини|Указание мест для измерений и настройки tmc2208]] | ||
Подстройка тока: | |||
Подстройка тока (Спасибо [https://3dtoday.ru/blogs/defekt/the-current-setting-of-the-stepping-motors-on-the-drivers-tmc2100tmc21/ этой статье]) | |||
Версия от 16:08, 14 августа 2020
Ну описалочка для настройки прошивки 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, так же у разных драйверов может отличится распиловка. Настройка драйвера осуществляется как прошивкой, так и аппаратно, перемычками и регулятором тока.
TMC2208
драйвер UARD типа, может работать и в режиме STANDALONE, без программной надстройки.
В его особенностях:
- Сверх тихая работа на любых скоростях.
- В программном режиме позволяет работать с 256 субшагами
- В режиме STANDALONE перемычками можно установить до 16 субшагов.


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

Подстройка тока (Спасибо этой статье)
Например нам нужен ток 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.