Aller au contenu principal

Configuration de référence VORON 0.2

À lire avant utilisation
  • Cette page est un modèle de configuration de référence Klipper pour VORON 0.2, et non une configuration prête à l'emploi.
  • serial, canbus_uuid, toutes les broches, les types de thermistances, les courses, les directions de fin de course et les directions des moteurs doivent être modifiés en fonction du matériel réel.
  • Lors de la première mise sous tension, utilisez STEPPER_BUZZ pour vérifier chaque moteur, n'exécutez pas directement un accueil complet de la machine.

Champ d'application

StructureDescription
VORON 0.2Structure CoreXY de petite taille
Structure Z uniqueL'exemple est principalement configuré avec un Z unique
Fin de course physique / Sans fin de courseL'exemple conserve la référence d'écriture pour la fin de course physique et la fin de course sans TMC

Contenu à modifier en priorité

ÉlémentEmplacementDescription
ID de la carte mère[mcu]Utilisez serial pour le firmware USB, canbus_uuid pour le firmware CAN
Utilisateur de l'ordinateur hôte[virtual_sdcard]Remplacez fly dans /home/fly par le nom d'utilisateur réel
Dimensions de la machine[stepper_x], [stepper_y], [stepper_z]Modifiez position_max en fonction de la zone d'impression réelle
Direction du moteurdir_pinSi la direction est inversée, ajoutez ou supprimez ! devant la broche correspondante
Méthode de fin de courseendstop_pinChoisissez une seule écriture entre fin de course physique et sans fin de course
Modèle de driver[tmc2209] / [tmc5160]Doit correspondre au driver réel ; supprimez ou commentez les segments de driver inutilisés
Type de thermistance[extruder], [heater_bed]Remplissez selon le capteur réel de la tête chaude et du lit chauffant
Paramètres PID[extruder], [heater_bed]Effectuez l'étalonnage PID après la première mise au point et sauvegardez

Ordre de mise au point

  1. Modifiez [mcu] pour confirmer que Klipper peut se connecter à la carte mère.
  2. Vérifiez que l'affichage des températures de la tête chaude, du lit chauffant, de la carte mère et de l'ordinateur hôte est normal.
  3. Utilisez STEPPER_BUZZ pour vérifier les directions des moteurs X/Y/Z/extrudeur.
  4. Utilisez QUERY_ENDSTOPS pour vérifier l'état des fins de course.
  5. Exécutez G28 X, G28 Y, G28 Z à faible vitesse pour confirmer que l'accueil de chaque axe est normal.
  6. Effectuez l'étalonnage PID de la tête chaude et du lit chauffant.
  7. Étalonnez rotation_distance de l'extrudeur.
  8. Effectuez l'étalonnage du décalage Z, du maillage du lit et de l'avance en pression.

Configuration de référence complète

#####################################################################
# Éléments à modifier/vérifier
#####################################################################
##***Éléments à modifier/vérifier:***
## Chemin MCU [mcu]
## Zone d'activité de l'imprimante position de xyz
## Type de thermistance [extruder] et [heater_bed]
## Position d'arrêt de la fin de course Z [safe_z_home]
## Décalage de la fin de course Z [stepper_z]
## Étalonnage PID [extruder] et [heater_bed]
## Ajustement fin des pas du moteur de l'extrudeur [extruder]

#####################################################################
# Invocation de fichier
#####################################################################
### Lorsque vous utilisez fluidd ou mainsail comme interface, supprimez le # devant #[include XXX.cfg].
### When using fluidd or mainsail as the frontend, remove the '#' before #[include XXX.cfg].
[include fluidd.cfg]
#[include mainsail.cfg]

### Remplacez 'fly' dans /home/fly par le nom d'utilisateur de votre ordinateur hôte, assurez-vous que ce n'est pas l'utilisateur ROOT.
### Replace 'fly' in /home/fly with your host computer username, ensuring it's not the ROOT user.
[virtual_sdcard]
path: /home/fly/printer_data/gcodes
on_error_gcode: CANCEL_PRINT


