Electrónica CNC/impresora 3D (driver, shields y placa)

@Fm: Ok, en las fotos lo he visto bien.

Yo estoy terminando el chasis de mi fresadora, asi que si necesitas alguien mas para testear, me ofrezco. Mientras usare los drivers que tengo que hacerme de Txapu, tengo ya todos los componentes y la pcb diseñada, me falta fabricarlas.

Muy buen trabajo, es una pasada.

@grafisoft - muchas gracias por tus comentarios.

Con respecto a los drivers L298 simplemente ten la precaución de no sobrepasar la corriente máxima de las bobinas o su tensión máxima.

Hay alguna forma de limitarla? Pensaba alimentar los motores a 12v, usando una FA de pc

Antes de alimentar los motores, con la fuente de PC, comprueba las especificaciones de tus motores. Para limitar la corriente o la tensión, la forma más sencilla es, poner un regulador de tensión, pero este va a disipar y se va a calentar lo que no está escrito.

La otra alternativa es montar en el chisme un L297, el hermano del L298 que es el que tiene toda la lógica de control para limitar la corriente que le entra a las fases del motor.

Mide con un polímetro la resistencia de tus bobinas y mira a ver a 12V lo que disiparía: P = 12V*12V/R. También puedes calcular la corriente que fluiría por el motor, si ves que sale más de 2A, pues ...

Me sale que 1,8ohm por bobina, asi que el 298 le dara todo lo que pueda. Me va a tocar ponerle un 297 no? Me voy al otro post, no quiero manchar este.

Ufff, aquí sale una corriente importante: dudo que tu motor aguante 6.67A por fase. Estamos hablando de casi 80W por fase! Como se lo enchufes al L298, supongo que cortará por exceso de corriente, aunque no lo tengo claro.

El soft de control de esta electronica, el de Txapu servira? O podremos usar algun programa mas?

Saludos

Creo que no habría problemas. Tiene una versión para drivers de pololu o equivalentes que debería funcinar bien. De todas formas, hacer las adaptaciones del SW a usar STEP y DIR es muy sencillo. Conociendo el trabajo de Inizul es casi seguro que no habría que modificar absolutamente nada, es todo un crack!

Hola a todos!

Me uno al "club de fans" de este proyecto realmente interesante; espero aprender mucho ...

Precisamente estas últimas semanas, que he estado de vacaciones, he estado retomando mi hobby de la electrónica y he empezado a hacer algunas cosillas con motores paso a paso (usando un TB6560 que me llego la semana pasada y un motor bipolar pequeñito) aunque para un proyecto mucho, mucho, más modesto que la parienta me encargo hace ya un par de años! :slight_smile:

Unas preguntas/comentarios de novato:

  • ¿habéis probado los drivers poniendole carga al motor? En un motor paso a paso a bajas revoluciones esto no debería afectar en absoluto, pero en un motor acelerado podría afectarle a la hora de parar y perder la posición ...

  • ¿habéis probado los motores a "alta" velocidad? Cuando el motor está rotando, la tensión a la que trabaja crece (debido al EMF) y la disipación en el driver podría crecer. No creo que esto sea un problema para una máquina CNC, pero bueno, asumo que el driver intenta ser genérico ...

  • otro detalle, ¿tiene el 8811 algún modo de controlar la corriente máxima además de a través de la resistencia de sensado? Lo digo porque no necesitas el mismo par para mover el motor que para mantenerlo en una posición fija. El enable asumo que lo que hace es deshabilitar el puente de salida, haciendo que el motor se descargue por los diodos y pierdan todo su par.

En la misma linea, y para futuras revisiones del PCB, quizás fuese interesante dejar espacio para al menos dos resistencias de sensado en paralelo, flexibilizando la configuración de la corriente máxima que necesite tu motor. No siempre vas a necesitar 2A en todos tus proyectos :slight_smile:

Hola ADCLC y la verdad es que es un placer verte por aquí!

