KREMEN Реклама
KREMEN Реклама

проблема с калибровкой уровня стола дельты Anycubic Predator + Clipper

Salavat
Идет загрузка
Загрузка
17.07.2026
71
1
Вопросы и ответы
Статья относится к принтерам:
Anycubic Predator

Приветствую всех.Переделал Anycubic Predator: устанвлена плата BTT PI v1.2 как плата управления, на нее установлен клиппер. К ней присоединена плата BTT SKR v1.4 turbo как плата управления самим принтером. Клиппер встал, все ок, все моторы работают, но вот какая проблема - не могу откалибровать стол, постоянно выходит одна и то же - передний край слегка задран, слой еле-кле к столу прилипает, а сзади сопло буквально в минус уходит.Когда просто даю команда опустить сопло до нуля на тех же точках - все ок, лист а4 нормально проходит под соплом, чуть-чуть с натягом, как положено.Что делаю, последовательность калибровок:1) ENDSTOP_PHASE_CALIBRATE - калибровка концевиков моторов2) выставляю уровень нуля по центру стола вручную + А43) PROBE_CALIBRATE - калибрую датчик высоты (у дельты это концевик) 4) DELTA_CALIBRATE - калибровка геометрии принтера, плеч5) BED_MESH_CALIBRATE - создание карты высот стола После этого снова проверяю высоту в нуле: снова выставляю уровень нуля по центру стола вручную + А4,потом отправляю файл на печать.Результат один - задняя часть стола царапается соплом, там нулевая высота или даже минус, а спереди сопло уходит висит над поверхностью стола. Что я делаю не так?Вот конфиг принтера с клиппера:"#[include mainsail.cfg]

# host MCU service is preinstalled and ready to use with:

#[mcu CB1]

#serial: /tmp/klipper_host_mcu

#[include generic-bigtreetech-xxx.cfg]

# This file contains common pin mappings for the BIGTREETECH SKR V1.4

# board. To use this config, the firmware should be compiled for the

# LPC1768 or LPC1769(Turbo).

# See docs/Config_Reference.md for a description of parameters.

[stepper_a]

step_pin: P2.2

dir_pin: !P2.6

enable_pin: !P2.1

microsteps: 16

rotation_distance: 40

endstop_pin: P1.29

homing_speed: 60

#position_endstop: 455

#arm_length: 440.0

[stepper_b]

step_pin: P0.19

dir_pin: !P0.20

enable_pin: !P2.8

microsteps: 16

rotation_distance: 40

endstop_pin: P1.28

homing_speed: 60

#position_endstop: 455

#arm_length: 440.0

[stepper_c]

step_pin: P1.15

dir_pin: !P1.14              

enable_pin: !P1.16

microsteps: 16

rotation_distance: 40

endstop_pin: P1.27

homing_speed: 60

#position_endstop: 455

#arm_length: 440.0

[extruder]

step_pin: P2.13

dir_pin: !P0.11

enable_pin: !P2.12

microsteps: 16

rotation_distance: 23.0

nozzle_diameter: 0.400

filament_diameter: 1.750

heater_pin: P2.5

sensor_type: EPCOS 100K B57560G104F

sensor_pin: P0.24

control: pid

pid_Kp: 22.2

pid_Ki: 1.08

pid_Kd: 114

min_temp: 0

max_temp: 260

[heater_bed]

heater_pin: P2.7

sensor_type: EPCOS 100K B57560G104F

sensor_pin: P0.25

control: pid

pid_Kp: 54.027

pid_Ki: 0.770

pid_Kd: 948.182

min_temp: 0

max_temp: 130

[fan]

pin: P2.3

[heater_fan hotend_fan]

pin: P2.4

heater: extruder

heater_temp: 50.0

[mcu]

serial: /dev/serial/by-id/usb-Klipper_lpc1769_1AE0FF0FA69869AF514A415EC02000F5-if00

[printer]

kinematics: delta

max_velocity: 300

max_accel: 3000

minimum_z_position: -20

max_z_velocity: 200

max_z_accel: 1000

#delta_radius: 227

print_radius:185

[delta_calibrate]

radius: 180

speed: 100

horizontal_move_z: 30

[probe]

pin: ^P0.10        

z_offset: 18   

[bed_mesh]

speed: 100

horizontal_move_z: 20

mesh_radius: 180

mesh_origin: 0,0

round_probe_count: 9

mesh_pps: 3

algorithm: bicubic

bicubic_tension: 0.2

fade_start: 1

fade_end: 30

#fade_target: 0

    

########################################

# TMC2208 configuration

########################################

[tmc2208 stepper_a]

uart_pin: P1.10

run_current: 0.800

stealthchop_threshold: 999999

[tmc2208 stepper_b]

uart_pin: P1.9

run_current: 0.800

stealthchop_threshold: 999999

[tmc2208 stepper_c]

uart_pin: P1.1

run_current: 0.800

stealthchop_threshold: 999999

[tmc2208 extruder]

uart_pin: P1.4

run_current: 0.7

stealthchop_threshold: 999999

########################################

# EXP1 / EXP2 (display) pins

########################################

[board_pins]

aliases:

    # EXP1 header

    EXP1_1=P1.30, EXP1_3=P1.18, EXP1_5=P1.20, EXP1_7=P1.22, EXP1_9=,

    EXP1_2=P0.28, EXP1_4=P1.19, EXP1_6=P1.21, EXP1_8=P1.23, EXP1_10=,

    # EXP2 header

    EXP2_1=P0.17, EXP2_3=P3.26, EXP2_5=P3.25, EXP2_7=P1.31, EXP2_9=,

    EXP2_2=P0.15, EXP2_4=P0.16, EXP2_6=P0.18, EXP2_8=, EXP2_10=

######################################################################

# "RepRapDiscount 128x64 Full Graphic Smart Controller" type displays

######################################################################

[display]

lcd_type: st7920

cs_pin: EXP1_4

sclk_pin: EXP1_5

sid_pin: EXP1_3

encoder_pins: ^EXP2_3, ^EXP2_5

click_pin: ^!EXP1_2

[output_pin beeper]

pin: EXP1_1

[endstop_phase]

[respond]

[gcode_arcs]

resolution: 1.0

[input_shaper]

  

[display_status]

[pause_resume]

[force_move]

enable_force_move: true

#-----макросы исполняемые при старте принтера----

[delayed_gcode auto_home_and_disable]

initial_duration: 2

gcode:

    G28

    G4 P2000 # Пауза 2 секунды перед отключением моторов

    M84

[delayed_gcode load_bed_mesh]

initial_duration: 0.5

gcode:

    {% if printer.bed_mesh.profiles.default is defined %}

        BED_MESH_PROFILE LOAD=default

        { action_respond_info("Mesh 'default' loaded successfully.") }

    {% else %}

        { action_respond_info("No mesh 'default' found. Proceeding without bed mesh.") }

    {% endif %}

    

#-----macroses---

[virtual_sdcard]

path: ~/printer_data/gcodes

[gcode_macro pause]

rename_existing: BASE_PAUSE

description: "Pause the print"

gcode:

    {% set z = params.Z|default(50)|float %} # Подъём на 50 мм

    {% set e = params.E|default(5)|float %}    

    # Сохраняем состояние

    SAVE_GCODE_STATE NAME=PAUSE_state    

    # Перемещения перед паузой

    G91

    G1 E-{e} F2100

    G1 Z{z} F900

    G90

    BASE_PAUSE # Сигнал бипера 5 раз

    beep_5

[gcode_macro resume]

rename_existing: BASE_RESUME

description: "Resume the print"

gcode:

    {% set e = params.E|default(5)|float %}    

    # Вызываем базовую логику возобновления

    BASE_RESUME

    # Возвращаем филамент (компенсируем оттяжку)

    G91

    G1 E{e} F2100

    G90

    

    # Восстанавливаем состояние (возвращаемся в точку прерывания)

    RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1

[gcode_macro cancel_print]

rename_existing: BASE_CANCEL_PRINT

description: "Cancel the print"

gcode:

    G28

    beep_5

    TURN_OFF_HEATERS

    CLEAR_PAUSE

    SDCARD_RESET_FILE

    BASE_CANCEL_PRINT

[filament_switch_sensor filament_sensor]

switch_pin: !P1.26

pause_on_runout: True

runout_gcode:

    _PAUSE

    M117 filament end!

    beep_5

#-------------мои макросы------------------------------

[gcode_macro Drop_To_Z5]

gcode:

    G28 # Парковка (каретки вверх)

    G1 Z200 F3000 # Переместиться в центр на высоту 5 мм (безопасно)

    G1 X0 Y0 Z5 F3000 # Переместиться в центр на высоту 5 мм (безопасно)

[gcode_macro Drop_To_Zero]

gcode:

    G28

    G1 Z20 F3000 # Подойти к центру на высоте 20 мм

    G1 X0 Y0 Z5 F300 # Медленно опуститься до 5 мм

    G1 Z0 F150 # Очень медленно до 0 (можно остановить вручную)

[gcode_macro PREHEAT_PLA]

gcode:

    M104 S200 # Нагреть сопло до 200°C

    M140 S60 # Нагреть стол до 60°C

    M117 Нагрев PLA...

