Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2. Resumen:
Este informe describe el desarrollo e implementacin sobre FPGA de un procesador
digital de seales capaz de computar la envolvente instantnea de una seal analgica
muestreada a 625 Kmuestras/s mediante la Transformada Discreta de Hilbert. Se eligi
esta temtica en virtud de su valor acadmico para la teora de seales, como tambin
por su espectro de aplicaciones de procesamiento digital en el dominio temporal. El
sistema se model desde alto nivel con Matlab/Simulink, y se implement sobre una
plataforma Xilinx Spartan 6 (Digilent Nexis3 con AD1 y DA1 PMODs). Se eligi un
diseo basado en filtro FIR de orden 32 con aproximacin equiripple, utilizando la
herramienta de diseo de filtros FDATool. Se utilizaron las herramientas System
Generator y ISE Design Suite 14.3 de Xilinx. Las pruebas de simulacin muestran una
performance satisfactoria, conforme a lo diseado. Gracias a las caractersticas del filtro
adoptado, el uso de slices DSP se redujo a 8, un 25% del orden del filtro.
3. Introduccin:
El procesamiento digital de seales en tiempo real es de sumo inters tanto en
las comunidades cientfico/tecnolgicas como en las empresariales, y se ha vuelto parte
de nuestra vida cotidiana. Desde hace ya algunos aos, la capacidad y la velocidad de
los circuitos FPGA han permitido abordar nuevas y demandantes aplicaciones realtime,
e incorporar herramientas matemticas de anlisis de seales en sus versiones de tiempo
discreto, las que previamente eran impracticables.
Este es el caso de la Transformada de Hilbert, la cual se mantuvo en un segundo
plano en la era analgica, pero que ahora digitalmente puede aportar nuevos enfoques
de procesamiento de seales en el dominio temporal para un espectro aplicativo mucho
ms amplio. Algunos ejemplos actuales de su uso progresivo son: el anlisis acstico de
auditorios [3,4], aplicaciones de anlisis de imgenes ultrasnicas y rumores cardacos
en medicina [7,6], anlisis de vibraciones en molinos elicos [9], deteccin de fallas en
rodamientos de maquinarias [8], parlantes direccionales [11], modulacin y
demodulacin de banda lateral nica [10], etc.
El PMOD AD1 tiene: 2 x conversores A/D 12 bits, 1 msps c/u, 0 a 3,3 volt, salida SPI
El PMOD DA1 tiene: 2 x conversores D/A 8 bits, 0 a 3,3 volt, salida SPI
En los dos casos la conversin de SPI a paralelo se lleva a cabo mediante el protocolo
wishbone. Los mdulos VHDL que implementan las conversiones son adap_AD1.vhd,
fsm_ad1.vhd, adap_DA1.vhd, fsm_da1.vhd, y los de manejo de reloj son div1.vhd y
div2.vhd (provistos por el instructor).
5. Fundamentos tericos:
Existen varias formas matemticas para derivar las expresiones de la
transformada de Hilbert de tiempo contnuo [5]. Por una cuestin del contexto y de
simplicidad, se elige evaluar la transformada directa e inversa de Fourier de la funcin
signo, ya sea signo(t) o signo(), las cuales se muestran en la Figura 1:
Figura 1.
Es decir, el kernel (-1/.t ) o (-2i/) representa la antitransformada de Fourier de
la funcin signo en el dominio de la frecuencia o del tiempo, respectivamente.
Se define a la transformada de Hilbert como la convolucin de la funcin con el
kernel (-1/ .t):
La seal analtica es una funcin compleja que tiene como parte real a la funcin
f(t)y como parte imaginaria a su transformada de Hilbert, que est en cuadratura.
Como ejemplo simple se toma el caso f(t)=cos( .t):
Envolvente instantnea:
Fase instantnea:
Frecuencia instantnea:
El siguiente cuadro muestra las mismas 3 seales pero ahora con el sistema excitado por
un chirp de amplitud unitaria y frecuencia variable en un rango 1 a 20 (se muestra la
mitad del rango bajo solamente). Se puede apreciar que, superado el transitorio del
inicio de la excitacin, la seal en cuadratura y en fase se mantienen a 90 grados de
separacin entre s en todo el rango de frecuencias del chirp. Consecuentemente, la
envolvente instantnea se establece rpidamente en el valor 1 que se mantiene hasta el
final del barrido. En simulacin, el sistema se comporta como estaba previsto.
Una vez dentro del proyecto ISE (Project Navigator), se incorporaron los
archivos del proyecto top_tutorial.vhd, los otros de manejo de los A/D, D/A, y reloj
(div1.vhd, div2.vhd, fsm_ad1.vhd, fsm_da1.vhd, adap_AD1.vhd, adap_DA1.vhd) y de
pinout (pinout.ucf) para formar un nico proyecto integrando el diseo de
procesamiento realizado, con la estructura de hardware y de manejo de los perifricos
de entrada y salida analgica, el reloj, previstos por los profesores para el curso en la
placa Nexys3/PMODs.
Se procedi siguiendo las etapas: Synthesize XST > Implement (Translate, Map, Place
and Route) > Generate Programming File sin errores hasta generar sin errores el archivo
de programacin top_tutorial.bit
8. Discusin de resultados:
Los resultados del diseo y simulacin fueron satisfactorios, y concuerdan plenamente
con las especificaciones para el problema. Se lleg a generar el archivo de
programacin y se baj a la placa Nexys3 pero no hubo tiempo material para hacer las
pruebas de funcionamiento que confirmaran la correcta ejecucin en la plataforma
target.
9. Conclusiones:
La conclusin tcnica ms importante del trabajo y del curso es que hoy es posible
desarrollar aplicaciones de procesamiento de seales de alta performance y complejidad
a partir de un diseo algortmico en herramientas de diseo de alto nivel. Y que estas
herramientas tambin pueden ayudar en la docencia para bajar a tierra conceptos
abstractos de procesamiento digital de seales.
10. Referencias:
[1] Xilinx, Floating-Point Operator v6.0. DS816 January 18, 2012
[2] Xilinx, IP LogiCORE FIR Compiler v5.0. DS534 March 1, 2011
[3] Thrane, N. (1984). The Hilbert Transform. B&K Technical Review, (3-1984).
[4] Thrane, N., Wismer, J., Konstantin-Hansen, H., & Gade, S. (1999). Practical use of the
Hilbert transform. B&K Application Note No. bo0437-11.
[5] Liu, Y. W. (2012). Hilbert transform and applications. INTECH Open Access Publisher.
[6] Hernndez Esteban, A., Toledo Moreo, F. J., Martnez lvarez, J. J., & Ruiz Merino, R. J.
(2004). FPGA-based implementation of the instantaneus frequency estimation of
phonocardiographic signals. International Federation of Automatic Control.
[7] Hassan, M. A., & Kadah, Y. M. (2013). Digital Signal Processing Methodologies for
Conventional Digital Medical Ultrasound Imaging System.American Journal of Biomedical
Engineering, 3(1), 14-30.
[8] Alegranzi, S. B., Gonalves, J. F., & Gomes, H. M. (2014). BALL BEARING VIBRATION
MONITORING FOR FAULT DETECTION BY THE ENVELOPE TECHNIQUE. Blucher
Mechanical Engineering Proceedings, 1(1), 4113-4125.
[9] Teng, W., Wang, F., Zhang, K., Liu, Y., & Ding, X. (2014). Pitting fault detection of a wind
turbine gearbox using empirical mode decomposition.Strojniki vestnik-Journal of Mechanical
Engineering, 60(1), 12-20.
[10] Basit, A., Aziz, W., & Zafar, F. (2012). Implementation of SSB Modulation/Demodulation
using Hilbert Transform in MATLAB. Journal of Expert Systems, 1(3), 79-83.
[11] Liang, J., Gao, S., & Li, Y. (2011, December). Design of audio directional system based on
FPGA. In Transportation, Mechanical, and Electrical Engineering (TMEE), 2011 International
Conference on (pp. 613-616). IEEE.