mirror of
https://github.com/Klipper3d/klipper.git
synced 2025-07-19 20:57:55 -06:00
extruder: Allow dynamic adjustment of pressure advance (#6635)
Signed-off-by: Dmitry Butyugin <dmbutyugin@google.com>
This commit is contained in:
parent
248d3dbf8b
commit
c84d78f3f1
6 changed files with 185 additions and 20 deletions
|
@ -40,7 +40,7 @@ SET_VELOCITY_LIMIT ACCEL=100 VELOCITY=20 SQUARE_CORNER_VELOCITY=1 ACCEL_TO_DECEL
|
|||
M204 S500
|
||||
|
||||
SET_PRESSURE_ADVANCE EXTRUDER=extruder ADVANCE=.001
|
||||
SET_PRESSURE_ADVANCE ADVANCE=.002 ADVANCE_LOOKAHEAD_TIME=.001
|
||||
SET_PRESSURE_ADVANCE ADVANCE=.002 SMOOTH_TIME=.001
|
||||
|
||||
# Restart command (must be last in test)
|
||||
RESTART
|
||||
|
|
68
test/klippy/pressure_advance.cfg
Normal file
68
test/klippy/pressure_advance.cfg
Normal file
|
@ -0,0 +1,68 @@
|
|||
# Config for extruder testing
|
||||
[stepper_x]
|
||||
step_pin: PF0
|
||||
dir_pin: PF1
|
||||
enable_pin: !PD7
|
||||
microsteps: 16
|
||||
rotation_distance: 40
|
||||
endstop_pin: ^PE5
|
||||
position_endstop: 0
|
||||
position_max: 200
|
||||
homing_speed: 50
|
||||
|
||||
[stepper_y]
|
||||
step_pin: PF6
|
||||
dir_pin: !PF7
|
||||
enable_pin: !PF2
|
||||
microsteps: 16
|
||||
rotation_distance: 40
|
||||
endstop_pin: ^PJ1
|
||||
position_endstop: 0
|
||||
position_max: 200
|
||||
homing_speed: 50
|
||||
|
||||
[stepper_z]
|
||||
step_pin: PL3
|
||||
dir_pin: PL1
|
||||
enable_pin: !PK0
|
||||
microsteps: 16
|
||||
rotation_distance: 8
|
||||
endstop_pin: ^PD3
|
||||
position_endstop: 0.5
|
||||
position_max: 200
|
||||
|
||||
[extruder]
|
||||
step_pin: PA4
|
||||
dir_pin: PA6
|
||||
enable_pin: !PA2
|
||||
microsteps: 16
|
||||
rotation_distance: 33.5
|
||||
nozzle_diameter: 0.500
|
||||
filament_diameter: 3.500
|
||||
heater_pin: PB4
|
||||
sensor_type: EPCOS 100K B57560G104F
|
||||
sensor_pin: PK5
|
||||
control: pid
|
||||
pid_Kp: 22.2
|
||||
pid_Ki: 1.08
|
||||
pid_Kd: 114
|
||||
min_temp: 0
|
||||
max_temp: 210
|
||||
|
||||
[extruder_stepper my_extra_stepper]
|
||||
extruder: extruder
|
||||
step_pin: PH5
|
||||
dir_pin: PH6
|
||||
enable_pin: !PB5
|
||||
microsteps: 16
|
||||
rotation_distance: 28.2
|
||||
|
||||
[mcu]
|
||||
serial: /dev/ttyACM0
|
||||
|
||||
[printer]
|
||||
kinematics: cartesian
|
||||
max_velocity: 300
|
||||
max_accel: 3000
|
||||
max_z_velocity: 5
|
||||
max_z_accel: 100
|
38
test/klippy/pressure_advance.test
Normal file
38
test/klippy/pressure_advance.test
Normal file
|
@ -0,0 +1,38 @@
|
|||
# Extruder tests
|
||||
DICTIONARY atmega2560.dict
|
||||
CONFIG pressure_advance.cfg
|
||||
|
||||
SET_PRESSURE_ADVANCE ADVANCE=0.1
|
||||
# Home and extrusion moves
|
||||
G28
|
||||
G1 X20 Y20 Z1 F6000
|
||||
G1 E7
|
||||
G1 X25 Y25 E7.5
|
||||
|
||||
# Update pressure advance for my_extra_stepper
|
||||
SET_PRESSURE_ADVANCE EXTRUDER=my_extra_stepper ADVANCE=0.02
|
||||
G1 X30 Y30 E8.0
|
||||
|
||||
# Unsync my_extra_stepper from extruder
|
||||
SYNC_EXTRUDER_MOTION EXTRUDER=my_extra_stepper MOTION_QUEUE=
|
||||
|
||||
# Update pressure advance for primary extruder
|
||||
SET_PRESSURE_ADVANCE ADVANCE=0.01
|
||||
G1 X35 Y35 E8.5
|
||||
|
||||
# Update pressure advance both extruders
|
||||
SET_PRESSURE_ADVANCE EXTRUDER=my_extra_stepper ADVANCE=0.05
|
||||
SET_PRESSURE_ADVANCE ADVANCE=0.05
|
||||
# Sync my_extra_stepper to extruder
|
||||
SYNC_EXTRUDER_MOTION EXTRUDER=my_extra_stepper MOTION_QUEUE=extruder
|
||||
G1 X40 Y40 E9.0
|
||||
|
||||
# Update smooth_time
|
||||
SET_PRESSURE_ADVANCE SMOOTH_TIME=0.02
|
||||
SET_PRESSURE_ADVANCE EXTRUDER=my_extra_stepper SMOOTH_TIME=0.02
|
||||
G1 X45 Y45 E9.5
|
||||
|
||||
# Updating both smooth_time and pressure advance
|
||||
SET_PRESSURE_ADVANCE SMOOTH_TIME=0.03 ADVANCE=0.1
|
||||
SET_PRESSURE_ADVANCE EXTRUDER=my_extra_stepper SMOOTH_TIME=0.03 ADVANCE=0.1
|
||||
G1 X50 Y50 E10.0
|
Loading…
Add table
Add a link
Reference in a new issue