VZBOT Эталонная конфигурация
- Эта страница представляет собой шаблон эталонной конфигурации Klipper для VZBOT / VZBOT AWD, а не готовую конфигурацию для непосредственного использования.
serial,canbus_uuid, все контакты, тип термистора, ход, направление концевых выключателей и направление двигателей должны быть изменены в соответствии с фактическим оборудованием.- При первом включении и отладке отсоедините ремни или держите руку рядом с кнопкой аварийной остановки/отключения питания. Сначала используйте
STEPPER_BUZZдля проверки каждого двигателя.
Область применения
| Конструкция | Описание |
|---|---|
| VZBOT 2WD | Стандартный CoreXY, два двигателя X/Y |
| VZBOT AWD | Четырехмоторный CoreXY, общепринятая запись: stepper_x, stepper_x1, stepper_y, stepper_y1 |
| VZ-HextrudORT | Конфигурацию экструдера можно взять за основу, фактическое rotation_distance все равно необходимо откалибровать заново |
Что необходимо изменить в первую очередь
| Пункт | Расположение | Описание |
|---|---|---|
| ID платы | [mcu] | Для прошивки USB используйте serial, для прошивки CAN используйте canbus_uuid |
| Размеры станка | [stepper_x], [stepper_y], [stepper_z] | Измените в соответствии с VZ235, VZ330 или пользовательскими размерами |
| Направление двигателя | dir_pin | Если направление перепутано, добавьте или удалите ! перед соответствующим контактом |
| Контакт концевого выключателя | endstop_pin | Существует три различных способа записи: физический концевой выключатель, концевой выключатель драйвера и Probe |
| Модель драйвера | [tmc2209] / [tmc5160] | Должна строго соответствовать фактическому драйверу |
| Модель термистора | [extruder], [heater_bed] | Заполните в соответствии с фактическим датчиком хотэнда и нагревательного стола |
| Параметры PID | [extruder], [heater_bed] | После завершения первой отладки выполните калибровку PID и сохраните |
Базовая конфигурация
[include mainsail.cfg]
# [include fluidd.cfg]
# [include timelapse.cfg]
[virtual_sdcard]
path: ~/printer_data/gcodes
[pause_resume]
recover_velocity: 350
[display_status]
[exclude_object]
[gcode_arcs]
resolution: 0.1
[mcu]
serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxxxx-if00
# canbus_uuid: xxxxxxxxxxxx
[temperature_sensor MCU]
sensor_type: temperature_mcu
[temperature_sensor HOST]
sensor_type: temperature_host
[printer]
kinematics: corexy
max_velocity: 500
max_accel: 10000
max_z_velocity: 20
max_z_accel: 300
square_corner_velocity: 10
При первоначальной отладке станка VZBOT рекомендуется сначала использовать консервативные скорости и ускорения. После того как вы убедитесь, что хоум-г, концевые выключатели, нагрев, экструзия и вентиляторы работают нормально, постепенно увеличивайте max_velocity, max_accel и заново выполняйте компенсацию резонанса.
Конфигурация XY для 2WD
Подходит для VZBOT только с двумя двигателями XY. Замените контакты в соответствии с фактической платой.
[stepper_x]
step_pin:
dir_pin:
enable_pin:
rotation_distance: 40
microsteps: 16
full_steps_per_rotation: 200
endstop_pin:
position_min: 0
position_endstop: 0
position_max: 330
homing_speed: 50
homing_retract_dist: 0
[tmc2209 stepper_x]
uart_pin:
interpolate: False
run_current: 1.2
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_y]
step_pin:
dir_pin:
enable_pin:
rotation_distance: 40
microsteps: 16
full_steps_per_rotation: 200
endstop_pin:
position_min: 0
position_endstop: 0
position_max: 330
homing_speed: 50
homing_retract_dist: 0
[tmc2209 stepper_y]
uart_pin:
interpolate: False
run_current: 1.2
sense_resistor: 0.110
stealthchop_threshold: 0
Конфигурация XY для AWD
Подходит для VZBOT AWD с четырьмя двигателями XY. stepper_x и stepper_x1 должны двигаться в одном направлении, stepper_y и stepper_y1 также должны двигаться в одном направлении.
В распространенной конфигурации VZBOT AWD появляются дополнительные секции двигателей, такие как stepper_x1, stepper_y1. Перед использованием убедитесь, что текущая версия Klipper, конфигурация кинематики и пример конфигурации поддерживают такую запись; если вы используете официальную новую универсальную конфигурацию кинематики, измените ее на запись carriage / stepper в соответствии с соответствующим примером.
[stepper_x]
step_pin:
dir_pin:
enable_pin:
rotation_distance: 40
microsteps: 16
full_steps_per_rotation: 200
endstop_pin:
position_min: 0
position_endstop: 0
position_max: 330
homing_speed: 50
homing_retract_dist: 0
[tmc5160 stepper_x]
cs_pin:
spi_bus:
interpolate: False
run_current: 1.6
sense_resistor: 0.033
driver_TBL: 1
driver_TOFF: 3
driver_DISS2G: 1
driver_DISS2VS: 1
[stepper_x1]
step_pin:
dir_pin:
enable_pin:
rotation_distance: 40
microsteps: 16
full_steps_per_rotation: 200
[tmc5160 stepper_x1]
cs_pin:
spi_bus:
interpolate: False
run_current: 1.6
sense_resistor: 0.033
driver_TBL: 1
driver_TOFF: 3
driver_DISS2G: 1
driver_DISS2VS: 1
[stepper_y]
step_pin:
dir_pin:
enable_pin:
rotation_distance: 40
microsteps: 16
full_steps_per_rotation: 200
endstop_pin:
position_min: 0
position_endstop: 0
position_max: 330
homing_speed: 50
homing_retract_dist: 0
[tmc5160 stepper_y]
cs_pin:
spi_bus:
interpolate: False
run_current: 1.6
sense_resistor: 0.033
driver_TBL: 1
driver_TOFF: 3
driver_DISS2G: 1
driver_DISS2VS: 1
[stepper_y1]
step_pin:
dir_pin:
enable_pin:
rotation_distance: 40
microsteps: 16
full_steps_per_rotation: 200
[tmc5160 stepper_y1]
cs_pin:
spi_bus:
interpolate: False
run_current: 1.6
sense_resistor: 0.033
driver_TBL: 1
driver_TOFF: 3
driver_DISS2G: 1
driver_DISS2VS: 1
- Выполните по отдельности
STEPPER_BUZZ STEPPER=stepper_x,STEPPER_BUZZ STEPPER=stepper_x1,STEPPER_BUZZ STEPPER=stepper_y,STEPPER_BUZZ STEPPER=stepper_y1. - Два двигателя одной оси должны вращаться в одном направлении.
- Если два двигателя одной оси тянут друг друга, немедленно отключите питание и измените состояние
!вdir_pinодного из них.
Конфигурация оси Z
Конфигурация с одним Z
[stepper_z]
step_pin:
dir_pin:
enable_pin:
microsteps: 16
rotation_distance: 4
full_steps_per_rotation: 200
endstop_pin:
position_min: -5
position_endstop: 0
position_max: 330
homing_speed: 5
second_homing_speed: 2.5
homing_retract_dist: 5
[tmc2209 stepper_z]
uart_pin:
interpolate: False
run_current: 1.0
sense_resistor: 0.110
stealthchop_threshold: 0
Использование Probe в качестве Z-концевого выключателя
[stepper_z]
step_pin:
dir_pin:
enable_pin:
microsteps: 16
rotation_distance: 4
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
position_min: -5
position_max: 330
homing_speed: 5
second_homing_speed: 2.5
homing_retract_dist: 5
[probe]
pin:
x_offset: 0
y_offset: 0
# z_offset: 0
speed: 5
lift_speed: 10
samples: 3
samples_result: median
sample_retract_dist: 2
samples_tolerance: 0.075
samples_tolerance_retries: 3
Конфигурация экструдера
VZBOT часто использует комбинации хотэндов, такие как VZ-HextrudORT, Goliath, Dragon, Rapido и т.д. Ниже приведены только общие справочные данные, rotation_distance необходимо измерить практически.
[extruder]
step_pin:
dir_pin:
enable_pin:
microsteps: 16
full_steps_per_rotation: 200
rotation_distance: 22.5
gear_ratio: 50:8
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin:
sensor_type: PT1000
sensor_pin:
min_temp: 0
max_temp: 400
max_extrude_only_distance: 1000
max_extrude_only_velocity: 200
max_extrude_only_accel: 10000
pressure_advance: 0.02
pressure_advance_smooth_time: 0.03
[tmc2209 extruder]
uart_pin:
interpolate: False
run_current: 0.7
sense_resistor: 0.110
Типичные справочные значения для VZ-HextrudORT
| Экструдер | Справочное значение | Описание |
|---|---|---|
| VZ-HextrudORT Low T8 | rotation_distance: 22.5 | Требуется практическая точная настройка |
| VZ-HextrudORT Low T10 | rotation_distance: 23.8425 | Требуется практическая точная настройка |
| VZ-HextrudORT Low Plus T8 | rotation_distance: 29.7 | Требуется практическая точная настройка |
| VZ-HextrudORT Low Plus T10 | rotation_distance: 29.11 | Требуется практическая точная настройка |
Конфигурация нагревательного стола
[heater_bed]
heater_pin:
sensor_type: Generic 3950
sensor_pin:
min_temp: 0
max_temp: 130
# control: pid
# pid_Kp:
# pid_Ki:
# pid_Kd:
Команда калибровки PID:
PID_CALIBRATE HEATER=heater_bed TARGET=100
SAVE_CONFIG
Конфигурация вентиляторов
[fan]
pin:
max_power: 1.0
cycle_time: 0.002
hardware_pwm: false
shutdown_speed: 0
[heater_fan hotend_fan]
pin:
max_power: 1.0
kick_start_time: 0.5
heater: extruder
heater_temp: 50.0
[controller_fan driver_fan]
pin:
max_power: 1.0
shutdown_speed: 0
kick_start_time: 0.5
fan_speed: 0.8
idle_timeout: 90
idle_speed: 0.4
stepper: stepper_x,stepper_y
Сетка стола
[bed_mesh]
speed: 150
horizontal_move_z: 5
mesh_min: 30,30
mesh_max: 300,300
probe_count: 5,5
mesh_pps: 2,2
algorithm: bicubic
bicubic_tension: 0.2
mesh_min и mesh_max необходимо рассчитывать с учетом смещения щупа, размеров стола и доступной области сопла, их нельзя просто копировать.
Порядок отладки
- Измените
[mcu], убедитесь, что Klipper может подключиться к плате. - Проверьте отображение температуры: при комнатной температуре температура хотэнда и стола должна быть близка к температуре окружающей среды.
- С помощью
STEPPER_BUZZпоочередно проверьте работу двигателей; у AWD двигатели одной оси должны вращаться в одном направлении. - Проверьте направление XY без установленных или с ослабленными ремнями.
- Выполните
G28 X,G28 Y,G28 Zна низкой скорости, убедитесь в правильном направлении срабатывания концевых выключателей. - Выполните калибровку PID хотэнда и нагревательного стола.
- Откалибруйте
rotation_distanceэкструдера. - Выполните калибровку
Z_OFFSET, выравнивание стола, компенсацию резонанса и калибровку опережения давления.
Часто задаваемые вопросы
Klipper сообщает, что не может найти stepper_x1
Проверьте, не пропущен ли целый блок [stepper_x1] в конфигурации AWD, или не назван ли он другим именем.
Двигатели AWD на одной оси мешают друг другу
Немедленно отключите питание, проверьте порядок подключения и dir_pin двух двигателей на одной оси. Не продолжайте тестирование под напряжением, если они тянут друг друга.
Ошибка направления при хоуминге
В CoreXY направления X/Y влияют друг на друга. Сначала убедитесь, что двигатели AWD одной оси вращаются в одном направлении, затем попробуйте отрегулировать dir_pin для X/Y, каждый раз меняйте только одно место и записывайте результат.
Температура хотэнда скачет или отображается некорректно
В первую очередь проверьте модель термистора, подключение, обжим клемм и sensor_pin. Конфигурация для PT1000, NTC 100K, термопары/усилительной платы отличается, их нельзя путать.