Configuracion de driver TMC2208 con UART y Marlin 1.1.8

Para empezar con el blog voy a explicar las caracteristicas de estos drivers y la manera de instalarlos, para poder controlarlos y configurarlos desde marlin(v1.1.8).

Lo primero comentar, que estos drivers son similares a los TMC2100:

  • Son muy silenciosos
  • Soportan desde 1/16 hasta 1/256 micropasos
  • Dan una salida de 1.2A
  • Disponen de spreadCycle (Control dinámico del motor)
  • También tienen stealthGuard2  y viene activado pro defecto (Para impresiones mas silenciosas y movimientos mas suaves)
  • Configurables mediante interfaz UART

Estos drivers se pueden instalar segun los sacas de la caja, quitas un driver pones este y listo! PEro si lo que quieres es tener el maximo de control sobre ellos, lo mejor es configurarlos mediante la interfaz UART y configurando hasta el ultimo de sus parametros a través de marlin.

Para poder es necesario tener a mano, un soldador, estaño, un poco de cable, y resistencias de 1K:

Los pasos a seguir son los siguientes:

  1. En mi caso, los pines vinieron soldados. Pero depende de la tienda, pueden venir sin soldar (menos trabajo). En cualquier caso, la configuración de los pines debe quedar con todos los pines apuntando hacia abajo. Los pines MS1, MS2, NC y CLK removidos. Y el pin PDN apuntando hacia arriba, alk contrario que el resto. Esto es por que desde ese pin vamos a sacar un cable para comunicar el controlador con un pin auxiliar de la ramps para que Marlin pueda configurarlo. Al final el driver tiene que quedar como en la siguiente imagen (no hace falta soldar 2 pines hacia arriba. Con tener el PDN sobra):
  2. Lo siguiente es hacer un puente en los puntos que se ven en la siguiente foto. Con esto le decimos al driver que vamos a controlarlo a traves del software.
  3. Ahora tenemos que hacer 1 cable en y, de manera que conectaremos el pin PDN del driver a 2 pines en concreto del puerto auxiliar 2 de la ramps (se pueden configurar estos pines). En el cable extra tenemos que soldar una resistencia de 1K
  4. Lo siguiente es remover todos los jumpers de la ramps referentes al motor donde vayamos a instalar el driver. Para este ejemplo supongamos que es el driver para el motor del eje X.
  5. Para conectarlo, como se ve en el esquema anterior tenemos que poner en el driver el cable en el pin PDN, y en la Ramps el cable que tiene la resistencia en el pin 59 yel otro en el pin 63. En el siguiente esquema os pone el numero de cada pin. Estos pines son los que vienen por defecto en marlin para el motor del eje X. Se puede cambiar por otro si estos ya los tenéis usados.Esquema RAMPS 1.4
  6. Para configurar los drivers en Marlin, abrimos el proyecto en el IDE de arduino y buscamos el archivo Configuration_adv.h. En el, buscamos “HAVE_TMC2208” y descomentamos la linea para activar el módulo de control de estos drivers. Un poco mas abajo encontraremos las lineas donde indicamos en que motores tenemos instalados estos drivers, tenemos que descomentar las lineas relativas a los motores que usaran estos drivers. Y un poco mas abajo indicamos la corriente y los micropasos que tenemos configurados en cada driver.
  7. En este mismo archivo podemos configurar si queremos tener activado el modo stealthChop. Como queremos que se comporte el driver cuando hay algún problema (ej: Sobrecalentamiento del driver) con la opción MONITOR_DRIVER_STATUS. Y también podemos activar el modo híbrido, que usara el modo stealthCHOP por debajo de la velocidad configurada y spreadCycle por encima de esa velocidad con la opción HYBRID_THRESHOLD.
  8. También es bueno descomentar la linea TMC_DEBUG, de esa manera podremos ver el estado de los drivers enviando el GCODE M122
  9. Para finalizar, configuramos los pines que tienen configuración UART. Para ello, vamos al archivo pins_RAMPS.h y buscamos “HAVE_TMC2208”. Un poco mas abajo de donde nos sitúa la búsqueda tenemos la serie de pines que utilizara cada motor. En mi caso, están todos los pines por defecto.A partir de aquí, solo falta subir Marlin al arduino y a disfrutar!

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *