Como os passos por mm são calculados
Um motor de passo gira um ângulo fixo a cada passo: 1,8° na maioria dos motores, ou seja, 200 passos completos por volta, ou 0,9° e 400 passos. O driver divide cada passo completo em micropassos, normalmente 16. Os passos por mm são os micropassos de uma volta divididos pela distância que essa volta faz o eixo andar.
passos/mm = passos completos por volta × micropassos × relação ÷ curso por volta correia: curso por volta = passo da correia × dentes da polia fuso: curso por volta = passo da rosca × entradas (o avanço)
Exemplo: uma correia GT2 (passo de 2 mm) em uma polia de 20 dentes avança 40 mm por volta. Com um motor de 1,8° em 1/16 são 200 × 16 ÷ 40 = 80 passos/mm, e cada micropasso move o eixo 12,5 µm.
Configurações comuns
| Transmissão | Curso por volta | 1,8° · 1/16 | 0,9° · 1/16 | Passo completo (1,8°) |
|---|---|---|---|---|
| Correia GT2, 16 dentes | 32 mm | 100 | 200 | 0,16 mm |
| Correia GT2, 20 dentes | 40 mm | 80 | 160 | 0,2 mm |
| Correia GT2, 36 dentes | 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 |
| Barra roscada M8 | 1,25 mm | 2.560 | 5.120 | 0,0063 mm |
| Fuso de esferas SFU1605 | 5 mm | 640 | 1.280 | 0,025 mm |
| Fuso de esferas SFU1610 | 10 mm | 320 | 640 | 0,05 mm |
Em 1/16 de micropasso, sem redução. Em 1/32 os passos por mm dobram, em 1/8 caem pela metade.
Passo, avanço e entradas de um fuso
O passo é a distância entre dois filetes; o avanço é quanto a castanha anda em uma volta. Em um fuso de uma entrada, como uma barra roscada ou um Tr8x2, os dois são iguais. Um fuso T8 (Tr8x8) tem passo de 2 mm e quatro entradas, então avança 8 mm: olhe a ponta e você vai ver quatro filetes separados. Fusos de esferas são identificados pelo diâmetro e pelo avanço: um SFU1605 tem 16 mm de diâmetro e 5 mm de avanço.
A rotation_distance do Klipper
O Klipper não usa passos por mm. Ele pede a rotation_distance, a distância que o eixo percorre em uma volta completa do motor (ou da última engrenagem, quando gear_ratio está definido), junto com microsteps e full_steps_per_rotation. Para uma correia é passo × dentes; para um fuso, o avanço. Para converter um valor antigo: rotation_distance = passos completos × micropassos ÷ passos/mm.
A documentação do Klipper observa que quase todas as impressoras têm uma rotation_distance inteira em X, Y e Z, por exemplo 32, 40 ou 8. Um valor com casas decimais costuma indicar um passo ou um número de dentes errado, a não ser que as peças sejam MXL ou em polegadas.
Calibrando a extrusora
- Aqueça o hotend até a temperatura de impressão, para o filamento derreter sem esforço.
- Faça uma marca no filamento 120 mm acima do ponto em que ele entra na extrusora.
- Extrude devagar. Marlin: M83 e depois G1 E100 F100. Klipper: G91 e depois G1 E50 F60, e informe 50 mm como comprimento pedido.
- Meça de novo da entrada até a marca: 120 menos essa distância é o comprimento extrudado de fato.
- Informe os valores acima e salve o novo: M92 E… e M500 no Marlin, rotation_distance no Klipper.
- Repita o teste se a diferença passou de uns 2 mm.
Micropassos: resolução não é precisão
Mais micropassos deixam o movimento mais suave e silencioso, não mais preciso. Cada micropasso segura só uma parte do torque, sin(90° ÷ micropassos): cerca de 20% em 1/8 e 5% em 1/32, como explica a Monolithic Power Systems, então um pouco de atrito basta para o eixo parar entre dois micropassos. Os motores NEMA 17 mais comuns são especificados com ±5% de um passo completo. Drivers como o TMC2209 interpolam internamente para 256 micropassos, então 1/16 na entrada de passos é suficiente para um movimento suave.
Altura de camada no eixo Z
Com um fuso T8 e um motor de 1,8°, um passo completo move o Z 0,04 mm. Alturas iguais a um número inteiro de passos completos (0,12, 0,16, 0,2, 0,24 mm…) deixam o bico onde o motor segura melhor. A calculadora da Prusa explica que, se os motores forem desligados em um micropasso, o eixo pode pular para o passo completo mais próximo.
Frequência de passos e velocidade máxima
Cada milímetro por segundo custa passos por segundo: 200 mm/s a 80 passos/mm são 16.000 passos por segundo. Se nada mais for definido, o Marlin assume 5 MHz para os drivers TMC2xxx, 500 kHz para o A4988, 250 kHz para o DRV8825, 150 kHz para o TB6600 e 15 kHz para o TB6560. Muitas vezes o limite real é o processador com o firmware, não o driver: o Marlin envia os passos em rajadas em frequências altas, e o Klipper publica testes de frequência de passos para cada processador. Reduzir os micropassos é a forma mais simples de baixar a frequência.
Calculadora de Vref para drivers de motor de passo →
Fontes: documentação do Klipper (Rotation distance), documentação do Marlin (M92, configurações de movimento) e código do planejador, calculadora RepRap da Prusa, Monolithic Power Systems sobre micropassos, página do produto TMC2209, página da Bondtech sobre a BMG, datasheet de fusos de esferas da Sorotec e datasheet de um motor 17HS4401.
Perguntas frequentes
Quantos passos por mm tem uma correia GT2 com polia de 20 dentes?
80 com um motor de 1,8° em 1/16 de micropasso, 160 com um motor de 0,9°. No Klipper é rotation_distance: 40 com microsteps: 16. Uma polia de 16 dentes dá 100 passos/mm, rotation_distance 32.
Quantos passos por mm tem um fuso T8?
Um T8 (Tr8x8) avança 8 mm por volta, então um motor de 1,8° em 1/16 dá 400 passos/mm e a rotation_distance é 8. Um Tr8x2 de uma entrada dá 1.600 passos/mm, rotation_distance 2.
Como calibrar os e-steps?
Marque o filamento 120 mm acima da extrusora, extrude 100 mm devagar com o hotend na temperatura e meça o que sobra até a marca. Novo valor = atual × 100 ÷ milímetros extrudados de fato: por exemplo, 93 × 100 ÷ 95 = 97,89. Salve com M92 E97.89 e M500.
Devo corrigir os passos por mm de X e Y depois de medir um cubo impresso?
Não. Com correias e fusos o valor calculado é exato, e a documentação do Klipper desaconselha corrigir X, Y ou Z medindo impressões. Se uma peça sai com a medida errada, confira a extrusão, a tensão das correias e as configurações do fatiador.
Mais micropassos deixam a impressora mais precisa?
Deixam o movimento mais suave, não mais preciso. Um micropasso segura só sin(90° ÷ micropassos) do torque de passo completo, cerca de 5% em 1/32, e os motores costumam ser especificados com ±5% de um passo completo. Além disso, multiplicam a frequência de passos que a placa precisa gerar.
Como converter passos/mm na rotation_distance do Klipper?
rotation_distance = passos completos por volta × micropassos ÷ passos/mm. Com um motor de 1,8° (200 passos) em 1/16: 3.200 ÷ 80 = 40. Para uma extrusora a 415 passos/mm sem gear_ratio: 3.200 ÷ 415 = 7,711. Se você definir gear_ratio, o valor muda: para uma Bondtech BMG com gear_ratio: 50:17, é 22,679, como na documentação do Klipper.
Quais alturas de camada combinam com um fuso T8?
Com um motor de 1,8° um passo completo move o Z 0,04 mm, então 0,04, 0,08, 0,12, 0,16, 0,20, 0,24, 0,28 e 0,32 mm são números inteiros de passos completos. Com um motor de 0,9° o passo completo é de 0,02 mm.