[gcode_macro PREHEAT_ABS]

gcode:

    M104 S240

    M140 S110

    M117 Нагрев ABS...

    

[gcode_macro ZUP]

gcode:

    SET_GCODE_OFFSET Z_ADJUST=0.1 MOVE=1

[gcode_macro ZDOWN]

gcode:

   SET_GCODE_OFFSET Z_ADJUST=-0.1 MOVE=1

  

[gcode_macro beep_5]

description: "Beep 5 times"

gcode:

    {% set count = 5 %}

    {% for i in range(count) %}

        SET_PIN PIN=beeper VALUE=1

        G4 P200

        SET_PIN PIN=beeper VALUE=0

        G4 P200

    {% endfor %}

    

#-------------------------------------------

[gcode_macro CALIBRATE_ENDSTOP_PHASE_step1]

description: "Полная калибровка концевиков парковки"

gcode:

     # Проверяем, что секция [endstop_phase] добавлена в конфиг

    {% if printer.configfile.settings.endstop_phase is not defined %}

        RESPOND TYPE=error MSG="ERROR: [endstop_phase] not found in config. Please add it and restart."

    {% else %}

        RESPOND TYPE=echo MSG="Starting endstop phase calibration..."

    {% endif %}

    # Список позиций для перемещения эффектора (X, Y) в пределах print_radius

    {% set positions = [

        [0, 0], # центр

        [-150, 0], # левый край

        [150, 0], # правый край

        [0, -150], # передний край

        [0, 150], # задний край

        [-130, -130], # левый передний угол

        [130, -130], # правый передний угол

        [-130, 130], # левый задний угол

        [130, 130] # правый задний угол

    ] %}

    # Переменные для сбора данных

    {% set iterations = 5 %} # Количество измерений для каждой стойки

    RESPOND TYPE=echo MSG="Moving to different positions and collecting data..."

    # Основной цикл калибровки

    {% for i in range(iterations) %}

        # Перемещаем эффектор в очередную позицию

        {% set pos = positions[i % positions|length] %}

        G1 X{pos[0]} Y{pos[1]} Z50 F6000

        G4 P500 # Небольшая пауза для стабилизации

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

        G28

        # Калибруем фазу для каждой стойки

        ENDSTOP_PHASE_CALIBRATE STEPPER=stepper_a

        ENDSTOP_PHASE_CALIBRATE STEPPER=stepper_b

        ENDSTOP_PHASE_CALIBRATE STEPPER=stepper_c

        RESPOND TYPE=echo MSG="Iteration {i+1}/{iterations} complete. Position: X{pos[0]} Y{pos[1]}"

    {% endfor %}

    # Финальное сохранение калибровки

    RESPOND TYPE=echo MSG="All iterations complete. Saving calibration data..."

    

    ENDSTOP_PHASE_CALIBRATE STEPPER=stepper_a

    ENDSTOP_PHASE_CALIBRATE STEPPER=stepper_b

    ENDSTOP_PHASE_CALIBRATE STEPPER=stepper_c

    

    SAVE_CONFIG

    RESPOND TYPE=echo MSG="Endstop phase calibration complete! SAVE_CONFIG executed." 

#-------------------------------------------

[gcode_macro PROBE_CALIBRATE_step2]

description: "Калибровка датчика (z_offset)"

gcode:

    G28

    PROBE_CALIBRATE

#-------------------------------------------

[gcode_macro Delta_Calibrate_step3]

description: "Калибровка по 7 точкам"

gcode:

    G28

    DELTA_CALIBRATE

    G28

 SAVE_CONFIG

#-------------------------------------------

[gcode_macro Bed_mesh_Calibrate_step4]

description: "Составление карты стола"

gcode:

    G28

    BED_MESH_CALIBRATE

    G28

 SAVE_CONFIG

#*# <----------------SAVE_CONFIG--------------------->

#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.

#*#

#*# [printer]

#*# delta_radius = 227.837009

#*#

#*# [stepper_a]

#*# angle = 209.654564

#*# arm_length = 438.005278

#*# position_endstop = 455.288

#*#

#*# [stepper_b]

#*# angle = 329.518523

#*# arm_length = 440.173868

#*# position_endstop = 454.827

#*#

#*# [stepper_c]

#*# angle = 90.000000

#*# arm_length = 440.943852

#*# position_endstop = 455.270

#*#

#*# [probe]

#*# z_offset = 17.038

#*#

#*# [bed_mesh default]

#*# version = 1

#*# points =

#*# -0.266805, -0.266805, -0.266805, -0.266805, -0.266805, -0.266805, -0.266805, -0.266805, -0.266805

