Monitorização de Sinais
Biomédicos em Assistentes
Pessoais Digitais
Grupo de Pesquisa:
Adson Ferreira da Rocha
Francisco Assis de Oliveira Nascimento
Hervaldo Sampaio Carvalho
Liana Sena
Iwens Gervásio Sene Jr.
Rafael Santos Ortis
Talles Marcelo G. de A. Barbosa
Introdução
●
Projeto GIMPA
–
PHM – Sistema Pessoal de Monitorização da Saúde
Objetivos
●
Visualização em tempo real de sinais biomédicos
em um Assistente Pessoal Digital.
●
Transmissão dos sinais para um PC.
●
Visualização remota dos sinais.
Captura dos Sinais
●
●
PROCOMP
No projeto visualização a partir de dados já
capturados dos seguintes sinais:
–
ECG
–
EMG
–
Pressão Arterial
–
Oxiometria de Pulso
–
Temperatura
–
Freqüência Cardíaca
PDA - Zaurus
●
Zaurus SL-5500
–
Intel StrongArm 1110 – 206 Mhz – 235 Dhrystone MIPS
–
64 RAM/16 ROM (Flash ROM)
–
LCD 240x320 – 16 bits
–
Compact Flash e Secure Digital
–
Linux 2.4.18
●
Qtopia – Interface Gráfica
PDA-Zaurus
●
Limitações:
–
Energia limitada
–
Processamento limitado
●
●
–
Processador de ponto fixo
Operações com ponto flutuante emuladas no Kernel do
linux
Resolução baixa
Zaurus - SO
●
Qtopia
–
●
Fork do Qt para sistemas embarcados.
Possibilidade de mudança do sistema operacional
com uma atualização da ROM.
–
Open Zaurus
–
Cacko
–
Intefaces gráficas
●
OPIE
●
PicoGUI
Visualização - Medplot
●
●
●
●
Requisitos:
–
Tempo real
–
Baixo consumo energia e processamento
Implemetação usando C++ e o framework Qt/Qtopia
Visualização de sinais de ECG, EMG, pressão
arterial, temperatura, oxiometria, freqüência cardíaca
Transmissão dos sinais para um desktop via TCP/IP.
Transmissão dos sinais
●
●
Necessário um protocolo específico que garanta:
–
integridade das informações
–
autenticação entre cliente e servidor
–
prioridade a determinados serviços
Requisitos do protocolo
–
Baixo overhead.
–
A transmissão deve ser dependente do estado da
energia, prioridade do dado e custo computacional
Visão Geral - Medplot
●
Estrutura do Programa:
Medplot
Sinal
Plotdata
Gerente de dados
Gerente de rede
Classe Medplot
●
Classe responsável pelo controle e interface
gráfica.
–
Gera a interface gráfica em tela cheia no Zaurus
–
Desabilita a proteção de tela do Zaurus
–
Cria e destrói cada instância dos sinais, gerente de
dados e de rede.
Classe Medplot
●
Inteface inicial:
Classe datamanager
●
●
●
Disponibiliza os dados para as classes dos sinais e
do gerente de rede
Os dados devem ser os mesmos para o gerente de
rede e para as classes dos sinais em um mesmo
instante de tempo.
Carrega os dados da rede ou de um banco de
dados local.
Classe Network
●
●
●
Entidade responsável pelo envio dos dados para uma
estação remota.
Recebe os mesmos dados que são utilizados na
visualização.
Implementação mínima para o envio dos sinais:
–
conecta com o servidor e espera por uma requisição para
envio de um sinal.
–
recebendo uma requisição de sinal inicia envio
imediatamente.
–
termina a transmissão ao receber a requisição de finalização
Classe Sinal
●
●
●
Classe Base de cada sinal plotado. Cada sinal
herda toda a estrutura desta classe.
Estruturas em comum a todos os sinais.
Atualização da tela em 30 fps para manter baixa a
utilização do processador e mostrar o sinal
percorrendo suavemente a tela do PDA.
–
Em sinais com baixa freqüência de amostragem 1 fps.
Classe ECG
●
●
●
Mostra o ECG na tela levando em consideração o
tamanho da tela.
–
Mostra 2 segundos de ECG modo retrato.
–
Mostra 2,5 segundos no modo paisagem.
Pega os dados do datamagnager e formata os
dados para a sua visualização na tela.
Dizima amostras para mostrar o sinal na tela
–
máximo de pontos na tela 240.
Classe ECG
Classe EMG
●
Mostra 2 segundos de um sinal de EMG na tela.
●
Dizima amostras para mostrar todo o sinal na tela
Classe pressão arterial
●
●
Mostra um gráfico das ultimas 10 amostras da
pressão arterial (sistólica e diastólica).
Mostra e atualiza a tabela contento o valor de cada
amostra.
Classes da freqüência cardíaca,
temperatura e oxiometria de pulso.
●
Mostram um gráfico das ultimas 10 amostras dos
sinais e uma tabela com o valores.
Classe plotdata
●
Classe que plota os dados na tela.
–
Responsavel por “ligar os pontos” os gerados pelas
classes dos sinais.
–
Double buffered.
–
Cada classe possui usa propria instância do plotdata.
–
Além dos sinais plota o fundo, os valores dos eixos ou
qualquer outro texto na tela.
Central em um Desktop
●
Objetivo:
–
Solicitar e receber os sinais capturados em diversos
monitores diferentes.
●
Utiliza o mesmo código do Medplot.
●
Mostra 3 segundos de ECG e EMG.
●
Mostra até 3 sinais diferentes na mesma tela.
●
Cada cliente conectado cria uma instancia do
Medplot modificado para o desktop.
Central
Testes de Desempenho
●
Testes indiretos do consumo de energia
–
●
●
Bug no Kernel.
Testes comparando o rendimento com:
–
Luz de fundo on/off.
–
Atualizações na tela.
–
Comparação entre os sinais.
O comsumo de energia pelo processador é pequeno se
comparado com o consumo da luz de fundo.
●
Utilização do processador de 30 a 40 %
●
Memoria RAM utilizada pelo programa 3 MB.
Sugestões de continuação
●
●
●
Desenvolvimento do protocolo de comunicação.
–
Impacto do TCP/IP.
–
Implementação em um Middleware.
–
Comunicaçõ com os outros modulos.
–
Sincronização.
Gerenciamento de Energia.
Testes com outras ROMs do Zaurus e com outros
PDAs.
●
Testes enviando o sinal por uma rede sem fio.
●
Visualização dos sinais capturados pelo Procomp.
Conclusões
●
Visualização e transmissão de sinais biomédicos é
possível em um PDA.
–
●
●
Custo computacional baixo.
Transmissão não gera um atraso grande na
visualização do sinal.
A utilização de energia é muito grande ao utilizar
a luz de fundo.
Download

Apresentação