PROFESOR: Práctica 10. Modulación por ancho de pulso (PWM) Emplea un microcontrolador para procesamiento de señales analógicas y digitales

Documentos relacionados
PROFESOR: Práctica 9. Convertidor Analógico-Digital

PROFESOR: Práctica 8. Temporizador 0 (Timer 0)

PROFESOR: Práctica 5. Manejo de Motores

Práctica 3 Gestión de puertos de entrada

PROFESOR: Práctica 2. Gestión de puertos de salida

PROFESOR: Práctica 10. Manejo de Tabla de datos con Microcontrolador PIC

PROFESOR: Práctica 6. LDC y Teclado Matricial

CURSO BÁSICO MICROCONTROLADORES PIC

PROFESOR: Práctica 9. Control de Motores de CD con Microcontrolador PIC

PROFESOR: Práctica 7. Puertos de salida del Microcontrolador

Módulos CCP. Registro de captura Registro de comparación Registro de ciclo de servicio PWM

AUTOMATIZACIÓN DE PROCESOS PRÁCTICA 1 PWM CONTROLADO POR PUSH BOTÓN MARTÍNEZ PÉREZ JOSE ALFREDO PÉREZ GACHUZ VICTOR JIMÉNEZ OSORIO HÉCTOR ALONSO

PIC 18F45XX. El módulo CCP de Comparación, Captura y PWM (Pulse Wide Modulation)

TUTORIAL II parte A. Observemos el diagrama de pines del microcontrolador 16F877A:

UNIVERSIDAD DE OVIEDO

EL módulo conversor A/D. (c) Domingo Llorente

PIC16F88. Características

Tema. Módulo Captura Comparación Modulación n de Achura de Pulsos. C. F. G.S. D.P.E. Módulo de Proyectos 1

MICROCONTROLADORES PIC BÁSICO (PIC 16F84A / 16F627)

ATE-UNIOVI ATE-UNIOVI ATE-UNIOVI ATE-UNIOVI ATE-UNIOVI ATE-UNIOVI

PROFESOR: Práctica 8. Manejo de Puertos de Entrada y salida del Microcontrolador PIC

Microchip Tips & Tricks...

RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7 PIC 16F87X. Figura # 1

INTELIGENCIA ARTIFICIAL ELECTRÓNICA (16 Hrs)

UNIVERSIDAD DE OVIEDO

Microchip Tips & Tricks...

TÉCNICO SUPERIOR UNIVERSITARIO EN MECATRÓNICA ÁREA AUTOMATIZACIÓN

MICROCONTROLADORES. 1. El PIC 16F84A es un microcontrolador de: a) 16 bits b) 8 bits c) 4 bits d) 32 bits e) 64 bits

MICROCONTROLADOR PIC DE MICROCHIP

PIC 18F45XX CARACTERÍSTICAS GENERALES

PROFESOR: Práctica 3. Introducción al Ambiente de desarrollo MPLAB

Laboratorio 8: Interrupción por Lectura de Entradas y por Desbordamiento del TMR0.

UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERIA

Práctica No. 6 del Curso "Meteorología y Transductores". "Convertidores ADC y DAC"

LABORATORIO DE ELECTRÓNICA DE POTENCIA PRÁCTICA N 1

ANEXOS DIAGRAMA DE FLUJO PRINCIPAL

UNIVERSIDAD DE GUADALAJARA

Practica 03: El convertidor analógico digital

TÉCNICO SUPERIOR UNIVERSITARIO EN MECATRÓNICA ÁREA AUTOMATIZACIÓN EN COMPETENCIAS PROFESIONALES ASIGNATURA DE MICROCONTROLADORES

ÍNDICE INTRODUCCIÓN...17

Conversor A/D. Conversor Analógico a Digital

La siguiente función configura el puerto como entrada y realiza su lectura: input_x( )

Horas teóricas: 1 Horas prácticas: 4 Total de Horas: 5 Total de créditos: 6 Microcontroladores

