implementación de la fft en un dspic30f con control del número de muestras y velocidad de muestreo
TRANSCRIPT
![Page 1: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/1.jpg)
IMPLEMENTACIÓN DE LA TRANSFORMADA RÁPIDA DE FOURIER EN UN dsPIC30F4011 CON CONTROL DEL NÚMERO DE MUESTRAS
Y VELOCIDAD DE MUESTREO
JAIME FERNANDO AMÉZQUITA RIVERAProyecto de grado para optar el título de
Ingeniero Electrónico
Directora del proyecto:ANGELA VIVIANA PEÑA PUERTO
INGENIERA ELECTRÓNICA
TUNJA2012
![Page 2: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/2.jpg)
Objetivo General
Implementar la Transformada Rápida de Fourier en un dsPIC30F con control del número de muestras y velocidad de muestreo.
![Page 3: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/3.jpg)
1. Objetivo Específico
Analizar los diferentes algoritmos existentes, para implementar la Transformada Rápida de Fourier (FFT).
![Page 4: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/4.jpg)
Algoritmos para FFTEn los diferentes algoritmos existentes para implementarlos en los procesadores con DSP encontramos los siguientes:
![Page 5: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/5.jpg)
Algoritmo Radix-2 Diezmado en frecuencia
• Reduce el número de sumas, restas y multiplicaciones complejas con respecto al algoritmo original de la DFT.
• El hardware de los dsPIC se ajustan a este tipo de
algoritmos, ya que soportan direccionamiento por inversión de acarreo o bits de reverso para algoritmo en base 2.
![Page 6: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/6.jpg)
Deducción del algoritmo Radix-2 o Base-2 diezmado en frecuencia
Ecuación de la Transformada Discreta de Fourier:
![Page 7: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/7.jpg)
Utilizando las propiedades de:• Simetría
• Periodicidad
![Page 8: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/8.jpg)
Ecuación para datos pares:
Ecuación para datos impares:
![Page 9: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/9.jpg)
Diagrama Mariposa BásicoAlgoritmo Diezmado en Frecuencia
Este algoritmos solo se aplican a muestras de entrada con potencia de 2k como ejemplo tenemos: 2, 4, 8, 16, 32, 64, 128, 256, 512… muestras.
![Page 10: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/10.jpg)
FFT de 8 Muestras
![Page 11: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/11.jpg)
EFICIENCIA DE LOS W
![Page 12: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/12.jpg)
Factores de Giro o Twiddle
![Page 13: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/13.jpg)
2. Objetivo Específico
Determinar las características generales, capacidades y limitaciones del dsPIC30F4011.
![Page 14: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/14.jpg)
![Page 15: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/15.jpg)
3. Objetivo Específico
Diseñar las funciones necesarias por medio del programa MPLAB, para implementar la construcción de la Transformada Rápida de Fourier.
![Page 16: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/16.jpg)
SoftwareVertebraldsPIC
ModuloConfiguración
Modulo Asignación de Tareas
Modulo Interrupciones
- Tarea 0- Tarea 1- Tarea 2- Tarea 3- Tarea 4- Tarea 5- Tarea 6- Tarea 7- Tarea 8- Tarea 9- Tarea 10- Tarea 11- Tarea 12- Tarea 13- Tarea 14- Tarea 15
Conversor A/D
Temporizador (Velocidad de
Muestreo)
Comunicación Serial UART
- Config Puertos- Config UART- Config Conversor A/D- Config Temporizador - Config Interrupciones- Config Datos
Modulo de Funciones
- Fun Lectura Portx- Fun Retardos- Fun LCD- Fun Vel. Muestreo- Fun Número de
Muestras- Fun FFT
- Comando 1- Comando 2- Comando 3- Comando 4- Comando 5- Comando 6- Comando 7
RXTX
![Page 17: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/17.jpg)
Tipo de Datos
![Page 18: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/18.jpg)
Multiplicación Compleja
Suma Compleja
![Page 19: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/19.jpg)
4. Objetivo Específico
Diseñar la función que realice el proceso de conversión A/D en el dsPIC30F, por medio del programa MPLAB, para el control del número de muestras y procesamiento de información.
![Page 20: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/20.jpg)
Configuración Modulo A/D• Configura el pin del puerto como entrada Análoga RB8.• Seleccionar el canal de entrada• Seleccionar el reloj de conversión • Seleccionar la fuente de disparo• Encender el modulo A/D
![Page 21: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/21.jpg)
5. Objetivo Específico
Determinar el valor máximo y mínimo de la velocidad de muestreo, en el dsPIC30F4011, para construir la función que permite variar la velocidad de muestreo.
![Page 22: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/22.jpg)
![Page 23: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/23.jpg)
6. Objetivo Específico
Diseñar un software que grafique los datos obtenidos en el dsPIC30F, por medio del programa Visual Basic, para observar gráficamente los espectros de una señal.
![Page 24: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/24.jpg)
![Page 25: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/25.jpg)
7. Objetivo Específico
Verificar la Transformada Rápida de Fourier en el dsPIC30F, por medio de una aplicación llamada selector de materiales, para comprobar su funcionamiento sin necesidad de utilizar un computador.
![Page 26: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/26.jpg)
Diagrama Esquemático del Selector de materiales
![Page 27: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/27.jpg)
Módulos del Prototipo
![Page 28: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/28.jpg)
Módulos Principal Prototipo
![Page 29: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/29.jpg)
![Page 30: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/30.jpg)
Prueba de validación del algoritmo de la FFT implementado
![Page 31: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/31.jpg)
Prueba de verificación del algoritmo con Matlab
![Page 32: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/32.jpg)
Prueba en tiempo Real
![Page 33: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/33.jpg)
CONCLUSIONES• En el desarrollo de este proyecto se logro
implementar con éxito la transformada Rápida de Fourier (FFT) sobre un controlador de señales digitales dsPIC30F4011, para lo cual fue necesario estudiar, analizar y comprender con profundidad tanto la FFT como el dispositivo utilizado.
• Los resultados fueron verificados comparando la transformada con otras implementaciones, en este caso comparando los resultados con MATLAB.
![Page 34: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/34.jpg)
• El dispositivo quedo con la capacidad de conmutar el número de muestras tomadas sobre la señal y la velocidad de muestreo, lo que logra que el dispositivo sea más versátil para el análisis de diferentes tipos de señales.
• Esta tesis aporta una explicación importante sobre cómo se procesan los números complejos, ya que la transformada es una operación compleja, y la forma en que se calculan y almacenan los factores de giro (WN
k).
![Page 35: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/35.jpg)
• Se desarrollo una aplicación utilizando la FFT del dsPIC enfocada al reconocimiento de materiales sólidos. Se logró discriminar materiales como el hierro, aluminio, bronce y teflón en forma de cilindros, también se logro discriminó una lámina de aluminio, logrando diferenciar no solo el material sino la geometría en base al espectro generado por cada material.
![Page 36: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/36.jpg)
• Una desventaja importante, se encuentra en la memoria RAM del dsPIC30F4011 ya que es una limitación para la cantidad de muestras que se pueden almacenar, limitando así la resolución de la transformada.
![Page 37: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/37.jpg)
SUGERENCIAS, RECOMENDACIONES Y LIMITES DEL SISTEMA
• El primero hace referencia a los límites de memoria, por lo que es necesario buscar y estudiar formas de ampliar la memoria o modificar la forma de almacenamiento.
• El segundo tema importante es manejar mas información manteniendo la velocidad de operación y buscar nuevas formas de acoplar varios dispositivos para que funcionen en forma paralela, partiendo la rutina de la mariposa en varios dispositivos.
![Page 38: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/38.jpg)
• El segundo tema importante es manejar mas información manteniendo la velocidad de operación y buscar nuevas formas de acoplar varios dispositivos para que funcionen en forma paralela, partiendo la rutina de la mariposa en varios dispositivos.
![Page 39: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/39.jpg)
BIBLIOGRAFÍA• ANGULO USATEGUI, José María y ANGULO MARTÍNEZ, Ignacio. Microcontroladores PIC diseño
práctico de aplicaciones. 2 ed. España: McGRAW-HILL. ISBN 958-41-0131-5.
• ANGULO USATEGUI, José María y ANGULO MARTÍNEZ, Ignacio. Microcontroladores PIC diseño práctico de aplicaciones segunda parte: 16F87X. 2 ed. España: McGRAW-HILL. ISBN 84-841-2858-3.
• ANGULO USATEGUI, José María; ANGULO MARTÍNEZ, Ignacio y ROMERO YESA, Susana. Microcontroladores PIC diseño práctico de aplicaciones segunda parte: PIC16F87X, PIC18FXXX. 2 ed. España: McGRAW-HILL. ISBN 84-841-4627-1.
• ANGULO USATEGUI, José María; ANGULO MARTÍNEZ, Ignacio; ETXEBARRIA RUIZ, Aritza y TRUEBA PARRA, Iván. dsPIC Diseño práctico de aplicaciones. 1 ed. España: McGRAW-HILL. ISBN 84-81-5156-9.
• OPPENHEIM, Alan y SCHAFER, Ronald. Tratamiento de señales en tiempo discreto. 2 ed. Mexico: PRENTICE HALL Hispanoamericana S.A. ISBN 970170116-X.
• MITRA, SANJIT K., Procesamiento digital de señales, Editorial, Mc Graw-Hill • MANOLAKIS, Dimitris; POAKIS, Jhon. Tratamiento digital de señales. 3 ed. PRENTICE HALL. ISBN 84-
8322-000-8.
![Page 40: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/40.jpg)
• NILSSON, James. Circuitos Eléctricos. 4 ed. E.U.A: Wesley Iberoamericana, S.A. ISBN 0-201-60101-x. • SILER, Brian y Spotts, Jeff. Visual Basic 6. Especial ed. España: PRENTICE HALL. ISBN 84-8322-104-7
• CEBALLOS SIERRA, Javier. Visual Basic curso de programación. 5 ed. Madrid, España: RA-MA. ISBN 970-15-0350-3.
• Transformada Rápida de Fourier. Disponible en internet: <http://150.214.178.55/jaguilar/tts/tutorial/capitulo4/4_transf_rapidas.htm>
• dsPIC30F, Family Reference Manual DATA SHEET. Disponible en Internet:<http://www.microchip. com>
• dsPIC30F4011 DATA SHEET. Disponible en Internet: <http://www.microchip.com>
• ROMULO, Miguel. Implementación de la FFT en hardware aplicada a recepción en OFDM. Disponible en: <http://sisbib.unmsm.edu.pe/BibVirtualdata/publicaciones/electronica/Diciembre_2000/Pdf/3_Implementa.pdf>
• ACOSTA, Julián. VELASCO, Jaime. FFT de 8 Puntos IEEE754 Sintetizado en FPGA. Disponible en: http://bionano.univalle.edu.co/FFT_8_SPS05.pdf.
![Page 41: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/41.jpg)
Dedico esta Tesis a Dedico esta tesis a mis padres Luis Ernesto Amézquita Rivera y Ana Victoria Rivera quienes junto con mis hermanos Luis Ernesto Ingeniero Electrónico, Orlando Alexander Diseñador Industrial, Henry Mauricio Ingeniero de Sistemas y en cada instante de mi vida han formado parte del sueño que hoy es una realidad pues fueron ellos los que me animaron cuando sentía desfallecer y no permitieron que yo formara parte del alto porcentaje de Colombianos que inician una carrera profesional y no logran culminarla por uno u otro motivo. Agradezco a mi directora de proyecto Ingeniera Ángela Viviana Peña Puerto también a mi compañera sentimental Angélica Mayerlí Barrera López Locutora y Productora de Medios Audiovisuales y un amigo que conozco desde el colegio Oscar Ricardo Montero Tovar Ingeniero Electrónico que me asesoro y me aconsejo durante todo el proyecto, también agradecer a mis amigos, compañeros y docentes pues ellos también formaron parte de este largo camino y me ayudaron a dar pasos firmes para hoy lograr llegar a la meta, la vida está llena de peldaños y bellos paisajes que vi reflejados en cada uno de los ya nombrados.
![Page 42: Implementación de la FFT en un dsPIC30F con control del número de muestras y velocidad de muestreo](https://reader033.vdocuments.site/reader033/viewer/2022052903/55720f6c497959fc0b8c9280/html5/thumbnails/42.jpg)
GRACIAS