Lo que necesitas saber sobre los TMC2130 


Se tratan de unos controladores para motores paso a paso diseñado por Trinamic (de Alemania) especialmente para impresión 3D. 


Son unos drivers muy avanzados que incluyen tecnologías de primer nivel a un precio muy asequible. Además pueden reemplazar con facilidad los DRV8825 y A4988. 


Incluyen las siguientes tecnologías:

  • SPI

  • Step/Dir

  • Microstep table

  • MicroPlyer™

  • CoolStep™

  • Passive braking

  • Short detection

  • SpreadCycle™ (modo normal con mayor fuerza)

  • Stall detection

  • StallGuard2™

  • StealthChop™ (modo silencioso con menor fuerza)



Tienen dos modos de funcionamiento:



Modo Step/Dir




Este modo de funcionamiento es modo “clásico” para controladores de impresora 3D, la impresora envía dos comandos: paso y dirección, y el controlador ejecuta este movimiento. Recomendamos quitar todos los jumpers de la parte inferior de forma que funcionará como Step/Dir, a una resolución de 1/16, interpolando a 1/256 y en modo silencioso.


La intensidad se calibra igual que los DRV8825 en esta configuración.


Las ventajas de instalarlos así son:

  • No requiere modificaciones de hardware, no hay que soldar nada ni modificar la impresora.

  • Habitualmente en el caso de reemplazar los A4988 no hay que ajustar los pasos por mm, si reemplaza los DRV8825 puedes ajustar los pasos sin modificar el firmware con el siguiente comando:

    http://marlinfw.org/docs/gcode/M092.html

    Ejemplo: M92 X80 Y80; Ajuste de pasos del eje X e Y a 80 pasos por mm cada uno.


Este tipo de instalación es muy sencilla y puede actualizar de forma económica los ejes X e Y de una impresora 3D.





Modo SPI



Es el modo avanzado de estos controladores, requiere una configuración de pines diferente ya que la información que se transmite por SPI (Serial Peripheral Interface) es mucho mayor. De esta forma podemos aprovechar las siguientes funciones:


  • Ajustar la intensidad de corriente del controlador según necesitemos usando la instrucción M906, de forma que ya no hay que girar pequeños potenciómetros, y podemos hacer modificaciones según necesitemos:

    http://marlinfw.org/docs/gcode/M906.html

    Ejemplo: M906 X600 Y600 Z800 E800; ajusta las intensidades de los ejes X, Y, Z, Extrusor a 0,6 0,6 0,8 0,8 A respectivamente.

  • Cambiar entre el modo silencioso y el modo normal de cada controlador.
    De esta forma podemos imprimir de forma mucho más silenciosa, los motores apenas hacen ruido.
    El Gcode para alternar ambos modos es este:

    http://marlinfw.org/docs/gcode/M569.html

  • Usar el modo híbrido, que alterna el modo silencioso y el normal de forma inteligente, para que los movimientos por debajo de una determinada velocidad se hagan silenciosamente y a partir de esa velocidad en el modo normal. Por ejemplo, para que los desplazamientos que normalmente son más rápidos que la impresión se hagan en este modo, aumentando la fuerza de los motores y disminuyendo la probabilidad de que se salten pasos aún a velocidades altas.

    http://marlinfw.org/docs/gcode/M913.html

    Ejemplo: M913 X120 Y120 Z2 E30; ajusta el modo híbrido, para que todo movimiento superior a 120, 120, 2, 30 mm/s se haga en el modo SpreadCycle.

  • Sensorless homing, usa el pin DIAG1, que nos da información sobre la fuerza que se opone al movimiento del eje para usarse como final de carrera, eliminando la necesidad de estos en el eje X e Y.
    Este es un pin central del controlador, por lo que puede necesitar cableado externo.

    La sensibilidad se puede ajustar también con la siguiente instrucción:

    http://marlinfw.org/docs/gcode/M914.html

    Ejemplo: M914 X6 Y6; ajusta la sensibilidad de los ejes X e Y a 6, el rango es entre -64 y 63, si golpea excesivamente fuerte puedes bajarlo.



Configurar Marlin, para trabajar con ellos:


  1. Es necesario instalar la librería para los TMC2130:

    1. Si usas Marlin 1.1.9 o superior: https://github.com/teemuatlut/TMCStepper

    2. Si usas Marlin 1.1.8 o inferior: https://github.com/teemuatlut/TMC2130Stepper

      Arduino IDE en sus últimas versiones incluye un gestor de librerías, por lo que puedas instalar la librería directamente desde el programa: programa/incluir librería/gestionar librerías y ahí buscas las librerías indicadas.

  2. Definir los pines SCK, MOSI, MISO y CS, que dependerán de la placa en la que lo instalamos.


Aprender a reconocer los tipos de driver TMC2130 y su configuración:


  1. TMC2130 configurado como STEP / DIR, se puede ver cómo incluye la resistencia para desactivar el SPI y no incluye puentes para CFG 4 y 5




  2. TMC2130 Configurado para SPI, no incluye la resistencia para desactivar SPI y tiene los puentes en CFG 4 y 5.
    Esta versión incluye pines en la parte superior e inferior para poder instalarse en una electrónica preparada para SPI como la Ramps 1,6+, así como en otras versiones cableando externamente (no recomendado).




Otros factores a tener en cuenta:


  • Al poder ajustar las intensidades, y alternar entre los modos SpreadCycle™ StealthChop™ y modificar los valores de aceleración del firmware hay más de una forma de configurar el firmware para conseguir buenos resultados:

    • Puedes poner una intensidad alta y usar el modo silencioso junto a unas aceleraciones moderadas. 
    • Para hacer la impresora más eficiente puedes usar una intensidad baja junto al modo SpreadCycle, pese a ser una impresión más ruidosa también será más eficiente.
    • Para maximizar el rendimiento y las aceleraciones puedes usar el modo SpreadCycle junto a una intensidad alta. Esto hará que la impresora tenga mucha fuerza en los ejes y pueda imprimir muy rápido.
    • Si quieres que el ruido sea muy bajo, el modo StealthChop junto a aceleraciones bajas es la mejor solución.