#####################################################################
# Configuration de l'ID maître
#####################################################################
[mcu]
serial: /dev/serial/by-id/usb-Klipper_rp2040_MELLOW-if00
### Utilisez ls /dev/serial/by-id/* pour trouver l'ID du firmware USB, et
### remplacez /dev/serial/by-id/usb-Klipper_rp2040_MELLOW-if00 par l'ID que vous trouvez.
### Find the USB firmware ID with: ls /dev/serial/by-id/* and replace
### /dev/serial/by-id/usb-Klipper_rp2040_MELLOW-if00 with the ID you discover.

#canbus_uuid: xxxxxxxxxxxx
### Pour interroger l'ID du firmware CAN : ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
### Pour l'ID CAN, remplacez 'serial:' par 'canbus_uuid:' et ajoutez l'ID.
### Query the CAN firmware ID with: ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
### Replace 'serial:' in the CAN ID with 'canbus_uuid:', then append the ID.

#####################################################################
# Surveillance de la température
#####################################################################
[temperature_sensor motherboard]
sensor_type: temperature_mcu

[temperature_sensor Raspberry Pi]
sensor_type: temperature_host

#####################################################################
# Modèle et accélération
#####################################################################
[printer]
kinematics: corexy
max_velocity: 200
max_accel: 2000
max_z_velocity: 15
max_z_accel: 300
square_corner_velocity: 6.0

#####################################################################
# Paramètres des steppers X/Y
#####################################################################

[stepper_x]
## Référez-vous à https://docs.vorondesign.com/build/startup/#v0
step_pin:
dir_pin: # Vérifiez la direction du moteur dans le lien ci-dessus. Si inversé, ajoutez un ! avant la broche réelle
enable_pin:!
rotation_distance: 40
microsteps: 32
full_steps_per_rotation: 200 # Réglez sur 400 pour un moteur pas à pas 0.9°, 200 pour les moteurs 1.8°
endstop_pin:
# endstop_pin: tmc2209_stepper_x:virtual_endstop
# endstop_pin: tmc5160_stepper_x:virtual_endstop
position_min: 0
position_endstop: 120
position_max: 120
homing_speed: 40 # Pour l'accueil sans capteur, il est recommandé de ne pas dépasser 40 mm/s
homing_retract_dist: 0
homing_positive_dir: true

[tmc2209 stepper_x]
uart_pin:
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0 # Réglez sur 999999 pour activer stealthchop, et 0 pour utiliser spreadcycle
diag_pin: ^
driver_SGTHRS: 80

[tmc5160 stepper_x]
cs_pin:
### spi_bus et spi_software ne peuvent utiliser qu'un seul des deux.
### spi_bus and spi_software can only use one of them.
# spi_bus:
spi_software_mosi_pin:
spi_software_miso_pin:
spi_software_sclk_pin:
run_current: 1.0
interpolate: False
### La résistance de détection du driver doit être modifiée en fonction du driver.
### The driver sampling resistor needs to be modified according to the driver
sense_resistor: 0.075
stealthchop_threshold: 0
diag0_pin: ^!
driver_SGT: 1

[stepper_y]
## Référez-vous à https://docs.vorondesign.com/build/startup/#v0
step_pin:
dir_pin: # Vérifiez la direction du moteur dans le lien ci-dessus. Si inversé, ajoutez un ! avant la broche réelle
enable_pin:!
rotation_distance: 40
microsteps: 32
full_steps_per_rotation: 200
endstop_pin:
# endstop_pin: tmc2209_stepper_y:virtual_endstop
# endstop_pin: tmc5160_stepper_y:virtual_endstop
position_min: 0
position_endstop: 120
position_max: 120
homing_speed: 40
homing_retract_dist: 0
homing_positive_dir: true

[tmc2209 stepper_y]
uart_pin:
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
diag_pin: ^
driver_SGTHRS: 80

[tmc5160 stepper_y]
cs_pin:
### spi_bus et spi_software ne peuvent utiliser qu'un seul des deux.
### spi_bus and spi_software can only use one of them.
# spi_bus:
spi_software_mosi_pin:
spi_software_miso_pin:
spi_software_sclk_pin:
run_current: 1.0
interpolate: False
### La résistance de détection du driver doit être modifiée en fonction du driver.
### The driver sampling resistor needs to be modified according to the driver
sense_resistor: 0.075
stealthchop_threshold: 0
diag0_pin: ^!
driver_SGT: 1

#####################################################################
# Paramètres du stepper Z
#####################################################################

[stepper_z]
## Référez-vous à https://docs.vorondesign.com/build/startup/#v0
step_pin:
dir_pin:! # Vérifiez la direction du moteur dans le lien ci-dessus. Si inversé, ajoutez un ! avant la broche réelle
enable_pin: !
rotation_distance: 8 # Pour vis mère intégrée T8x8
microsteps: 32
endstop_pin:
position_endstop: 120
position_max: 120
position_min: -1.5
homing_speed: 20
second_homing_speed: 3.0
homing_retract_dist: 3.0

[tmc2209 stepper_z]
uart_pin:
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0


#####################################################################
# Extrudeur
#####################################################################
[extruder]
## Type de capteur # les thermistances courantes sont (Generic 3950, ATC Semitec 104GT#2)
## Type de capteur # Les thermistances courantes sont (Generic 3950, ATC Semitec 104GT#2)
sensor_type: ATC Semitec 104GT-2
sensor_pin:
#####################################################################
## Si vous utilisez PT1000, veuillez connecter le cavalier à côté de la thermistance.
## Si vous utilisez PT1000, veuillez connecter le cavalier à côté de la thermistance.
# sensor_type:PT1000
# pullup_resistor: 1100
# sensor_pin:
#####################################################################
# Extrudeur
#####################################################################
## https://www.klipper3d.org/Config_Reference.html#extruder
[extruder]
step_pin:
dir_pin:
enable_pin: !
rotation_distance: 21.84
## rotation_distance = L'ancienne rotation_distance multipliée par la longueur d'extrusion réelle divisée par la longueur d'extrusion demandée.
## Étalonnage des pas : 22.44 = ancienne valeur 22 * valeur réelle 102 / valeur cible 100
gear_ratio:50:10
## Rapport de réduction (Galileo ratio 7.5:1 et commentez cette ligne ; BMG est 50:17, arbre de sortie avant, arbre d'entrée arrière)
microsteps:16
full_steps_per_rotation: 200
nozzle_diameter:0.400
filament_diameter:1.75
heater_pin:
min_temp: -50
max_temp: 300
max_power: 1.0
min_extrude_temp: 150
pressure_advance: 0.05
## Avance en pression
## Avance en pression
##https://www.klipper3d.org/fr/Pressure_Advance.html
pressure_advance_smooth_time: 0.040
#max_extrude_only_distance: 200.0 # En cas d'erreur de débit d'extrusion, vous pouvez commenter ceci, mais il est recommandé de retrancher
# Commande d'étalonnage PID de la température de la buse : PID_CALIBRATE HEATER=extruder TARGET=245
# Commande d'étalonnage PID de la température de la buse : PID_CALIBRATE HEATER=extruder TARGET=245
control:watermark
step_pulse_duration: 0.000004

[tmc2209 extruder]
uart_pin:
uart_address:3
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0

#####################################################################
# Chauffage du lit
#####################################################################

[heater_bed]
heater_pin:
## Vérifiez le type de thermistance que vous avez. Voir https://www.klipper3d.org/Config_Reference.html#common#thermistors pour les types de thermistances courants.
## Utilisez "Generic 3950" pour les chauffages Keenovo
sensor_type:
sensor_pin:
max_power: 1.0
min_temp: -50
max_temp: 120
# Commande d'étalonnage PID de la température du lit chauffé : PID_CALIBRATE HEATER=heater_bed TARGET=100
# Commande d'étalonnage PID de la température du lit chauffé : PID_CALIBRATE HEATER=heater_bed TARGET=100
control:watermark

