You are on page 1of 12

Inacap Santiago Sur

Ingeniera en Electrnica Aplicaciones de Electrnica de Potencia

CONVERTIDOR MONOFSICO EN SERIE

Nombre Alumnos: Pablo Osorio Seplveda Salvador Bustos Orellana Richard Escobar Ramrez Cristbal Cceres Profesor: Javier lvarez Molina

Pgina 1 de 12

NDICE

INTRODUCCIN ESQUEMA RANGOS DE CONTROL CDIGO DE PROGRAMACIN CONCLUSIN

Pg. 3 Pg. 4 Pg. 5 Pg. 6 - 11 Pg. 12

Pgina 2 de 12

INTRODUCCIN

En el presente proyecto se podr observar un convertidor monofsico en serie que se contralara a travs de un microcrontrolador (16F877A) y un detector de cruce por cero. La entrada analgica del PIC se encontrara un potencimetro cuya funcin es variar el voltaje en un rango de 0-5 volts, segn esta variacin de voltaje se controlara la frecuencia de disparo en un rango de 0 a 100 Hertz.

Pgina 3 de 12

ESQUEMA

Pgina 4 de 12

RANGOS DE CONTROL En la tabla que se encuentra a continuacin se observan los rangos de: Voltaje de entrada del microcrontrolador que se obtienen mediante un potencimetro. El valor del voltaje expresado de manera binaria para la programacin del PIC. La duracin de disparo de los Scrs.

Voltaje de entrada (PIC) 0 volts 0.5 volts 1 volts 1.5 volts 2 volts 2.5 volts 3 volts 3.5 volts 4 volts 4.5 volts 5 volts

Binario (Voltaje) 00000000 00011001 00110011 01001100 01100110 01111111 10011001 10110011 11001100 11100110 11111111

Duracin de disparo (Scr) 0 mSeg 1 mSeg 2 mSeg 3 mSeg 4 mSeg 5 mSeg 6 mSeg 7 mSeg 8 mSeg 9 mSeg 10 mSeg

CDIGO DE PROGRAMACIN
Pgina 5 de 12

; etiquetas

comentarios

instrucciones

device=16f877a config wdt_off,xt_osc xtal=4 'Usa cristal de 4MHz trisb=%00000000 'Configura portb como salida trisa=%11111111 'Configura porta como entrada trisd=%11111111 'Configura portd como entrada adcon0=%01000000 adcon1=%00000000 portb=0 adcon0.3=0 'selecta chs0=0 'selecta chs1=0 'selecta chs2=0 'activa el adon 'espera 1ms adcon0.0=1 pause 1 adcon0.4=0 adcon0.5=0

'apaga todo analogica:

adcon0.2=1 'activa el GO/DONE Espera: 'si no est listo espera 'si = 0.5v va a rutina_1ms 'si = 1.0v va a rutina_2ms 'si = 1.5v va a rutina_3ms 'si = 2.0v va a rutina_4ms 'si = 2.5v va a rutina_5ms 'si = 3.0v va a rutina_6ms 'si = 3.5v va a rutina_7ms 'si = 4.0v va a rutina_8ms 'si = 4.5v va a rutina_9ms 'si = 5.0v va a rutina_10m if adcon0.2=1 then Espera if adresh = %00011001 then rutina_1ms if adresh = %00110011 then rutina_2ms if adresh = %01001100 then rutina_3ms if adresh = %11001100 then rutina_4ms if adresh = %01111111 then rutina_5ms if adresh = %10011001 then rutina_6ms if adresh = %10110011 then rutina_7ms if adresh = %11001101 then rutina_8ms if adresh = %11100110 then rutina_9ms if adresh = %11111111 then rutina_10ms goto analogica

Pgina 6 de 12

rutina_1ms: scr1_1ms: 'activa portb.0 'espera 1 ms aaa: 'si ra1=1 va a scr2_1ms 'apaga todo if portd.0=1 then scr2_1ms goto aaa scr2_1ms: 'activa portb.1 'espera 1 ms baa: 'apaga todo if portd.0=1 then analogica 'si ra1=1 va a analogica goto baa rutina_2ms: scr1_2ms: 'espera 2 ms 'apaga todo eaa: 'si ra1=1 va a scr2_2ms scr2_2ms: 'activa portb.1 'espera 2 ms faa: 'apaga todo if portd.0=1 then analogica 'si ra1=1 va a analogica goto faa rutina_3ms: scr1_3ms: 'activa portb.0 'espera 3 ms portb.0=1 pause 3 portb=0 'activa portb.0 portb.0=1 pause 2 portb=0 if portd.0=1 then scr2_2ms goto eaa portb.1=1 pause 2 portb=0 portb.1=1 pause 1 portb=0 portb.0=1 pause 1 portb=0

