This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
DUDA Driver TMC2130
#1
Saludos
Alguien podría ayudarme, tengo una duda con respecto a los drivers TMC2130, es posible usar estos drivers para controlar motores nema 17HS4401?, los cuales funcionan en teoría con una corriente de fase de 1.7A, en caso de que no se puedan usar. Qué motores podría usar ?. Los motores nema 17HS4401 tienen buen torque, por tal razón quería usarlos. (esto es para usarlos en el eje X y Y, ya que en el eje Z estoy usando otros de menos corriente y pues no estoy tan seguro que motores usar en los ejes X y Y, pues pienso yo que deben ser motores con buen torque)
Muchas gracias...
  Responder
#2
Hola @anderson_3d, bienvenido al foro.
Los motores que indicas se pueden controlar perfectamente con los drivers TMC2130, pues la corriente no depende del motor que se use, sino del ajuste del driver.
Esos motores pueden soportar un máximo de 1,7A (a los que dan su par máximo) pero esos drivers no pueden llegar a ese valor (1,2-1,4A según modelo), por lo que los motores trabajarán por debajo de su máximo.
¿Has elegido los TMC2130 por algún motivo en especial? Porque podrías decantarte por los TMC2209 (2A) si quieres exprimir al máximo los motores, aunque para una impresora 3D no debería ser necesario.
Los motores 17HS4401 no es que sean especialmente fuertes en ese aspecto (1,7A - 40/2,2 N/cm). Por ejemplo, en NEMA17 tienes los 17HS8401 (1,8A - 52/2,6 N/cm) y los 17HS6401 (1,7A - 70/3,2 N/cm).
Si la mecánica de la impresora está bien ajustada y los ejes deslizan con suavidad, no es necesario mucho par para que todo funcione de forma correcta.
De esa forma se pueden regular los drivers al mínimo y reducir el calor disipado, tanto por estos como por los motores.
  Responder
#3
Saludos....
Muchas gracias por la información, Se lo agradezco mucho, aunque solo tendría una duda más, yo voy a usar una shield Ramps 1.6 plus, esta placa servirá para usar los drivers TMC2209 ?
  Responder
#4
Hola, supongo que la RAMPS 1.6 Plus que tienes será una de las que trae incluidas las conexiones para controlar por SPI los TMC2130.
Los TMC2209 son totalmente compatibles con los más habituales A4988 y DRV8825 en el modo Standalone, por lo que funcionarán perfectamente en ese modo, aunque otra cosa es en el modo UART (los 2208-2209 no llevan SPI).
A priori, no debería haber ningún problema si piensas controlarlos por UART, aunque no estoy seguro de si se podrían utilizar las conexiones que trae la placa para SPI, también para controlar los drivers por UART.
En todo caso, no debería haber ningún problema en que hagas tú mismo las conexiones (como en cualquier placa que no las traiga incluidas).
La bondad del funcionamiento en ese caso, dependerá en gran medida de cómo realices la conexión y configuración, pero como digo no existe razón para que no lo haga correctamente también.
Si piensas utilizar los drivers en el modo SPI/UART y la placa trae incluidas las conexiones por SPI (como supongo), quizá te sea más sencillo decantarte por los TMC2130. La diferencia en la intensidad máxima que pueden manejar no es determinante para el uso que los vas a destinar (para el que te valen perfectamente los motores que indicabas) y el montaje quedará más "limpio" (sin cables adicionales por fuera de la placa).
Si los vas a utilizar en modo Standalone (solo por la reducción del ruido), quizá te interese ir a los más modernos TMC2209. En este caso, tendrás que realizar el ajuste de la intensidad que envían a los motores de forma manual.
Un último apunte: no sé si estás partiendo de cero en la construcción de una impresora o estás actualizando una ya existente pero, si es la primera opción, deberías considerar implementar la alimentación a 24V, pues los TMC trabajan mejor a ese voltaje que a los habituales 12V. Pero en ese caso, tendrás que cambiar la forma en que se alimenta el Arduino Mega que, supongo, estarás utilizando con esta placa.
Si decides hacerlo y no sabes como hay que implementar esto, no dudes en preguntar.
  Responder
#5
Saludos...

