Control de múltiples motores paso a paso con un solo controlador

Quiero controlar ~ 50 motores paso a paso con un solo controlador y usar solo un pin Arduino para controlar cada motor.

Actualmente estoy usando un solo controlador A4988 y un par de motores paso a paso de 12 V y 1 amperio para crear un prototipo de una parte de una máquina como prueba de concepto, pero necesito usar muchos motores más grandes y mejores controladores en un futuro cercano.

Como no necesito que los motores funcionen simultáneamente, quiero usar un solo controlador para controlarlos a todos.

Traté de validar mi idea usando 4 relés diferentes y parece que los motores funcionan perfectamente según mis necesidades (los probé y cambié entre ellos en una prueba de 24 horas). Pero como los transistores son mucho más baratos y de menor tamaño, quiero usarlos si es posible.

Tengo experiencia en programación y nunca diseñé un circuito antes, pero a continuación hay un esquema que diseñé para controlar dos motores paso a paso con un solo controlador, no sé qué tipo de transistores o resistencias debo usar, o es este esquema posible en ¿todo? (Como mencioné, ya usé un "módulo de 4 relés" en lugar de transistores y funcionó bien).

aquí está el esquema:

Esquemas de control de múltiples motores con un controlador

Se agradecería cualquier ayuda para solucionar los problemas de esquemas y elegir transistores y resistencias.

Gracias.

ps Como todos en la sección de comentarios sugieren usar varios controladores, quiero aclararlo nuevamente: usar varios controladores no es una opción, porque necesito controlar motores más grandes y necesito un controlador más costoso, que no puedo permitirme muchos de ellos en un prototipo. Cualquier sugerencia de usar un solo controlador para controlar muchos motores, preferiblemente usando un solo pin por motor, es considerable. Gracias.

Los FET funcionarían mejor que los BJT aquí, pero tiene el problema de que la corriente pasa en ambos sentidos a través de esas bobinas del motor, por lo que necesita un circuito más sofisticado para controlar los transistores. Si no está impulsando los motores demasiado rápido, considere los aisladores ópticos en su lugar.
Honestamente, los A4988 no son muy caros, y probablemente será más fácil al final usar controladores independientes para cada motor y seleccionarlos desde el lado del microcontrolador.
Acordado. Cualquier otra cosa es un bodge.
@evildemonic, intentaré aprender sobre FET y aisladores ópticos, gracias. Además, sé que los A4988 no son muy caros, pero con motores más grandes, necesito controladores mucho más caros mientras que nunca funcionan simultáneamente, lo que significa gastar mucho $$$ en un prototipo. Además, cada controlador necesita muchos pines en Arduino, que no puedo gastar estos preciosos y limitados pines para ellos;) Gracias de nuevo.
su diagrama esquemático muestra que se usan 5 pines de datos ... dos controladores usarían 6 pines de datos ... es posible que pueda usar enableseñales separadas y conectar las dos stepseñales a un pin de datos ... lo mismo para direction... eso sería reduzca el número de pines a 4 pines o incluso a 3 pines
Revisé la hoja de datos... puede conectar los dos pines habilitados a un pin de datos... lo mismo con la dirección... use stepseñales separadas
@jsotola, AFAIK conectar los pines de habilitación hará que todos los motores paso a paso consuman mucha energía (ya que necesito ~ 50 motores paso a paso). También necesita mucho $$$ para ~50 mejores controladores para motores más grandes y no puedo pagarlo por un prototipo (no vivo en un país de altos ingresos y no soy millonario). De acuerdo con mis esquemas y pruebas usando relés, puedo alimentar 50 motores paso a paso usando un solo controlador y usando 50+3 pines de datos en Arduino.
@antwon Su razonamiento para no usar relés mecánicos es que son más caros. Pero está planeando cambiar a motores más grandes. ¿No se volvería irrelevante el precio de los relés (que suelen ser muy baratos) al lado del precio de cada motor a medida que cambia a motores más caros? "Tengo experiencia en programación y nunca antes diseñé un circuito" parece una buena razón para ceñirme a circuitos más simples, en mi opinión.
@RaphaelP, sí, tienes razón. Creo que estaba "optimizando prematuramente" el circuito. Mi otro problema fue que necesito demasiados relés para el trabajo (~100 de ellos), lo que ocupa mucho espacio y es más difícil de mantener (como se ve en los esquemas anteriores). Estaba buscando en Google hace un momento y me di cuenta de que hay un tipo de relé que se llama DPDT. Como acabas de decir, creo que es mejor para mí ir con relés DPDT porque funciona como 2 relés, pero con menos complejidad y también es mucho más fácil para mí. Pero me gusta la ciencia y sería genial saber qué otras opciones hay ;)
Existe una complicación potencial que debe tener en cuenta si necesita mantener una posición precisa entre los movimientos del motor. Ejemplo: configura los relés para el motor 1, mueve el motor 1, cambia los relés para el motor 2 y luego mueve el motor 2. Ahora quiere mover el motor 1 nuevamente, por lo que cambia los relés nuevamente a 1. Pero, el controlador y el motor las fases pueden no coincidir. Es posible que deba moverse unos pasos para volver a sincronizar. Su posición precisa se ha perdido. Deberá decidir si esto es un problema.

Respuestas (1)

Como comenté sobre la pregunta, probablemente esté mejor con los relés convencionales dado que:

  • su costo escala mejor a medida que avanza para motores más grandes/más potentes
  • son menos complicados (ya que dijiste que nunca antes habías diseñado un circuito)

Habiendo dicho eso, si desea seguir el enfoque de estado sólido, entonces probablemente esté apuntando a (MOS) FET por su baja resistencia (R ds (on) ) y baja corriente de activación (ganancia infinita en CC).

Solo hay un problema: los MOSFET de potencia tienen un diodo inherente en su construcción (diodo del cuerpo) que les impide cambiar la corriente en ambos sentidos como lo requiere su controlador de puente H. Para resolver ese problema, debe usar dos de ellos uno al lado del otro. Al hacer eso, se ha convertido en un simple relé de estado sólido (SSR).

Así es como Texas Instruments lo explica en su documento de diseño SSR:

Fuente: http://www.ti.com/lit/ug/tiduc87a/tiduc87a.pdf http://www.ti.com/lit/ug/tiduc87a/tiduc87a.pdf

Parece un buen punto de partida para su búsqueda.