Pgina 7 de 12

'apaga todo iaa: 'si ra1=1 va a scr2_3ms scr2_3ms: 'activa portb.1 'espera 3 ms jaa: 'apaga todo 'si ra1=1 va a analogica if portd.0=1 then analogica goto jaa rutina_4ms: scr1_4ms: 'activa portb.0 'espera 4 ms maa: 'si ra1=1 va a scr2_4ms scr2_4ms: 'espera 4 ms 'apaga todo naa: 'apaga todo if portd.0=1 then scr2_4ms goto maa 'activa portb.1 portb.1=1 pause 4 portb=0 portb.0=1 pause 4 portb=0 if portd.0=1 then scr2_2ms goto iaa portb.1=1 pause 3 portb=0

if portd.0=1 then analogica 'si ra1=1 va a analogica goto naa

rutina_5ms: scr1_5ms: 'espera 5 ms 'apaga todo qaa: 'si ra1=1 va a scr2_5ms scr2_5ms: 'activa portb.1 'activa portb.0 portb.0=1 pause 5 portb=0 if portd.0=1 then scr2_5ms goto qaa portb.1=1 pause 5

Pgina 8 de 12

'espera 5 ms 'apaga todo raa: portb=0

if portd.0=1 then analogica 'si ra1=1 va a analogica goto raa

rutina_6ms: scr1_6ms: 'activa portb.0 'espera 6 ms uaa: 'si ra1=1 va a scr2_6ms scr2_6ms: 'espera 6 ms 'apaga todo vaa: 'apaga todo if portd.0=1 then scr2_6ms goto uaa 'activa portb.1 portb.1=1 pause 6 portb=0 portb.0=1 pause 6 portb=0

if portd.0=1 then analogica 'si ra1=1 va a analogica goto vaa

rutina_7ms: scr1_7ms: 'espera 7 ms 'apaga todo yaa: 'si ra1=1 va a scr2_7ms scr2_7ms: 'activa portb.1 'espera 7 ms zaa: 'apaga todo if portd.0=1 then analogica 'si ra1=1 va a analogica goto zaa 'activa portb.0 portb.0=1 pause 7 portb=0 if portd.0=1 then scr2_7ms goto yaa portb.1=1 pause 7 portb=0

Pgina 9 de 12

rutina_8ms:

scr1_8ms: 'activa portb.0 'espera 8 ms

portb.0=1 pause 8 portb=0 'apaga todo if portd.0=1 then scr2_8ms goto ac

ac: 'si ra1=1 va a scr2_8ms scr2_8ms: 'espera 8 ms

'activa portb.1

portb.1=1 pause 8

'apaga todo ad:

portb=0

if portd.0=1 then analogica 'si ra1=1 va a analogica goto ad

rutina_9ms: scr1_9ms: 'espera 9 ms 'apaga todo af: 'si ra1=1 va a scr2_9ms scr2_9ms: 'activa portb.1 'espera 9 ms ag: 'apaga todo if portd.0=1 then analogica 'si ra1=1 va a analogica goto ag 'activa portb.0 portb.0=1 pause 9 portb=0 if portd.0=1 then scr2_9ms goto af portb.1=1 pause 9 portb=0

rutina_10ms:

Pgina 10 de 12

scr1_10ms: 'espera 10 ms

'activa portb.0

portb.0=1 pause 10

'apaga todo aj: 'si ra1=1 va a scr2_10ms scr2_10ms: 'activa portb.1 'espera 10 ms ak: 'apaga todo

portb=0 if portd.0=1 then scr2_10ms goto aj

portb.1=1 pause 10 portb=0 if portd.0=1 then analogica 'si ra1=1 va a analogica goto ak

end

'salta a alarma

Pgina 11 de 12

CONCLUSION

Pgina 12 de 12

You might also like