De verdad que te agradezco por la información, aunque tengo un buen conocimiento en la parte electrónica, la impresión 3d es algo nuevo para mí, y sí, la impresora la estoy armando desde cero y pues estoy tratando de hacerla lo mejor posible, sin embargo no estoy seguro si se podrá usar como CNC, sería así también de mucha ayuda, sin embargo la prioridad es construirla como impresora 3D; ahora bien la placa Shield Ramps 1.6 plus soporta los siguientes drivers (A4988, DRV8825, TMC2100, TMC2130 DIY, TMC2130 SPI y TMC2208 UART), aunque no se porque no incluyen el TMC2209. La idea es estar seguro de lo voy a hacer y en estos foros puedo aprender mucho. Entonces usted creería que la ramps 1.6 plus soportaría los drivers TMC2209 ?. Yo pensaría que sí, sin embargo cualquier información que me puedas brindar es de gran valor para yo quedar mas claro.

muchas gracias...
  Responder
#6
Esa indicación de los drivers soportados por la placa no incluye al TMC2209 seguramente porque se redactó antes de que este saliera al mercado, ya que es bastante reciente.
A efectos de compatibilidad, es idéntico al TMC2208.
Respecto a las máquinas múltiples (impresora y CNC al mismo tiempo, por ejemplo), ya he dado en varias ocasiones mi opinión: creo que no da buenos resultados combinar, en una misma estructura, máquinas de fabricación aditiva y sustractiva.
El control tendrá que hacerse mediante un firmware orientado a la impresión 3D (para que pueda manejar los calentadores) y no será tan adecuado para utilizarlo en la parte sustractiva (laser o fresadora).
Creo que es mejor tener dos máquinas separadas y específicas para cada utilización: el coste de fabricarlas no es el doble que el de una conjunta con resultados comparables y será mucho más fácil conseguir que estos sean los esperados en cada apartado.
  Responder
#7
Saludos...

Comprendo tu punto de vista con respecto al tema de hacer una maquina para CNC y 3D y tienes razón, aunque mi prioridad es construir la impresora 3D. Ahora bien no sabia que el driver TMC2209 era tan nuevos, entonces yo creo que la ramps 1.6 plus soportaría estos drivers. Seguiré investigando para saber más de esta placa...muchas gracias..
  Responder
#8
Yo también leí por ahí que la estructura necesaria para un impresora 3D no es lo suficientemente rígida para una CNC. Es cierto que si lo tomas en cuenta desde el diseño, puedas tener buenos resultados, pero recuerda que ambas máquinas son lentas, así que mientras imprimes no puedes grabar con laser. Una sola máquina para ambas cosas te generará un cuello de botella.

Por otra parte estar cambiando el cabezal de laser a impresion3D es una lata, sobre todo si vas alternando entre ambas cosas.
Ulticampy V2: fundiendo plástico sin descanso...
  Responder
#9
Saludos...

Okay comprendo, volviendo al tema de la Ramps 1.6 plus, voy a seguir leyendo y  especialmente como se configura el TMC2209, aaaa....casi se me pasa, aun no entiendo bien como configurar el marlin, pues he visto varias versiones, la ultima creo que es la 2.0 (no se si esta última tendrá errores), no se cual version de marlin me recomiendas tu en la que pueda trabajar el driver TNC2209 ?, sin embargo voy a descargar el marlin 1.9 y voy a estudiar como funciona este código y tendré en cuenta algunos puntos relevantes como el PID para el Hotend y la cama caliente, también el tema de como configurar los driver sea por sowfware o por el potenciometro que tiene estos drivers.... te pregunto.. me puedes recomendar que programa utilizo para calibrar la velocidad de los motores ? sirve el PRONTERFACE ? o cual versión puedo usar ?, quizá tengas algunos puntos  adicionales a los que mencioné que yo deba de tener en cuenta en el marlin ? (aclaro que el marlin lo voy a analizar y programar en el arduino IDE)....

Muchas gracias por tu colaboración...
  Responder
#10
Hola, los TMC2209 salieron al mercado a mediados del año pasado. Por ejemplo, algo parecido a lo que sucede con la indicación de la compatibilidad de la placa pasa también en Marlin: la versión 1.1.9 no los incluye en la configuración (no se modifica desde mucho antes de que saliese al mercado el driver), pero la 2.0 sí.
Respecto al Marlin, en mi opinión lo más recomendable ya es optar por la versión 2.0 (la bugfix, para tener las últimas correcciones de errores).
Antes de nada, lo primero que tendrás que decidir es como vas a controlar los TMC2209, si por Step/Dir (indicados en la configuración como TMC2209_STANDALONE) o por UART (TMC2209 en la configuración). En este último caso, aparte de cablear corectamente los drivers, tendrás que configurar algunas cosas más en el firmware.
No sé muy bien a que te refieres con calibrar la velocidad de los motores, por lo que no puedo indicarte nada sobre si te servirá o no el Pronterface.
Esta aplicación se utiliza para controlar la impresora de forma remota desde un ordenador y para enviar comandos gcode, conectados ambos por USB.
  Responder
#11
Saludos...

Entiendo, probablemente me equivoqué, sin embargo a lo que me refiero, es que he visto algunos programas que sirven para poder colocar una velocidad y aceleración a los motores y luego ese numero de velocidad y aceleración se introduce en el marlin, no se si habrán otras variables a tener en cuenta, en realidad lo que hace estos programas es hacer pruebas por separado es decir, probar la velocidad de los motores de los ejes, también averiar mediante una prueba los valores del PID, tanto para el hotend como para la cama caliente, sin embargo no se cual me recomiendas, pues lo que he visto que utilizan son del año 2014... muchas gracias....
  Responder
#12
Hola, no tengo constancia de que se use en el campo de la impresión 3D esas aplicaciones que comentas, quizá sean más específicas del mundo CNC.
Aquí no hay que probar la velocidad de los motores, estos se moverán a la que les indiquemos (dentro de unos márgenes razonables). Lo que sí tendrás que ajustar son los micropasos que Marlin tendrá que enviar a los drivers para que los motores se muevan una distancia unidad (normalmente el milímetro).
Marlin ya trae incorporada una utilidad para la calibración del PID, tanto de la cama como del hotend (se lanza con el comando M303).
Para realizar todos estos ajustes te servirá perfectamente Pronterface, para controlar la impresora de forma remota, enviar los comandos necesarios y recibir las respuestas del firmware (los valores del PID, por ejemplo).
  Responder
#13
Saludos....

Muchas gracias, lo tendré en cuenta..... hoy en la tarde investigué acerca de la ramps 1.6 plus y está muy nueva (es china y la venden en china, ejemplo: aliexpress), la verdad no he encontrado información con respecto a esta placa, pero tu que tienes mas experiencia, podrías recomendarme una placa que funcione con los driver TCM2209... gracias
  Responder
#14
https://www.hta3d.com/es/ramps-1-6-plus-...0YQAvD_BwE

Hola creo te puede interesar, por si le quieres echar un vistazo
saludos
  Responder
#15
(13-01-2020, 03:46 AM)anderson_3d escribió: Saludos....

Muchas gracias, lo tendré en cuenta..... hoy en la tarde investigué acerca de la ramps 1.6 plus y está muy nueva (es china y la venden en china, ejemplo: aliexpress), la verdad no he encontrado información con respecto a esta placa, pero tu que tienes mas experiencia, podrías recomendarme una placa que funcione con los driver TCM2209... gracias

Hola, la gran mayoría de estas placas son chinas. De todas formas, la RAMPS 1.6 plus no es que sea muy reciente: creo que salió a finales del 2018.
Recomendarte no, porque no he probado ninguna de ellas personalmente, pero sí puedo indicarte algún modelo que viene preparado para utilizar los TMC2209 por UART.
Entre las de 8 bits, tienes la FYSETC F6 y entre las de 32 bits la FYSETC S6 y la BIGTREETECH SKR v1.3 o v1.4. Seguramente haya más.
También existen placas que llevan soldados los TMC2209 y cableados internamente para su control por UART, como la BIGTREETECH SKR-mini-E3 (32 bits), aunque con ellas se corre el riesgo de tener que tirar toda la placa si falla uno de los drivers.
Como digo, no las he utilizado, por lo que no puedo recomendarte nada: tendrás que investigar tú mismo en la red.
En todo caso, no has indicado en que modo piensas controlar los TMC2209. Aunque, tanto si es por Step/DIR como si lo haces por UART, debería servirte casi cualquier placa del mercado (en el segundo caso, cableando la conexión).
  Responder
#16
Saludos...

No sabía que la ramps 1.6 plus, no era tan nueva....sin embargo las dudas que tengo es que no se si el firware de la 1.6 sirve (Esta 1.6 tiene habilitado la conexión SPI, y la I2c, NO la UART), tambien lei por hay que parece ser que genera un conflicto con SPI y la pantalla LCD, si estoy usando algunos de los TMC21XX, por lo que estos tambien se manejan por SPI..

Nota: el problema de  las ramps 1.5 / 1.6 / y 1.6 plus/ es que no aparece en el marlin 2.0 y menos 1.1.9, solo aparece hasta el 1.4....hay un firware para la 1.6, pero no se que tan confiable sea, este trae su marlin....es por eso que 

Preguntas:

1. Cuando se dice que los TMC2209 se manejan por UART, ¿Hacen los mismo que como si se manejaran con el potenciometro de ajuste de los driver ? ¿ o por UART se pueden hacer mas cosas que por el potenciometro, como por ejemplo configurar todas las prestaciones que ofrece este drivers?
2. Cuando se dice que los TMC2209 se se manejan por UART, un ejemplo usar un arduino mega 2560 (este tiene varios puertos seriales) ¿Quiere decir que se usar uno de los uart del arduino para configurarlo?
3. ¿ El TMC2209 usa UART asíncrono o sincrónico ?

gracias....
  Responder
#17
Hola, me parece que sufres lo que yo denomino "empacho de información de Internet". Como sigas buscando, no acabarás por decidirte a empezar tu proyecto.
Bromas aparte, no hay firmware específico para una placa, sino un firmware (Marlin, por ejemplo) que se configura para una placa concreta. Y el control mediante software de los TMC21xx es por SPI, mientras que los TMC22xx se hace por UART.
Que no venga una placa explícitamente indicada en el firmware, no quiere decir que no pueda funcionar en ella: todo depende de si es compatible o no con otra que sí lo haga.
En principio, nada apunta a que esos nuevos modelos no sean compatibles con el estándar 1.4, pues llevan la misma MCU (Arduino Mega) y es esta la que condiciona la configuración del firmware (su tipo y pines de I/O).
Realmente, cualquier placa con una MCU soportada por Marlin se puede utilizar con él (básicamente Arduino, ARM Cortex y ESP32), venga o no incluido su archivo de pines. Si no lo tiene, habría que hacerlo, para lo que se necesitaría el esquema de la misma o la información de su pinout (que es lo que hicieron los chic@s de Marlin cuando incorporaron las placas soportadas).
La RAMPS solo es un escudo (Shield en inglés), que lo único que proporciona es un soporte para la conexión de los distintos dispositivos (drivers, calentadores, ventiladores, termistores, finales de carrera, pantalla, etc.) a los pines correspondientes de la MCU (que es la que controla todo lo anterior).
Otra cosa son las nuevas líneas que controlan SPI. Supongo que en algún sitio se indicará a qué pin del Arduino Mega van conectadas (seguramente a los que utiliza Marlin para la RAMPS 1.4, pero habrá que comprobarlo).
1. El modo UART permite controlar desde el firmware todos los aspectos de la configuración del driver, además de permitir activar funcionalidades que no están disponibles en modo Step/DIR.
Entre esas configuraciones que se pueden hacer desde el software, se encuentra la regulación de la intensidad que se envía a los motores, que en Step/DIR hay que realizarla de forma manual con el potenciómetro (eso es lo único que se puede hacer con él).
2. Sí.
3. El control es por UART, no por USART (UART = Universal Asynchronous Receiver-Transmitter). Gracias a ello, solo se necesita una línea de transmisión.
En principio, para usar los TMC2209 en RAMPS, yo descartaría la placa plus y utilizaría una sin las líneas para SPI, que me da la impresión de que solo serían una complicación.
Aunque lo más sencillo sería usar una de las placas que vienen preparadas para controlarlos por UART.
  Responder
#18
Muchas gracias ...

he quedado muy claro....también vi unos vídeos de configuración de marlin 2.0 en español y entendí muchas cosas que no entendía y que te había preguntado anteriormente...... muchas gracias....

ya vi que ya salió el marlin 2.1, Aunque solo tengo una duda, esto lo digo en suposición, me imagino que para una placa FYSETC F6 (8 bits ) y de 32 bits la FYSETC S6, ¿ es probable que las próximas actualizaciones del marlin no quepan en los chip de 8 bists, sino de 32 bits?

gracias....
  Responder
#19
No todas las MCU's de 8 bits tienen problemas de cantidad de memoria. Entre las de Atmel (antes puse de Arduino por error), las más comunes son el ATMega1284P y el ATMega2560, y solo la primera tiene ese problema. Pero  ya son muy pocas las placas que lo integran, siendo lo más común que lleven el segundo, ya con 256 Kb de memoria flash en lugar de 128 Kb.
Con este último (es el que lleva el Arduino Mega y la FYSETC F6) no habrá problema durante bastante tiempo en ese sentido aunque,por supuesto, las de 32 bits van mucho más sobradas en todos los sentidos.
De todas formas, para impresoras de tipo cartesiano (no Delta), aún cumplen bien las MCU's de 8 bits.
La versión 2.1 de Marlin es la que se encuentra en desarrollo en este momento, pero no es buena idea usarlo en producción, solo para hacer pruebas.
  Responder