You are on page 1of 13

UNIVERSIDAD DE LAS FUERZAS ARMADAS

ESPE EXTENSION LATACUNGA


MICROCONTROLADORES Y PLC
INFORME DE PRCTICA
INTEGRANTES:
Tonato Mauricio
Fecha: 15 de Junio de 2015
Nivel: Sexto Automotriz A
A. TEMA.:
Modulacin por Ancho de Pulso (PWM):
B. OBJETIVOS.

Definir mediante la programacin la forma de definir voltaje o ondas cuadradas


en algn tiempo o periodo determinado.
Realizar los programas establecidos en el archivo y verificar su funcionamiento,
as como tambin los ejercicios propuestos.
Programar y armar varios circuitos mediante la programacin estudiada en clase
con el uso del PIC 16F628A y de un programador de PIC (quemador Pic kit 2 V2.6).
Utilizar la lgica de programacin aprendida con anticipacin.
Analizar el funcionamiento de los pulsos y tambin su porfa de declarar y sus
cdigos

C. MATERIALES Y EQUIPOS.

PIC 16F628A
Programador Pickit 2 V2.6
1 Protoboard
Resistencias 300 y 4k7 ohmios
Fuente de 5V
Leds
Pulsadores

D. MARCO TERICO.
Modulacin por Ancho de Pulso (PWM):
La Modulacin de Ancho de Pulso conocido como PWM (Pulse Wide Modulation),
bsicamente consiste en enviar a los terminales de control un tren de pulsos los cuales
varan en mayor o menor medida el tiempo en que se mantiene el nivel alto de esos
pulsos, manteniendo la frecuencia constante.

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC
Ejemplo de seal PWM
Con esta forma de control la cantidad de corriente sigue siendo la misma, la tensin no
vara y en consecuencia el torque del motor se mantiene, que es justamente lo que
buscando.
INSTRUCCIN HPWM
Formato
HPWM Channel, Duty cycle, Frecuency
Channel especifica qu canal fsico PWM se va a utilizar. Algunos dispositivos tienen 1,
2 o 3 canales de PWM. En los dispositivos con 2 canales, la frecuencia debe ser igual en
ambos canales.
El canal hace referencia directamente al mdulo CCP del microcontrolador.
En el programa debemos definir la ubicacin del nmero de pin y el puerto
correspondiente:
Ejemplo:
DEFINE CCP1_REG PORTB
DEFINE CCP1_BIT 3
Dutycycle especifica la relacin de (alta-baja) de la seal. Se extiende a partir de 0 a 255,
donde 0 est apagado todo el tiempo y 255 es alto todo el tiempo. Un valor de 127 da
un ciclo de 50% (onda cuadrada). La frecuencia es la frecuencia deseada de la seal de
PWM. No todas las frecuencias estn disponibles en todas las configuraciones del
oscilador. La frecuencia ms alta a cualquier velocidad del oscilador es 32767Hz. La
frecuencia usable ms baja de HPWM en cada configuracin del oscilador se muestra en
la tabla siguiente:

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC

Ejemplo:
X= 128
HPWM 1, X, 245
Estamos generando usando el mdulo CCP1, una frecuencia de 245 Hz con DC de 50%.
Cuando se necesita un duty variable se puede establecer una variable tipo byte, para
incrementar o decrementar el valor segn se requiera.
PULSOUT Pin, Period
Genera un pulso de un periodo especificado en un Pin. Si se usa un oscilador de 4MHz
el periodo del pulso sera incrementado en 10us. Si el oscilador es de 20 MHz el periodo
tiene una resolucin de 2us. Definiendo un valor de OSC no tiene efecto en PULSOUT.
La resolucin siempre cambia con la velocidad del oscilador especificado.

Ejemplo:
PULSOUT PORTB.5, 100
Enva un pulso de duracin de 1ms (en 4MHz) por el Pin5.
INSTRUCCIN PULSIN
PULSIN Pin,State,Var
Mide el ancho del pulso en Pin. Si State es cero se mide el ancho de un pulso bajo. Si
State es uno, se mide el ancho de un pulso alto . El ancho medido s coloca en Var. Si el
flanco del pulso no llega, o el ancho del pulso es demasiado grande para ser medido ,
Var=0 . Si se usa una variable de 8 bit, solo se usan los bits menos significativos de la
medicin de 16 bits. Pin puede ser una constante, 0 - 15, o una variable que contenga
un nmero de 0-15 (p.ej. B0) un nmero de Pin (p.ej. PORTA.0) La resolucin de PULSIN
depende de la frecuencia del oscilador. Si se usa un oscilador de 4 Mhz, el ancho de
pulso se obtiene en incrementos de 10 us .Si se usa un oscilador
de 20 Mhz, el ancho de pulso tendr una resolucin de 2 us. Definir un valor de OSC no
tiene efectos sobre PULSIN. La resolucin siempre cambia con la velocidad del oscilador
en uso.
PULSIN PORTB.4,1,W3 mide el pulso alto en pin 4 guardado en W3
COUNT
COUNT NN_PIN, PERIODO, VARX
COUNT, cuenta el nmero de pulsos en el Pin (NN_PIN) del PIC, durante el tiempo
(PERIODO), y guarda el resultado en una variable (VARX). El Pin es colocado
automticamente como entrada.

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC
EJEMPLO:
COUNT PORTA.2, 1000, X; cuenta los pulsos que ingresan por el pin PORTA.2
durante 1 segundo y lo almacena en la variable X.
SOUND
FORMATO
SOUND NN_PIN, [TONO1,PERIODO1,TONO2,PERIODO2]
SOUND, genera tonos audibles o ruido blanco en un pin del PIC. Se pueden combinar
ms de una frecuencia de 1 a 127 que son los tonos y de 128 a 255 que corresponde al
ruido blanco. La relacin entre los tonos y la frecuencia se muestra en la tabla.

EJEMPLO:
SOUND PORTB.0,[50,10,100,20] ; Se ha combinado dos frecuencias de 3937 Hz con
una duracin de 10 ms y 7874 Hz con una duracin de 20 ms.
Las canciones estn compuestas por notas musicales (DO, RE, MI, FA, SOL, LA, SI).
A cada una de estas notas le corresponde una frecuencia. La tabla muestra la
frecuencia que corresponde a cada nota:

Las notas tienen una duracin, que est determinada por las figuras musicales; para
este
caso se usar la siguiente duracin:

Fusa 62 ms
Semicorchea 125 ms
Corchea 250 ms

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC
Negra 500 ms
Blanca 1 segundo
Redonda 2 segundos

El intervalo de frecuencias sonoras audibles se suele dividir en 10 intervalos de


frecuencia (10 octavas):
1 octava: 15 Hz - 30 Hz
2 octava: 30 Hz - 60 Hz
3 octava: 60 Hz - 125 Hz
4 octava: 125 Hz - 250 Hz
5 octava: 250 Hz - 500 Hz
6 octava: 500 Hz - 1.000 Hz
7 octava: 1.000 Hz - 2.000 Hz
8 octava: 2.000 Hz - 4.000 Hz
9 octava: 4.000 Hz - 8.000 Hz
10 octava: 8.000 Hz - 16.000 Hz

PIC 16F628A
El Pic es un microcontrolador de 8 bit, posee una arquitectura RISC avanzada as como
un juego reducido de 35 instrucciones. Este microcontrolador es el remplazo del
obsoleto pic16f84a, los pines del pic16f628a son compatibles con el pic16f84a, as se
podran actualizar proyectos que hemos utilizado con el pic16f84a.
DIAGRAMA DE PINES

Fig. 1 distribucin de pines PIC16F628A

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC
Como podemos ver, los pines 1, 2, 3, 4, 15, 16, 17 y 18 tienen el nombre de RAx. Esos
pines conforman el puerto A, PORTA de ahora en ms. Los pines 6 al 13 forman parte
del puerto B (PORTB). El pin 5 es el que se conectara al negativo de la fuente de
alimentacin. El 14 ir conectado a 5V.
Como habrn notado, muchos de los pines tienen ms de una descripcin. Esto se debe
a que pueden utilizarse de varias maneras diferentes, seleccionables por programa. Por
ejemplo, el pin 4 sirve como parte del PORTA, como RESET (MCLR = Mster Clear) y como
tensin de programacin (Vpp)
Programador de PICS
Muchos de los clsicos programadores de pic y memorias eeprom realizan su
comunicacin con la pc, a travs del puerto serie, o algunos por el puerto paralelo, son
circuitos muy sencillos de unos pocos componentes, pero hay un problema y es que
cada vez se hace ms difcil conseguir algunos de estos puertos en un pc, ms difcil o
imposible en una porttil sumado a los problemas que se pueden tener al necesitar
fuente externas o que las tensiones del puerto serie no sean correctas para la
programacin. Es por esto que surge la necesidad de tener un programador USB.

Fig. 2 Programador de pics

E. PROCEDIMIENTO
Realizar todos los ejercicios planteados en clase en los software necesarios.
Copiar la programacin del documento y finalmente verificar su
funcionamiento.
Armar el circuito en el simulador Proteus.
Finalmente armar el circuito en un Protoboard.
EJERCICIOS:

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC
1. Programa 1. Generacin de una onda cuadrada de 1000 HZ.
U1
16
15
4

RA7/OSC1/CLKIN
RA6/OSC2/CLKOUT
RA5/MCLR

RA0/AN0
RA1/AN1
RA2/AN2/VREF
RA3/AN3/CMP1
RA4/T0CKI/CMP2

RB0/INT
RB1/RX/DT
RB2/TX/CK
RB3/CCP1
RB4
RB5
RB6/T1OSO/T1CKI
RB7/T1OSI

17
18
1
2
3
6
7
8
9
10
11
12
13

A
B
C
D

R1
330R

D1
LED-GREEN

PIC16F628A

DEFINE CCP1_REG PORTB


DEFINE CCP1_BIT 3
INICIO:
HPWM 1, 128, 1000
GOTO INICIO

a. Dibuje la forma de onda obtenida. Mida en el osciloscopio el periodo y el duty de


la onda. Est de acuerdo con los valores esperados. Explique.

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC

Periodo: 1ms
Duty: 0,5ms (128 equivalente a la mitad del periodo)
Los valores son los esperados ya que 128 (duty) es la mitad del periodo total con
una duracin de 1000 ms
b. Modifique el programa para obtener un duty del 25% del 75% respectivamente.
Duty 25% = 63,75
DEFINE CCP1_REG PORTB
DEFINE CCP1_BIT 3
INICIO:
HPWM 1, 64, 1000
GOTO INICIO

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC

Duty 75% = 191,25


DEFINE CCP1_REG PORTB
DEFINE CCP1_BIT 3
INICIO:
HPWM 1, 191, 1000
GOTO INICIO

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC

c. Cambie el programa para obtener una seal de 5KHZ, con un duty del 60%.
DEFINE CCP1_REG PORTB
DEFINE CCP1_BIT 3
INICIO:
HPWM 1, 153, 5000
GOTO INICIO

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC

d. Realice un programa para generar una seal de 500 HZ con un duty variable
desde el 25% al 100%. Debe haber un pulsador para subir PS y otro PB para bajar.
Al arrancar el programa con un pulsador PI la seal tendr un duty de 50%. Con
un pulsador PP, la seal se hace 0.
DEFINE CCP1_REG PORTB
DEFINE CCP1_BIT 3
PS VAR PORTA.0 ; VARIABLE PULSADOR1
PB VAR PORTA.1 ; VARIABLE PULSADOR2
PI VAR PORTA.2 ; VARIABLE PULSADOR3
PP VAR PORTA.3 ; VARIABLE PULSADOR4
A VAR BYTE
B VAR BYTE
A=64
INICIO:
HPWM 1, A, 500
IF (PS = 0) AND (A<255) THEN
GOSUB ANTIRREBOTE
A=A+20
ENDIF
IF (PB = 0) AND (A>64) THEN
GOSUB ANTIRREBOTE
A=A-20
ENDIF
IF (PI = 0) THEN
GOSUB ANTIRREBOTE

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC
A=127
ENDIF
IF (PP = 0) THEN
GOSUB ANTIRREBOTE
A=0
ENDIF
GOTO INICIO
ANTIRREBOTE:
IF PP=0 OR PI=0 OR PS=0 OR PB=0 THEN GOTO ANTIRREBOTE
RETURN

2. Programa 2: Generacin de sonido de una sirena.


U1
16
15

RA7/OSC1/CLKIN
RA6/OSC2/CLKOUT

RA5/MCLR

RA0/AN0
RA1/AN1
RA2/AN2/VREF
RA3/AN3/CMP1
RA4/T0CKI/CMP2

RB0/INT
RB1/RX/DT
RB2/TX/CK
RB3/CCP1
RB4
RB5
RB6/T1OSO/T1CKI
RB7/T1OSI
PIC16F628A

INICIO:
SOUND PORTB.0, [100, 10, 50, 10]
GOTO INICIO

17
18
1
2
3
6
7
8
9
10
11
12
13

LS1

SOUNDER

UNIVERSIDAD DE LAS FUERZAS ARMADAS


ESPE EXTENSION LATACUNGA
MICROCONTROLADORES Y PLC
END
F. Conclusiones

para la utilizacin modulacin por ancho de pulso (pwm), se determin el


funcionamiento del ancho de pulso as tambin aumentara su velocidad.
se pudo observar que existen diferentes maneras de utilizacin de los pulsos
para regular el pulso y as determinar cambias de velocidad.
se puede lograr aumentos en porcentaje de los para que as vari la velocidad
del motor.
se realiz la prctica y se pudo observar el funcionamiento en el simulador.

G. Recomendaciones

Antes de realizar cualquier practica en esta materia es de suma importancia


recurrir al datasheet de los elementos en especial del PIC 16F628A para tener
una correcta distribucin de pines.
Tener mucha precaucin al terminar el proceso con el Grabador de PICS, ya que
toca retirar sin desconectar el programador de la computadora.
Los proyectos realizados en MICROCODE STUDIO guardarlos en una carpeta
especfica para evitar confusiones al momento de armar.

H. Referencias Bibliogrfica.
Recuperado 15 de junio de 2015 de:
http://www.sc.ehu.es/sbweb/webcentro/automatica/web_avr/archivos/Manu
al_AT90S8515/Arquitectura/interrup_externas&tiempo_respu.htm.
Recuperado el 15 de junio de 2015 de: http://www.taringa.net/posts/hazlo-tumismo/14017158/Programador-PIC-USB-PICKIT-2-Clone.html
Recuperado 15 de JUNIO de 2015 de: http://www.ecured.cu/index.php/2n3906
Recuperado el 14 de JUNIO de 2015 de : http://proyectoaulapic16f628a.blogspot.com/

You might also like