Generalmente cuando estamos
desarrollando proyectos con microcontroladores nos hemos visto en la
necesidad de controlar actuadores para que generen ciertos movimientos.
Ya sea que requieramos que un pistón neumático se active, o que una
electroválvula deje pasar agua a través de ella o que necesesitemos que
un motor gire para un lado y luego para el otro. Para poder controlar
el movimiento de un motor es necesario construir o comprar una etapa de
potencia, ya que vamos a alimentar al motor con una fuente de poder de
distinto voltaje y los dispositivos de la etapa de potencia van a
manejar corrientes muy superiores a las que pueden manejar los
dispositivos digitales. Esta etapa de potencia debe ser compatible con
niveles TTL (0 ó 5 volts) si es que estamos usando un microprocesador,
una computadora o circuitos lógicos digitales.
El circuito que requerimos es el
llamado "Puente H" y está diseñado para hacer que el motor gire para la
derecha, gire para la izquierda o que se detenga rápidamente. Este
puente funciona de una manera muy sencilla. Pero antes de explicar el
funcionamiento de dicho circuito, hay que describir las condiciones que
debemos de satisfacer para que el motor realice sus funciones, así como
vemos en la tabla siguiente:
Movimiento Requerido
Diferencia de
Potencial en sus terminales
Voltaje en la
Terminal A
Voltaje en la
Terminal B
Gire a la derecha
Positiva (+10v)
10 volts
0 volts
Gire a la izquierda
Negativa (-10v)
0 Volts
10 Volts
Que esté
parado
Cero
0 Volts
0 Volts
10 Volts
10 Volts
Como se ve en la tabla, hay solo tres movimientos
requeridos y cuatro posibles condiciones para reproducir esos
movimientos. Hay que recordar que todos los voltajes son medidos con
respecto a tierra y que para que exista una diferencia de potencial
entre las terminales del motor, debe de haber dos potenciales
diferentes. Por eso es que para parar el motor no debe de existir
diferencia de potencial en sus terminales, pero sí pueden tener
las dos terminales el mismo potencial CON RESPECTO A TIERRA.
Para explicar el principio de funcionamiento del puente
H vamos a suponer que tenemos un motor que se alimenta con una fuente
de 10 volts. Y para hacer que gire a la derecha necesitamos conectar el
positivo de la fuente a la terminal A del motor y el negativo a la
terminal B del motor. Si necesitamos hacer que gire el motor a la
izquierda, habria que conectar el positivo de la fuente al terminal B y
el negativo al A. Pero si quicieramos hacer que se pare el motor
simplemente debemos de conectar los dos terminales a un solo borne de
la fuente. El puente H hace exactamente lo mismo. Y podemos
ejemplificar su funcionamiento en la siguiente figura:
En ella se ve que para que este motor gire en un
sentido se tiene que cerrar los interruptores A y D y para que gire en
otro sentido se tienen que cerrar los interruptores B y C. Y para
pararlo se abren los interruptores C y D o A y B. PERO JAMÁS DEBE DE CERRARSE LOS INTERRUPTORES A
Y C ni BY C por
que causarían un corto circuito en la fuente de alimentación.
Ahora bien, el puente H es un circuito electrónico de potencia y en vez
de usar interruptores o relevadores utiliza transistores especiales que
son llamados de potencia. Ya sean BJTs o FETs los transistores deben de
trabajar en modo de corte y saturación. Como todos recordaremos un
transistor en corte es igual que un interruptor abierto, por que no
deja pasar corriente por sus terminales. Y un transistor en saturación
es como un interruptor cerrado que deja pasar toda la corriente que
circula por la maya y además no consume voltaje. Claro que esto no es
estrictamente cierto refiriendonos a los transistores, por que siempre
van a consumir un pequeño voltaje y que es al rededor de los 0.3 volts.
La ventaja de utilizar transistores en vez de interruptores es que los
podemos controlar con señales electricas de baja potencia y por la que
circulará una corriente minúscula. Así podemos hacer una interfase
entre dispositivos lógicos y dispositivos de potencia. Para que un
puente H funcione y pueda realizar todos los movimientos requeridos de
la tabla anterior, necesita dos señales lógicas que le van a indicar
que movimiento debe hacer el motor. Y en la siguiente tabla
de verdad tenemos descrito el funcionamiento de un Puente H.
SÑ1
SÑ2
A
B
C
D
Comentario
Estado del Motor
0
0
Cerrado
Cerrado
Abierto
Abierto
No hay diferencia de
potencial en el motor
El motor está parado
0
1
Cerrado
Abierto
Abierto
Cerrado
Existe diferenica de
potencial (+) en A y (-) en D
El motor gira para la
izquierda
1
0
Abierto
Cerrado
Cerrado
Abierto
Existe diferencia de
potencial (+) en B y (-) en C
El motor gira para la
derecha
1
1
Abierto
Abierto
Cerrado
Cerrado
No hay diferencia de
potencial en el motor
El Motor está parado
Como podemos ver en la tabla de
verdad anterior el interruptor A se activa cuando la señal SÑ1 esta
activa y el interruptor C se activa cuando la señal SÑ1 está en cero.
En otras palabras el interruptor A es activado por la señal SÑ1 y el
interruptor A es activado por la negación de la señal SÑ1.
A=SÑ1
B=SÑ2 C=Neg(SÑ1) D=Neg(SÑ2)
Teniendo en cuenta las ecuaciones
anteriores podemos observar que el puente H consta de dos partes. La
parte que está controlada por la señal SÑ1 y la parte controlada por la
señal SÑ2. Y que las dos partes son exactamente iguales. Por tanto si
analizamos una mitad del puente H habremos entendido bien su
funcionamiento.
Entonces vamos a analizar el puente H
en la mitad que es controlada por la señal SÑ1 y que está formada por
los interruptores A y C. Vamos a substituir los interruptores por
transistores que funcionen en corte y saturación. Así hemos remplazado
el interruptor A por el transistor QA y el interruptor C por el
transistor QC. Hay que recordar que donde tenemos el riesgo de hacer un
corto circuito, es si abrimos los interruptores A y B al mismo tiempo.
Y para que esto nunca pase se le añadió un transistor QI1 que tiene la
función de invertir la señal de entrada (SÑ1). Así jamás entraran en
saturación los dos transistores al mismo tiempo y aseguramos el buen
funcionamiento del circuito. Vease la figura a continuación:
Empecemos nuestro analisis por definir
nuestras entradas y nuestras salidas. La entrada está dado por la
fuente de poder de 5v SÑ1, que simula la salida digital de nuestro
microprocesador o dispositivo de control TTL. Y la salida es el punto
donde están conectados los dos colectores de los transistores QA y QB
(ver figura siguiente).
La señal de entrada SÑ1, que está
representada por la fuente poder de la izquierda, tiene la
característica de que va a simular los valores TTL. Que son 5 volts
para un uno lógico y 0 volts para un cero lógico. Esta señal se va a
conectar a un optoacoplador 4N25 y la cual hará circular una corriente
a través del diodo emisor de luz que tiene integrado el optoacoplador y
activará el fototransistor del mismo integrado. Hay que recalcar que lo
que se está consiguiendo con este optoacoplador es aislar
electricamente a estos dos circuitos. El digital que solamente activara
al optoacoplador y el puente H que maneja la potencia y los ruidos
generados por el motor.
Para no dañar el
optoacoplador 4N25, el fabricante recomienda que por el LED no se haga
circular una corrient mayor a 60mA y también nos dice que el LED
consume un voltaje de 1.15 Volts. Para limitar la corriente que circula
sobre el LED se debe de poner una resistencia en su catodo y
aterrizarla a tierra como se muestra en la figura. Si le ponemos una
resistencia de 330 ohms verificamos que se cumplen las recomendaciones
del fabricante:
Y si se fijan el resultado de la simulación
(imagen de la izquierda) son los mismos 11.6 mA que nos dieron en el
cálculo que hicimos. Ahora bien, cuando el LED es polarizado emite
fotones en la base del transistor y hace que el transistor entre en
saturación y que el voltaje de emisor a colector sea practicamente
cero. Así como lo demuestra la simulación (ver imágen de la izquierda),
en donde el transistor está consumiendo 10-9.674=0.327volts. Cuando el
transistor entra en saturación permite que casi la totalidad del
voltaje de la fuente de 10v sea aplicado directamente a la resistencia
del emisor con lo cual podemos calcular que existe una corriente de
10/250=40mA (V/R). Muy parecido a lo que sale en la simulación (imagen
de la derecha).
Ahora bien,
usted se estará preguntando ¿y de donde salio esa resistencia de 250
Ohms? ¿Por que se escogió ese valor? Ah pues la respuesta es por que
esa corriente de 40mA la necesitaremos para polarizar el transistor QA
el cual necesitamos que pase una corriente máxima de 4 Amps. y
estimamos que su beta es de 100 lo que nos da el requerimiento de tener
una corriente de base de (Ic/Beta = 4/100 = 40mA). En resumen, el valor
de la resistencia de emisor del optoacoplador está dado por la
siguiente fórmula:
Cuando el valor de la señal de entrada
(SÑ1) es cero (cero volts) el LED no se polariza y no induce una
corriente en el transistor del optoacoplador. Por tanto entrará en
corte, no circulará ninguna corriente a través del mismo y no se
polarizará el transistor QA. Cuando el transistor QA no es polarizado
entra en corte y no permite el paso de corriente y será el equivalente
a un interruptor abierto.
Para que el puente H funcione correctamente
hay que hacer que el transistor QC entre en saturación cuando la señal
SÑ1 sea cero. Para eso hay que invertir esa señal con el transistor
QI1. El transistor Q1 está en configuración emisor común y la
característica especial de esa señal es que invierte la señal. La
resistencia de base de ese transistor debe tener un valor mayor que la
resistencia del optoacoplador para que cuando el transistor del
optoacoplador entre en saturación no pase demasiada corriente por él.
Solo hay que cuidar que la corriente de base del QI1 no sea tan pequeña
como para que el transistor no se sature. Si ponemos una
resistencia de 1K el sistema funciona muy bien.
Enseguida hay que acoplar el transistor QC
a la salida del transistor QI1. Para ello hay que interconectar la base
del transistor QC al colector del QI1 por medio de una resistencia. Hay
que considerar que el transistor QC se polariza cuando el transistor
QI1 está en corte y pasa la corriente a través de la resistencia del
colector del transistor QI1 (150 ohms) y por la resistencia de base del
QC (100 ohms) y son los que nos van a dar la corriente de base. Para
obtener los valores de las resistencias hay que tomar en cuenta
la siguiente equación y después se fijan los valores arbitrariamente.
Tenga en cuenta que entre mayor sea la resistencia de colector del
transistor QI1 menor será la corriente de base necesaria para saturar
el transistor.
Y ahora vamos a ver el resultado en la simulación.
Cuando la señal de entrada SÑ1 vale un uno (5v) en la salida tenemos
aproximadamente 10v
Cuando la señal de entrada SÑ1 vale cero
(0v) en la salida tenemos cero volts.
Una vez que ya tenemos la mitad del puente
H funcionando. Lo único que queda hacer es la otra mitad. Exactamente
igual pero en espejo. Así como se muestra a continuación:
Y ahora vamos a presentar el resultado de la simulación cuando SÑ1=0 y
SÑ2=0 y como podemos ver la salida es 0 volts. La simulación se hizo
utilizando Circuit Maker 5. Si quieren comprobar el resultado pueden
bajar el archivo pulsando aquí
Ahora
cuando SÑ1=0 y SÑ2=1 y la salida es aproximadamente 10 volts negativos
Ahora
cuando SÑ1=1 y SÑ2=0 y vemos que tenemos casi 10 volts positivos
Ahora cuando SÑ1=1 y SÑ2=1 vemos que
tenemos cero volts
Y después se realizó el siguiente
circuito en un protoboard y funcionó a la perfección. Se controló el
paro marcha y sentido de giro de varios motores de 12 volts y los
transistores no presentaron calentamiento. Se forzó a los motores a
operar con el rotor bloqueado, haciendo que circule una corriente
mucho mayor por los transistores y tampoco hubo calentamiento excesivo.
De hecho después de 10 minutos apenas se percibió un ligero
calentamiento en el transistor QB.
Y
todo iba de maravilla hasta que interconectamos el puente H con el
microprocesador. Al hacer funcionar el motor libremente se percibia un
ligero calentamiento en el transistor QB. Cuando se hizo trabajar con
el rotor bloqueado, el transitor QB se calentó a tal grado que quemaba
los dedos al tocarlo, y los demás transitores se calentaban
excesivamente. Despúes de tres minutos el protoboard entero olia a
transitores a punto de ser quemados.
Al
principio no supimos bien que es lo que habia pasado. Pero después de
atacar variable por variable vimos que el microprosesador estaba
entregando un voltaje de 2.5v para un 1 lógico, y nosotros
necesitabamos cinco. Después añadimos un buffer 75LS245 y no hubo gran
diferencia. Pues en vez de dar 2.5v ahora daba entre 2.8v y 3v. Se
hicieron varios ajustes: como cambiar la resistencia del diodo del
optoacoplador, o cambiar la resistencia de emisor del optoacoplador,
pero ningun ajuste funcionó bien. y tuvimos que agregar un
transistor a la entrada del optoacoplador para que operara en corte y
saturación y obtuvieramos valores cercanos a los 5v. Así como se
muestra en el diagrama. Puesto que este transistor solamente iba a
asegurar el tener un voltaje cercano a 5v en la entrada del
optoacoplador, decidimos utilizar un transistor BC457 que es un
transistor PNP de baja señal y muy barato (2 pesos a menudeo y 30
centavos a mayoreo) y entonces el circuito quedó de la siguiente
manera:
Despúes de haber probado el circuito y de estar seguro que funcina
correctamente hay que agregarle cuatro diodos de protección. Puesto que
un motor está formado por bobinados ó inductores que cuando se les
corta la corriente generan grandes picos de voltaje que pueden destruir
los transistores del circuito. Los diodos deben de quedar de la
siguiente manera. Tenga mucho cuidado de ponerlos tal y como se indica
en la siguiente figura y si los ponen al revés harán un gran corto
circuito.
Ahora que ya saben como
funciona un puente H pueden hacer el suyo o bien comprar uno ya hecho
en forma de circuito integrado. SGS-Thompson Microelectrónics
farbrica integrados con puente H integrados como el L293 y el L292. Que
en verdad son muy buenos, aunque hay que tener cuidado por que su parte
de potencia no están aisalada electricamente como el nuestro y cuando
se maneja PWM y se hacen pasar corrientes cercanas a la máxima puede
dejar pasar el alto voltaje al microcontrolador y quemarlo. Esto lo
digo por experiencia, puesto que ya se me quemó uno de esa manera.
También hay que cuidar la frecuencia máxima de PWM.
MUESTRA:
A continuación se muestra el Puente H
contruido en acción. Está polarizando el rotor de un motor lineal
a pasos: