- Componentes requeridos
- Funcionamiento del control del ventilador de CA usando Arduino
- 1. Detector de cruce por cero
- 2. Circuito de control de ángulo de fase
- 3. Potenciómetro para controlar la velocidad del ventilador
- 4. Unidad de generación de señal PWM
- Diagrama de circuito
- Programación del Arduino para control de velocidad del ventilador de CA
¡¡ADVERTENCIA!! El diagrama de circuito discutido en este proyecto es solo para fines educativos. Tenga en cuenta que trabajar con una tensión de red de 220 V CA requiere precauciones extremas y se deben seguir los procedimientos de seguridad. No toque ninguno de los componentes o cables cuando el circuito esté en funcionamiento.
Es fácil encender o apagar cualquier electrodoméstico usando un interruptor o usando algún mecanismo de control como lo hicimos en muchos proyectos de automatización del hogar basados en Arduino. Pero hay muchas aplicaciones en las que necesitamos controlar parcialmente la alimentación de CA, por ejemplo, para controlar la velocidad del ventilador o la intensidad de una lámpara. En este caso, se utiliza la técnica PWM, por lo que aquí aprenderemos cómo usar PWM generado por Arduino para controlar la velocidad del ventilador de CA con Arduino.
En este proyecto, demostraremos el control de velocidad del ventilador de CA Arduino utilizando TRIAC. Aquí, el método de control de fase de la señal de CA se utiliza para controlar la velocidad del ventilador de CA, utilizando señales PWM generadas por Arduino. En el tutorial anterior, controlamos la velocidad del ventilador de CC usando PWM.
Componentes requeridos
- Arduino UNO
- 4N25 (detector de cruce por cero)
- Potenciómetro 10k
- 0ptoacoplador MOC3021
- (0-9) Transformador reductor de V, 500 mA
- BT136 TRIAC
- Ventilador CA axial 230 VCA
- Cables de conexión
- Resistencias
Funcionamiento del control del ventilador de CA usando Arduino
El trabajo se puede dividir en cuatro partes diferentes. Son los siguientes
1. Detector de cruce por cero
2. Circuito de control del ángulo de fase
3. Potenciómetro para controlar la cantidad de velocidad del ventilador
4. Circuito de generación de señal PWM
1. Detector de cruce por cero
El suministro de CA que recibimos en nuestro hogar es de 220 V CA RMS, 50 HZ. Esta señal de CA es de naturaleza alterna y cambia su polaridad periódicamente. En la primera mitad de cada ciclo, fluye en una dirección alcanzando un voltaje máximo y luego disminuye hasta cero. Luego, en el siguiente medio ciclo, fluye en dirección alternativa (negativa) a un voltaje máximo y luego vuelve a cero. Para controlar la velocidad del ventilador de CA, el voltaje máximo de ambos semiciclos debe cortarse o controlarse. Para ello, debemos detectar el punto cero desde el que se va a controlar / cortar la señal. Este punto en la curva de voltaje donde el voltaje cambia de dirección se llama cruce de voltaje cero.
El circuito que se muestra a continuación es el circuito detector de cruce por cero que se utiliza para obtener el punto de cruce por cero. Primero, el voltaje de 220 V CA se reduce a 9 V CA utilizando un transformador reductor y luego se alimenta a un optoacoplador 4N25 en sus pines 1 y 2. El optoacoplador 4N25 tiene un LED incorporado con el pin 1 como ánodo y el pin 2 como un cátodo. Entonces, según el circuito a continuación, cuando la onda de CA se acerca al punto de cruce por cero, el LED incorporado de 4N25 se apagará y, como resultado, el transistor de salida de 4N25 también se apagará y el pin de pulso de salida se apagará. ser elevado a 5V. Del mismo modo, cuando la señal aumenta gradualmente hasta el picopunto, entonces el LED se enciende y el transistor también se enciende con el pin de tierra conectado al pin de salida, lo que hace que este pin sea 0V. Usando este pulso, el punto de cruce por cero se puede detectar usando Arduino.
2. Circuito de control de ángulo de fase
Después de detectar el punto de cruce por cero, ahora tenemos que controlar la cantidad de tiempo durante el cual la energía estará encendida y apagada. Esta señal PWM decidirá la cantidad de voltaje de salida al motor de CA, que a su vez controla la velocidad del mismo. Aquí se utiliza un BT136 TRIAC, que controla el voltaje de CA ya que es un interruptor electrónico de potencia para controlar una señal de voltaje de CA.
TRIAC es un interruptor de CA de tres terminales que puede activarse mediante una señal de baja energía en su terminal de puerta. En los SCR, conduce en una sola dirección, pero en el caso de TRIAC, la potencia se puede controlar en ambas direcciones. Para obtener más información sobre TRIAC y SCR, siga nuestros artículos anteriores.
Como se muestra en la figura anterior, el TRIAC se activa a un ángulo de disparo de 90 grados al aplicarle una pequeña señal de pulso de puerta. El tiempo “t1” es el tiempo de retardo que se da según el requisito de atenuación. Por ejemplo, en este caso, el ángulo de disparo es del 90 por ciento, por lo que la potencia de salida también se reducirá a la mitad y, por lo tanto, la lámpara también brillará con la mitad de intensidad.
Sabemos que la frecuencia de la señal de CA es de 50 Hz aquí. Entonces, el período de tiempo será 1 / f, que es 20 ms. Para medio ciclo, será de 10 ms o 10,000 microsegundos. Por lo tanto, para controlar la potencia de una lámpara de CA, el rango de "t1" se puede variar de 0 a 10000 microsegundos.
Optoacoplador:
El optoacoplador también se conoce como optoaislador. Se utiliza para mantener el aislamiento entre dos circuitos eléctricos como señales de CC y CA. Básicamente, consta de un LED que emite luz infrarroja y el fotosensor que la detecta. Aquí se utiliza un optoacoplador MOC3021 para controlar el ventilador de CA desde las señales del microcontrolador, que es una señal de CC.
Diagrama de conexión TRIAC y Optoacoplador:
3. Potenciómetro para controlar la velocidad del ventilador
Aquí se usa un potenciómetro para variar la velocidad del ventilador de CA. Sabemos que un potenciómetro es un dispositivo de 3 terminales que actúa como divisor de voltaje y proporciona una salida de voltaje variable. Este voltaje de salida analógica variable se proporciona en el terminal de entrada analógica de Arduino para establecer el valor de velocidad del ventilador de CA.
4. Unidad de generación de señal PWM
En el paso final, se le da un pulso PWM al TRIAC según los requisitos de velocidad, que a su vez varía el tiempo de encendido / apagado de la señal de CA y proporciona una salida variable para controlar la velocidad del ventilador. Aquí, Arduino se usa para generar el pulso PWM, que toma la entrada del potenciómetro y da salida de señal PWM al circuito TRIAC y optoacoplador que impulsa aún más el ventilador de CA a la velocidad deseada. Obtenga más información sobre la generación de PWM usando Arduino aquí.
Diagrama de circuito
El diagrama de circuito para este circuito de control de velocidad del ventilador de 230 V basado en Arduino se muestra a continuación:
Nota: He mostrado el circuito completo en una placa de pruebas solo con el propósito de comprenderlo. No debe usar un suministro de 220 V CA directamente en su tablero, he usado un tablero de puntos para hacer las conexiones, como puede ver en la imagen a continuación.
Programación del Arduino para control de velocidad del ventilador de CA
Después de la conexión del hardware, necesitamos escribir el código para Arduino, que generará una señal PWM para controlar la sincronización de ENCENDIDO / APAGADO de la señal de CA utilizando una entrada de potenciómetro. Anteriormente usamos técnicas PWM en muchos proyectos.
El código completo de este proyecto de control de velocidad del ventilador de Arduino AC se proporciona al final de este proyecto. La explicación paso a paso del código se da a continuación.
En el primer paso, declare todas las variables necesarias, que se utilizarán en todo el código. Aquí, el BT136 TRIAC está conectado al pin 6 de Arduino. Y la variable speed_val se declara para almacenar el valor del paso de velocidad.
int TRIAC = 6; int speed_val = 0;
A continuación, dentro de la función de configuración , declare el pin TRIAC como salida, ya que la salida PWM se generará a través de este pin. Luego, configure una interrupción para detectar el cruce por cero. Aquí hemos utilizado una función llamada attachInterrupt, que configurará el Pin 3 digital de Arduino como interrupción externa y llamará a la función denominada zero_crossing cuando detecte cualquier interrupción en su pin.
configuración vacía () {pinMode (LÁMPARA, SALIDA); attachInterrupt (digitalPinToInterrupt (3), zero_crossing, CHANGE); }
Dentro del bucle infinito, lea el valor analógico del potenciómetro que está conectado en A0 y mapeelo a un rango de valores de (10-49).
Para conocer este rango tenemos que hacer un pequeño cálculo. Anteriormente se dijo que cada medio ciclo equivale a 10,000 microsegundos. Entonces, aquí la atenuación se controlará en 50 pasos, que es un valor arbitrario y se puede cambiar. Aquí los pasos mínimos se toman como 10, no cero porque 0-9 pasos dan aproximadamente la misma potencia de salida y los pasos máximos se toman como 49 ya que no se recomienda prácticamente tomar el límite superior (que es 50 en este caso).
Luego, el tiempo de cada paso se puede calcular como 10000/50 = 200 microsegundos. Esto se utilizará en la siguiente parte del código.
bucle vacío () {olla int = analogRead (A0); int data1 = map (bote, 0, 1023,10,49); speed_val = data1; }
En el paso final, configure la función de interrupción zero_crossing. Aquí, el tiempo de atenuación se puede calcular multiplicando el tiempo de paso individual con no. de pasos. Luego, después de este tiempo de retardo, el TRIAC puede activarse usando un pequeño pulso alto de 10 microsegundos que es suficiente para encender un TRIAC.
void zero_crossing () {int chop_time = (200 * speed_val); delayMicroseconds (chop_time); escritura digital (TRIAC, ALTA); delayMicroseconds (10); escritura digital (TRIAC, BAJA); }
A continuación se proporciona el código completo junto con un video de trabajo para este control de ventilador de CA utilizando Arduino y PWM.