#*# 0.011011, 0.011011, 0.011011, -0.112969, -0.216429, -0.331194, -0.354988, -0.354988, -0.354988

#*# -0.070544, -0.070544, -0.089250, -0.099911, -0.127844, -0.185818, -0.231794, -0.229502, -0.229502

#*# -0.180726, -0.180726, -0.112317, -0.041738, -0.038034, -0.128063, -0.164792, -0.104408, -0.104408

#*# -0.433825, -0.265623, -0.144516, -0.036045, -0.013840, -0.076464, -0.129715, -0.129416, -0.093696

#*# -0.253342, -0.253342, -0.153330, -0.078108, -0.023717, -0.065374, -0.127386, -0.165593, -0.165593

#*# -0.252144, -0.252144, -0.122646, -0.068276, -0.043468, -0.093758, -0.173665, -0.243771, -0.243771

#*# -0.118051, -0.118051, -0.118051, -0.063711, -0.093348, -0.139702, -0.194253, -0.194253, -0.194253

#*# -0.076583, -0.076583, -0.076583, -0.076583, -0.076583, -0.076583, -0.076583, -0.076583, -0.076583

#*# x_count = 9

#*# y_count = 9

#*# mesh_x_pps = 3

#*# mesh_y_pps = 3

#*# algo = bicubic

#*# tension = 0.2

#*# min_x = -180.0

#*# max_x = 180.0

#*# min_y = -180.0

#*# max_y = 180.0

#*#

#*# [endstop_phase stepper_a]

#*# trigger_phase = 45/64

#*#

#*# [endstop_phase stepper_b]

#*# trigger_phase = 50/64

#*#

#*# [endstop_phase stepper_c]

#*# trigger_phase = 57/64

#*#

#*# [delta_calibrate]

#*# height0 = 17.038

#*# height0_pos = 35060.000,35024.000,35062.000

#*# height1 = 17.038

#*# height1_pos = 41324.000,41344.000,30658.000

#*# height2 = 17.038

#*# height2_pos = 33731.000,45233.000,33777.000

#*# height3 = 17.038

#*# height3_pos = 30886.000,40252.000,40328.000

#*# height4 = 17.038

#*# height4_pos = 33747.000,33661.000,42137.000

#*# height5 = 17.038

#*# height5_pos = 39525.000,31182.000,39447.000

#*# height6 = 17.038

#*# height6_pos = 43698.000,33728.000,33729.000

#*# distance0 = 129.79999999999998

#*# distance0_pos1 = 35955.767,36640.208,36666.162

#*# distance0_pos2 = 32030.259,42424.022,42447.187

#*# distance1 = 130.10000000000002

#*# distance1_pos1 = 36170.954,36205.334,36885.986

#*# distance1_pos2 = 35101.785,35137.272,47086.387

#*# distance2 = 129.2

#*# distance2_pos1 = 36605.827,35990.068,36666.162

#*# distance2_pos2 = 42388.177,32064.560,42447.187

#*# distance3 = 129.6

#*# distance3_pos1 = 36825.579,36205.031,36231.290

#*# distance3_pos2 = 47025.980,35132.753,35161.119

#*# distance4 = 129.60000000000002

#*# distance4_pos1 = 36605.681,36639.901,36016.174

#*# distance4_pos2 = 42385.381,42418.138,32090.667

#*# distance5 = 129.5

#*# distance5_pos1 = 36170.810,36859.880,36231.290

#*# distance5_pos2 = 35099.638,47060.280,35161.119

#*# distance6 = 129.79999999999998

#*# distance6_pos1 = 32275.321,41175.898,41986.024

#*# distance6_pos2 = 35401.074,34811.081,46565.086

#*# distance7 = 129.5

#*# distance7_pos1 = 35370.868,34781.392,45561.250

#*# distance7_pos2 = 42504.683,32145.899,41758.819

#*# distance8 = 129.60000000000002

#*# distance8_pos1 = 41926.810,32309.424,41199.389

#*# distance8_pos2 = 46504.569,35432.010,34835.095

#*# distance9 = 129.0

#*# distance9_pos1 = 45500.738,35402.025,34805.554

#*# distance9_pos2 = 41697.053,42534.905,32172.139

#*# distance10 = 129.7

#*# distance10_pos1 = 41137.738,41957.404,32335.664

#*# distance10_pos2 = 34773.694,46539.208,35460.398

#*# distance11 = 129.60000000000002

#*# distance11_pos1 = 34744.222,45535.361,35430.263

#*# distance11_pos2 = 32111.795,41735.573,42563.777

  "

Ответы на вопросы
Lider 3D Реклама
Lider 3D Реклама