Andre Casagrandi Posté(e) Octobre 9, 2023 Posté(e) Octobre 9, 2023 Bonjour comment faire un nivelement automatique pendant l'impression pour rattraper les defaut du plateau sur klipper Merci
pascal_lb Posté(e) Octobre 9, 2023 Posté(e) Octobre 9, 2023 il y a 32 minutes, Andre Casagrandi a dit : pendant l'impression pour rattraper les defaut du plateau sur klipper Je ne me suis pas encore penché sur Klipper mais faire un nivellement pendant l'impression ça me semble bizarre...
Andre Casagrandi Posté(e) Octobre 9, 2023 Auteur Posté(e) Octobre 9, 2023 ce que je voudrais , c'est que les moteur z compense les défauts plateau en s'ajustant pour garder une valeur identique sur toute la surface entre le hotend et le plateau
pascal_lb Posté(e) Octobre 9, 2023 Posté(e) Octobre 9, 2023 il y a 11 minutes, Andre Casagrandi a dit : c'est que les moteur z compense les défauts plateau As tu un système qui palpe le plateau avant l'impression ?
pommeverte Posté(e) Octobre 9, 2023 Posté(e) Octobre 9, 2023 (modifié) Salut, Tout est expliqué dans la doc Klipper. En résumé: tu paramètres ton maillage avec la section [mesh_bed] tu palpes ton plateau avec la commande BED_MESH_CALIBRATE tu sauvegardes le résultat avec la commande BED_MESH_PROFILE SAVE=nom_du_maillage dans le fichier printer.cfg, après la prise d'origine (G28), tu rappelles le maillage sauvegardé BED_MESH_PROFILE LOAD=nom_du_maillage Tu peux aussi palper systématiquement ton plateau en te limitant à la zone d'impression (voir ce tuto en vidéo) PS: est-ce que tu as paramétré la section [z_tilt] pour "aligner"/synchroniser tes 2 moteurs Z? voir la doc klipper Modifié (le) Octobre 9, 2023 par pommeverte
Andre Casagrandi Posté(e) Octobre 9, 2023 Auteur Posté(e) Octobre 9, 2023 [z_tilt] non tu peut m'aider a configurer? EN tous cas je te re merci pour ton aide deja apporter
pommeverte Posté(e) Octobre 9, 2023 Posté(e) Octobre 9, 2023 (modifié) tu t'assures que tu as bien la section [stepper_z1] pour ton 2nd moteur Z tu ajoutes la section [z_tilt] dans le fichier printer.cfg juste après la prise d'origine (G28) tu ajoutes "l'alignement" des moteurs: Z_TILT_ADJUST Modifié (le) Octobre 9, 2023 par pommeverte
Andre Casagrandi Posté(e) Octobre 9, 2023 Auteur Posté(e) Octobre 9, 2023 elle est la ma pomme préféré. merci je vais testé je fait quoi avec ca? Citation # This file contains common pin mappings for the BigTreeTech SKR 3 EZ. # To use this config, the firmware should be compiled for the # STM32H723 with a "128KiB bootloader". # See docs/Config_Reference.md for a description of parameters. ### Enable this to use an RP2040 for your ADXL host. You cannot use the Orange Pi so this is the next best option. #[mcu adxl] # Change <mySerial> to whatever you found above. For example, # usb-Klipper_rp2040_E661640843545B2E-if00 #serial: /dev/serial/by-id/usb-Klipper_rp2040_E660C062137B4E29-if00 #[adxl345] #cs_pin: adxl:gpio1 #spi_bus: spi0a #axes_map: x,z,y #[resonance_tester] #accel_chip: adxl345 # 203.5, 200, 20 #[output_pin power_mode] # Improve power stability #pin: adxl:gpio23 [include mainsail.cfg] [virtual_sdcard] path: /home/andre/printer_data/gcodes on_error_gcode: CANCEL_PRINT [include macros.cfg] #[include grand-voile.cfg] ## This is for CrydTeam's automatic accel and velocity testing, comment it out if you don't want to set it up. ## https://github.com/cryd-s/klipper_scripts/tree/main/speed_accel_script #[include speed_test.cfg] ## Enable M118 Echo [respond] ## Enable cancelling individual objects in a print ## See https://www.obico.io/blog/klipper-exclude-object/#exclude-objects-feature [exclude_object] [stepper_x] step_pin: PD4 dir_pin: PD3 enable_pin: !PD6 microsteps: 128 rotation_distance: 40 endstop_pin: ^PC1 #position_min: -6 position_endstop: 0 position_max: 220 homing_speed: 50 [stepper_y] step_pin: PA15 dir_pin: PA8 enable_pin: !PD1 microsteps: 128 rotation_distance: 40 endstop_pin: ^PC3 #position_min: -6 position_endstop: 0 position_max: 220 homing_speed: 50 [stepper_z] step_pin: PE2 dir_pin: !PE3 enable_pin: !PE0 microsteps: 128 rotation_distance: 8 endstop_pin: probe: z_virtual_endstop position_min: -3 position_max: 300 homing_speed: 5 [stepper_z1] step_pin: PD11 dir_pin: !PD10 enable_pin: !PD13 microsteps: 128 rotation_distance: 8 endstop_pin: probe:z_virtual_endstop [heater_bed] heater_pin: PD7 sensor_type: EPCOS 100K B57560G104F sensor_pin: PA1 #control: watermark min_temp: 0 max_temp: 130 control: pid pid_Kp: 135.78 pid_Ki: 26.32 pid_Kd: 460.06 min_temp: 0 max_temp: 120 [bltouch] sensor_pin: ^PC13 control_pin: PE5 pin_move_time: 0.2 # dd x_offset: -05 #-40 y_offset: -7 z_offset = 2.550 #z_offset = 2.750 speed: 60 # dd [safe_z_home] home_xy_position: 110, 110 z_hop: 10 z_hop_speed: 10 speed: 100 move_to_previous: false [bed_mesh] speed: 70 horizontal_move_z: 10 mesh_min: 5, 5 # 10,10/dd mesh_max: 180, 190 #150,190/dd algorithm: bicubic probe_count: 4, 4 fade_start: 1 fade_end: 10 fade_target: 0 [extruder] max_extrude_only_distance: 100.0 step_pin: PD15 dir_pin: !PD14 enable_pin: !PC7 microsteps: 64 #16 rotation_distance: 22.863 #33.500 nozzle_diameter: 0.400 filament_diameter: 1.750 heater_pin: PB3 sensor_type: EPCOS 100K B57560G104F sensor_pin: PA2 control: pid pid_Kp= 17.540 pid_Ki= 0.801 pid_Kd= 96.034 min_temp: 0 max_temp: 250 #[z_tilt] #z_positions: 7, 200 # 407, 200 #points: 7, 200 # 100, 200 # 300, 200 # 407, 200 #speed: 250 #retries: 8 #retry_tolerance: 0.15 #[probe] #pin: !PC13 #speed: 2.5 #samples: 3 #samples_tolerance_retries: 3 #z_offset: 0.05 #activate_gcode: probe_reset ## This is for supplying voltage to the Logic Level Converter ## You will need to use one of these if you intend to reuse the factory print head with strain gauge. It outputs +5V when open and 0V when triggered!! ## If you do not intend to use the factory print head, comment this out #[output_pin 3v3] #dd #pin: PC0 #dd #static_value: 1 #dd ## This pin carries 3.3V and drops to 0V to reset the factory print head and strain gauge with every sample ## This is needed because the extruder tension changes as your Bowden tube shifts around!! ## If you do not intend to use the factory print head, comment this out #[output_pin probe_reset_pin] #pin: PE5 #value: 1 ## This macro is needed to reset the factory strain gauge on the Kobra Max ## If you do not intend to use the factory print head, comment this out [gcode_macro probe_reset] gcode: SET_PIN PIN=probe_reset_pin VALUE=0 G4 P500 SET_PIN PIN=probe_reset_pin VALUE=1 G4 P100 ### Don't forget to SET YOUR E-STEPS! ### Measure 120mm, then extrude 100mm ### G1 E100 F100 ### step_distance = old_e_steps * ((120 - distance_to_mark) / 100) [filament_switch_sensor runout] pause_on_runout: True switch_pin: !PC2 ## Don't turn off Z or bed heat during idle [idle_timeout] gcode: SET_HEATER_TEMPERATURE HEATER=extruder TARGET=0 M84 X Y E timeout: 43200 [fan] pin: PB7 [heater_fan hotend_fan] pin: PB6 heater: extruder heater_temp: 50.0 [controller_fan mcu_fan] pin: PB5 [output_pin LED] pin: PE6 pwm: False value: 0 [printer] kinematics: cartesian max_velocity: 300 max_accel: 3000 max_z_velocity: 5 max_z_accel: 100 [temperature_sensor pi_temp] sensor_type: temperature_host min_temp: 0 max_temp: 100 [temperature_sensor mcu_temp] sensor_type: temperature_mcu min_temp: 0 max_temp: 100 [mcu] serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_41002B001651313238353730-if00 baud: 250000 ######################################## # EXP1 / EXP2 (display) pins ######################################## [board_pins] aliases: # EXP1 header EXP1_1=PC5, EXP1_3=PB1, EXP1_5=PE9, EXP1_7=PE11, EXP1_9=<GND>, EXP1_2=PB0, EXP1_4=PE8, EXP1_6=PE10, EXP1_8=PE12, EXP1_10=<5V>, # EXP2 header EXP2_1=PA6, EXP2_3=PE7, EXP2_5=PB2, EXP2_7=PC4, EXP2_9=<GND>, EXP2_2=PA5, EXP2_4=PA4, EXP2_6=PA7, EXP2_8=<RST>, EXP2_10=<NC> # See the sample-lcd.cfg file for definitions of common LCD displays. ######################################## # TMC2209 configuration ######################################## [tmc2209 stepper_x] uart_pin: PD5 run_current: 0.600 interpolate: true #diag_pin: [tmc2209 stepper_y] uart_pin: PD0 run_current: 0.600 interpolate: true #diag_pin: [tmc2209 stepper_z] uart_pin: PE1 run_current: 0.600 interpolate: true #diag_pin: [tmc2209 extruder] uart_pin: PC6 run_current: 0.600 #diag_pin: [tmc2209 stepper_z1] uart_pin: PD12 run_current: 0.600 interpolate: true #diag_pin: ######################################## # MACRO ######################################## [gcode_macro DRAW_SQUARE] gcode: G28 G0 X10 Y10 Z0.5 G0 X10 Y200 Z0.5 G0 X200 Y200 Z0.5 G0 X200 Y10 Z0.5 G0 X10 Y10 Z0.5 [gcode_macro PAUSE] description: Pause the actual running print rename_existing: PAUSE_BASE # change this if you need more or less extrusion variable_extrude: 1.0 gcode: ##### read E from pause macro ##### {% set E = printer["gcode_macro PAUSE"].extrude|float %} ##### set park positon for x and y ##### # default is your max posion from your printer.cfg {% set x_park = printer.toolhead.axis_maximum.x|float - 5.0 %} {% set y_park = printer.toolhead.axis_maximum.y|float - 5.0 %} ##### calculate save lift position ##### {% set max_z = printer.toolhead.axis_maximum.z|float %} {% set act_z = printer.toolhead.position.z|float %} {% if act_z < (max_z - 2.0) %} {% set z_safe = 2.0 %} {% else %} {% set z_safe = max_z - act_z %} {% endif %} ##### end of definitions ##### PAUSE_BASE G91 {% if printer.extruder.can_extrude|lower == 'true' %} G1 E-{E} F2100 {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} {% if "xyz" in printer.toolhead.homed_axes %} G1 Z{z_safe} F900 G90 G1 X{x_park} Y{y_park} F6000 {% else %} {action_respond_info("Printer not homed")} {% endif %} [gcode_macro RESUME] description: Resume the actual running print rename_existing: RESUME_BASE gcode: ##### read E from pause macro ##### {% set E = printer["gcode_macro PAUSE"].extrude|float %} #### get VELOCITY parameter if specified #### {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {%else %} {% set get_params = "" %} {% endif %} ##### end of definitions ##### {% if printer.extruder.can_extrude|lower == 'true' %} G91 G1 E{E} F2100 {% else %} {action_respond_info("Extruder not hot enough")} {% endif %} RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description: Cancel the actual running print rename_existing: CANCEL_PRINT_BASE gcode: TURN_OFF_HEATERS CANCEL_PRINT_BASE #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [heater_bed] #*# #*# [extruder] #*# #*# [probe] #*# z_offset = -0.030 #*# #*# [input_shaper] #*# shaper_type_x = mzv #*# shaper_freq_x = 68.2 #*# shaper_type_y = mzv #*# shaper_freq_y = 33.4 #*# #*# [bed_mesh default] #*# version = 1 #*# points = #*# 0.000937, 0.180312, 0.172812, 0.021250 #*# -0.061563, 0.145000, 0.149687, -0.076250 #*# -0.066250, 0.120625, 0.197812, 0.013750 #*# 0.026562, 0.140937, 0.143750, 0.039375 #*# x_count = 4 #*# y_count = 4 #*# mesh_x_pps = 2 #*# mesh_y_pps = 2 #*# algo = bicubic #*# tension = 0.2 #*# min_x = 5.0 #*# max_x = 179.99 #*# min_y = 5.0 #*# max_y = 189.98 #*# #*# [bltouch] je ne voit pas la commande g28 dans mon pirnter.cfg
fran6p Posté(e) Octobre 9, 2023 Posté(e) Octobre 9, 2023 Dans le fichier de configuration de Klipper (printer.cfg) toute ligne débutant par un dièse ( # ) est un commentaire… En gros, Klipper n'en tient pas compte Le G-Code G28 (mise à l'origine) sauf s'il est dans une macro PRINT_START / START_PRINT, est généralement plutôt dans la section Gcode démarrage du trancheur Il faudrait peut-être revoir les bases («apprendre à marcher avant de vouloir courir»).
pommeverte Posté(e) Octobre 9, 2023 Posté(e) Octobre 9, 2023 Voici mes remarques/suggestions pour ton fichier printer.cfg: Tu peux supprimer la section suivante qui ne concerne pas ton imprimante: Citation ## This macro is needed to reset the factory strain gauge on the Kobra Max ## If you do not intend to use the factory print head, comment this out [gcode_macro probe_reset] gcode: SET_PIN PIN=probe_reset_pin VALUE=0 G4 P500 SET_PIN PIN=probe_reset_pin VALUE=1 G4 P100 ### Don't forget to SET YOUR E-STEPS! ### Measure 120mm, then extrude 100mm ### G1 E100 F100 ### step_distance = old_e_steps * ((120 - distance_to_mark) / 100) tu pourrais définir position_min: 0 dans [stepper_x] et [stepper_y] le décalage X,Y de ton BLTouch n'est pas cohérent. Les valeurs seraient plutôt autour de X-44 et Y-16 ou -5 la conséquence est que dans la section [bed_mesh], tu aurais: mesh_max: 175, 200 #150,190/dd je ne connais pas la position de tes vis trapézoïdales dans le référentiel d'impression, mais la section [z_tilt] pourrait ressembler à ça: Citation [z_tilt] z_positions: 110, -50 #position de la vis trapézoidale avant à confirmer 110, 270 #position de la vis trapézoidale avant à confirmer points: 154, 20 154, 110 154, 200 speed: 100 retries: 8 retry_tolerance: 0.02 tu pourrais supprimer les lignes suivantes dans la partie SAFE_CONFIG Citation #*# [probe] #*# z_offset = -0.030 #*# Pour le G28, fran6p a répondu. Je pensais que tu gérais les Gcodes de démarrage et de fin dans le fichier printer.cfg, à moins que ce ne soit dans le fichier macros.cfg qui est indiqué au début de ton fichier ... (macros START_PRINT, PURGE, END_PRINT) PS: je ne suis pas sûr que tu reçoives beaucoup de réponses dans ce sujet puisque ta configuration est assez spécifique .
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant