damdam Posté(e) Avril 14, 2024 Posté(e) Avril 14, 2024 (modifié) Bonjour, Je n'arrive pas à trouver de solution pour faire faire un test de calibration de vibration rapide avant chaque impression à ma Qidi Tech X-MAX 3. En effet, j'ai fait l'acquisition d'un nouvelle Qidi Tech X-MAX 3 et j'ai parfois un peu de ghosting sur mes impressions qui se règle par un imput shapping. Je souhaiterais donc comme à la manière de ma bambu lab qu'une petite calibration de la vibration se fasse avant chaque démarrage d'impression. J'ai trouvé le Gcode responsable de ce calibrage sur ma bambu lab mais elle ne fonctionne pas sur la X-MAX 3. Avez-vous une idée de gcode qui me permettrai d'obtenir un calibrage rapide avec chaque impression et où le placer dans le gcode de mon imprimante. Voici le gcode de mon imprimante au démarrage : PRINT_START G28 M141 S0 G0 Z50 F600 M190 S[first_layer_bed_temperature] G28 Z G29; mesh bed leveling ,comment this code to close it G0 X0 Y0 Z50 F6000 M109 S[first_layer_temperature] M106 P3 S255 M83 G4 P3000 G0 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0)} Z5 F6000 G0 Z[first_layer_height] F600 G1 E3 F1800 G1 X{(min(print_bed_max[0], first_layer_print_min[0] + 80))} E{85 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 G1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 2} E{2 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 G1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0)} E{85 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 G1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 85} E{83 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 G1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 2} E{2 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 G1 Y{max((min(print_bed_max[1], first_layer_print_min[1] + 80) - 85),0) + 3} E{82 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 G1 X{max((min(print_bed_max[0], first_layer_print_min[0] + 80) - 85),0) + 12} E{-10 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 G1 E{10 * 0.5 * first_layer_height * nozzle_diameter[0]} F3000 Merci d'avance pour vos réponses Modifié (le) Avril 14, 2024 par damdam
fran6p Posté(e) Avril 14, 2024 Posté(e) Avril 14, 2024 Le réglage de la compensation de résonances (input shaping) normalement ne se fait pas à chaque impression. Habituellement on ne le fait que si des modifications matérielles ont été apportées à l'imprimante (tension des courroies, modifications sur la tête) et/ou un déplacement de l'imprimante (avec ses plus de 30 kg on ne le fait pas généralement souvent ). Sinon, c'est un G-code étendu, TEST_RESONANCES qu'il faut utiliser. Comme l'accéléromètre est monté sur le PCB de la tête, il faut tester l'axe X puis l'axe Y (ou l'inverse) : TEST_RESONANCES AXIS=X TEST_RESONANCES AXIS=Y Mais, car il y a un mais, pour que ces mesures soient prises en compte il faut envoyer un SAVE_CONFIG, ce qui redémarre Klipper donc, ce n'est pas utilisable dans le Gcode de démarrage. Il serait donc préférable de faire des tests pour ne pas avoir (ou en avoir moins) de phénomène d'écho fantôme. 1
damdam Posté(e) Avril 14, 2024 Auteur Posté(e) Avril 14, 2024 (modifié) Merci pour ta réponse @fran6p Vue que le ghosting n'ai pas présent à chaque fois pour les mêmes pièces imprimé je ne vois pas quoi faire sur ma X-MAX3 pour éviter le ghosting à par un "calibrage" à chaque impression. Il y a je pense un test de vibration sur ma bambu lab qui fonctionne sur Klipper visible par plusieurs tests de vibration de ma tête avant chaque impression sans redémarrage de klipper. Avec quel moyen ma bambu lab fait ces tests ? Voici le gcode de démarrage sur ma bambu lab sur Orca slicer : ;===== machine: P1P ======================== ;===== date: 20230707 ===================== ;===== turn on the HB fan ================= M104 S75 ;set extruder temp to turn on the HB fan and prevent filament oozing from nozzle ;===== reset machine status ================= G91 M17 Z0.4 ; lower the z-motor current G380 S2 Z30 F300 ; G380 is same as G38; lower the hotbed , to prevent the nozzle is below the hotbed G380 S2 Z-25 F300 ; G1 Z5 F300; G90 M17 X1.2 Y1.2 Z0.75 ; reset motor current to default M960 S5 P1 ; turn on logo lamp G90 M220 S100 ;Reset Feedrate M221 S100 ;Reset Flowrate M73.2 R1.0 ;Reset left time magnitude M1002 set_gcode_claim_speed_level : 5 M221 X0 Y0 Z0 ; turn off soft endstop to prevent protential logic problem G29.1 Z{+0.0} ; clear z-trim value first M204 S10000 ; init ACC set to 10m/s^2 ;===== heatbed preheat ==================== M1002 gcode_claim_action : 2 M140 S[bed_temperature_initial_layer_single] ;set bed temp M190 S[bed_temperature_initial_layer_single] ;wait for bed temp ;=============turn on fans to prevent PLA jamming================= {if filament_type[initial_extruder]=="PLA"} {if (bed_temperature[initial_extruder] >45)||(bed_temperature_initial_layer[initial_extruder] >45)} M106 P3 S180 {elsif (bed_temperature[initial_extruder] >50)||(bed_temperature_initial_layer[initial_extruder] >50)} M106 P3 S255 {endif};Prevent PLA from jamming {endif} M106 P2 S100 ; turn on big fan ,to cool down toolhead ;===== prepare print temperature and material ========== M104 S[nozzle_temperature_initial_layer] ;set extruder temp G91 G0 Z10 F1200 G90 G28 X M975 S1 ; turn on G1 X60 F12000 G1 Y245 G1 Y265 F3000 M620 M M620 S[initial_extruder]A ; switch material if AMS exist M109 S[nozzle_temperature_initial_layer] G1 X120 F12000 G1 X20 Y50 F12000 G1 Y-3 T[initial_extruder] G1 X54 F12000 G1 Y265 M400 M621 S[initial_extruder]A M620.1 E F{filament_max_volumetric_speed[initial_extruder]/2.4053*60} T{nozzle_temperature_range_high[initial_extruder]} M412 S1 ; ===turn on filament runout detection=== M109 S250 ;set nozzle to common flush temp M106 P1 S0 G92 E0 G1 E50 F200 M400 M104 S[nozzle_temperature_initial_layer] G92 E0 G1 E50 F200 M400 M106 P1 S255 G92 E0 G1 E5 F300 M109 S{nozzle_temperature_initial_layer[initial_extruder]-20} ; drop nozzle temp, make filament shink a bit G92 E0 G1 E-0.5 F300 G1 X70 F9000 G1 X76 F15000 G1 X65 F15000 G1 X76 F15000 G1 X65 F15000; shake to put down garbage G1 X80 F6000 G1 X95 F15000 G1 X80 F15000 G1 X165 F15000; wipe and shake M400 M106 P1 S0 ;===== prepare print temperature and material end ===== ;===== wipe nozzle =============================== M1002 gcode_claim_action : 14 M975 S1 M106 S255 G1 X65 Y230 F18000 G1 Y264 F6000 M109 S{nozzle_temperature_initial_layer[initial_extruder]-20} G1 X100 F18000 ; first wipe mouth G0 X135 Y253 F20000 ; move to exposed steel surface edge G28 Z P0 T300; home z with low precision,permit 300deg temperature G29.2 S0 ; turn off ABL G0 Z5 F20000 G1 X60 Y265 G92 E0 G1 E-0.5 F300 ; retrack more G1 X100 F5000; second wipe mouth G1 X70 F15000 G1 X100 F5000 G1 X70 F15000 G1 X100 F5000 G1 X70 F15000 G1 X100 F5000 G1 X70 F15000 G1 X90 F5000 G0 X128 Y261 Z-1.5 F20000 ; move to exposed steel surface and stop the nozzle M104 S140 ; set temp down to heatbed acceptable M106 S255 ; turn on fan (G28 has turn off fan) M221 S; push soft endstop status M221 Z0 ;turn off Z axis endstop G0 Z0.5 F20000 G0 X125 Y259.5 Z-1.01 G0 X131 F211 G0 X124 G0 Z0.5 F20000 G0 X125 Y262.5 G0 Z-1.01 G0 X131 F211 G0 X124 G0 Z0.5 F20000 G0 X125 Y260.0 G0 Z-1.01 G0 X131 F211 G0 X124 G0 Z0.5 F20000 G0 X125 Y262.0 G0 Z-1.01 G0 X131 F211 G0 X124 G0 Z0.5 F20000 G0 X125 Y260.5 G0 Z-1.01 G0 X131 F211 G0 X124 G0 Z0.5 F20000 G0 X125 Y261.5 G0 Z-1.01 G0 X131 F211 G0 X124 G0 Z0.5 F20000 G0 X125 Y261.0 G0 Z-1.01 G0 X131 F211 G0 X124 G0 X128 G2 I0.5 J0 F300 G2 I0.5 J0 F300 G2 I0.5 J0 F300 G2 I0.5 J0 F300 M109 S140 ; wait nozzle temp down to heatbed acceptable G2 I0.5 J0 F3000 G2 I0.5 J0 F3000 G2 I0.5 J0 F3000 G2 I0.5 J0 F3000 M221 R; pop softend status G1 Z10 F1200 M400 G1 Z10 G1 F30000 G1 X230 Y15 G29.2 S1 ; turn on ABL ;G28 ; home again after hard wipe mouth M106 S0 ; turn off fan , too noisy ;===== wipe nozzle end ================================ ;===== bed leveling ================================== M1002 judge_flag g29_before_print_flag M622 J1 M1002 gcode_claim_action : 1 G29 A X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]} M400 M500 ; save cali data M623 ;===== bed leveling end ================================ ;===== home after wipe mouth============================ M1002 judge_flag g29_before_print_flag M622 J0 M1002 gcode_claim_action : 13 G28 M623 ;===== home after wipe mouth end ======================= M975 S1 ; turn on vibration supression ;=============turn on fans to prevent PLA jamming================= {if filament_type[initial_extruder]=="PLA"} {if (bed_temperature[initial_extruder] >45)||(bed_temperature_initial_layer[initial_extruder] >45)} M106 P3 S180 {elsif (bed_temperature[initial_extruder] >50)||(bed_temperature_initial_layer[initial_extruder] >50)} M106 P3 S255 {endif};Prevent PLA from jamming {endif} M106 P2 S100 ; turn on big fan ,to cool down toolhead M104 S{nozzle_temperature_initial_layer[initial_extruder]} ; set extrude temp earlier, to reduce wait time ;===== mech mode fast check============================ G1 X128 Y128 Z10 F20000 M400 P200 M970.3 Q1 A7 B30 C80 H15 K0 M974 Q1 S2 P0 G1 X128 Y128 Z10 F20000 M400 P200 M970.3 Q0 A7 B30 C90 Q0 H15 K0 M974 Q0 S2 P0 M975 S1 G1 F30000 G1 X230 Y15 G28 X ; re-home XY ;===== fmech mode fast check============================ ;===== noozle load line =============================== M975 S1 G90 M83 T1000 G1 X18.0 Y1.0 Z0.8 F18000;Move to start position M109 S{nozzle_temperature_initial_layer[initial_extruder]} G1 Z0.2 G0 E2 F300 G0 X240 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60} G0 Y11 E0.700 F{outer_wall_volumetric_speed/(0.3*0.5)/ 4 * 60} G0 X239.5 G0 E0.2 G0 Y1.5 E0.700 G0 X18 E15 F{outer_wall_volumetric_speed/(0.3*0.5) * 60} M400 ;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing == ;curr_bed_type={curr_bed_type} {if curr_bed_type=="Textured PEI Plate"} G29.1 Z{-0.04} ; for Textured PEI Plate {endif} ;========turn off light and wait extrude temperature ============= M1002 gcode_claim_action : 0 M106 S0 ; turn off fan M106 P2 S0 ; turn off big fan M106 P3 S0 ; turn off chamber fan M975 S1 ; turn on mech mode supression Modifié (le) Avril 14, 2024 par damdam
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