Sistema de Desarrollo para el Microcontrolador PIC18F452

Proyecto final "Sistema de instrumentación virtual"

Práctica 1 ALU de 1 BIT

MICROPROCESADORES II LENGUAJE C EN LOS MICROCONTROLADORES PIC

Microcontrolador PIC16F84: Arquitectura

MICROCONTROLADORES EJERCICIOS PARA PRACTICAR USANDO TEMPORIZADORES

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

GUIA DE EJERCICIOS Nº 8 INSTRUMENTACIÓN AVANZADA

PIC 16F87X. Juan González. Escuela Politécnica Superior Universidad Autónoma de Madrid. Flir Networked Systems. Flir Networked Systems

Práctica 5. Prelaboratorio

COMUNICACIÓN I2C PROTOTIPO BRAZO ROBÓTICO BM001

El TIMER 1. (c) Domingo Llorente

CONVERTIDOR ANÁLOGICO-DIGITAL (ADC)

UNIVERSIDAD DE OVIEDO

CAPITULO 5. Desarrollo.

GUIA DE EJERCICIOS Nº 2 INSTRUMENTACIÓN AVANZADA

Guía de Microcontroladores

PIC 18F45XX EL TIMER 0

Universidad Nacional de Ingeniería Arquitectura de Maquinas I

LOS PIC16F88X: LOS PUERTOS DE E/S

Instituto Tecnológico de Puebla Ingeniería Electrónica Control Digital

Actuadores eléctricos - Motores

Tema: Utilización del módulo CCP (PWM) en los microcontroladores PIC.

Dependiendo del dispositivo usado, se tienen hasta 5 puertos de entrada/salida disponibles: PORTA PORTB PORTC PORTD PORTE

5 Responde las preguntas. 5.1 Cuál es la razón de que al iniciar el programa se muestre un cero al principio

Programa del PIC 16F877A

Microchip Tips & Tricks...

RECURSOS FUNDAMENTALES

ÍNDICE ANEXOS Anexo:... 2

PRACTICA Nº 3. Puertos de Entrada Analógica. Sistemas Electrónicos Digitales. Subgrupo: de febrero de 2.015

PIC16F882/883/884/886/ Funcionamiento de Timer1 6 EL MODULO TMR1 CON PUERTA DE CONTROL Selección de Fuente de reloj

Datos analógicos, transmisión digital.

AUTOMATIZACIÓN DE OBTENCIÓN DE GRÁFICAS I-V EN PANELES SOLARES

Capítulo 3. El Software

PRÁCTICA 4 LOS BITS DE CONFIGURACIÓN DEL PIC16F628

INTRODUCCION A LA CONFIGURACION DEL CONVERSOR ANALOGICO DEL PIC16F876A

Puertos de E/S. El PIC16F1787 CUENTA CON LOS SIGUIENTES PUERTOS. 4 líneas de Entrada o Salidas. Puerto B: 8 líneas de Entrada o Salidas

DESARROLLO DE SISTEMAS BASADOS EN MICRONTROLADORES Y DSPs

LABORATORIO DE ELECTRÓNICA DE POTENCIA PRÁCTICA N 3

ESCUELA POLITÉCNICA DEL EJÉRCITO

El circuito integrado ADC1230, fabricado

GUÍA DE APRENDIZAJE MEDICION E INSTRUMENTACION ELECTRONICA

Laboratorio de Diseño de Robots Móviles Practica No. 2 Sistema mínimo del microcontrolador PIC16F877

6 MODULACIÓN DE ANCHO DE PULSO (PWM)

SECUENCIA DIDÁCTICA. Actualizó: Autorizó:

Registros SFR vistos hasta ahora: Microcontroladores PIC

PRÁCTICA 5: Medida del tiempo en un PIC

partir de los 5 Volts que entrega el puerto USB La alimentación puede ser

ÍNDICE CAPÍTULO 1 FUNDAMENTOS DE LOS MICROCONTROLADORES

Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica INFORMÁTICA ELECTRÓNICA

Taller de Firmware. Introducción al PIC16F877. Facultad de Ingeniería Instituto de Com putación

Sistemas Electrónicos Digitales - Diciembre 2011 Problema

Estructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez

Control de servomotores. (c) Domingo Llorente

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

Diagrama de bloques del sistema

Transcripción:

INSTITUTO POLITÉCNICO NACIONAL Centro de Estudios Científicos y Tecnológicos Nº 1 Gonzalo Vázquez Vela Academia de Sistemas Digitales Prácticas de Micro Electrónica Programable NOMBRE DEL ALUMNO: Apellido Paterno ASIGNATURA: Micro Electrónica Programable FECHA EVALUACION HOJA DE Apellido Paterno Nombre DIA MES AÑO N DE BOLETA: GRUPO: PROFESOR: Competencias de La Unidad: Práctica 10 Modulación por ancho de pulso (PWM) Emplea un microcontrolador para procesamiento de señales analógicas y digitales Resultado de Aprendizaje Propuesto (RAP): Aplica la modulación por ancho de pulso en el control de velocidad de motores de CD y control de posición de servomotores Objetivos de la Práctica: 1. Utilizar el módulo captura/comparación/pwm del microcontrolador para generar un señal de tipo PWM. 2. Realizar un monitoreo de una variable física, con el fin realizar el control del tiempo de la señal modulada por ancho de pulso. 3. Implementar programas en un circuito basado en microcontrolador, para comprobar su funcionamiento. Equipo Necesario Computadora (con el Software MPLAB IDE, IC-PROG o similar, compilador C, Simulador de circuitos electrónicos Proteus ) Programador tipo JDM o similar. Material Necesario Instrucciones del PIC 16F887 gama media o alta. u otro de Hoja de especificaciones del PIC 16F887 u otro de gama media o alta Manual de Referencia de CCS 86

Introducción Teórica Modulación por ancho de pulso. Modulación por ancho de pulso o PWM (Pulse-Width Modulation), es una técnica que modifica el ciclo de trabajo o el ancho del pulso de una señal periódica, en este caso representado por una señal cuadrada. Y uno de los usos del PWM entre muchos otros, es controlar la cantidad de energía, en este caso el voltaje promedio es mayor conforme aumenta el ciclo de trabajo. Como podemos observar en la imagen el periodo de la señal permanece fijo, por lo tanto, la frecuencia se mantiene y solamente cambia el ciclo de trabajo, en la primera se observa que el ciclo de trabajo es de aproximadamente 50% lo cual nos indica que es el porcentaje de voltaje promedio entregado a la carga. El PWM se puede utilizar en varias cosas, como el control de la velocidad de motores de DC, la posición de un servomotor, fuentes conmutadas, entre otras cosas más. En el caso del microcontrolador PIC cuenta con el modulo para poder obtener dicha señal denominado MODULO CCP CAPTURA / COMPARACIÓN / PWM (Modulación de ancho de Pulsos) y en este caso tiene las características: Los microcontroladores de la familia 16F88X y otras familias disponen de dos módulos de Captura / Comparación y PWM donde cada módulo cuenta con un registro de 16 bits que pueden trabajar como: 87

Registro de captura de 16 bit Registro de comparación de 16 bits Modulación de anchura de pulsos PWM Los módulos CCP1 y CCP2 son idénticos en su modo de funcionamiento, con la excepción del modo de disparo especial Módulo CCP1: El registro de Captura / Comparación / PWM (CCPR1) de 16 bits está formado por dos registros de 8 bits: CCPR1L (byte, bajo) que ocupa la dirección 15h y el CCPR1H (byte alto) que ocupa la posición 16h. El registro de control del CCP1 es el CCP1CON que ocupa la dirección 17h. El modo de disparo especial se genera por la igualdad en la comparación de CCPR1 con TMR1 y reestablecerá el TIMER1 y el CCPR1, funciona como un registro de período, capaz de provocar periódicamente interrupciones. Módulo CCP2: El registro de Captura / Comparación / PWM (CCPR2) de 16 bits está formado de manera similar que el CCP1 por dos registros de 8 bits: CCPR2L (byte bajo) que ocupa la dirección lbh y CCPR2H (byte alto) que ocupa la dirección 1Ch. El registro de control del CCP2 es el CCP2CON que se encuentra en la dirección ldh. En este caso el modo de disparo especial se genera por igualdad en la comparación con el TIMER1 provocando que se reestablezca el TIMER1 y comience una conversión A/D, en el acso del que el convertidor A/D está habilitado. Con lo cual puede realizar la conversiones A/D de forma periódica sin en control del programa de instrucciones. De lo anterior, el módulo CCP realiza tres funciones básicas basadas en el manejo de los temporizadores Comparador: compara el valor del temporizador con el valor de un registro y provocando un acción el PIC. Captura obtiene el valor del temporizador en un momento dado, fijado por la acción de una terminal del PIC. PWM genera una señal modulada en amplitud de pulsos. Con el fin de facilitar el manejo del módulo el compilador CCS cuenta con las siguientes funciones para utilizarlo. Configuracion del modulo CCPx setup_ccpx(modo) //x puede ser 1 o 2 modo: hace referencia a los bits CCPxM3:CCPxM0 del registro CCPxCON Definición del ciclo de trabajo set_pwmx_duty(valor) valor: dato de 8 o 16 bits que determina el ciclo de trabajo. 88

ACTIVIDADES TEÓRICAS PREVIAS Investigar los siguientes: Como se determina el periodo de la señal PWM que genera en el módulo. Como determina el ciclo de trabajo de la señal PWM generada por el microcontrolador. Menciona que características tiene el módulo PWM. Investiga las característica y digramas del módulo captura/comparación/ PWM Cuales es la resolución del PWM? Investiga los modos como se puede configurar el módulo captura/comparación/ PWM Investigar como relaciona el TIMER 2 con el modulo PWM y cuáles son las funciones para utilizarlos en conjunto. Menciona como se nombran los modos en la función setup_ccpx(modo) de CCS Investiga los pasos para poner en marcha el modo PWM ACTIVIDADES PREVIAS Crear un proyecto de nombre pra10 en la carpeta c:\mepic\practica10 en MPLAB o PIC C Compiler. Los programas de cada ejercicio deben ser guardados con el nombre practica9x.c con X= 1, 2, 3,A. En el caso de utilizar MPLAB, realizar los siguientes pasos: a. Utilizar Project wizard y seleccionar el compilador de c b. Agregar al proyecto los archivos adecuados con extensión c y h. c. Habilitar Simulador MPLAB SIM y modificar la frecuencia del simulador a 4 Mhz. d. Utilizaremos la herramienta de stopwatch, para obtener la elija Debugger >> Stopwatch. e. Obtener la herramienta de watch, de la siguiente manera View>> watch. f. Y seleccione los registros PORTA, PORTB, PORTC, PORTD, PORTE, TRISA, TRISB, TRISC, TRISD, TRISE y W Si usa PIC C compiler crear el proyecto únicamente. Nota: La Implementación física de cada circuito, efectuar si el docente lo considera pertinente. ACTIVIDADES PRÁCTICAS Parte 1 1. Realizar los siguientes programas que ejemplifican el funcionamiento módulo PWM, simularlos en Proteus mediante el circuito propuesto. 89

Ejemplo 1 El siguiente programa ejemplifica el uso del módulo PWM (figura 10. 1), generando un señal de diferente valor en cada uno de los canales. #include <16F887.h> #fuses XT,NOWDT,NOPUT,NOMCLR,NOPROTECT,NOCPD,NOBROWNOUT,NOIESO,NOFCMEN,NOLVP #use delay(clock=4000000) void main() { int16 valor,valor2; //variables de 10 bits 0 a 1023 //configuracion del PWM setup_timer_2(t2_div_by_4,249,1); //define el valor de division del timer 2 setup_ccp1(ccp_pwm); //habilta salida PWM CCP1 setup_ccp2(ccp_pwm); //habilita salida PWM en CCP2 valor=500; valor2=900; //Por ser una simulacion; el valor maximo asigando es de 900 // debido a que valores mayores no pueden ser visualizados set_pwm1_duty(valor); set_pwm2_duty(valor2); Observa la señal en el osciloscopio del simulador y obtenga Señal Canal B (CCP2): Periodo: Tiempo alto: Tiempo Bajo: Modifique los valores de las variables valor y valor2; y explique que sucede en la señal en el osciloscopio del simulador y obtenga. Señal Canal B (CCP2): Periodo: Tiempo alto: Tiempo Bajo: Ejemplo 2 Mediante la señal PWM controla la velocidad de un motor de CD (figura10.1). #include <16F887.h> #device adc=10 #fuses XT,NOWDT,NOPUT,NOMCLR,NOPROTECT,NOCPD,NOBROWNOUT,NOIESO,NOFCMEN,NOLVP #use delay(clock=4000000) #byte INTCON= 0x0B #use standard_io(a) #use standard_io(b) #use standard_io(c) long valor; //variables de 10 bits 0 a 1023 int aux; #INT_TIMER0 void TIMER0_isr(void) { delay_us(20); aux=1; 90

set_timer0 (150); void main() { INTCON=0x00; setup_timer_0(rtcc_internal RTCC_DIV_256); //Configuración timer0 set_timer0 (150); //Carga del timer0 enable_interrupts(int_timer0); //Habilita interrupción timer0 enable_interrupts(global); //configura ADC setup_adc_ports(san0); //configura Canal 0 como analógico // En el caso de requerir todos los canales colocar ALL_ANALOG setup_adc(adc_clock_div_32); //Fuente de reloj //configuracion del PWM setup_timer_2(t2_div_by_4,200,1); //define el valor de división del timer 2 //la frecuencia de la señal setup_ccp1(ccp_pwm); //habilta salida PWM CCP1 //setup_ccp2(ccp_pwm); //habilita salida PWM en CCP2 while(true) { aux=0; set_adc_channel(0); //Habilitación canal0 delay_us(20); // tiempo de retardo para iniciar lectura valor= read_adc(); set_pwm1_duty(valor); while(bit_test(aux,2)!=0) {delay_us(1); Observa la señal en el osciloscopio del simulador y el motor, varié el valor de del potenciómetro y mencione que sucede, además determine: Modifique la instrucción: setup_timer_2(t2_div_by_4,249,1); por setup_timer_2(t2_div_by_16,249,1); en el programa anterior y mencione que sucede en la señal en el osciloscopio del simulador y en el motor al variar el valor de del potenciómetro, además determine: Figura 10.1 91

Parte 2 Realizar el siguiente programa con su respectiva simulación, que modifique el ancho de pulso de una señal de periodo 1.6ms, mediante 2 interruptores conectados en RB4 (aumenta) y RB5(decrementa), considere que la señal debe iniciar con un ancho de pulso de 5%,(Sugerencia utilice interrupción por cambio de nivel en puerto B), Proponga el circuito para que maneje la velocidad y sentido de un motor de CD. 2. Conclusiones A. Realizar conclusiones de manera individual. 3. Cuestionario a) Cómo se determina tiempo en alto y bajo en unas tipo PWM? b) Cuántas terminales están asociados al Modulo PWM se puede seleccionar en el PIC16f876? c) Qué registros están asociado al módulo PWM? d) Cuales es la resolución del módulo PWM? Comentarios Finales El alumno entrega un reporte de la práctica, como el profesor lo indique. El reporte debe contener el diagrama de flujo o algoritmo (Seudo código) de cada uno de los programas. Además, en el reporte deben anexarse las conclusiones y cuestionario contestado. 92