Contestando a tus preguntas, el 8811 la corriente que fluye por las bobinas, realmente se controla de dos formas. La primera, con su correspondiente resistencia de "sensado" RSense y por otro lado con una tensión de referencias. La corriente realmente en el PCB se controla con un potenciómetro con un rango de trabajo de entre 10mA y limitado a 2.8A. El pin de enable, disable, lo que hace es desahilitar toda la etapa de potencia y control, muy parecido a lo que hace TB6560. Más bajo de 10mA no he llegado porque estoy en el límite del ruido del PCB.

En este PCB, la forma de descargar las bobinas se puede seleccionar: recirculando la corriente a través de los FETs opuestos del puente H (slow decay) o via los diodos externos (conmutando la fase opuesta a la activa - fast decay). También influye el modo de "sincronismo" que tiene el ASIC (este controla el instante en el que se descargan las bobinas).Yo lo tengo configurado en modo asíncrono para utilizar los diodos para disipar la energía acumulada en las bobinas y por ende mejorar la disipación de la placa entera (date cuenta que la placa es de 4cmx3cm).

He probado los motores a todo lo que son capaces de dar tanto en corriente, tiempo como en velocidad. La velocidad con la que eres capaz de mover el motor viene dada por si inductancia y antes de empezar a perder pasos, la velocidad a la que puedo llegar con ellos es de 600p/s (que más o menos coinciden con lo que he calculado). Las pruebas de duración son también importantes, ya que a medida que se calienta la resistencia de las bobinas aumenta y por ende la caida de tensión en cada fase. Todo está funcionando como la seda ya que estoy alimentando las fases a 12V y regulando la corriente que aceptan.

En el video que he puesto se ve como el motor se acelera al máximo y se para en un paso, digamos que una prueba extrema. Tras varias horas funcionando, todo igual. Con poca carga, moviendo la bandeja de mi CNC con 1Kg todo funciona igual. Con mucha carga es un poco más complicado ya que hay que acelerarlo/decelerarlo progresivamente porque sino el motor no tiene par suficiente para arrastrar la carga y se frena. Tengo que terminar estas pruebas durante el fin de semana para meter el perfil de aceleración en el SW de control de la CNC.

A ver cuando terminas el proyecto de la "Santa" y publicas unas foticos!

Opino que por las preguntas que haces, tienes más papeletas de aportar que de aprender :wink:

Por cierto, dónde compraste los TB6560?

No he podido todavía mirarme el 8811, que promete ser más barato y compacto que el TB6560, pero para uno sólo que quería para hacer pruebas, en formato no SMD, es el más barato que he encontrado si se tienen en cuenta los gastos de envío.

El mío lo compré en DealExtreme DC-025 2.5mm DC Power Jack Connector - Silver + Black (10-Piece Pack) - Free shipping - DealExtreme por 4€, puesto ya en mi buzón.

Lo soldé a una plaquita de pruebas de dos caras poniéndole dos tiras de pines por debajo para poder usarlo en mi protoboard .. vaya coñazo la soldadura, pero bueno, parece que lo conseguí. Subiré una foto cuando aprenda a hacerlo :cold_sweat: Lo monté hace unos días pero todavía no he tenido tiempo de probarlo ...

Por cierto, una pregunta respecto al 8811 ... Entiendo entonces que el pin Vref es el que se usa para definir la tensión de corte del circuito de alimentación de las bobinas (chopper). Si es así, la verdad es que en eso es más versátil que el TB6560. Para esto el TB6560 sólo tiene 4 posibles valores configurables a través de dos entradas digitales. ¿Existe versión DIP del 8811?

La corriente de corte se configura con la resistencia y con Vref, siguiendo la siguiente relación: I(lim) = Vref/(8*Rsens), donde I(lim) es la corriente de corte y Rsens en mi placa es de 0.1Ohm. Si te fijas en mi placa, en la cara inferior tengo puesta esta relación y el punto de medida que hay a la izquierda del potenciómetro, donde se hace la medida. También puedes configurar el tiempo de on del "chopper" y la frecuencia (para que no haga tanto ruido).

