Puente H 1: Construyendo un controlador de motor puente H en una placa de pruebas utilizando transistores Darlington TIP120 y TIP125
Este tutorial te guiará en la construcción de un controlador de motor H-bridge utilizando transistores Darlington TIP120 y TIP125 en una placa de pruebas. Esta configuración es ideal para controlar la dirección y la velocidad de un motor de corriente continua, lo cual es esencial para varios proyectos de robótica y automatización. Al final de este tutorial, podrás controlar un motor con rotaciones tanto en sentido horario como antihorario, junto con la modulación de la velocidad.
En esta guía, utilizaremos un Arduino para controlar el motor. La configuración en H permite invertir la dirección del motor al controlar las señales de entrada enviadas a los transistores. Este es un aspecto crucial para muchas aplicaciones, como brazos robóticos o robots móviles que requieren un control preciso del motor. Para más aclaraciones, consulte el video (en el video a las 00:00).
Hardware Explicado
Los componentes principales de este proyecto incluyen los transistores TIP120 y TIP125, que se utilizan como interruptores para controlar el funcionamiento del motor. El TIP120 es un transistor Darlington NPN, y el TIP125 es un transistor Darlington PNP. Juntos, forman la configuración de puente H, lo que nos permite controlar la dirección de la corriente que fluye a través del motor.
En esta configuración, la señal PWM (Modulación por Ancho de Pulso) se utiliza para controlar la velocidad del motor. Los transistores se encienden y apagan rápidamente para crear un voltaje promedio que determina la velocidad del motor. Los pines EN habilitan o deshabilitan los transistores, asegurando que el motor funcione solo cuando sea necesario.
Detalles de la hoja de datos
| Fabricante | Texas Instruments |
|---|---|
| Número de parte | TIP120 |
| Voltaje de lógica/IO | 5-15 V |
| Tensión de alimentación | 60 V |
| Corriente de salida (por canal) | 5 A |
| Corriente de pico (por canal) | 30 A |
| Orientación sobre la frecuencia PWM | 1 kHz máx |
| Umbrales de lógica de entrada | 2.5 V (alto), 0.8 V (bajo) |
| Caída de tensión / RDS(on)/ saturación | 1.2 V |
| Límites térmicos | 175 °C |
| Paquete | TO-220 |
| Notas / variantes | Disponible como TIP125 |
- Asegúrese de un adecuado disipador de calor para aplicaciones de alta corriente.
- Utiliza señales PWM para controlar la velocidad del motor de manera efectiva.
- Verifique la orientación del transistor para evitar daños en el circuito.
- Presta atención a las clasificaciones de voltaje para evitar exceder los límites.
- Utiliza capacitores de desacoplamiento para estabilizar el suministro de voltaje.
Instrucciones de cableado

Para cablear el controlador de motor H-bridge, primero conecta el pin VCC del TIP120 y TIP125 a la fuente de 5V en tu Arduino. Conecta el pin GND a tierra. Los pines de control PWM,PWM1yPWM2, deben estar conectados a los pines digitales 9 y 3 en el Arduino, respectivamente. Los pines de habilitación,EN1yEN2se conectará a los pines digitales 8 y 2.
A continuación, conecta los terminales de tu motor a los pines del colector de los transistores TIP120 y TIP125. Asegúrate de que el motor sea compatible con tu fuente de alimentación. Si utilizas componentes adicionales como diodos para protección contra retroalimentación, colócalos en paralelo con los terminales del motor para evitar daños por EMF inverso. Si estás utilizando diferentes modelos de Arduino, verifica los mapeos de pines para las señales PWM y de habilitación.
Ejemplos de código y guía paso a paso
const int PWM1= 9; //pin with ~
const int EN1= 8;
const int PWM2= 3; //pin with ~
const int EN2= 2;
En la configuración, definimos los pines de control para las señales PWM y los pines de habilitación. ElpinModela función establece estos pines como salida para controlar los transistores que impulsan el motor.
void loop() {
Motor(CW, 50); //in CW at 50% speed
delay(5000);
stop(); // stops the motor
delay(2000);
}
Esta función de bucle demuestra el funcionamiento del motor. Primero hace funcionar el motor en dirección horaria a un 50% de velocidad durante 5 segundos, luego se detiene durante 2 segundos.Motorla función se llama con parámetros de dirección y velocidad, controlando el comportamiento del motor en función de esas entradas.
void Motor(boolean direction, int speed=0) {
int speedPWM = map(speed, 0, 100, 0, 255);
if(direction) {
analogWrite(PWM1, speedPWM); // Set speed for CW
} else {
analogWrite(PWM2, speedPWM); // Set speed for CCW
}
}
ElMotorla función toma una dirección booleana y una velocidad entera. Mapea el porcentaje de velocidad a un valor PWM y utilizaanalogWritepara establecer el pin apropiado para el control del motor. Esta función es crucial para alterar la dirección y la velocidad del motor de manera dinámica.
Demostración / Qué Esperar
Al completar el cableado y cargar el código, deberías observar el motor girando en el sentido de las agujas del reloj a un 50% de velocidad durante 5 segundos, seguido de una parada. Después de un retraso, girará en sentido contrario a las agujas del reloj a un 80% de velocidad durante otros 5 segundos. Errores comunes incluyen un cableado incorrecto y exceder las calificaciones de voltaje, lo que puede dañar los transistores o el motor.
Marcas de tiempo del video
- 00:00- Introducción
- 01:30- Visión general del hardware
- 03:15- Instrucciones de cableado
- 05:00- Recorrido del código
- 08:45- Demostración
Recursos y referencias
-
Externo
-
Externo
-
Externo
-
Externo
Archivos📁
Otros archivos
-
H-Bridge-TIP120-TIP125 Gerber file for PCBXIncludes H-Bridge-TIP120-TIP125.zip, H-Bridge-TIP120-TIP125-BOM.xls and H-Bridge-TIP120-TIP125-coor.xls files to place order easily.
application/zip0.05 MB