Elemento de circuito correcto alternativo a los transistores

1

Primero, vea mi archivo de Proteus para entender qué estoy tratando de hacer. enlace

Como puede ver, hay 5 grupos de botones verticales y 5 grupos de botones horizontales. Cada grupo de botones tiene 4 botones. Supongamos que cada grupo de botones verticales está firmado como A, B, C, D, E y los horizontales son 1,2,3,4,5

Entonces, cuando quiero ejecutar el paso a paso en A1, estoy configurando los botones pulsados en A y 1 También puedo ejecutar varios pasos de pasos, simplemente puedo configurar los grupos de botones pulsados en horizontal y vertical, y luego los pasos de paso simultáneos comenzarán a ejecutarse.

Este sistema funciona bien si configuro los botones manualmente. Pero no quiero usar botones y no quiero ejecutarlos manualmente.

Luego he probado este tipo de diseño,

Como puede ver, quité los botones y coloqué los transistores. También hay un transistor que dispara los otros. Puedo enviar 3.3v a la base de Q5 y hacer que todos los transitores funcionen.

Pero, mi problema comienza aquí. Cuando establezco la votación en la base Q5, este voltaje fluye en todos los transistores desde la base hasta el emisor, pero como saben, los controladores de los motores paso a paso generan voltaje en una secuencia. El voltaje de flujo desde la base hasta el emisor corrompe el voltaje que proviene del controlador paso a paso.

Mejor manera de usar un relé, está aislado entre Vires, pero no funciona rápido.

¿Cuál es la mejor solución? Necesito un elemento que funcione tan rápido como los transitores y aislado como un relé.

Gracias a todos.

    
pregunta fobus

2 respuestas

1

Si entiendo lo que necesita, puede hacer algo tan simple como esto:

simular este circuito : esquema creado usando CircuitLab

Las señales Vx y Hx son las entradas del Arduino que indican que el motor vertical y horizontal debe estar habilitado. Las señales phi0 - phi3 son las señales de control provenientes del controlador paso a paso. Las señales dr0 - dr3 son las salidas a los 4 transistores de accionamiento para el motor.

No necesita un "interruptor" separado para cada una de las cuatro fases. Un solo interruptor (AND1) puede controlar habilitando las 4 fases.

Y, por lo que puedo ver, no necesita el "aislamiento como un relé" (aislamiento galvánico). Solo necesita el aislamiento de la señal entre los dos conjuntos de entradas.

    
respondido por el The Photon
0

Con su disposición actual está usando 40 interruptores para controlar 25 motores. Si tuviera que habilitar cada motor con un par de líneas XY, podría reducirlo a 10 interruptores (o 10 líneas de E / S) configurados en una matriz de 5x5. Sin embargo, si desea utilizar líneas de E / S de su controlador PIC actual, parece que solo tiene 6 líneas de repuesto. Necesita una forma de expandirlas a las 10 líneas requeridas (o 25 líneas). Un registro de desplazamiento bien controlado puede lograr esto.

Al usar dos chips 74HC4094 (o CD4094), los chips Shift Register podrían controlar 10 líneas (o hasta 16 líneas) con solo 4 líneas de E / S. Pero al usar cuatro de estos chips, usted podría controlar individualmente cada uno de los 25 motores (o hasta 32) con las mismas líneas 4-I / O. En realidad, podría expandir esto aún más en cascada aún más chips.

Para cargar el registro de desplazamiento con los datos de habilitación del motor: (si se usan 25 líneas de habilitación separadas)
Comience con CLOCK, DATA, STROBE y OUT_ENABLE low.
Envíe 25 bits de datos y 25 pulsos de reloj a las líneas DATA y CLOCK,
Pulsa el pin STROBE,
Establecer OUT_ENABLE alto.
Los 25 bits de datos se envían a las 25 líneas de control del motor, (Mx_EN).
(Nota: consulte la hoja de datos 74HC4094 o CD4049 para estar seguro de las direcciones del pulso).

enlace

enlace

Debido a que el chip utiliza dos conjuntos de registros internos, es posible que los motores funcionen mientras está enviando nuevos datos para cambiar la disposición del motor. La línea OUT_ENABLE podría usarse para deshabilitar todos los motores a la vez. Si tiene cuidado con la sincronización del motor, es posible que pueda cambiar la disposición del motor en marcha sobre la marcha dejando el valor OUT_ENABLE alto y luego pulsando el pin STROBE para enviar inmediatamente los nuevos datos del motor.

simular este circuito : esquema creado usando CircuitLab

En este formato, cada chip de registro de desplazamiento adicional puede controlar la entrada habilitada de 8 motores.

Si necesita algún tipo de aislamiento completo, puede colocar optoacopladores en las líneas de E / S que vienen del controlador o en cada subgrupo de motores.

    
respondido por el Nedd

Lea otras preguntas en las etiquetas