Video-tutorial de la semana

martes, 31 de agosto de 2010

Monitoreo de Ritmo Cardiaco usando la tarjeta de sonido de una PC -- Parte III

Esta es la tercera entrega del monitoreo de señales ECG, trata del desarrollo del software.

Desarrollo del Software

Esta parte fue bastante exhaustiva, puesto que se desconocía completamente como manipular la tarjeta de sonido de una computadora y se requería de algún software o librería que me permitiera por ejemplo obtener los valores de la tarjeta de sonido, analizarlos para después graficarlos, algo que era nuevo para nosotros.

Se inició con búsquedas en la red, usando como lenguaje Java, pensando en alguna clase o paquete de clases para Java, pero no se obtuvo gran cosa por este lado, después pensamos en Microsoft y su plataforma de desarrollo .Net, y se dio en el clavo, se logro encontrar una serie de librerías especialmente usadas para la manipulación del sonido desde la tarjeta de audio de cualquier PC, la librería corre sobre el .Net de Microsoft, es llamada AudioLab de la empresa Mitov Software, se puede descargar desde la página de Mitov.



AudioLab

AudioLab es un conjunto de componentes para el procesamiento de audio. La biblioteca permite la captura, la reproducción, mezcla, complejas manipulaciones de audio, análisis y visualización, con prácticamente cero líneas de código del programa.

La librería estaba perfecta para nuestros propósitos, así que la descargamos desde la página de Mitov, y se inicio el estudio para aplicarla en la adquisición de datos desde la tarjeta de sonido.

La librería está diseñada para que se ejecute en varios entornos de programación entre ellos como ya se mencionó el .Net de Microsot, después de instalar la librería AudioLab, se procedió a descargar alguna herramienta de Microsoft, la elección fue el Visual C# 2008 Express Edition.

Visual C# 2008 Express Edition.

Microsoft Visual C# 2008 es un lenguaje de programación diseñado para crear una amplia gama de aplicaciones que se ejecutan en .NET Framework de Microsoft, C# es simple, eficaz, con seguridad de tipos y orientado a objetos, C# permite desarrollar aplicaciones rápidamente por eso fue el elegido.

Para descargar el Visual C# solo visita el siguiente enlace y desde ahí se puede descargar:


Integración del AudioLab en el Visual C# 2008 Express Edition
El AudiLab se debe integrar al C# para poder usarlo, esto se hace fácilmente siguiendo las instrucciones que nos da Mitov y que viene en la documentación de la librería, la siguiente figura muestra como queda la librería AudioLab ya integrada en C#.

En este punto, basta con arrastrar y soltar los componentes de AudioLab en el Form de C#, aquí radica la facilidad de AudioLab, pero ahora regresemos al proyecto.

Diseño del Software
El diseño del software para el proyecto se dividió en los “Forms” qué se muestran en la tabla siguiente


 Formulario                       Descripción                           
Form de fondo           Formulario de presentación del programa
Form menú               Formulario que presenta el menú con tres opciones
Form registro           Formulario de registro del paciente bajo prueba
Form monitoreo          Formulario de monitoreo del paciente


En la siguiente sección se muestra una imágen de cada uno de los formularios.

Form de Fondo
Este form es la presentación del programa, la form aparece como fondo al inicio, no tiene código de programación solo contiene elementos Picturebox para las imágenes que se ven en ella.
Form Menú Principal
La figura muestra el form Menu o principal, esta contiene tres botones para las tres opciones del menú principal: registro (del paciente), monitoreo (de la señal ECG) y salir.


Al iniciar solo tiene dos funciones habilitadas, el registro y la opción de salir. Al dar clic en el otón de Registro el software abre un nuevo formulario para registrar los datos del paciente, esto con la finalidad de registrar el paciente para poder obtener sobre todo la edad, es la que interesa, recuerde que a diferentes edades la señal ECG es más rápida o más lenta. La imágen siguiente muestra este formulario.
Después de registrar al paciente se procede al monitoreo, dando clic en el botón de monitoreo del menú principal al hacerlo, se abre una form como la siguiente



Ahí se grafican en tiempo real los datos de la señal ECG y hace un análisis para saber si el paciente está sano.

Justo en esta form se agregaron los componenetes de AudioLab, se usaron los siguientes:

• AudioIn .- Para capturar la señal ECG.

• AudiotoReal – Para obtener los valores a graficar se usa junto con el componente GenericReal.

• lowPass –para aplicar un filtro pasabajas por software.

• GenericReal – Junto con el AudiotoReal generan los eventos para la captura de datos que se van a gráficar.

• AudioOut – Para pruebas al programa.

Otro componente que se uso también de Mitov fue el Scope que sirve para graficar, pero está en otra librería no en AudioLab, la figura siguiente muestra los componentes usados de AudioLab dentro de C#


Bueno eso es todo por lo pronto, de esta tercera entrega, en la siguiente se mostrarán algunos resultados del software y hardware.

2 comentarios:

  1. Donde puedo encontrar mas informacion sobre el uso de AudioLab, quiero utilizarlo para aplicarlo al analisis de señales de audio para detectar cuerpos en el espacio. Si puedes facilitarme informacion, se te agrede de antemano.

    ResponderEliminar
  2. Hola estimado, soy Eduardo, te escribo desde Santiago de Chile. Estoy haciendo mi tesis para titularme y resulta que estoy usando las librerías de mitov en dónde estoy buscando analizar un wav y hacer que este me arroje los valores máximos en un edit tal y como lo hiciste con la frecuencia máxima. Podrías ayudarme a aclarar este punto por favor? Te dejo mi correo electrónico eduardo.molina.me@hotmail.com, para mantenernos en contacto. Gracias de ante mano. Saludos

    ResponderEliminar