#####################################################################
# Contrôle du ventilateur
#####################################################################
[fan]
pin:
max_power: 1.0
kick_start_time: 0.5 # Selon votre ventilateur, vous devrez peut-être augmenter cette valeur si le ventilateur ne démarre pas
off_below: 0.13
cycle_time: 0.010
#####################################################################
[heater_fan hotend_fan]
pin:
max_power: 1.0
kick_start_time: 0.5
heater: extruder
heater_temp: 50.0


#####################################################################
# Capteur de fin de filament
#####################################################################

#[filament_switch_sensor Filament_Runout_Sensor]
#pause_on_runout: True
#runout_gcode: PAUSE
#switch_pin:

#####################################################################
# Routines d'accueil et d'ajustement du portique
#####################################################################
### Vous ne pouvez utiliser que safe_z_home ou homing_override
### You can only use either safe_z_home or homing_override
#[safe_z_home] Uniquement nécessaire si vous utilisez l'emplacement de la fin de course Z V0.0 ou V0.1
#home_xy_position: 120,120
#speed: 50.0
#z_hop: 5


[homing_override]
axes: xyz
set_position_z: 0
gcode:
G90
G0 Z5 F600
{% set home_all = 'X' not in params and 'Y' not in params and 'Z' not in params %}

{% if home_all or 'X' in params %}
_HOME_X
{% endif %}

{% if home_all or 'Y' in params %}
_HOME_Y
{% endif %}

{% if home_all or 'Z' in params %}
_HOME_Z
{% endif %}

## À utiliser avec BED_SCREWS_ADJUST
[bed_screws]
screw1: 60,5
screw1_name: vis avant
screw2: 5,115
screw2_name: arrière gauche
screw3: 115,115
screw3_name: arrière droite
Probe_height: 0.1

#####################################################################
# Neopixel
#####################################################################

[neopixel board_rgb]
pin:
chain_count: 1
color_order: GRB
initial_RED: 0.0
initial_GREEN: 0.1
initial_BLUE: 0.0

#####################################################################
# Affichage V0
#####################################################################
# [mcu display]
# serial:
# restart_method: command

# [display]
# lcd_type: sh1106
# i2c_mcu: display
# i2c_bus: i2c1a
# # Réglez la direction de la roue codeuse
# # Standard : Rotation vers la droite (sens horaire) fait défiler vers le bas ou augmente les valeurs. Rotation vers la gauche (sens antihoraire) fait défiler vers le haut ou diminue les valeurs.
# encoder_pins:
# # Inversé : Rotation vers la droite (sens horaire) fait défiler vers le haut ou diminue les valeurs. Rotation vers la gauche (sens antihoraire) fait défiler vers le bas ou augmente les valeurs.
# #encoder_pins:
# click_pin:
# kill_pin:
# #x_offset: 2
# # Utilisez le décalage X pour décaler l'affichage vers la droite. La valeur peut être de 0 à 3
# #vcomh: 0
# # Définit la valeur Vcomh sur les écrans SSD1306/SH1106. Cette valeur est
# # associée à un effet de "bavure" sur certains écrans OLED. La
# # valeur peut aller de 0 à 63. La valeur par défaut est 0.
# # Ajustez cette valeur si vous obtenez des rayures verticales sur votre écran. (31 semble être une bonne valeur)

# [neopixel displayStatus]
# pin:
# chain_count: 1
# color_order: GRB
# initial_RED: 0.2
# initial_GREEN: 0.05
# initial_BLUE: 0

#####################################################################
# Macros
#####################################################################

[idle_timeout]
### Si inactif pendant plus de 30 minutes, le lit chauffé sera éteint.
### If idle for more than 30 minutes, heated bed will be turned off.
timeout: 1800

[gcode_macro PRINT_START]
# Utilisez PRINT_START pour le script de démarrage du slicer - veuillez personnaliser pour votre slicer de choix
gcode:
G28 ; accueille tous les axes
G90 ; positionnement absolu
G1 Z20 F3000 ; éloigne la buse du lit

