Este documento describe el funcionamiento del microcontrolador PIC18F4455 y sus componentes. Explica cómo configurar los puertos, timers y lenguajes de programación para el PIC, así como componentes como el cristal, TRIAC, puente de diodos y MOC3020. También cubre conceptos de onda senoidal, corriente alterna, frecuencia y período.
1. Taller Cruce por Cero
Presentado por: Herberto López Ochoa
Ficha: 1438301
Programa: Diseño, Implementación y Mantenimiento de sistemas de telecomunicaciones.
1.1 PIC 18F4455
Un microcontrolador (abreviado μC,UC o MCU) es un circuito integrado programable, capaz
de ejecutar las órdenes grabadas en su memoria. Está compuesto de varios bloques
funcionales, los cuales cumplen una tarea específica. Un microcontrolador incluye en su
interior las tres principales unidades funcionales de una computadora: unidad central de
procesamiento, memoria y periféricos de entrada/salida.
1.1.1. Conexión de alimentación
El PICse alimentaVCC5V enlospines11 y 32 y se llevaatierra lospines12 y 31.
1.1.2. Descripción de pines del integrado
2. 1.1.3. Cristal de Frecuencia
Son componentes electrónicos utilizados en circuitos osciladores. El oscilador de cristal se
caracterizapor suestabilidadde frecuenciaypurezade fase,dadaporel resonador.Estafrecuencia
se utilizacomúnmente paracontrolarel tiempo,comoen los relojesde cuarzo, para proporcionar
una señal de reloj estable paracircuitosintegradosdigitalesyparaestabilizarlasfrecuenciasde los
transmisores y receptores de radio.
1.1.4. Como configurar un Timer
El TIMER es un contador o temporizador de 8 bits, que puede usar una fuente de reloj interna o
externa, cuando trabaja con el reloj interno del PIC se llama temporizador y cuando trabaja con
pulsos que recibe de forma externa a través del pin RA4/T0CKI trabaja como contador.
Funcionandocomotemporizadorel TMR0esun registrodonde yopuedoalmacenarunvaloryeste
se va incrementandode 1 en 1 con los ciclosde instrucción,esdecir,con cada ciclose incrementa
en 1 el TMR0, cuando la cuenta llega a 255 y pasa a 0 (cero) se produce una interrupción por
desborde del TMR0, recordemos que en un registro de 8 Bit's el valor más alto que se puede
almacenares 255 y que si loincrementamosestandoen255 pasa a cero, y es a estoa lo que se le
denomina desborde.
#include<p18F4520.h>
#include<delays.h>
#pragma configOSC=HS
#pragma configPWRT = OFF, BOREN = OFF
#pragma configWDT = OFF, WDTPS = 128
#pragma configPBADEN = OFF, LVP = OFF
//#define USE_C18_routines
#ifdef USE_C18_routines
#include<timers.h>
3. #else
#define set_TMR0(x) {TMR0H=(x>>8); TMR0L=(x&0x00FF);}
#define start_TMR0 T0CONbits.TMR0ON=1;
#define stop_TMR0 T0CONbits.TMR0ON=0;
#endif
void main(void)
{
unsigned int cont=0;
TRISC=0; PORTC=0; TRISB=0; PORTB=0;
#ifdef USE_C18_routines
OpenTimer0(T0_16BIT&T0_SOURCE_INT&T0_PS_1_256);
#else
T0CON = 0b00000111; // 256 prescaler,16 bits mode, 1 tick = 256*0.2 = 50 usec
set_TMR0(0); start_TMR0;
#endif
while(1)
{
Delay10KTCYx(1); // 2 msec delay
//Delay_ms(100);
PORTB=TMR0L; PORTC=TMR0H;
cont++;
#ifdef USE_C18_routines
if(cont==0) CloseTimer0();
#else
if(cont==0) stop_TMR0;
#endif
}
}
1.1.5. Como configurar un puerto B, C, D.
Los puertos de entrada / salida Los microprocesadores PIC18xxxxx tienen tres puertos de
entrada/salida paralelo de usos generales llamados Puerto A, Puerto B y Puerto C.
BANK1
CLRF TRISB ;Programacióndel puertoBcomo salida
MOVLW 03
MOVWF TRISA ;Programacióndel puertoA,RA0 y RA1 como entrada
BANK0
MOVLW 0FF
MOVWF PORTA ;Inicializaciónde lospuertosA yB
MOVWF PORTB
4. 1.1.6. Verificar el software de programación
Para programar los PIC 18fxxx se debe usar un software en el cual escribir el código de
programación, entre ellos están: Niple Soft, MicroCode Studio, MinGW, Dev C++, PIC C
Compiler; este último es el ideal.
1.1.7. Lenguaje de Programación
Los PIC pueden ser programados por varios lenguajes de programación, dependiendo del
software que se use. Algunos lenguajes son:
Ensamblador: Como el proceso de escribir un código ejecutable era considerablemente
arduo, en consecuencia fue creado el primer lenguaje de programación denominado
ensamblador (ASM). Siguiendo la sintaxis básica del ensamblador, era más fácil escribir y
comprender el código. Las instrucciones en ensamblador consisten en las abreviaturas con
significado y a cada instrucción corresponde una localidad de memoria. Un programa
denominado ensamblador compila (traduce) las instrucciones del lenguaje ensamblador a
código máquina (código binario).
Lenguaje C: El lenguaje C dispone de todas las ventajas de un lenguaje de programación de
alto nivel (anteriormente descritas) y le permite realizar algunas operaciones tanto sobre
los bytes como sobre los bits (operaciones lógicas, desplazamiento etc.). Las características
de C pueden ser muy útiles al programar los microcontroladores. Además, C está
estandarizado (elestándar ANSI), es muy portable, asíque el mismo código sepuede utilizar
muchas veces en diferentes proyectos. Lo que lo hace accesible para cualquiera que
conozca este lenguaje sin reparar en el propósito de uso del microcontrolador. C es un
lenguaje compilado, lo que significa que los archivos fuentes que contienen el código C se
traducen a lenguaje máquina por el compilador. Todas estas características hicieron al C
uno de los lenguajes de programación más populares.
Basic: BASIC, siglas de Beginner's All-purpose Symbolic Instruction Code1 (Código simbólico
de instrucciones de propósito general para principiantes en castellano), es una familia de
lenguajes de programación de alto nivel. BASIC originalmente fue desarrollado como una
herramienta de enseñanza. El lenguaje y sus variantes llegaron a estar ampliamente
disponibles en los microcomputadores a finales de los años 1970 y en los años 1980. BASIC
sigue siendo popular a día de hoy en un puñado de dialectos altamente modificados, y en
nuevos lenguajes, influenciados por BASIC tales como Microsoft Visual Basic o Gambas en
GNU/Linux. En el año 2006, el 59% de los desarrolladores para la plataforma .NET usaban
Visual Basic .NET como su único lenguaje.
5. 1.1.8. MOC 3020
1.1.9. Descripción de pines
Pin 1 Anodo Pin 4 Main Term
Pin 2 Catodo Pin 5 TRIAC Sub+
Pin 3 NC Pin 6 Main Term
1.1.10. Conexión de Funcionamiento
7. Puente de Diodos
RECTIFICADOR DE ONDA COMPLETA CON PUENTE DE DIODOS
Elpuente rectificador de onda completa es un circuito electrónico utilizado en laconversión
de una corriente alterna en continua. Este puente rectificador está formado por 4 diodos.
Existe una configuración en donde se tiene un diodo, esta se le conoce de media. El
rectificador de onda completa, tiene 4. Recordemos antes que nada, que el diodo, se puede
idealizar como un interruptor. Si el voltaje es positivo y mayor que el voltaje en directa, el
diodo conduce. Recordemos que el voltaje en directa de un diodo de silicio esta sobre los
0.7V. Si el diodo esta polarizado en inversa no conduce. Gracias a esto podemos generar
dos caminos de nuestro puente rectificador de onda completa. Uno para la primera mitad
del periodo, que es positiva y otro para la segunda, que es negativa.
Para la siguiente figura, podemos observar que para la primera mitad del periodo, el diodo
D1 denaria pasar el voltaje, mientras que el diodo D2 no. El voltaje que pasa a través de la
carga, regresa a través de la net 0 (GND), en donde pasara por D3 debido a que D2 tiene un
voltaje en el cátodo por lo que no se polariza. Para la segunda mitad del periodo, D2 y D4
son los que conducen para la parte negativa.
8. Realizar un cruce por cero
Realizar una descripción del funcionamiento el CPC (Cruce x Cero)
Se supone que para disparar el triac debe hacerse en los pasos por cero de la alterna, ya
que el triac sufre y creo que también la carga si la variación brusca de tensión al disparar el
triac es muy grande. Al efectuar el disparo en el paso por cero, la tensión de entrada al
rectificador empezaría desde cero y aumentaría paulatinamente. Si por el contrario,
disparases el triac coincidiendo con una cresta de la alterna, tendrías el cambio brusco de
tensión alque hago alusión. Hay optoacopladores que ya te hacen ladetección del paso por
cero, aunque ahora no recuerdo ninguna referencia.
El detector de cruce por cero se utiliza normalmente para poder controlar el ángulo de
disparo del dispositivo y para que exista sincronía entre el paso por cero y la generación del
pulso; pero no creo que sea para evitar que empiece a conducir con un valor elevado de la
onda porque es la utilidad del dispositivo poder conducir en cualquier momento para
controlar así la potencia en la carga.
Verificar un rectificador de onda completa a 120 VAC
Que es la Onda Senoidal
Concepto: Representa el valor de la tensión a través de un tiempo continuamente variable.
Onda senoidal representa el valor de la tensión de la Corriente alterna a través de un
tiempo continuamente variable, en un par de ejes cartesianos marcados en amplitud y
tiempo.
¿Cuál es el ciclo de una onda senoidal?
Ondasenoidal....La "función senoidal"grafícauna onda senoidal, partiendo de "cero", con
un valor pico "positivo", y otro igual "negativo". El "ciclo" es el desarrollo completo de
9. la onda, y corresponde al periodo "T". La frecuencia de la onda es la cantidad de veces que
dicha onda se desarrolla en el tiempo "t"
Voltaje AC
10. CONCEPTO DE CORRIENTE ALTERNA
La corriente alterna es aquella en que la que la intensidad cambia de dirección
periódicamente en un conductor. Como consecuencia del cambio periódico de polaridad de
la tensión aplicada en los extremos de dicho conductor.
La variación de la tensión con el tiempo puede tener diferentes formas: senoidal (la forma
fundamental y más frecuente en casi todas las aplicaciones de electrotecnia); triangular;
cuadrada; trapezoidal; etc., si bien estas otras formas de onda no senoidales son más
frecuentes en aplicaciones electrónicas.
Las formas de onda no senoidales pueden descomponerse por desarrollo en seriede Fourier
en suma de ondas senoidales (onda fundamental y armónicos), permitiendo así el estudio
matemático y la de sus circuitos asociados.
FRECUENCIA Y PERIODO
La frecuencia f es nº de ciclos por unidad de tiempo. Su unidad es el Hz (Herzio) =1 ciclo/s.
Industrialmente se usan corrientes de 50 Hz (60Hz en América),
Dimensionalmente la frecuencia son ciclos/tiempo, o sea t –1.
El periodo T es la inversa de la frecuencia, o lo que es lo mismo, el tiempo que dura un ciclo
completo.
T= 1/f (dimensión; t)
Una onda variable senoidalmente con el tiempo puede considerarse como la proyección
sobre un diámetro de un movimiento circular uniforme de velocidad angular w, entonces
la tensión instantánea V;
V = VM sen wt
En donde VM es el valor máximo a que llega la tensión, y
w = 2p f (radianes /s)