Panama Hitek Logo
Panama Hitek Logo

El puente H: Invirtiendo el sentido de giro de un motor con Arduino

En este post les explicaré cómo funciona y cómo se construye un puente H con algunos transistores NPN.

En artículos anteriores he hablado acerca de los motores:

En dicho post mencioné que para invertir el sentido de giro de un motor hay que cambiarle la polaridad, es decir, cambiar el sentido con el que la corriente pasa a través del motor.

electric_motor_cycle_2

En electrónica esto normalmente se logra con una configuración llamada puente H, la cual les muestro a continuación:

puente-h

Con el interruptor SW1 el usuario decide si el motor gira a la izquierda, a la derecha o si se detiene.

Pero, ¿cómo sucede esto?

Cuando el interruptor está en la posición del centro, no hay voltaje aplicado a los transistores por lo que permanecen en estado de corte.

Recordemos que los transistores se utilizan como interruptores y como dispositivos de control, tal como ya lo he presentado en otros aportes:

Cuando se coloca el interruptor en la primera posición (la superior), el comportamiento de la corriente es el siguiente:

puente-h1

La corriente fluye a través de Q1 y Q4. El motor gira en sentido horario.

Si se cambia de posición el interruptor entonces el motor gira en sentido anti horario.

puente-h2

Para activar los transistores se requieren tensiones muy bajas, lo que hace que podamos remplazar el interruptor por Arduino.

puente-h3

Los diodos en el diseño se han colocado para suprimir las posibles corrientes transitorias que se puedan generar por la acción del motor.

El armado del circuito requiere básicamente de 12 componentes: 4 transistores, 4 resistores y 4 diodos.

2013-08-26-758

Yo usaré para la demostración el transistor C2073 (hoja de datos: http://www.ic72.com/pdf_file/-/c2073.pdf). Si no puede encontrar este modelo y necesita utilizar otro recomiendo consultar este post: El arte de escoger un buen transistor.

Los transistores son rectificadores comunes. El motor es un motor sencillo extraído de un aparato que fue descartado.

En la siguiente imagen se muestra el diagrama pictórico del puente H:

Puente H

El código para Arduino es sencillo. Al enviar el número 1 por el Monitor Serial, el motor girará a la derecha; con un 2 el motor girará a la izquierda y con un 0 el motor se detendrá.

 

puente-h-programacic3b3n

Al cargar este código podremos tener el control total sobre el motor en el puente H.

A continuación, un video con el puente H funcionando:

 

Espero que la información suministrada sea de su agrado. Saludos.

Antony García González
Antony García González
Ingeniero Electromecánico, egresado de la Universidad Tecnológica de Panamá. Miembro fundador de Panama Hitek. Entusiasta de la electrónica y la programación.

Posts relacionados

57 COMENTARIOS

  1. Gracias amigo,,, pero

    cuales son las especificaciones de los materiales…

    Resistencia 11K o 1K… 1/2 o 1/4
    diodos… todos son iguales? que valor?

    Disculpa mis preguntas… soy principiante..

    Gracias de todas formas.

  2. Buenas noches, espero se encuentre muy bien, donde puedo conseguir este tipo de materiales en panama para un proyecto escolar, me encuentro en la ciudad de colon, por favor si me puede ayudar, mi correo es [email protected] y mi numero es 63502817. gracias

  3. No me deja copilar me aparece: Tamaño binario del Sketch: 2,424 bytes (de un máximo de 32,256 bytes)

    ayuda por favor

  4. Lo hice igual que el que se muestra y no me funciona, no gira el el motor cuando lo ordeno en Arduino, necesito ayuda.

  5. Hola buen día, soy novata en esto pero me gusta, estoy en un proyecto y su pagina me a ayudado mucho, cualquier duda, espero puedan apoyarme
    Gracias saludos cordiales.

  6. buenas tardes, quería pedir ayuda, estoy creando una embobina dora necesito poder programar que y hacia la derecha recorra 8 cm en 1 minuto y hacia la izquierda el mismo recorrido, y necesito que con un botón vaya hacia la derecha y con otro hacia la izquierda ¿como seria la configuración en Arduino uno por favor? este es el codigo que tengo y no logro que por medio de los botones cambie de dirección el motor

    #include

    AccelStepper stepper(1,3,2); //use pin 3 para step. 2 para dir;
    int estadoBoton = 12; //pulsador de arranque <>

    void setup()
    {
    stepper.setMaxSpeed(500.0);
    stepper.setAcceleration(3500.0);

    }
    void loop()
    {

    if (digitalRead(estadoBoton) == HIGH)
    {// Está presionado
    stepper.runToNewPosition(-32000);
    }
    else if (digitalRead(estadoBoton1) == HIGH)
    {// Está presionado
    stepper.runToNewPosition(800);

    }

    }

    • Esto lo puedes hacer tu mismo a través de experimentación. Si no tenemos el circuito armado, el que compartas el código no sirve de mucho

  7. Buenas. Uso el bd135, alimento el puente h con 12 v. Trabajo con un micro arm, q entrega 3.3 v de gpio digital. La inversion de tension la hace perfecto, pero me aparece 2.2v en vacio en la bornera de salida donde va conectado el motor. A que se debe esto? Porque hay esa brutal caida? No consigo hacer que funcione, probe alimentando el micro con una fuente externa para que suministre mas corriente en caso de que los transistores no esten saturando, pero es lo mismo.

    • Si cuando están activos los transistores hay una gran caída de voltaje en la salida, esto se debe a que el transistor no está bien polarizado. Usa una resistencia de 100 Ohms o algo similar y se debe corregir el problema

  8. Hola qué tal tengo un motor con transmisión 120v DC a 40 ampers tengo problemas para hacer el cambio de giro me puedes ayudar por favor

    • Necesitas un driver de potencia para eso. Con el circuito que presenté en este post apenas puedes manejar poco más de 1 Amperio sin necesitar disipadores de calor

    • Siempre y cuando sea un transistor NPN y que tenga una corriente de colector superior a la corriente nominal del motor, funcionará

  9. Tengo un consulta, estoy utilizando este mismo circuito para controlar una celda peltier, el puente h lo utilizo para cambiar la polaridad de la celda. El principal problema es que necesito una corriente mayor a la que otorgan los transistores 2N2222, mi pregunta, ¿Es que si podría reemplazar los transistores por unos mosfet para elevar la corriente que entra a la celda después de pasar por el puente H? Espero su respuesta y Opiniones. Buen día/noche.

  10. Hola, tengo conectado un Puente h a unos motores, todo funciona bien, excepto que al oprimir el pulsador y arrancar los motores se entrega el voltaje poco a poco, es decir, para pasar de 5 v a 9 v tarda varios segundos. ¿Hay manera de hacer que entregue los 9v de inicio?

      • Exacto, pero el de 2 Amperios podía controlar un motor mas grande, dependiendo de que motor quieras controlar, se diseña un puente h con diferentes transistores.

    • Cualquier diodo rectificador que soporte la corriente del motor. Normalmente cualquier tipo de diodo de silicio funciona

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

Post relacionados