INGENIERÍA BIOMÉDICA MATERIA: PROCESAMIENTO DIGITAL DE SEÑALES
Antonio Pacheco PiñaPráctica o problema3 de Noviembre de 2016
2.464 Palabras (10 Páginas)375 Visitas
CARRERA: | INGENIERÍA BIOMÉDICA |
MATERIA: | PROCESAMIENTO DIGITAL DE SEÑALES | GRUPO: | 8DV |
NOMBRE MAESTRO: | Dr. GUSTAVO MARTINEZ ESCALANTE |
NÚM. PRÁCTICA: | 1 | FECHA DE ENTREGA: | 18 DE OCTUBRE DE 2016 |
NOMBRE DE LA PRÁCTICA: | FILTROS DIGITALES FIR |
INTEGRANTES DEL EQUIPO | MATRÍCULA |
CORAL MORALES LUIS | E12080289 |
MENDOZA BOTE LUIS | |
MENESES MENA MARTHA | E12081809 |
PACHECO PIÑA MIGUEL | E12081488 |
PÉREZ CARRILLO GENNY | E12081508 |
SALAZAR ESCALANTE CECILIA | E12080275 |
REPORTE DE LA PRÁCTICA
INTRODUCCIÓN
Durante muchos años en el ámbito biomédico se habían utilizado filtros para poder obtener una señal fisiológica limpia; para poder filtrar la señal se trabajaba con filtros analógicos, los cuales se tenían que construir con componentes electrónicos como amplificadores operaciones, resistencias y capacitores lo que hacía que el circuito del equipo biomédico sea demasiado grande lo que por ende ocasionaba la grandeza a los equipos. Con el paso de los años el avance tecnológico ha ido avanzando logrado obtener filtros que se puedan construir de manera digital a través de un software, con la aparición de estos se redujo el tamaño y peso de los equipos así como obtener una señal mucho más limpia y apreciable para la vista del ser humano. Gracias a la ayuda de los filtros digitales se han podido mejorar los estudios clínicos que se realizan a base de una señal fisiológica del cuerpo como lo es un EMG, ECG, EOC, entre otros, teniendo así un análisis clínico más seguro. |
OBJETIVOS DE LA PRÁCTICA
Diseñar una etapa de filtrado digital para un ECG utilizando un software Matlab. |
MARCO TEÓRICO
Los filtros digitales son sistemas son usados para modificar el espectro de una señal, mediante el uso de hardware digital como bloque funcional básico. Se utilizan, al igual que los filtros análogos, para acondicionar señales según características específicas, extraer información de ellas o separar dos o más señales previamente combinadas. Consisten fundamentalmente en un algoritmo mediante el cual una señal digital o secuencia numérica denominada “entrada” se transforma en una segunda secuencia de números denominada señal digital de salida. [1] Los filtros digitales se caracterizan, en términos generales, por ser sistemas predecibles, flexibles, simulables, consistentes y precisos. Por una parte, es posible cambiar sus especificaciones mediante la reprogramación, sin la adición de componentes discretos como capacitores, resistores o bobinas (normalmente con un tamaño considerable y con variaciones en el funcionamiento de pendientes de la temperatura o la humedad). De otro lado, su carácter digital permite calcular y simular su repuesta usando procesadores de uso general, y también implementar topologías no realizables mediante el uso de componentes físicos convencionales (Figura 1). En síntesis, estos sistemas incorporan las ventajas propias de los procesadores digitales, al filtraje se señales, si se quiere en tiempo real. [1][pic 3]
(Figura 1) Señal filtrada a través de un software. El diseño de filtros digitales normalmente involucra una etapa de aproximación, en la que se genera una función de transferencia que satisface las especificaciones de la aplicación, y en donde normalmente se estudian respuestas tanto en el dominio de la frecuencia como del tiempo. Luego se lleva a cabo la realización, en la que la función de transferencia se expresa en términos de una topología o redes de filtros, según las características del problema y la disponibilidad de recursos en el procesador. Los dos pasos anteriores parten de la base de un sistema de precisión infinita, y es por eso que se debe tener una etapa de implementación, relacionada con el hardware disponible y las rutinas de programación del procesador seleccionado. Este, por tener una precisión finita, obliga al diseñador a estudiar los efectos de los errores matemáticos en la respuesta del filtro. En lo referente a este trabajo de grado, las etapas de aproximación y realización se ejecutan por medio de MATLAB y la etapa de implementación se fundamenta en las herramientas de desarrollo del DSK. [2] Una amplia variedad de filtros digitales es descrita por medio de una ecuación de diferencias lineal de coeficientes constantes, que relaciona la secuencia de entrada del filtro x(n) y la secuencia de salida del mismo y(n):
Estos sistemas pueden ser representados por su secuencia de respuesta al impulso h(k) donde k=0,1,2,.., y la señal de salida se obtiene a partir de operaciones de suma y convolución de dicha secuencia con la señal digital de entrada. En términos de su repuesta al impulso los filtros digitales se clasifican de dos formas: FIR (Finite Impulse Response) o filtros de respuesta finita al impulso; e IIR (Infinite Impulse Response) o filtros de respuesta infinita al impulso, que deben su comportamiento a la existencia de lazos de realimentación en su estructura. [2][pic 4] Los filtros digitales lineales e invariantes en el tiempo pueden clasificarse de acuerdo a la longitud de su respuesta impulsiva h[n] como IIR, cuando la respuesta tiene duración infinita o FIR, si su duración es finita. Esta respuesta impulsiva h[n], n = 0, 1, 2, . . . caracteriza completamente el filtro, a punto tal que las señales de entrada y salida están relacionadas por la suma de convolución, que para filtros IIR toma la forma [3][pic 5]
Y para los filtros FIR es[pic 6] Diseño de filtros FIR con Matlab. Este proceso corresponde a la etapa de aproximación descrita previamente en la introducción de este capítulo. Los pasos que normalmente se sigue son [4]: -Escoger una respuesta ideal, normalmente en el dominio de la frecuencia. -Escoger un tipo particular de filtro. -Escoger un criterio de medida para valorar la aproximación. -Definir un método para seleccionar la mejor aproximación según el criterio de aproximación. Estos pasos son repetidos hasta encontrar unas especificaciones de filtro que se ajusten al problema inicial. Es posible que en esta etapa del diseño se quiera redefinir la respuesta ideal, el tipo de filtro o el criterio de medida. [4] |
MATERIAL UTILIZADO
-Amplificador de Instrumentación AD620. -Amplificador Operacional LM741. -Porta circuitos integrados. -Resistencias de 220kΩ, 1MΩ, 22kΩ, 6.8kΩ, 10kΩ y 1kΩ. -Capacitores cerámicos de 0.1µF. -Cable. -Placa fenólica. -Potenciómetro. -Electrodos. -Multímetro. -Fuente dual. -Osciloscopio -Cautín y estaño. -Computadora. -Software Matlab. -Arduino. |
DESARROLLO EXPERIMENTAL
1.- Diseñar y construir un ECG y comprobar su funcionamiento. (Figura 1)[pic 7]
[pic 8] 2.- Utilizando un medio de adquisición de datos, adquirir 1 minuto de la señal ECG a 2KHz de frecuencia de muestreo en un mínimo de 10 bits de resolución. (Figura 3)[pic 9][pic 10] [pic 11] 3.-Obtener la FFT de la señal ECG y describirla.[pic 12] 4.- Diseñar en Matlab una etapa de Filtrado adecuado, filtro pasa banda (0.1-100 Hz), filtro Notch para 45-65 Hz. (Figura 4a y 4b) En este apartado se hace un código en Matlab adecuado para simular un filtro digital para poder tener una señal de ECG libre de ruido. (Anexo 1) [pic 13][pic 14] Figura 4a Filtro pasa-banda Figura 4b Filtro Notch 5.- Filtrar la señal la señal usando el comando filter (convolución). Este proceso se puede apreciar en el código de MatLab puesto que al momento de realizar el proceso de filtrado se debe tener los parámetros del filtro así como el puerto a utilizar en Arduino. (Anexo 1) 6.- Analizar la señal resultante y en caso dado ajustar parámetros del filtro a fin de obtener mejores resultados. 7.- Crear un programa que basado en la ecuación de los filtros FIR realice el proceso de filtrado. En este apartado se optó por utilizar un programa para visualizar que la correcta función del filtro anteriormente diseñado en un software. Se utilizó el software de MatLab y se tomaron los valores de b, que viene siento el muestreo que nos proporcionó dicho programa, esos valores se utilizan en nuestro caso Arduino para visualizar la señal del ECG en tiempo real filtrada. (Anexo 2) 8.- Comprobar resultado. 9.- Bajar código a Microcontrolador. (Anexo 2) Se optó por utilizar Arduino para poder escribir un código y el filtro sea visible. (Anexo 2). 10.- Visualizar todo vía computadora. |
...