Autor Tema: Problemas con FFT en el dspic30f4013  (Leído 3912 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado marielys_ng

  • PIC10
  • *
  • Mensajes: 3
Problemas con FFT en el dspic30f4013
« en: 19 de Marzo de 2009, 11:28:57 »
 estoy desarrollando mi proyecto de titulo y se trata de lo siguiente:

Programar la FFT en un dspic30F4013, el cual estara tomando lecturas de sensores conectados a los ADC del dspic para realizar  FFT  de ests datos. Necesito ayuda, alguien logro programar la FFT en el dspic30f4013 exitosamente??????????

Desconectado mariano_pic

  • PIC18
  • ****
  • Mensajes: 498
    • Software Electronica Microncontroladores
Re: Problemas con FFT en el dspic30f4013
« Respuesta #1 en: 19 de Marzo de 2009, 14:13:28 »

  Si no te alludan te doy la idea de como conseguir ayuda, registrate en el foro de microchip, usa el traductor de google para redactar tu pregunta en ingles y posteala en el foro adecuado, yo lo hago cuando nadie me alluda en español.  :lol:
Necesitas ayuda para tu proyecto electronico?
buscame, tal ves pueda colaborarte.
Blog: http://electronicosembebidos.blogspot.com.co/
mail: electronicosembebidos@gmail.com
Mi grupo de facebook: https://www.facebook.com/groups/ProgramandoPics/

Desconectado ema

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1078
Re: Problemas con FFT en el dspic30f4013
« Respuesta #2 en: 19 de Marzo de 2009, 18:15:08 »
En este mismo foro ya se trato el tema te recomiendo que utilices el buscador y veras que esta lleno de respuestas.

Saludos

Desconectado marielys_ng

  • PIC10
  • *
  • Mensajes: 3
Re: Problemas con FFT en el dspic30f4013
« Respuesta #3 en: 19 de Marzo de 2009, 19:19:22 »
Ya me canse de buscar en el foro, y no consigo respuestas... Las referencias que aparecen no logran compilar exitosamente....
Tengo dudas con respecto a la definicón de los Y y X space en el compilador C30, asi de como esta escalada la salida en magnitud de la FFT....

Mi proyecto trata sobre muestrar popr el ADC del DSPIC30F4013 una señal senoidal rectificada de onda completa (3 volt) proveniente de un CAS cuya entrada es una señal AC de 120Volt rms y 60Hz. Sobre la señal acondicionada (3volt), es decir la muestreada por el ADC, aplicar la FFT de 64, 128, 256 o 512 puntos, para luego mostar en LCD la magnitud de la compenente espectral de mayor energía, así como la frecuencia.

Proporciono el control del sistema para la configuración por el usuario atraves de un teclado matricial, que opero con un solo pin atraves del ADC. Todo esto es en tiempo real; por lo que tengo programado un RTC via I2C(DS1307). Luego los resultados obtenidos por la FFT deberia enviarlos via UART a un PIC18F4550 que se encargara de almacenarlso en una memoria SD.

Tengo lista todas las demas rutinas: manejo LCD, manejo del key, manejo del bus I2C, manejo del UART, control por protocolo SPI de la SD memory....

Pero  no puedo ensamblar todo el proyecto porque no logro hacer funcionar lo de la FFT.... Necesito ayuda urgentemente

Desconectado Renatox_

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 541
    • máquinas cnc
Re: Problemas con FFT en el dspic30f4013
« Respuesta #4 en: 20 de Marzo de 2009, 00:26:00 »
Hola, los que han hecho ftt en este foro que recuerde son vtasco y blackat, ellos te podrían ayudar, si es para frecuencias bajas yo lo programaria en flotante es más fácil y haces el paso a paso como dice la teoría depaso que aprendes.

saludos.
control de movimiento

Desconectado vtasco

  • PIC12
  • **
  • Mensajes: 72
Re: Problemas con FFT en el dspic30f4013
« Respuesta #5 en: 20 de Marzo de 2009, 03:53:09 »
Hola, con la instalación de C30, viene un ejemplo de FFT.

En líneas generales, necesitas agregar los twiddles factors a tu proyecto, que son constantes necesarias para el algoritmo de la FFT, tb. debes saber a qué frecuencia muestrearás para que cuando identifiques el bin de mayor energía, puedas saber a qué frecuencia corresponde.

El algoritmo que entrega microchip, puede procesar señales complejas --> el vector de entrada debe ser complejo (con la parte compleja cero para el caso de señales reales como las recogidas por un sensor).

La señal de entrada debe estar limitada al rango 0.5, -0.5, para que no se produzca overflow en los cálculos intermedios.
El resultado de la FFT, está escalado  por 1/N, donde N es el largo del vector que entra a la función FFT (puede ser 32, 64, 128, 256 o 512)


El space X e Y de memoria, se refiere a que la RAM (o memoria de usuario) está dividida en dos, y es posible almacenar datos en ambos espacios y acceder a ellos en un ciclo, lo que agiliza mucho el calculo de las funciones DSP.

Podrías empezar compilando el ejemplo que viene en el propio C30.

saludos!