[gcode_macro PRINT_END]
# Utilisez PRINT_END pour le script de fin du slicer - veuillez personnaliser pour votre slicer de choix
gcode:
M400 ; attend que le tampon se vide
G92 E0 ; met l'extrudeur à zéro
G1 E-4.0 F3600 ; rétracte le filament
G91 ; positionnement relatif

# Obtient les limites
{% set max_x = printer.configfile.config["stepper_x"]["position_max"]|float %}
{% set max_y = printer.configfile.config["stepper_y"]["position_max"]|float %}
{% set max_z = printer.configfile.config["stepper_z"]["position_max"]|float %}

# Vérifie la position de fin pour déterminer la direction de déplacement sécurisée
{% if printer.toolhead.position.x < (max_x - 20) %}
{% set x_safe = 20.0 %}
{% else %}
{% set x_safe = -20.0 %}
{% endif %}

{% if printer.toolhead.position.y < (max_y - 20) %}
{% set y_safe = 20.0 %}
{% else %}
{% set y_safe = -20.0 %}
{% endif %}

{% if printer.toolhead.position.z < (max_z - 2) %}
{% set z_safe = 2.0 %}
{% else %}
{% set z_safe = max_z - printer.toolhead.position.z %}
{% endif %}

G0 Z{z_safe} F3600 ; remonte la buse
G0 X{x_safe} Y{y_safe} F20000 ; déplace la buse pour éliminer le filetage
TURN_OFF_HEATERS
M107 ; éteint le ventilateur
G90 ; positionnement absolu
G0 X60 Y{max_y-10} F3600 ; gare la buse à l'arrière

[gcode_macro LOAD_FILAMENT]
gcode:
M83 ; met l'extrudeur en relatif
G1 E30 F300 ; charge
G1 E15 F150 ; amorce la buse avec du filament
M82 ; met l'extrudeur en absolu

[gcode_macro UNLOAD_FILAMENT]
gcode:
M83 ; met l'extrudeur en relatif
G1 E10 F300 ; extrude un peu pour ramollir la pointe
G1 E-40 F1800 ; rétracte un peu, mais pas trop pour éviter le blocage
M82 ; met l'extrudeur en absolu

[gcode_macro _HOME_X]
gcode:
# Utilise toujours un courant de fonctionnement constant sur les steppers A/B lors de l'accueil sans capteur
{% set RUN_CURRENT_X = printer.configfile.settings['tmc2209 stepper_x'].run_current|float %}
{% set RUN_CURRENT_Y = printer.configfile.settings['tmc2209 stepper_y'].run_current|float %}
{% set HOME_CURRENT_RATIO = 0.7 %} # par défaut, nous réduisons le courant du moteur pendant l'accueil. vous pouvez ajuster cette valeur si vous avez des problèmes de sauts pendant l'accueil
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_Y}

# Accueil
G28 X
# S'éloigne
G91
G1 X-10 F1200

# Attend que les registres StallGuard se vident
M400
G90
# Règle le courant pendant l'impression
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CURRENT_Y}

[gcode_macro _HOME_Y]
gcode:
# Règle le courant pour l'accueil sans capteur
{% set RUN_CURRENT_X = printer.configfile.settings['tmc2209 stepper_x'].run_current|float %}
{% set RUN_CURRENT_Y = printer.configfile.settings['tmc2209 stepper_y'].run_current|float %}
{% set HOME_CURRENT_RATIO = 0.7 %} # par défaut, nous réduisons le courant du moteur pendant l'accueil. vous pouvez ajuster cette valeur si vous avez des problèmes de sauts pendant l'accueil
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_Y}

# Accueil
G28 Y
# S'éloigne
G91
G1 Y-10 F1200

# Attend que les registres StallGuard se vident
M400
G90
# Règle le courant pendant l'impression
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CURRENT_Y}



[gcode_macro _HOME_Z]
gcode:
G90
G28 Z
G1 Z30
Loading...