El puente H es un circuito electrónico que permite a un motor eléctrico DC girar en ambos sentidos, avanzar y retrocerder.
Los puentes H ya vienen hechos en algunos circuitos integrados, pero también se pueden construir a partir de componentes eléctricos y/o electronicos.
¿Cómo funciona?
Un puente H se construye con 4 interruptores (mécanicos o mediante transistores). Cuandos los interruptores S1 y S4 están cerrados ( S2 y S3 abiertos ) se aplica una tensión haciendo girar el motor en un sentido. Abriendo los interruptores S1 y S4 ( cerrando S2 y S3 ), el voltaje se invierte, permitiendo el giro en sentido inverso del motor.
Un puente H no solo se usa para invertir el giro de un motor, también se puede usar para frenarlo de manera brusca, al hacer un corto entre los bornes del motor, o incluso puede usarse para permitir que el motor frene bajo su propia inercia, cuando desconectamos el motor de la fuente que lo alimenta.
básicamente se puede hacer esto tomando en cuenta la siguiente tabla.
La forma más común de hacer un puente H es usando interruptores de estado sólido ( son llamados transistores ), puesto que sus tiempos de vida y frecuencias de conmutación son mucho más altas. En convertidores de potencia es impensable usar interruptores mecánicos, dado sus especificaciones tan embonables a los requerimientos.
Además los interruptores se acompañan de diodos que permitan a las corrientes circular en sentido inverso al previsto cada vez que se conmute la tensión puesto que el motor está compuesto por bobinados que durante varios períodos de tiempo se opondrán a que la corriente varié.
Puente H con transistores TIP31
2 transistores 2N2222 que son los que conmutaran las salidas.
4 transistores TIP31 los cuales actuaran como interruptores.
4 Diodos rectificadores para crear un puente de diodos a manera que limpien la señal analógica y se pueda usar el motor de corriente directa.
Puente H con integrado L293B
En Electrónica reciclada tambien solemos utilizar el Circuito integrado L293B.
Este circuito integrado nos permite controlar dos motores en simultaneo. El motor M1 esta conectado a los Pines 3 y 6 y el motor M2 a los pines 11 y 14, como se ilustra en la figura.
El pin 16 corresponde a la alimentación propia del integrado, 5V, el Pin 16 deberá estar conectado a la tensión que alimentara los motores, puede variar en el rango de (5 a 36) V.
Es importante tener en cuenta que este integrado se alimenta con dos niveles de tensión diferente, uno corresponde a la alimentación propia de integrado, que no debe ser superior a 7V(VSS) y otra es la tensión con la que alimentaremos los motores, pudiendo en este último hacerlo con hasta 36V(VC).
Puente H con Arduino+BTS7960
En Electronica Orense solemos utilizar la convinación de un arduino con el driver BTS7960 para controlar motores de potencia, con una corriente de 43A.
Los drivers basados el BTS7960 son drivers para controlar motores de corriente continua de alta potencia, capaces de proporcionar hasta 43A de corriente a una tensión de alimentación de entre 6 a 27V.
La lógica del driver funciona con voltajes de 3.3V a 5V por lo cual es compatible con la mayoría de microprocesadores. Además, admiten realizar el control de la velocidad del motor mediante PWM con una frecuencia máxima de 25 kHz.
El BTS7960 incorpora mecanismos de protección contra cortocircuito, sobre/infra voltaje, y sobre temperatura. También dispone de dos pines que permiten medir la corriente entregada por el driver.
El BTS7960 es un buen controlador que puede gestionar una gran cantidad de motores, incluidos los de gran potencia. No obstante, recordar tener precaución a la hora de controlar elevadas cargas y corrientes eléctricas.
Estos drivers emplean dos circuitos integrados BTS7960, un medio puente H de la familia NovalithIC. Sumando ambos integrados se configura un puente H completo.
El BTS7960 incorpora un transistor MOSFET Canal-p para la parte alta del medio puente, y un MOSFET Canal-N para la parte baja. Además de los dos MOSFET, cada BTS7960 incorpora un IC que realiza las funcionas lógicas, diagnosis, protección, se sensado de corriente.
Los drivers basados en el BTS7960 incorporan un 7HC244, un buffer tri-estado de 8 canales, como protección de protección adicional para el microcontrolador.
La conexión de un driver con BTS7960 es sencilla. Por un lado, conectamos la alimentación lógica del driver a 0 y 5V.
Para el control, únicamente necesitamos 3 salidas digitales. Una de ellas controlará la activación de los puentes, y las otras dos la velocidad de giro.
Finalmente, conectamos la fuente de alimentación que proporcionará corriente al motor y el motor mediante los bornes existentes en el driver.
La conexión, vista desde Arduino, sería la siguiente.
El uso del driver BTS7960 en el entorno de Arduino es muy sencillo con la librería Arduino BTS7960.
El ejemplo de la librería muestra cómo controlar el driver con una señal PWM.
#include "BTS7960.h"
const uint8_t EN = 8;
const uint8_t L_PWM = 9;
const uint8_t R_PWM = 10;
BTS7960 motorController(EN, L_PWM, R_PWM);
void setup() { }
void loop() {
motorController.Enable();
for(int speed = 0 ; speed < 255; speed+=10) {
motorController.TurnLeft(speed); delay(100);
}
motorController.Stop();
for(int speed = 255 ; speed > 0; speed-=10) {
motorController.TurnLeft(speed);
delay(100);
}
motorController.Stop();
motorController.Disable();
delay(5000);
}