- Componentes requeridos:
- Diagrama de circuito y explicaciones:
- Cálculos actuales:
- Funcionamiento del motor bidireccional controlado por Arduino:
En este proyecto controlamos la dirección y velocidad de un motor de alta corriente de 24v usando Arduino y dos relés. No se necesitan interruptores de energía para este circuito, solo dos botones y un potenciómetro para controlar la dirección y velocidad del motor de CC. Un botón hará girar el motor en el sentido de las agujas del reloj y otro lo hará girar en el sentido contrario a las agujas del reloj. Se requiere un MOSFET de canal n para controlar la velocidad del motor. Los relés se utilizan para cambiar las direcciones del motor. Se parece al circuito H-Bridge.
Componentes requeridos:
- Arduino Uno
- Dos relés de 12v (también se puede utilizar un relé de 5v)
- Dos transistores; BC547
- Dos pulsadores
- IRF540N
- Resistencia de 10k
- Fuente de 24 voltios
- Potenciómetro 10K
- Tres diodos 1N4007
- Cables de conexión
Diagrama de circuito y explicaciones:
El diagrama de circuito de este proyecto de control de motor bidireccional se muestra en la imagen siguiente. Realice las conexiones de acuerdo con él:
- Conecte el terminal normalmente cerrado de ambos relés al terminal positivo de la batería.
- Conecte el terminal normalmente abierto de ambos relés al terminal de drenaje del MOSFET.
- Conecte la fuente de MOSFET al terminal negativo de la batería y al pin de tierra de Arduino UNO.
- Terminal de puerta al pin 6 de PWM de Arduino.
- Conecte la resistencia de 10k de la puerta a la fuente y el diodo 1N4007 de la fuente al drenaje.
- Conecte el motor entre el terminal central de relés.
- De los dos terminales restantes, uno va al pin Vin de Arduino Uno y el otro al terminal colector del transistor (para cada relé).
- Conecte el terminal emisor de ambos transistores al pin GND de Arduino.
- Los pines digitales 2 y 3 de Arduino, cada uno en serie con pulsador, van a la base de los transistores.
- Conecte el diodo a través del relé exactamente como se muestra en la figura.
- Conecte el terminal del potenciómetro al pin 5v y al pin Gnd de Arduino respectivamente. Y terminal de limpiaparabrisas al pin A0.
- ** si tiene dos baterías de 12 V separadas, conecte el terminal positivo de una batería al terminal negativo de otra batería y use los dos terminales restantes como positivo y negativo.
Propósito de los transistores:
los pines digitales de Arduino no pueden suministrar la cantidad de corriente necesaria para encender un relé normal de 5v. Además estamos usando relé de 12v en este proyecto. Vin pin de Arduino no puede suministrar fácilmente tanta corriente para ambos relés. Por lo tanto, los transistores se utilizan para conducir la corriente desde el pin Vin de Arduino al relé que se controla mediante un botón conectado desde el pin digital al terminal base del transistor.
Propósito de Arduino:
- Para proporcionar la cantidad de corriente necesaria para encender el relé.
- Para encender el transistor.
- Para controlar la velocidad de los motores de CC con potenciómetro mediante programación. Verifique el Código Arduino completo al final.
Propósito de MOSFET:
Se requiere MOSFET para controlar la velocidad del motor. El MOSFET se enciende y apaga a un voltaje de alta frecuencia y dado que el motor está conectado en serie con el drenaje del MOSFET, el valor de voltaje PWM determina la velocidad del motor.
Cálculos actuales:
La resistencia de la bobina del relé se mide con un multímetro que resulta ser = 400 ohmios
Vin pin de Arduino da = 12v
Entonces, la corriente necesita encender el relé = 12/400 Amps = 30 mA
Si ambos relés están energizados, corriente = 30 * 2 = 60 mA
** Vin pin de Arduino puede suministrar corriente máxima = 200mA.
Por lo tanto, no hay un problema de sobre corriente en Arduino.
Funcionamiento del motor bidireccional controlado por Arduino:
El funcionamiento de este circuito de control de motor de 2 vías es sencillo. Ambos pines (2, 3) de Arduino permanecerán siempre altos.
Cuando no se presiona ningún botón:
En este caso, no fluye corriente a la base del transistor, por lo tanto, el transistor permanece apagado (actúa como un interruptor abierto) debido a que no fluye corriente a la bobina del relé desde el pin Vin de Arduino.
Cuando se presiona un botón:
En este caso, algo de corriente fluye a la base del transistor a través del botón pulsador que lo enciende. Ahora la corriente fluye fácilmente a la bobina del relé desde el pin Vin a través de este transistor que enciende este relé (RELÉ A) y el interruptor de este relé se coloca en la posición NO. Mientras el otro relé (RELÉ B) todavía está en posición NC. Entonces, la corriente fluye desde el terminal positivo de la batería al terminal negativo a través del motor, es decir, la corriente fluye del relé A al relé B. Esto provoca la rotación del motor en el sentido de las agujas del reloj.
Cuando se presiona otro botón pulsador:
Esta vez se enciende otro relé. Ahora la corriente fluye fácilmente a la bobina del relé desde el pin Vin a través del transistor que enciende este relé (RELÉ B) y el interruptor de este relé se coloca en la posición NO. Mientras el otro relé (RELÉ A) permanece en posición NC. Entonces, la corriente fluye desde el terminal positivo de la batería al terminal negativo de la batería a través del motor. Pero esta vez la corriente fluye del relé B al relé A. Esto provoca la rotación en sentido antihorario del motor
Cuando se presionan ambos botones:
En este caso, la corriente fluye a la base de ambos transistores debido a que ambos transistores se encienden (actúa como un interruptor cerrado). Y así ambos relés están ahora en posición NO. Por lo tanto, la corriente no fluye del terminal positivo de la batería al terminal negativo a través del motor y, por lo tanto, no gira.
Control de la velocidad del motor de CC:
La puerta del MOSFET está conectada al pin 6 de PWM de Arduino UNO. El mosfet se enciende y apaga a un voltaje de frecuencia PWM alto y dado que el motor está conectado en serie con el drenaje del mosfet, el valor de voltaje PWM determina la velocidad del motor. Ahora, el voltaje entre el terminal del limpiaparabrisas del potenciómetro y Gnd determina el voltaje PWM en el pin no 6 y cuando se gira el terminal del limpiador, el voltaje en el pin analógico A0 cambia, lo que provoca un cambio en la velocidad del motor.
El funcionamiento completo de este control de dirección y velocidad de motor bidireccional basado en Arduino se muestra en el video a continuación con el código Arduino.