El TB6560 es el mejor que he visto en formato DIP, tanto Alegro como TI tienen la mal sana costumbre de usar encapsulados SMD. Este tiene un paso entre pines de 0.5mm (HTSSOP) y el PAD inferior tiene que estar bien soldado para que disipe bien el calor. Curiosamente este es el que he encontrado más fácil de soldar con las prestaciones que buscaba, los de Alegro son una tortura para soldar a mano.

He encontrado uno nuevo de TI que está mejor cuyos FETs tienen una Rson de la cuarta parte! El DRV8818 y es compatible pin a pin con el DRV8811.

Foticos, foticos, si le das a "reply" te permite adjuntar un archivo.

Una pregunta ... ¿pudiste probar el 8811 antes de mandar a fabricar el PCB, o tuviste que cruzar los dedos? ¿te montaste una placa adaptadora a mano, con acido o con un cutter!, o tienes plaquitas adaptadoras para todos los formatos imaginables?
Porque yo me sigo sintiendo muy atado a los formatos DIP/SIP para poder montar prototipos y pequeños circuitos. Y SMD sale carillo si no vas a hacer una tirada de al menos varios de ellos ...

No, no probé el driver antes de mandarlo a fabricar. Revisé el circuito, planos de tierra y como dices (lo pedí y cruce los dedos - como con todos los que he hecho), pero vamos, que el circuitillo ese no tiene mucha historia salvo los desacoplos, planos de tierra y cómo disipar más calor usando el propio PCB. En alguna ocasión me he hecho algún adaptador fabricando mis PCBs caseros, pero degamos que por casa no hace mucha gracias (sobre todo con los nanos circulando por aquí).

En cuanto a precio, bueno, las resistencias las compras de 100 en 100 a céntimo la unidad, los condensadores de 0.1uF también. Lo que si que es cierto, es que si solo vas a hacer una unidad o dos, pues estás vendido y los colegas de las tiendas de electrónica que hay cerca del Carrefour te las cobran como si fuesen de oro, al peso!

Si fuesen al peso tendría que ser más baratas!! XD

ADLC:
Si fuesen al peso tendría que ser más baratas!! XD

Jajajaja

Hola a todos, este fin de semana ha sido un poco más "mecánico" que "electrónico" pero ya he podido sacar unas cuantas conclusiones de la electrónica conectada a la máquina CNC trabajando en modo nominal.

Aquí os dejo un video de las pruebas que merece la pena ver:

Si os gusta el vídeo, no os olvidéis de darle un "thumbs up"!

Pruebas:

  • Corriente por fase de motores: 1A (su potencia nominal es de 2A)
  • Arranque y parada: sin aceleración/deceleración a todo lo que dan las bobinas.
  • Step mode: paso completo, modo síncrono, fast decay
  • Rango de carga: 300g - 20Kg, y ni se ha inmutado (claro que tiene una desmultiplicación muy alta.
  • placas: vinciDuino, mi stepper shield y mi driver, aka, vinciDuino CNC Cube.

Ya me contaréis que os parece.

Wuenas, os dejo el primer vídeo de los tres ejes funcionando al unísono ya montados en el chasis.
Como apreciareis en el vídeo he cambiado el plato de DM por una mordaza para sujetar pequeñas piezas, la idea era esa, que fuera lo suficientemente versátil en altura para poder incorporar nuevas herramientas, es quitar y poner, dos tornillos y vuelta al plato de DM:

Una cosa ha reseñar es que después de casi una hora la temperatura no ha sobrepasado los 34,9 º C la temperatura ambiente era de 29º.
Un saludo

Qué código estáis utilizando para manejar los drivers. ¿es público?

El código de control lo he escrito yo, pero pilotar el driver no tiene mucho misterio la verdad:
cualquier pin con un IO: HIGH o LOW selecciona el sentido de giro.
cualquier pin con un IO: HIGH + LOW da un paso en el sentido del giro.

Si queréis os pongo la clase que he escrito, pero ...