Controladores TMC2208: microsteps configurados incorrectamente

10

Acabo de instalar dos controladores TMC2208 en mi placa RAMPS. Seguí un muy buen tutorial paso a paso y después de algunos problemas, casi lo tengo para trabajar.

Un problema que todavía tengo es que cuando le digo a la impresora que levante el eje Z en 5 mm, lo levanta en 10 cm.

No he cambiado nada con respecto a los pasos / mm. Anteriormente U tenía el Pololus, con 1/16 microstepping y ahora también tengo 1/16 en el archivo configuration_adv.h en Marlin 1.1.8

Sin embargo, lo que noté al hacer un M122 es una línea que dice:

msteps 256

que suena como el microstepping se estableció en 1/256 en su lugar.

¿Tal vez alguien podría decirme si me perdí algo?

ACTUALIZAR:

Después de investigar un poco más, esto es lo que he hecho hasta ahora:

  • Suelde los pines en el controlador. Original de Watterrot
  • Suelde las almohadillas de puente para habilitar la comunicación UART
  • Suelde el pin para la comunicación hacia arriba
  • Cambie el configuration_adv.hen Marlin (1.1.8) y habilite todo lo que está habilitado: USE_TMC2208, Habilitar depuración, seleccionando el eje Z, etc.
  • Verifique los pines pins_RAMPS.hy asegúrese de que estén disponibles en mi configuración
  • Haga un cable Y con la resistencia de 1 kOhm para el pin TX
  • Conecta todo

No importa lo que hice, el motor se mueve el doble de lo solicitado. Aunque configuré 1/16 microstepping, lo mismo que tuve con mi Pololus, realicé el cálculo inverso para descubrir que el microstepping real en el controlador es 1/8.

Después de una mayor investigación, el problema parece ser que el conductor no es reconocido por el Marlin / Board. Pensando que era un problema con la comunicación TX / RX, busqué en la información disponible y encontré esto, Error: TMC2208 UART Communication utiliza pines incorrectos para SoftwareSerial # 9396 .

Procedí a cambiar los pines asignados para RX / TX serie, pero todo es exactamente lo mismo.

Probé un Arduino diferente (original), otra placa RAMPS e incluso las ramas de corrección de errores 1.1.xy 2.0 de Marlin.

Parece que el controlador está en modo "heredado" y la manipulación del software no es posible. Aunque seguí los pasos para habilitarlo.

Felix Hauser
fuente
¿Resolviste este problema? Si resolvió el problema, sería genial compartir su experiencia con la comunidad, publicando su propia respuesta, para que otros puedan aprender de ella o puedan resolver sus propios problemas similares. También puede aceptar su propia respuesta después de 48 horas.
0scar
tmc interpola tus pasos a 256 por adelantado config #define INTERPOLATE true // Interpola X / Y / Z_MICROSTEPS a 256
ddjikic
La mía aún peor, tengo todos los controladores TMC2208 y después de una actualización de firmware no relacionada, Z comenzó a funcionar dos veces. Otros ejes están bien.
Slava

Respuestas:

1

No tengo estos controladores, pero leí que con la configuración predeterminada, el TMC2208 interpolará los microsteps establecidos por los pines de configuración de E / S a 256 microsteps. Observe cómo configura los interruptores DIP / tapas de puente en su placa, parece que solo se usan 2 (MS1 y MS2). Además, ¿no puede simplemente disminuir el recuento de la matriz DEFAULT_AXIS_STEPS_PER_UNITpara la entrada Z en su archivo de configuración?

0scar
fuente
Puedo cambiar los pasos_por_unidad, pero eso es un parche para el resultado, no está resolviendo la causa. Investigué más, vea la actualización en mi publicación original ...
Felix Hauser
0

Lo más probable es que su problema esté relacionado con el pin PDN_UART en la placa del controlador TCM2208, en algunas placas de fabricantes, el puente no está configurado en modo UART de manera predeterminada, por lo que lo más probable es que necesite soldar el puente a la configuración correcta. Mire la hoja de datos de su tarjeta de conductor. por ejemplo https://github.com/bigtreetech/BIGTREETECH-TMC2208-V3.0/blob/master/TMC2208-V3.0%20manual.pdf

Grigor Tonikyan
fuente
2
Lo hizo, se menciona en la sección ACTUALIZACIÓN
FarO