Translate

lunes, 30 de septiembre de 2013

Monitor del ritmo cardíaco

Vamos a volver a usar el sensor de luz TSL235 en una aplicación más interesante: monitorizar nuestro ritmo cardíaco.  ¿Cómo hacerlo con un sensor de luz? 

La idea viene explicada en una "application note" dedicada a estos sensores:


La configuración propuesta se muestra en la imagen adjunta. Un LED (u otra fuente de luz) ilumina un dedo, detrás del cuál se encuentra nuestro sensor. A cada pulsación del corazón, un nuevo flujo de sangre llega al dedo, cambiando su "opacidad" a la luz. El objetivo es detectar dichas oscilaciones, determinar su frecuencia fundamental y a partir de ahí el ritmo cardíaco en pulsaciones por minuto (ppm).

En la aplicación citada antes, el microcontrolador solo recoge los datos del sensor y los manda al PC para su proceso. La principal mejora de mi proyecto es que el PIC no sólo captura la señal, sino que la procesa y obtiene el ritmo cardíaco. De esta forma tenemos un sistema autónomo.

Al igual que en otras entradas el código del PIC se complementa con un programa MATLAB que nos permite ver gráficamente los datos sobre los que trabajamos y los resultados obtenidos. Recalcar que el programa MATLAB sólo visualiza los datos: todos los cálculos se llevan a cabo en el PIC.

En este corto video podemos visualizar los datos obtenidos tras un pre-proceso de los datos del sensor. Es sobre esta señal sobre la que el PIC trabaja para estima su periodo:



Archivos de código asociados a esta entrada:

     PIC:   pulse_monitor2.c  

     MATLAB: heart_monitor.m