Diseño de los drivers de control

**Inicio**

En esta sección vas a poder encontrar el detalle de los drivers de control. Los mismos están realizados con componentes baratos y de fácil adquisición, tales como la registro de 4 bits 74LS194, el puente H L293D y el array ULN2003. Podés proponer tus propios diseños y aportar al proyecto.

## ¿Qué es un driver?

Un driver es la parte electrónica de una máquina CNC encargada de la parte de potencia, es decir, de los motores que mueven los diferentes ejes de la máquina. Los drivers no suelen recibir órdenes directas de una computadora, sino que antes se debe traducir la información en coordenadas enviada por esta en algún tipo de intérprete que permita indicarle a los drivers cuantos pasos deben moverse los motores a partir de las coordenadas enviadas (este trabajo lo realiza en nuestro caso una placa Arduino programada para tal fin).

Un driver puede estar formado simplemente por un conjunto de transistores (por ejemplo, encapsulados en un integrado como el ULN2003) que activen las bobinas de un motor paso a paso de forma secuencial según la información que envíe la placa de control para cada bobinado, o bien puede realizar la secuencia de giro del motor a partir de un integrado que realice esta operación según la cantidad de pulsos enviados y un pin 'testigo' que indique el sentido de giro (como en el integrado L297). Los drivers se diseñan en función del tipo de motor que comandarán. Mientras que en las versiones comerciales encontramos principalmente drivers para motores paso a paso bipolares (4 cables), con una etapa de potencia conocida como puente H, lo cierto es que los motores bipolares que se comercializan normalmente se encuentran sobredimensionados para proyectos de investigación y aprendizaje, y presentan un costo muy alto. Por otra parte, los motores unipolares (5 o 6 cables) pueden encontrarse fácilmente en impresoras y scanners obsoletos y también en formatos comerciales de bajo costo como el 28BYJ48, pero no suelen encontrarse drivers comerciales dedicados para este tipo de motores. Hay que recordar que un motor unipolar de 6 cables puede usarse con un driver bipolar, dejando las tomas medias de los bobinados sin conectar.

## Sobre los drivers...

¿Por qué armar estos drivers, cuando es posible conseguir otros drivers comerciales de mayores prestaciones? Si bien en primera instancia parecería más sencillo comprar un driver comercial - como el Pololu A4988 - o emplear circuitos integrados especiales como el L297, lo cierto es que el motivo fundamental radica en el coste de los mismos.

Dado que el proyecto MECAA surge como una iniciativa que busca acercar la tecnología de control numérico al ámbito educativo traspasando barreras adquisitivas, la elección y el diseño de un driver basado en partes genéricas y fácilmente conseguibles permite acercarse sin incurrir en grandes gastos o partes inconseguibles. Por otra parte, los drivers comcerciales existentes sólo sirven para motores bipolares (2 bobinados), mientras que el proyecto MECAA propone la creación de dos drivers: uno para motores bipolares y otro para motores unipolares. Esto es una gran ventaja, porque muchos docentes, estudiantes y makers no puden conseguir motores industriales dado su alto coste, con lo que utilizan motores unipolares rescatados de impresoras y scanners. De esta forma se favorece la reutilización.

Los drivers basados en la compuerta 74LS194 son compatibles con el proyecto grbl, dado que se manejan con dos pines: dirección y pulso. Este integrado es un registro de cambios de 4 bits que, configurado de la forma correcta, puede alternar la secuencia de activación de hasta 4 salidas. Mediante un pulso de reloj en el pin 11, es posible desplazar el registro de a una entrada a la vez, mientras que con alternando los estados de los pines 9 y 10, es posible alternar el sentido de giro. A partir de ahi, es posible configurar la compuerta para realizar la secuencia de conmutación para motores unipolares (en cuyo caso puede usarse un transistor por cada salida, sean individuales o encapsulados como el ULN2003 o ULN2803), o bipolares (empleando un puente H L293D o L298). Para invertir el sentido de giro, es necesario que uno de los pines de control esté en bajo mientras el otro está en alto y viceversa. Por eso, se utilizan inversores Schmitt como la 40106.

**Debido a que no poseen control de corriente, no se recomienda el empleo de voltajes mayores a los 12V y 1A en la etapa de potencia de estos drivers. En aquellos puentes H que tengan funcion Enable para cada bobinado, sería posible activar los mismos en función de la señal de reloj o algún sistema temporizador.**

Ventajas del sistema de 'dos pines' (en las versiones comerciales usa más pines para activar o desactivar el sistema ) por sobre el sistema basado en ULN2003:

* Control con dos pines: Menos salidas ocupadas en la placa de control.
* Compatibilidad con el proyecto grbl.

En las placas desarrolladas con el registro de cambios, la alimentación de la parte lógica proviene de la placa Arduino, al igual que las dos señales de control (STEP y DIR).

## Driver con ULN2003 (conmutación de bobinas en firmware)

Es el driver más común y barato, incluso puede conseguirse la placa armada junto con un motor en forma de kit, a muy bajo costo.

Las primeras versiones del firmware se pensaron para este sistema, y activan las bobinas directamente. Debido a la simplicidad del esquema, normalmente este driver se emplea para realizar ensayos preliminares, normalmente en una protoboard.

## Driver bipolar con 74LS194 y L293D

Lista de materiales:

1. *74LS194 x1*
2. *CD40106*
3. *L293D*
4. *Borneras dobles x 3*
5. *Placa impresa 77x40mm*
6. *Capacitores 100nF x 1*
7. *Capacitores 100uF x2*
8. *Conector regleta simple.*
9. *Cables para puente.*

*Para ambos drivers basados en el registro de 4 bits, la regleta de 4 pines colocada en el extremo inferior izquierdo de cada placa, vista desde arriba, y de izquierda a derecha, corresponden a:*

* Pin 1- 5V Arduino
* Pin 2- GND
* Pin 3 Step (tren de pulsos)
* Pin 4 Dirección

Cada driver posee una salida auxiliar (regleta de 6 pines). Las borneras corresponden a los bobinados del motor y la alimentación de la etapa de potencia del motor (se recomienda no pasar los 12V 500mA)

## Driver unipolar con 74LS194 y ULN2003

Lista de materiales:

1. 74LS194 x1
2. CD40106
3. ULN2003
4. Borneras triples x2
5. Bornera doble
6. Placa impresa 70x40mm
7. Capacitores 100nF x 1
8. Capacitores 100uF x2
9. Conector regleta simple.
10. Cables para puente.