pulsos tonato c

Upload: mauricio-tonato

Post on 14-Jan-2016

58 views

Category:

Documents


0 download

DESCRIPTION

Pulsos Tonato c

TRANSCRIPT

  • 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.

    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.

    RA7/OSC1/CLKIN16

    RB0/INT6

    RB1/RX/DT7

    RB2/TX/CK8

    RB3/CCP19

    RB410

    RB511

    RB6/T1OSO/T1CKI12

    RB7/T1OSI13

    RA0/AN017

    RA1/AN118

    RA2/AN2/VREF1

    RA3/AN3/CMP12

    RA4/T0CKI/CMP23

    RA6/OSC2/CLKOUT15

    RA5/MCLR4

    U1

    PIC16F628A

    R1

    330R

    D1LED-GREEN

    A

    B

    C

    D

  • 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 (A64) 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.

    INICIO:

    SOUND PORTB.0, [100, 10, 50, 10]

    GOTO INICIO

    RA7/OSC1/CLKIN16

    RB0/INT6

    RB1/RX/DT7

    RB2/TX/CK8

    RB3/CCP19

    RB410

    RB511

    RB6/T1OSO/T1CKI12

    RB7/T1OSI13

    RA0/AN017

    RA1/AN118

    RA2/AN2/VREF1

    RA3/AN3/CMP12

    RA4/T0CKI/CMP23

    RA6/OSC2/CLKOUT15

    RA5/MCLR4

    U1

    PIC16F628A

    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-tu-

    mismo/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://proyectoaula-

    pic16f628a.blogspot.com/