You are on page 1of 10

Variador de velocidad AC con Triac y PIC - Parte I :

Funcionamiento
13:03 5 comments

Funcionamiento

Resumen
En la electrónica una de las más importantes e interesantes áreas con una amplia difusión hoy día es la
automatización y el control no sólo porque en el presente tiene una aplicación en casi todos los campos sino
porque permite crear una cantidad ilimitada de modelos al igual que una inmensa variedad de aplicaciones
prácticas.
Este Proyecto consiste el diseño de un sistema de control de velocidad de motores monofásicos para utilizarlos
en pequeñas maquinas y motores electricos monofasicos de hasta 2 Hp. Constara de un micro controlador PIC
16f876a para el control y sincronismo, también de un Triac y optotriac para la parte de potencia.

Descripción de la solución
La solución que plantea este Proyecto es el de diseñar un sistema electrónico eficaz y a la vez económica que
sea capaz de controlar cargas que funciones con corriente alterna como motores, haciendo uso de uno triacs,
que son dispositivos electrónicos semiconductores, que pueden conducir corrientes alternas y además soportar
cargas de gran corriente (10A a 20 A) suficientes para controlar un motor AC, El Encargado de controlar al triac
será el PIC que sincronizara los pulsos de disparo hacia el triac para asi lograr controlar el valor eficaz del
voltaje AC que ira hacia la carga (motor), logrando variar la velocidad.
Materiales del Proyecto
Materiales del Proyecto
-Pic 16f876a
-Triac bt136-6Amps, bt138-12 Amps, bt139-16Amps. (Puede elegirse cualquiera de ellas)
-Moc 3020
-Opto acoplador 4n25
-Módulo Bluetooth hc-05
-Resistencia de 100k 1watt
-Resistencias de 180 Ohms 330 Ohms, 2.2k Ohms, 1K Ohms, 47K Ohms
-Puente diodos
-Potenciómetro 10k Ohms
-Condensador de 0.1 uF 400V (poliester)
-Cristal oscilador de 20Mhz, capacitor de 22pf, 0.1uf y 470 uF
-Pulsadores Switch

Marco Teórico

1. Triac
El Triac es un dispositivo semiconductor que pertenece a la familia de los dispositivos de control: los tiristores.
El triac es en esencia la conexión de dos tiristores en paralelo pero conectados en sentido opuesto y
compartiendo la misma compuerta.

A1: Anodo 1, A2: Anodo 2, G: Compuerta

El triac se utiliza en corriente alterna y al igual que el tiristor, se dispara por la compuerta. Como el triac funciona
en corriente alterna, habrá una parte de la onda que será positiva y otra negativa.
Al disparar al triac este conducirá y autosotendra esa conducción hasta que el voltaje caiga hasta cero. Y lo
mismo ocurrirá para el semiciclo negativo, hasta que nuevamente caiga el voltaje a cero.

Funcionamiento:
La parte positiva de la onda (semiciclo positivo) pasará por el triac siempre y cuando haya habido una señal de
disparo en la compuerta, de esta manera la corriente circulará de arriba hacia abajo (pasará por el tiristor que
apunta hacia abajo), de igual manera:

La parte negativa de la onda (semiciclo negativo) pasará por el triac siempre y cuando haya habido una señal
de disparo en la compuerta, de esta manera la corriente circulará de abajo hacia arriba (pasará por el tiristor
que apunta hacia arriba)

Para ambos semiciclos la señal de disparo se obtiene de la misma patilla (la puerta o compuerta). Lo interesante
es, que se puede controlar el momento de disparo de esta patilla y así, controlar el tiempo que cada tiristor
estará en conducción. Recordar que un tiristor sólo conduce cuando ha sido disparada (activada) la compuerta
y entre sus terminales hay un voltaje positivo de un valor mínimo para cada tiristor)
Entonces, si se controla el tiempo que cada tiristor está en conducción, se puede controlar la corriente que se
entrega a una carga y por consiguiente la potencia que consume.

Video Explicativo 1:

Video Explicativo 2:

Detector Cruce por Cero


Para este proyecto se hará un control totalmente digital de triac haciendo uso de un microcontrolador pic, para
lograr esto debemos tener un circuito de sincronismo para asi poder disparar al triac adecuadamente.
El detector de cruce por cero 'sensa' cuando se produce el cambio de polaridad . el la red eléctrica, como se
sabe es una señal senoidal que que cambia de polaridad a razón de 60 ciclos por segundo
El Gran inconveniente que se presenta, es que el pic solo puede funcionar con voltajes de una sola polaridad.
Es por esta razón que el circuito detector de cruce por cero contendrá un rectificador de onda completa, por lo
que de esta menera podrá obtenerse solamente ciclso positivos, pero para proteger al pic de la red eléctrica ,
se hara uso de un optoacoplador
Etapa de Potencia
La etapa de Potencia esta conformada por un optotriac moc 3020 y el Triac
Además consta de un circuito RC para proteger los auto disparos hacia el triac que pueden generar las cargas
inductivas
El bt13x puede autosostenerse con un pulso que se envía desde el pic, que tendrá la duración de 200us, la
corriente necesaria para el auto sostenimiento del triac es de aproximadamente 100mA, la cual la suministra el
moc.

Para manejar Cargas de mas Potencia, solamente se tendrá que cambiar por un triac de mas corriente, y un
moc que pueda disparar al gate con la adecuada corriente.
Circuito Completo

Segunda Parte del Proyecto:


Variador de velocidad AC con Triac y PIC (Parte II) : Programacion, simulacion y pruebas en fisico
rogramación en el PIC 16f876a

 El microcontrolador PIC se encargara de recibir las señales del circuito de cruce por cero, para esto se
hara uso del módulo de “interrupción por el pin RB0” ya que cada vez que reciba la señal del
fototransistor, automáticamente saltara de todo lo que esté haciendo el PIC en ese momento para atender
a esa señal y sincronizar el disparo hacia el triac.
 Para controlar la velocidad, se hará uso de la “lectura analógica por el pin A0” de un potenciómetro. Ya
que la lectura analógica toma algún tiempo para la conversión a digital, no sería viable usarlo en el bucle
del programa principal, pues esto retrasaría las demás funciones que realizara el pic . Se optó por hacer
una lectura del potenciómetro usando un temporizado de cada 200 ms, configurando el “Timer 1” del Pic
a ese periodo.
 El pin que dispara al moc 3020 sera el “Pin Rb7” cuya duración del ancho de pulso será de 200 uS.
 Existen 2 leds indicadores: señal del cruce por 0 “Pin Rb1”, Señal de de cruce por 0 dividida entre 60
(0.5 seg) “Pin RB2”

e
Entradas al pic :
#define potenciometro pin_a0 //entrada analogica para control
#define cruze_x_cero pin_b0 //entrada digital para el sincronismo del disparo

Salidas del Pic:


#define disparo pin_b7 //disparo hacia la etapa de potencia
#define frec_1 pin_b1 //indicador de cruce por cero 60 hz
#define frec_2 pin_b2 //indicador cruce por cero 1 hz

Variables del Pic:


long delay=7000;
short bandera1=0;
int contador=0;

long adc=0;

Programa en Pic C (CCS C compiler):


?
1 #include <16f876a.h>
2 #device adc = 10
3 #fuses hs,nowdt,put,nobrownout,nolvp,
#use delay(clock=20M)
4
#use standard_io(a)
5 #use standard_io(b)
6 #use standard_io(c)
7 #priority INT_RB //prioridad interrupcion por rb0
8
9 #define potenciometro pin_a0
#define cruze_x_cero pin_b0
10 #define frec_1 pin_b1
11 #define frec_2 pin_b2
12 #define disparo pin_b7
13
14 long delay=7000;
15 short bandera1=0;
int contador=0;
16 long adc=0;
17
18 #INT_timer1
19 void timer1()
20 {
adc=read_adc(); //lectura de potenciometro externo para temporizar
21 disparo
22 delay_us(20); //tiempo de conversion adc
23 delay=adc*7.7; //escalamiento hasta maximo periodo adc 0 a
24 1024
25 // //120Hz -> T:8mS = 8333uS max
26 set_timer1 (65526);
27 }
#int_ext
28 void ext_isr()
29 {
30 bandera1=1; //si entro pulso, poner en 1 bandera de sincronizacion
31 output_toggle(frec_1); //indicador de interrupcion
//si todo esta correcto frec de interrupcion = 60Hz
32 //=>120hz/60=1hz ==>T=0.5seg
33 contador++;
34 if(contador==60)
35 {
36 output_toggle(frec_2);
contador=0;
37 }
38 }
39
40 void main()
41 {
delay_ms(100);
42 output_high(frec_1);
43 output_high(frec_2);
44 delay_ms(500);
45 output_low(frec_1);
46 output_low(frec_2);
delay_ms(500);
47
48 enable_interrupts(int_ext);
49 ext_int_edge(L_TO_H);
50
51 setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);//Setup timer: Reloj interno,
52 preescaler= 8
53 enable_interrupts(INT_TIMER1);//Habilito interrupción particular del
TIMER1
54 set_timer1(65526);//Carga del TMR1 para 20 mhz q 200 ms
55
56 setup_adc_ports(an0);
57 setup_adc(adc_clock_internal);
58 set_adc_channel(0);
59
enable_interrupts(GLOBAL);//Habilito interrupciones globales
60
61
62
while (true)
63 {
64 if(bandera1==1) //espera bandera de sincronizacion
65 {
66 delay_us(delay+440);
output_high(disparo);
67 delay_us(200);
68 output_low(disparo);
69 bandera1=0;
70 }
71 }
}
72
73
74
75
76
77
78
79
80

Mejoras:
-Es Ovbio que este proyecto realiza el mismo trabajo que un simple Dimer
analogico. Pero la gran potencialidad que este proyecto presenta no esta en
solo controlar velocidad por medio de un potenciometro, si no que al ser
diseñado para ser controlado por medio de un microcontrolador, este es
mucho mas inteligente y se pueden programar mas cosas. Puede añadirse
sensores de velocidad, temperatura, etc. Para hacer un control con un
algoritmo PID de velocidad, temperatura pero en AC. Este es solo la
parte básica,lo demás dependerá de la imaginacion e ingenio para aplicarlo
en algo util.