Comment on calcule les pas par mm
Un moteur pas à pas tourne d’un angle fixe à chaque pas : 1,8° sur la plupart des moteurs, soit 200 pas entiers par tour, ou 0,9° et 400 pas. Le driver divise chaque pas entier en micropas, en général 16. Les pas par mm sont le nombre de micropas d’un tour divisé par la distance que ce tour fait parcourir à l’axe.
pas/mm = pas entiers par tour × micropas × rapport ÷ course par tour courroie : course par tour = pas de la courroie × dents de la poulie vis : course par tour = pas du filetage × filets (l’avance)
Exemple : une courroie GT2 (pas de 2 mm) sur une poulie de 20 dents avance de 40 mm par tour. Avec un moteur de 1,8° en 1/16, cela donne 200 × 16 ÷ 40 = 80 pas/mm, et chaque micropas déplace l’axe de 12,5 µm.
Configurations courantes
| Transmission | Course par tour | 1,8° · 1/16 | 0,9° · 1/16 | Pas entier (1,8°) |
|---|---|---|---|---|
| Courroie GT2, 16 dents | 32 mm | 100 | 200 | 0,16 mm |
| Courroie GT2, 20 dents | 40 mm | 80 | 160 | 0,2 mm |
| Courroie GT2, 36 dents | 72 mm | 44,444 | 88,889 | 0,36 mm |
| T8 (Tr8x8) | 8 mm | 400 | 800 | 0,04 mm |
| Tr8x2 | 2 mm | 1 600 | 3 200 | 0,01 mm |
| Tige filetée M8 | 1,25 mm | 2 560 | 5 120 | 0,0063 mm |
| Vis à billes SFU1605 | 5 mm | 640 | 1 280 | 0,025 mm |
| Vis à billes SFU1610 | 10 mm | 320 | 640 | 0,05 mm |
Micropas en 1/16, sans réduction. En 1/32, les pas par mm doublent ; en 1/8, ils sont divisés par deux.
Pas, avance et filets d’une vis
Le pas est la distance entre deux filets ; l’avance est la distance parcourue par l’écrou en un tour. Sur une vis à un filet, comme une tige filetée ou une Tr8x2, les deux sont égaux. Une vis T8 (Tr8x8) a un pas de 2 mm et quatre filets, donc une avance de 8 mm : regardez son extrémité, vous verrez quatre filets séparés. Les vis à billes se désignent par leur diamètre et leur avance : une SFU1605 fait 16 mm de diamètre pour 5 mm d’avance.
La rotation_distance de Klipper
Klipper n’utilise pas de pas par mm. Il demande rotation_distance, la distance parcourue par l’axe en un tour complet du moteur (ou du dernier engrenage si gear_ratio est défini), avec microsteps et full_steps_per_rotation. Pour une courroie, c’est pas × dents, pour une vis, son avance. Pour convertir une ancienne valeur : rotation_distance = pas entiers × micropas ÷ pas/mm.
La documentation de Klipper note que presque toutes les imprimantes ont une rotation_distance entière sur X, Y et Z, par exemple 32, 40 ou 8. Une valeur décimale signale en général un pas ou un nombre de dents erroné, sauf avec des pièces MXL ou en pouces.
Étalonner l’extrudeur
- Chauffez la buse à température d’impression pour que le filament fonde sans forcer.
- Faites un repère sur le filament 120 mm au-dessus de l’entrée de l’extrudeur.
- Extrudez lentement. Marlin : M83, puis G1 E100 F100. Klipper : G91, puis G1 E50 F60, et saisissez 50 mm comme longueur demandée.
- Mesurez à nouveau de l’entrée au repère : 120 moins cette distance donne la longueur réellement extrudée.
- Saisissez les valeurs ci-dessus et enregistrez la nouvelle : M92 E… et M500 sous Marlin, rotation_distance sous Klipper.
- Refaites l’essai si l’écart dépassait 2 mm environ.
Micropas : résolution n’est pas précision
Plus de micropas rendent le mouvement plus doux et plus silencieux, pas plus précis. Chaque micropas ne fournit qu’une partie du couple, sin(90° ÷ micropas) : environ 20 % en 1/8 et 5 % en 1/32, comme l’explique Monolithic Power Systems, donc un peu de frottement suffit à arrêter l’arbre entre deux micropas. La précision des moteurs NEMA 17 courants est de ±5 % d’un pas entier. Des drivers comme le TMC2209 interpolent en interne jusqu’à 256 micropas : 1/16 sur l’entrée de pas suffit pour un mouvement doux.
Hauteur de couche sur l’axe Z
Avec une vis T8 et un moteur de 1,8°, un pas entier déplace Z de 0,04 mm. Les hauteurs égales à un nombre entier de pas (0,12, 0,16, 0,2, 0,24 mm…) placent la buse là où le moteur tient le mieux. Le calculateur de Prusa explique que si les moteurs sont coupés sur un micropas, l’axe peut sauter au pas entier le plus proche.
Fréquence de pas et vitesse maximale
Chaque millimètre par seconde coûte des pas par seconde : 200 mm/s à 80 pas/mm, cela fait 16 000 pas par seconde. Sans autre réglage, Marlin suppose 5 MHz pour les drivers TMC2xxx, 500 kHz pour l’A4988, 250 kHz pour le DRV8825, 150 kHz pour le TB6600 et 15 kHz pour le TB6560. Souvent, la vraie limite est le processeur et son firmware, pas le driver : Marlin envoie les pas par rafales aux fréquences élevées, et Klipper publie des mesures de fréquence de pas pour chaque processeur. Réduire les micropas est le moyen le plus simple de baisser la fréquence.
Calcul de la Vref des drivers pas à pas →
Sources : documentation de Klipper (Rotation distance), documentation de Marlin (M92, réglages de mouvement) et code du planificateur, calculateur RepRap de Prusa, Monolithic Power Systems sur les micropas, page produit du TMC2209, page Bondtech du BMG, datasheet des vis à billes de Sorotec et datasheet d’un moteur 17HS4401.
Questions fréquentes
Combien de pas par mm pour une courroie GT2 avec une poulie de 20 dents ?
80 avec un moteur de 1,8° en 1/16, 160 avec un moteur de 0,9°. Sous Klipper, c’est rotation_distance : 40 avec microsteps : 16. Une poulie de 16 dents donne 100 pas/mm, rotation_distance 32.
Combien de pas par mm pour une vis T8 ?
Une T8 (Tr8x8) avance de 8 mm par tour, donc un moteur de 1,8° en 1/16 donne 400 pas/mm et la rotation_distance vaut 8. Une Tr8x2 à un filet donne 1600 pas/mm, rotation_distance 2.
Comment étalonner les e-steps ?
Faites un repère sur le filament 120 mm au-dessus de l’extrudeur, extrudez lentement 100 mm, buse chaude, et mesurez ce qui reste jusqu’au repère. Nouvelle valeur = actuelle × 100 ÷ millimètres réellement extrudés : par exemple 93 × 100 ÷ 95 = 97,89. Enregistrez-la avec M92 E97.89 et M500.
Faut-il corriger les pas par mm de X et Y après avoir mesuré un cube imprimé ?
Non. Avec des courroies et des vis, la valeur calculée est exacte, et la documentation de Klipper déconseille de corriger X, Y ou Z en mesurant des impressions. Si une pièce n’a pas les bonnes dimensions, regardez plutôt l’extrusion, la tension des courroies et les réglages du trancheur.
Plus de micropas rendent-ils l’imprimante plus précise ?
Ils rendent le mouvement plus doux, pas plus précis. Un micropas ne fournit que sin(90° ÷ micropas) du couple d’un pas entier, environ 5 % en 1/32, et la précision des moteurs est en général de ±5 % d’un pas entier. Ils multiplient aussi la fréquence de pas que la carte doit produire.
Comment convertir des pas/mm en rotation_distance pour Klipper ?
rotation_distance = pas entiers par tour × micropas ÷ pas/mm. Avec un moteur de 1,8° (200 pas) en 1/16 : 3200 ÷ 80 = 40. Pour un extrudeur à 415 pas/mm sans gear_ratio : 3200 ÷ 415 = 7,711. Si vous définissez gear_ratio, la valeur change : pour un Bondtech BMG avec gear_ratio : 50:17, c’est 22,679, comme dans la documentation de Klipper.
Quelles hauteurs de couche conviennent à une vis T8 ?
Avec un moteur de 1,8°, un pas entier déplace Z de 0,04 mm, donc 0,04, 0,08, 0,12, 0,16, 0,20, 0,24, 0,28 et 0,32 mm sont des nombres entiers de pas. Avec un moteur de 0,9°, le pas entier vaut 0,02 mm.