proyecto fin de carrera -...
TRANSCRIPT
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 1
E.T.S.I. de Informática I.T.I de Sistemas
Universidad de Málaga
Proyecto Fin de Carrera
Autora: María José Morón Fernández Directores:
D. José María Álvarez Palomo D. Eduardo Casilari Pérez
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 2
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
1. Introducción
2. Metodología Proceso Unificado: Particularización
3. Diseño e implementación
4. Pruebas realizadas
5. Conclusiones y Líneas futuras
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Introducción
3
Personal de Asistencia
Centro Hospitalario
GPRS/ UMTS
WLAN
Servidor de Control Central
Internet
Aplicación de Control y Monitorización
Pulsioxímetro Bluetooth
Bluetooth
Nodo de Control
WPAN
OBJETIVO: Desarrollar un prototipo de un sistema de Telemonitorización Inalámbrico de Pulsioximetría (TeMiP)
Nodo de Control: NC Servidor de Control Central: SCC Aplicación de Control y Monitorización: ACM
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 4
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
1. Introducción
2. Metodología Proceso Unificado: Particularización
3. Diseño e implementación
4. Pruebas realizadas
5. Conclusiones y Líneas futuras
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Metodología Proceso Unificado: Introducción
5
Fuente: I. Jacobson, G. Booch, y J. Rumbaugh. The Unified Software Development Process. Addison-Wesley Professional, February 1999
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Metodología Proceso Unificado: Particularización (I)
1. Fase INICIAL: Flujo de trabajo de Requisitos: En una versión inicial del DGR:
• Se ha descrito el problema a resolver y, también el producto. • Se ha descrito el perfil de usuario y su entorno, especificando dos modos de
funcionamiento: – Modo remoto – Modo local
• Se han identificado requisitos funcionales y no funcionales • Se ha esbozado el modelo de casos de uso, completado en la fase de
elaboración. Flujo de trabajo de Diseño: Se ha definido la arquitectura candidata,
especificando los principales subsistemas y las interfaces
6
Se ha refinado el DGR, incluyendo una descripción del entorno de despliegue
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Metodología Proceso Unificado: Particularización (II)
7
Interfaz Tecnología de Comunicación
Protocolo de Comunicación
Pulsioxímetro ↔ Nodo de Control Bluetooth RFCOMM
Nodo de Control ↔ Servidor Remoto 802.11 / GPRS / UMTS HTTP
Servidor Remoto ↔ Aplic. Consulta 802.11 / Ethernet HTTP
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Metodología Proceso Unificado: Particularización (III)
2. Fase de ELABORACIÓN: Flujo de trabajo de Requisitos: Se han detallado los casos de
uso, utilizando diagramas de interacción e identificando relaciones entre ellos
Flujo de trabajo de Diseño: Se ha refinado la arquitectura: • SCC: Integrado por dos componentes web, comunicados por JMS • ACM: Implementada como un Applet
Flujo de trabajo de Implementación y Prueba: Obtención de la línea base de la arquitectura:
• 1ª iteración: Requisitos funcionales del componente «NC» asociados al «Modo Local»
• 2ª iteración: Transmisión de datos al servidor • 3ª iteración: Consulta de datos desde la aplicación «ACM»
8
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Metodología Proceso Unificado: Particularización (IV)
3. Fase de CONSTRUCCIÓN: Flujo de trabajo de Requisitos: Revisión de los requisitos de la
aplicación «ACM» ⇒ GUI prevista en la fase anterior no adecuada. Flujo de trabajo de Diseño: Modificación del diseño de la GUI de
aplicación «ACM»: Applet → JWS. Flujo de trabajo de Implementación y Prueba: Funcionalidad
requerida para: • 1ª iteración: Configuración de parámetros desde la aplicación «ACM». • 2ª iteración: Monitorización / Control de todos los pacientes conectados. • 3ª iteración: Esta última iteración se ha limitado a:
– Mejorar la GUI de la aplicación «ACM» – Optimizar la comunicación «NC» ↔ «NC-SCC»
4. Fase de Transición: No aplicable 9
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 10
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
1. Introducción
2. Metodología Proceso Unificado: Particularización
3. Diseño e implementación
4. Pruebas realizadas
5. Conclusiones y Líneas futuras
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
TeMiP: Arquitectura
11
Nodo de Control: MIDLET «NC» Aplicación de Control y Monitorización: Aplicación JWS Servidor de Control Central: Una aplicación J2EE 1.4 de dos niveles (two-tier):
• Nivel de cliente J2EE, en el que se ha ensamblado la aplicación JWS desarrollada para el subsistema «ACM»
• Nivel de componentes web: Dos servlets: «NC-SCC» y «ACM-SCC» comunicados mediante JMS: modelo Pub/Sub.
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
TeMiP: Funcionamiento
12
NC NC-SCC ACM-SCC
TeMiPTopic
JWS-ACM
HTTP-POST(Id Paciente, Id Sensor,
Mode, Data) HTTP-GET(“ ”, Data Req)
HTTP OK HTTP OK (Objeto «Mode»)
HTTP-GET(Id Paciente, Cmd Req)
HTTP-GET(Id Paciente, Cmd Req)
TeMiPTopic
HTTP-POST(Id Paciente, Id Sensor,
Mode, Data)
HTTP OK (Cmd)
Publica Lee
Publica
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Nodo de Control
13
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Servidor de Control Central (I)
14
ACM-SCC
NC-SCC
dataNonin4100
Mode1 Mode2
Mode
acm_scc
ACMServlet
ReaderJMS
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Aplicación JWS de Control y Monitorización
15
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 16
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
1. Introducción
2. Metodología Proceso Unificado: Particularización
3. Diseño e implementación
4. Pruebas realizadas
5. Conclusiones y Líneas futuras
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Pruebas de Funcionamiento (I)
17
Subsistema «NC»: Paquete «bluetoothComm»:
• Búsqueda de dispositivos con éxito. • Fallo en la búsqueda de dispositivos. • Establecimiento de la conexión con éxito. • Fallo en el establecimiento de la conexión: • Fallo en el establecimiento de la conexión:
– Dispositivo real: Clave incorrecta. – Emulador del dispositivo: Servicio SPP no registrado.
• Cancelación del establecimiento de la conexión. • Transmisión y recepción de vectores de bytes y de cadenas. • Liberación de la conexión Bluetooth. • Detección de la pérdida de la conexión Bluetooth.
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Pruebas de Funcionamiento (II)
18
Subsistema «NC»: Paquetes «nonin4100», «decodeDataNonin4100» y
«dataNonin4100»: • Configuración del modo de funcionamiento del dispositivo. • Recepción y decodificación de datos.
«Modo Local»: • Cancelación del establecimiento de la conexión. • Reconfiguración del modo de funcionamiento del pulsioxímetro. • Cancelación de un procedimiento de reconfiguración.
Subsistema «SCC»: El procesamiento de las peticiones HTTP GET y POST recibidas. El sistema de mensajería JMS.
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Pruebas de Integración
19
Subsistemas «NC» ↔ «SCC»: Conectividad:
• El punto de acceso predefinido no está disponible ⇒ El S.O solicita al usuario que seleccione otro
• El servidor no está inicialmente disponible o se interrumpe la conexión durante la transferencia de datos ⇒ Alerta de ERROR
Transmisión de datos desde el «NC» al «SCC»: • Transmitiendo una única trama en una petición HTTP POST • Encapsulando en una petición HTTP POST todas las tramas almacenadas
en el buffer Transmisión de comandos desde el «SCC» al «NC»:
• Modo de operación del pulsioxímetro: M1 → M2, M2 → M1 • Periodo de transmisión: continuo → 5 s → 10 s, 10 s → 5 s → continuo.
Subsistemas «ACM» ↔ «SCC» Subsistemas «NC» ↔ «SCC» ↔ «ACM»
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Pruebas de Consumo (I)
20
Modo Tasa de Descarga ΔV (μV / s)
Duración t (horas)
Local: Sin la comunicación GSM activada 12,0 11,34
Local: Con la comunicación GSM activada 14,7 9,25
Remoto: Transmisión continua 57,4 2,37
Remoto: Transmisión periódica cada 10 s 51,0 2,67
Remoto: Transmisión continua con vaciado de buffer 50,7 2,68
Remoto: Transmisión periódica cada 10 s con vaciado buffer 14,7 9,25
€
t =Vmax −Vmin
Δt
Vmax: 4,07 V Vmin: 3,58 V
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
3.88
3.9
3.92
3.94
3.96
3.98
4
4.02
4.04
4.06
4.08
4.1
0 2000 4000 6000 8000 10000
Voltaje
(V
)
Tiempo (s)
Tasa de descarga respecto al tiempo (s) (ajuste mínimo!cuadrático)
Y = 4,09 ! 1,47e!05X
Pruebas de Consumo (II)
21
Con vaciado de buffer
3.4
3.5
3.6
3.7
3.8
3.9
4
4.1
0 1000 2000 3000 4000 5000 6000 7000 8000 9000
Voltaje
(V
)
Tiempo (s)
Tasa de descarga respecto al tiempo (s) (ajuste mínimo!cuadrático)
Y = 4,04 ! 5,10e!05X
Modo Remoto: T =10 s
Sin vaciado de buffer
Encapsulando todas las tramas almacenadas en el buffer en una única petición POST se logra una autonomía del mismo orden que la obtenida para el «Modo Local» con la comunicación GSM activada.
9,25 h 2,67h
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
Pruebas de Rendimiento: Monitorización de 2 pacientes
22
Paciente 2
Modo Remoto: Transmisión continua
Paciente 1
Tiempo transcurrido desde que la clase «NoninManager» del SCC publica el objeto de la clase «Mode2» hasta que la clase «CtrlPatient» lo obtiene para actualizar la vista correspondiente
!"
!#""
!$"""
!$#""
!%"""
!%#""
!" !%""" !&""" !'""" !(""" !$"""" !$%"""
)*+,-.!/,01
23,+4.!5+!,6+0748
)*+,-.!5+!74890:+4+9;*8!/;.9!8<607+!,=9*,.!;6854>7*;.1
?!@!$'&A!B!"A""CDCE
!"
!#""
!$""
!%""
!&""
!'"""
!'#""
!'$""
!'%""
!" !#""" !$""" !%""" !&""" !'"""" !'#"""
()*+,-!.+/0
12+*3-!4*!+5*/637
()*+,-!4*!6378/9*3*8:)7!!.:-8!7;5/6*!+<8)+-!:5743=6):-0
>!?!'&$@!A!"@""$$BC
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 23
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
1. Introducción
2. Metodología Proceso Unificado: Particularización
3. Diseño e implementación
4. Pruebas realizadas
5. Conclusiones y Líneas futuras
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
1. Objetivo: Desarrollar un prototipo de un sistema de Telemonitorización Inalámbrico de Pulsioximetría (TeMiP), basado en una red WPAN Bluetooth: Red WPAN: Pulsioxímetro Bluetooth y un smartphone:
Servidor SCC: Dos servlets «NC-SCC» y «ACM-SCC» comunicados mediante JMS: modelo Pub/Sub:
24
Conclusiones (I)
Aplicación de Control y Monitorización: Aplicación JWS:
Aplicación J2ME, «NC»: coordina la red WPAN, proporcionando dos modos de: Local y Remoto.
Permite que, aunque la aplicación web no esté activa, no se pierden los datos que el componente «NC» esté retransmitiendo al servidor.
• Descarga e instala automáticamente la versión de la plataforma Java requerida, evitando conflictos con otras aplicaciones. • Posibilidad de ejecución fuera del ámbito del navegador. • Varias ventanas abiertas: una por cada uno de los pacientes monitorizados.
Sistema de Telemonitorización Inalámbrico de Pulsioximetría
2. Metodología Proceso Unificado: Idónea para la construcción de este tipo de sistemas por su naturaleza iterativa /incremental.
3. Aplicación de patrones de diseño: MVC y STATE: Implementación más simple La legibilidad del código La simplificación de la labor de documentación
4. Pruebas de consumo: En un terminal Nokia N95, se alcanza una autonomía de 9,25 h: T=10 s. Encapsulando en una única petición HTTP todos los paquetes
acumulados en el buffer. 5. Pruebas de rendimiento: Un único destino (Topic), compartido por dos
pacientes ⇒ ↑ el retardo de transmisión extremo a extremo.
25
Conclusiones (II)
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 26
Líneas futuras
1. Integrar en la red WPAN más sensores biomédicos. 2. Enviar al servidor información de localización. 3. Añadir un modo de funcionamiento: «Modo Vigilancia». 4. En «Modo Remoto», si se interrumpe la comunicación con el servidor:
Conmutar a «Modo Local» y almacenar los datos. Al iniciar la aplicación: Transmitir los datos pendientes de envío.
5. Iniciar la aplicación «NC» de forma remota, por ejemplo, en respuesta a la recepción de un mensaje SMS.
6. Transferir la información comprimida y cifrada entre el servidor y la aplicación de monitorización.
7. Emplear un destino (Topic) por cada uno de los pacientes.
Sistema de Telemonitorización Inalámbrico de Pulsioximetría 27
E.T.S.I. de Informática I.T.I de Sistemas
Universidad de Málaga
Proyecto Fin de Carrera
Autora: María José Morón Fernández Directores:
D. José María Álvarez Palomo D. Eduardo Casilari Pérez