View
0
Download
0
Category
Preview:
Citation preview
Universidade de Aveiro
2008
Departamento Electrónica, Telecomunicações e Informática
Hugo André Madeira da Fonseca
Monitorização de sinais vitais com uma consola de jogos portátil
Hugo André Madeira da Fonseca
Monitorização de sinais vitais com uma consola de jogos portátil
Dissertação apresentada à Universidade de Aveiro para cumprimento dos requisitos necessários à obtenção do grau de Mestre em Engenharia Electrónica e Telecomunicações (Mestrado Integrado), realizada sob a orientação científica do Prof. Dr. Rui Manuel Escadas Ramos Martins, professor auxiliar do Departamento de Electrónica, Telecomunicações e Informática da Universidade de Aveiro.
o júri
presidente Prof. Drª. Maria Beatriz Alves de Sousa Santos Professora Associada com Agregação da Universidade de Aveiro
vogais Prof. Dr. Vítor Manuel Grade Tavares Professor Auxiliar do Departamento de Eng. Electrotécnica e de Computadores da Faculdade de Engenharia da Universidade do Porto (professor convidado)
Prof. Dr. Rui Manuel Escadas Ramos Martins professor auxiliar da Universidade de Aveiro (orientador)
agradecimentos
É com orgulho e satisfação que afirmo ter tido um enorme apoio de um vasto leque de pessoas, desde família, amigos e conhecidos. Deste modo, nada mais justo que deixar aqui os meus sinceros agradecimentos às pessoas que mais contribuíram para que este trabalho se realizasse da melhor forma possível. Assim quero agradecer: - aos meus pais por todo o carinho e apoio que me deram ao longo deste projecto; - ao meu irmão Angelo Miguel por se demonstrar sempre disponível em ajudar no que eu precisasse; - à Marta, minha namorada, pelos seus conselhos sábios, paciência, simpatia e por todos os minutos de que despendeu para me dar um pouco da sua atenção quando mais precisava; - ao Prof. Dr. Rui Escadas, meu orientador por toda a transmissão de conhecimento, disponibilidade e paciência que teve para com este humilde aprendiz; - ao Prof. Dr. João Rodrigues pela preciosa ajuda no desenvolvimento do filtro digital e pelo tempo disponibilizado; - ao Rui, pela motivação dada nos dias de menor inspiração e pelas criticas construtivas ao longo do projecto. - à Rita por estar sempre disponível para me esclarecer algumas dúvidas; - por último, e não menos importante, a toda a minha restante família que esteve sempre comigo para me apoiar nos momentos em que mais precisei de apoio.
palavras-chave consola de jogos, sinais vitais, portabilidade, robustez, autonomia e baixo custo.
resumo
O projecto tem como objectivo principal criar um sistema que monitorize simultaneamente o electrocardiograma, batimento cardíaco, temperatura corporal e saturação de oxigénio no sangue. Pretende-se que auxilie médicos, enfermeiros ou técnicos qualificados a operar em ambientes com condições desfavoráveis, como sejam países pobres, zonas de guerra, desertos, ou genericamente em qualquer lugar no qual não haja rede eléctrica e com dificuldades económicas. Assim houve a necessidade de criar um sistema robusto, leve, com grande autonomia, portátil e acima de tudo, pouco dispendioso. O sistema é baseado numa consola de jogos portátil e é constituído ainda por sensores, microcontroladores, módulos de transmissão/recepção wireless e um computador, mas este com carácter opcional. Os sensores fazem a aquisição dos sinais eléctricos provenientes do corpo humano, são seguidamente acondicionados através de hardware específico, e depois convertidos para um formato digital e transmitidos para a consola de jogos, onde irão ser apresentados. No que diz respeito ao interface com o utilizador, foi desenvolvida uma aplicação gráfica que corre na consola de jogos capaz de fazer o display dos sinais e gestão de uma base de dados com informação sobre os pacientes.
keywords
game console, vital signs, portability, autonomy, robustness, low cost
abstract
A system to monitor vital signs, based on a portable game console, has been developed in this project. The main objective of this project is to develop a system capable of simultaneously monitoring the electrocardiogram, heart rate, body temperature and oxygen saturation. It is specified to aid doctors, nurses, or qualified technicians working in tough conditions, like poor countries, war zones, deserts, or in places with an inexistent or failure prone public electricity supply. Therefore a light-weight (yet with large autonomy), portable, rugged, and above all, low-priced system, was required. The heart of the system is a portable game console, but it is also made of sensors, microcontrollers, wireless modules for data transmission/reception and, optionally, a portable computer. The sensors are responsible for the acquisition of the bio-signals which are conditioned by specific-designed hardware to be, finally, converted into a digital format and transmitted (to the other devices of the system). Regarding the user-interface, a graphic application running in the game console has been designed. It displays the results and manages a small database storing patients’ information.
1
Índice
1. Introdução ....................................................................................................... 5
2. Sistemas existentes no mercado .............................................................. 9
3. Monitorização de Sinais Vitais ............................................................... 15
3.1 O que é o electrocardiograma? ......................................................................................... 16
3.1.1. Traçado do ECG ....................................................................................................................... 16
3.1.2. Diástole ...................................................................................................................................... 17
3.1.3. Sístole ......................................................................................................................................... 17
3.1.4. Miocárdio .................................................................................................................................. 17
3.1.5. Nó Sinoauricular (SA) ........................................................................................................... 17
3.1.6. Nó AuriculoVentricular (AV) ............................................................................................. 18
3.1.7. Feixe AV ..................................................................................................................................... 18
3.2. A actividade eléctrica no coração .................................................................................... 18
3.3. Aquisição do ECG ................................................................................................................... 20
3.4. Temperatura Corporal ........................................................................................................ 22
4. Arquitectura ARM....................................................................................... 25
4.1. Características Principais ................................................................................................... 26
4.2. Conjunto de Instruções ....................................................................................................... 26
4.3. Registos do processador ..................................................................................................... 27
4.4. Modos de Operação .............................................................................................................. 27
4.5. Sistema de memória ............................................................................................................. 28
4.6. Aplicações destes processadores .................................................................................... 29
5. Descrição do Sistema ................................................................................ 31
5.1. Diagrama de Blocos .............................................................................................................. 32
5.2. Descrição dos blocos do sistema ..................................................................................... 33
5.2.1. Eléctrodos ECG e sensor de temperatura ..................................................................... 33
5.2.2. Placa 1 ........................................................................................................................................ 36
5.2.3. Nintendo DS ............................................................................................................................. 37
5.2.4. Computador ............................................................................................................................. 39
6. Hardware ...................................................................................................... 43
2
6.1. Amplificação diferencial dos sinais de ECG ................................................................. 44
6.2. Filtragem ................................................................................................................................... 45
6.3. Aquisição da Temperatura ................................................................................................ 46
6.4. Algumas considerações sobre o hardware .................................................................. 47
6.5. Comunicação entre os dispositivos ................................................................................ 48
7. Software ......................................................................................................... 53
7.1. Desenvolvimento de software para a Nintendo DS ................................................. 54
7.2. Aplicação gráfica para a Nintendo .................................................................................. 56
7.3. PAlib ( Funções mais utilizadas) ..................................................................................... 60
7.4. Código da aplicação gráfica ............................................................................................... 61
7.5. Código implementado no microcontrolador .............................................................. 62
8. Resultados..................................................................................................... 66
8.1. PCBs ............................................................................................................................................ 67
8.2. Apresentação dos sinais na consola ............................................................................... 70
9. Conclusões e trabalho futuro ................................................................. 73
Referências .......................................................................................................... 77
3
Índice de Ilustrações
Ilustração 2.1 - Electrocardiógrafo de 3 canais com display gráfico – BTL-08 SD6 ................ 10
Ilustração 2.2 - Eletrocardiógrafo Portátil ECG-6- Ecafix ............................................................. 10
Ilustração 2.3 - PORTABLE HANDHELD ECG EKG Electrocardiograph – modelo CMS-80A -
CONTEC .............................................................................................................................................. 11
Ilustração 2.4 - Fukuda Denshi CardiMax FX-7102 ....................................................................... 11
Ilustração 2.5 – Medtronic Lifepack 1000 Defibrillator .................................................................. 12
Ilustração 2.6 - OMRON Portable ECG Monitor ............................................................................ 12
Ilustração 2.7 – Tabela de comparação dos modelos de Electrocardiógrafos ......................... 13
Ilustração 3.1 - Sistema de Condução do Coração. ..................................................................... 17
Ilustração 3.2 - Traçado do Electrocardiograma ........................................................................... 19
Ilustração 3.3 - Derivações dos membros DI, DII e DIII. .............................................................. 20
Ilustração 3.4 - Derivações precordiais ........................................................................................... 22
Ilustração 4.1 – Mapa de Registos associados a cada modo de operação .............................. 28
Ilustração 5.1 – Visão global do sistema ........................................................................................ 32
Ilustração 5.2 - Exemplos de eléctrodos para ECG ...................................................................... 34
Ilustração 5.3 - Eléctrodos ECG usados no sistema .................................................................... 34
Ilustração 5.4 - Cabo para ligar os eléctrodos à placa1 ............................................................... 35
Ilustração 5.5 – Sensor de temperatura (LM335) e respectivo cabo ......................................... 36
Ilustração 5.6 - WirelessUSB LR™ Radio Module ........................................................................ 37
Ilustração 5.7 - Consola de jogos (Nintendo DS) .......................................................................... 38
Ilustração 5.8 - R4DS com algumas alterações ............................................................................ 39
Ilustração 5.9 - Esquema do Slot 1 .................................................................................................. 39
Ilustração 5.10 – Aspecto da aplicação para armazenamento dos dados ................................ 40
Ilustração 5.11 – Aspecto do ficheiro de saída para armazenamento dos dados ................... 41
Ilustração 6.1 - Andar de amplificação ............................................................................................ 44
Ilustração 6.2 - Andar de filtragem ................................................................................................... 45
Ilustração 6.3 - Amplificação e compensação do sinal de temperatura .................................... 47
Ilustração 6.4 – Transferência de um byte entre o microcontrolador e a consola ................... 50
Ilustração 6.5 – Transferência de dois bytes entre a consola e o módulo receptor ................ 51
Ilustração 7.1 - Aspecto do editor de texto do ambiente de desenvolvimento utilizado .......... 55
Ilustração 7.2 - PAGfx conversor de imagens para o formato adequado.................................. 56
Ilustração 7.3 - Imagem de apresentação ...................................................................................... 57
Ilustração 7.4 - Menu inicial .............................................................................................................. 57
Ilustração 7.5 - Menu para gestão da base de dados .................................................................. 59
Ilustração 7.6 - Teclado Virtual ......................................................................................................... 59
Ilustração 7.7 – Fluxograma da aplicação desenvolvida para a Nintendo DS ......................... 62
Ilustração 7.8 – Resposta em frequência do filtro digital ............................................................. 64
Ilustração 7.9 – Fluxograma do código implementado no microcontrolador ............................ 65
Ilustração 8.1 - Placa1 top layer ....................................................................................................... 67
Ilustração 8.2 - Placa1 bottom layer ................................................................................................ 68
Ilustração 8.3 – Placa 2 ..................................................................................................................... 68
Ilustração 8.4 – Placa 2 bottom layer .............................................................................................. 69
4
Ilustração 8.5 - Vista do sistema completo (excluindo computador e sensor óximetro) ......... 69
Ilustração 8.6 - ECG com três canais no ecrã da Nintendo DS .................................................. 70
Ilustração 8.7 – Sinal de ECG apresentado sem filtro digital ...................................................... 71
Ilustração 8.8 – Sinal ECG apresentado com filtro digital ............................................................ 72
5
1. Introdução
6
Ao longo das últimas décadas realizaram-se progressos significativos nas áreas da
engenharia biomédica, o que contribuiu muito para a elevação do nível de vida e da saúde
das pessoas. Nos dias que correm, por exemplo, quase todas as pessoas têm a
possibilidade de ter em sua casa um medidor de pressão arterial, ou um termómetro
electrónico, e isso é fruto do constante desenvolvimento de novas tecnologias. Nos hospitais
e clínicas podemos contar com sistemas de radiologia desde a convencional ao TAC, há
máquinas de ressonância magnética e de ecografia, há próteses com materiais avançados,
há desfibrilhadores e neuroestimuladores, entre muitos outros aparelhos.
Infelizmente, nem todos têm a mesma sorte, e existem zonas do mundo (como grande parte
de África) onde ainda não estão presentes estas tecnologias, e onde há pessoas que não
têm sequer o mínimo apoio médico - quer seja por falta de pessoas qualificadas, ou então
por falta de meios. Entre estes, a máquina de monitorização de sinais vitais que existe em
cada cama de um hospital ou ambulância nos países com um sistema de saúde
minimamente operacional, é um recurso escasso.
Infelizmente nestas regiões onde não há estradas, alimentos e medicamentos, por maioria
de razão também não há uma rede eléctrica fiável nem dinheiro para comprar equipamento
médico. Assim, apesar do equipamento de monitorização de sinais vitais estar amplamente
difundido e haver um leque alargado de escolha de equipamentos comerciais, estes
dificilmente ali são utilizados. De realçar que estes ou são volumosos e pesados e
necessitam de estar ligados à rede eléctrica, ou consistem em versões portáteis também
algo dispendiosas com a agravante de necessitarem da troca periódica de baterias
proprietárias de custo elevado.
Assim, um dos objectivos deste trabalho é criar em torno de uma consola de jogos um
sistema que permita avaliar o estado de saúde de uma pessoa, nomeadamente através da
observação dos sinais cardíacos, da temperatura corporal e do nível de oxigénio no sangue.
O sistema deverá ainda tocar um alarme caso os parâmetros estejam fora dos considerados
correctos. Este tipo de equipamento é de grande utilidade para o prestador de cuidados de
saúde e em muitas situações o seu uso talvez permitisse ajudar a salvar vidas.
A escolha de uma consola de jogos para base do sistema, tem como objectivo colmatar
alguns dos inconvenientes dos sistemas já existentes, nomeadamente as questões da
portabilidade, autonomia, robustez, e ainda mais importante, por ter um custo extremamente
baixo. Com efeito, a maior parte das consolas de jogos são criadas para os mais jovens, o
que equivale a dizer, que estas vão ser sujeitas a quedas e ser alvo de tratamento menos
7
adequado; assim são feitas extremamente robustas! Apesar da não realização de crash
testes que levariam à destruição do material, consideramos que uma consola de jogos é
mais resistente a choques e quedas do que a maior parte dos aparelhos médicos existentes
ou soluções baseadas em PDAs (Personnal Digital Assistants). Em relação a custos, como
são produzidas em grandes volumes, são vendidas a um preço muito reduzido, não fazendo
sequer muito sentido comparar este com o dos equipamentos médicos de fabricantes
credenciados como os utilizados em hospitais dos países mais ricos.
A consola escolhida para a realização do trabalho foi a Nintendo DS Lite, pois é uma
consola de pequenas dimensões e extremamente leve, com uma excelente autonomia de
cerca de 18 horas e como tem dois ecrãs (sendo um deles táctil) permite dividir de uma
maneira lógica o display dos sinais e a entrada de comandos/dados. De notar a boa
qualidade dos displays e que o consumo é suficientemente baixo para poder ser alimentada
por um pequeno painel solar.
Por último pode-se ainda referir que um sistema desta natureza tem grandes possibilidades
de vir a ser estendido a outras aplicações: por exemplo a pediatria ou com uma
reformulação a aplicações veterinárias.
Este documento está organizado como se segue:
No primeiro capítulo apresenta-se o problema que este trabalho aborda e descreve-se em
linhas gerais como se procurou resolver.
O segundo capítulo apresenta alguns equipamentos com os quais se vai comparar o
sistema desenvolvido.
Seguidamente no terceiro capítulo são apresentados alguns conceitos gerais sobre a
monitorização de sinais vitais, que ajudarão a entender o seguimento do trabalho.
O quarto capítulo apresenta uma breve descrição da arquitectura dos processadores que
estão presentes na Nintendo DS Lite, os ARM.
No quinto capítulo é apresentado o sistema completo, fazendo-se uma descrição
pormenorizada dos blocos que o constituem.
O sexto capítulo apresenta uma descrição do hardware que compõe o sistema.
O sétimo capítulo refere-se ao software/firmware desenvolvido.
8
No oitavo capítulo são apresentados os resultados da realização deste projecto.
Por último temos o nono capítulo, no qual temos as conclusões resultantes deste trabalho.
Como complemento aos capítulos que compõem esta dissertação temos ainda alguns
anexos que complementam alguma informação exposta neste documento.
9
2. Sistemas existentes
no mercado
10
Neste capítulo pretende-se referenciar alguns sistemas existentes no mercado, afim de se
poder fazer uma comparação do sistema desenvolvido com os já existentes.
As figuras seguintes ilustram alguns modelos de electrocardiógrafos.
Descrição Técnica
- Compacto, leve, portátil.
- Funcionamento com bateria ou ligado à
rede.
- Indicador do nível de bateria.
- Display gráfico LCD, com visualização
de uma derivação ECG à escolha.
- Teclado alfanumérico e funcional.
- Sistema de controlo do contacto dos
eléctrodos.
- Protecção de desfibrilação.
- Impressora térmica
- Largura do papel: 58 mm.
- Aquisição simultânea das 12 derivações.
- Os parâmetros podem ser pré-definidos e gravados num perfil de utilização, para maior rapidez e
facilidade de funcionamento.
- Filtros utilizados: muscular, de alimentação e de linha de base.
- Dimensões: 27,6x16,8x7,4(h) cm.
- Peso: aprox. 2 kg.
Disponível na internet [1]:
Descrição Técnica - Portátil de 1 canal;
- 7 derivações sequenciais;
- Impressora térmica de alta resolução;
- Bateria embutida;
- Alimentação full-ranger (110/220 V - 60
Hz);
- Entrada para bateria externa
-Peso: aprox. 2,5 kg. Ilustração 2.2 - Eletrocardiógrafo Portátil ECG-6- Ecafix
Ilustração 2.1 - Electrocardiógrafo de 3 canais com display gráfico – BTL-08 SD6
11
Disponível na internet [2]:
Descrição Técnica
- tensão de calibração: 1mV
- A/D : 12bit
- Aquisição simultânea das 12 derivações
- Impressora térmica de alta resolução;
- medi
- Alimentação AC 220V – DC 7.4 lithium battery
- Dimensões: 19 cm x 9 cm x 4 cm.
-Peso: 800g.
Disponível na Internet [3]:
Descrição Técnica
- LCD (320 x 240)pixel
- Capacidade para display de 3/6/12 canais
- Capacidade para imprimir 1/3 canais em papel
50/63 mm.
- Memória interna para armazenamento de dados.
- LAN port para comunicação externa
- Dimensões: 22,5cm x 18cm x 5cm
- Peso: 1,2Kg ( sem bateria)
Disponível na Internet [4]:
Ilustração 2.3 - PORTABLE HANDHELD ECG EKG Electrocardiograph – modelo CMS-80A -
CONTEC
Ilustração 2.4 - Fukuda Denshi CardiMax FX-7102
12
Descrição Técnica
- Display (12cm x 8.9cm)
- Capacidade de armazenamento de dados
para 2 pacientes
- Inclui desfribrilhador
- Transferência de dados para computador
pessoal através de infravermelhos.
- 1 canal de ECG
- Heart Rate – 20 to 300 BPM
- Dimensões : 27.7cm x 23.4cm x 8.7cm
- Peso: 3.2Kg
Disponível na internet [5]:
Descrição Técnica
- Display de alta resolução com backlight
- Comunicação com exterior através de cartões SD
- Analisa os dados de ECG e apresenta mensagens
no ecrã.
- Alimentação: 2 baterias AAA
- Medição de heart Rate
- Dimensões: 17cm X 10cm x 2,5cm
- Peso: 500g
Disponível na internet [6]:
Acima estão representados alguns modelos de electrocardiógrafos portáteis e suas
características. Basicamente todos têm as mesmas funções, mas nenhum deles faz o
mesmo que o nosso sistema, uma vez que o nosso sistema faz aquisição do sinal de ECG,
Ilustração 2.5 – Medtronic Lifepack 1000 Defibrillator
Ilustração 2.6 - OMRON Portable ECG Monitor
13
temperatura corporal e nível de oxigénio simultaneamente. O nosso sistema tem ainda a
vantagem de utilizar baterias pouco dispendiosas.
Alguns dos modelos apresentados por seu lado incorporam uma impressora, o que poderá
ser útil em alguns casos! Em contra partida são mais pesados e a ligação à unidade de
display é realizada por fios. Na solução apresentada é efectuada por rádio, permitindo um
manuseamento do equipamento mais conveniente!
A tabela a seguir permite fazer uma comparação entre os vários sistemas ilustrados acima e
o sistema desenvolvido neste projecto.
Caracteristicas N.º canais Medição Heart Impresora
Modelos ECG Temperatura Rate térmica
BTL-08 SD6 1 não não sim 2 sim 1500
ECG-6- Ecafix 1 não não não 2,5 sim 1800
CMS-80A - CONTEC 1 não não sim 0,8 sim 500
CardiMax FX-7102 12 não não sim 1,2 sim 2000
Medtronic Lifepack 1000 1 não não sim 3,2 não 2500
OMRON Portable ECG 1 não não sim 0,5 não 350
Sistema Desenvolvido 3 sim sim sim 0,3 não 220
Oximetro Peso (Kg) Preço (€)
Ilustração 2.7 – Tabela de comparação dos modelos de Electrocardiógrafos
Na tabela ilustrada acima é possível confirmar algumas vantagens do sistema implementado
face a outros que foram já referidas acima. Entre elas destacam-se a capacidade para
desempenhar várias funções simultaneamente e naturalmente o preço.
14
15
3. Monitorização de
Sinais Vitais
16
A monitorização de sinais vitais é essencial para o médico ou técnico de saúde poder
determinar num dado instante a situação clínica de um paciente. Tipicamente esta função é
realizada por aparelhos capazes de simultaneamente mostrar o traçado do
electrocardiograma (ECG), medir o ritmo cardíaco, a temperatura corporal e o nível de
oxigénio no sangue. Neste capítulo expostos alguns conceitos que ajudam a descrever
estas funções. Alguma informação complementar ao capítulo que se segue pode ser
encontrada em [7].
3.1 O que é o electrocardiograma?
O electrocardiograma (ECG) é uma imagem gráfica das forças eléctricas geradas pelo
coração sendo este o método mais simples e mais importante no diagnóstico de doenças
cardiovasculares, pois é um método não invasivo, barato e amplamente disponível. Este
regista a actividade eléctrica produzida pela activação miocárdica, sendo o seu traçado
constituído por várias deflexões causadas pela activação, despolarização e repolarização
das células cardíacas.
Para que se entenda a origem das ondas que constituem o ECG apresenta-se uma breve
explicação da sua evolução e dos locais de aquisição.
3.1.1. Traçado do ECG
O coração é constituído por dois tipos principais de células: células musculares e células
especializadas do sistema de condução. As células musculares têm como função
desenvolver o trabalho mecânico da contracção. O coração é constituído por quatro
câmaras cardíacas (aurícula direita e esquerda e ventrículo direito e esquerdo), que estão
ilustradas na figura seguinte. Estas são formadas pelas células musculares que após a
diástole são estimuladas durante a sístole para se contrair, propulsionando o sangue para o
sistema cardiovascular. As células especializadas do sistema de condução não são
responsáveis pelo trabalho mecânico da contracção, mas sim pela coordenação da
actividade cardíaca, iniciando o ritmo cardíaco e propagando o impulso eléctrico através do
estímulo da contracção das células miocárdicas.
17
Ilustração 3.1 - Sistema de Condução do Coração.
3.1.2. Diástole - Consiste no período de relaxamento muscular que permite a
recuperação do músculo cardíaco. Durante esse período as aurículas dilatam-se,
permitindo a entrada do sangue para que este possa ser expelido na contracção.
3.1.3. Sístole – Designa o período de contracção muscular das câmaras cardíacas.
A cada batimento cardíaco, as aurículas contraem-se primeiro, impulsionando o
sangue para os ventrículos, o que corresponde à sístole auricular.
Seguidamente os ventrículos contraem-se também, bombeando o sangue para
fora do coração, para as artérias, o que corresponde à sístole ventricular.
3.1.4. Miocárdio - É a parte média da parede do coração. A porção mais interna
deste chama-se endocárdio e a mais externa pericárdio. O miocárdio é composto
por um tecido muscular especial, o músculo cardíaco, e tem como função básica
ejectar o sangue que se encontra no interior do coração, em direcção ao sistema
cardiovascular.
3.1.5. Nó Sinoauricular (SA) Também chamado nó sinusal, é de onde partem os
impulsos, a cada ciclo, que se distribuem por todo o restante do coração. Por
isso pode ser considerado o nosso marca-passo natural. Localiza-se na parede
lateral da aurícula direita, próximo à abertura da veia cava superior. Apresenta
uma frequência de descarga rítmica de aproximadamente 70 despolarizações
(e repolarizações) a cada minuto. A cada despolarização, forma-se uma onda
de impulso que se distribui, a partir deste nó, por toda a massa muscular que
forma o circuito auricular, provocando a contracção do mesmo. Cerca de 0,04
segundos após a partida do impulso do nó SA, através de fibras denominadas
internodais, o impulso chega ao nó AV.
18
3.1.6. Nó AuriculoVentricular (AV) – Chegando o impulso a este nó, demorará
aproximadamente 0,12 segundos para seguir em frente e atingir o feixe AV, que
vem logo a seguir. Portanto, este nó, localizado numa região bem baixa do
circuito auricular, tem por função principal retardar a passagem do impulso
antes que o mesmo atinja o circuito ventricular. Isto é necessário para que o
enchimento das câmaras ventriculares ocorra antes da contracção das
mesmas, uma vez que, no momento em que as câmaras auriculares estariam
em sístole (contraídas), as ventriculares ainda estariam em diástole (relaxadas).
Após a passagem lenta através do nó AV, o impulso segue em frente e atinge o
feixe AV.
3.1.7. Feixe AV: Através do mesmo o impulso segue com grande rapidez em
frente e atinge um segmento que se divide em 2 ramos:
Ramos Direito e Esquerdo do Feixe de Hiss: Através destes ramos,
paralelamente, o impulso segue com grande rapidez em direcção ao ápice do
coração, acompanhando o septo interventricular. Ao atingir o coração, cada ramo
segue, numa volta de quase 180 graus, em direcção à base do coração, desta vez
seguindo a parede lateral de cada ventrículo. Cada ramo emite uma grande
quantidade de ramificações. Estas têm por finalidade optimizar a chegada dos
impulsos na maior quantidade e no mais curto espaço de tempo possível por todo o
circuito ventricular. Com a chegada dos impulsos ao circuito ventricular, rapidamente
e com uma grande força, ocorre a contracção de todas as suas fibras. A contracção
das câmaras ventriculares reduz acentuadamente o volume das mesmas, o que faz
com que um considerável volume de sangue seja ejectado do ventrículo direito para
a artéria pulmonar e do ventrículo esquerdo para a artéria aorta.
Fibras de Purkinje – Constituem a porção distal do feixe auriculo-ventricular e
situam-se no subendocárdio. São células musculares modificadas que apresentam um halo
nuclear não corado evidente devido ao acúmulo de glicogénio nessa região. As fibras de
Purkinje são mais curtas e mais largas que as musculares cardíacas típicas.
3.2. A actividade eléctrica no coração
A actividade eléctrica no coração deve-se ao facto de as células cardíacas serem
polarizadas no estado de repouso, mas quando electricamente estimuladas, despolarizam-
19
se e contraem-se. Assim, a contracção do miocárdio é produzida por uma onda progressiva
de estimulação (despolarização) que atravessa o coração.
Ao atravessarem o coração, as ondas de despolarização e de repolarização são captadas
pelos detectores externos (cutâneos), registando essa actividade no traçado do ECG. Na
figura seguinte está representado um traçado de ECG, no qual estão representadas as
várias ondas.
Ilustração 3.2 - Traçado do Electrocardiograma
A onda P representa a actividade eléctrica da contracção de ambas as aurículas: o nó
sinoauricluar (SA) inicia o impulso eléctrico que se difunde sob a forma de onda estimulando
as aurículas.
O complexo QRS representa o impulso eléctrico que caminha do nó auriculoVentricular (AV)
para as fibras de Purkinje e para as células miocárdicas, ou seja, a estimulação dos
ventrículos.
Sendo assim, após a contracção das aurículas o impulso alcança o nó AV, onde há uma
pausa de aproximadamente 0,1 seg, permitindo que o sangue entre nos ventrículos.
Terminada essa pausa, o nó AV é estimulado, iniciando-se um impulso eléctrico que desce
pelo feixe AV (Feixe de His) para os seus ramos (direito e esquerdo).
As fibras de Purkinje transmitem o impulso eléctrico para as células miocárdicas, produzindo
a contracção simultânea dos ventrículos.
20
A onda Q, quando existe, é a primeira deflexão para baixo do complexo QRS. A seguir, vem
uma deflexão para cima, que é a onda R. Esta é seguida de uma onda S, dirigida para
baixo. Há uma pausa após o complexo QRS, aparecendo de seguida a onda T que
representa a repolarização dos ventrículos, os quais podem ser novamente estimulados.
3.3. Aquisição do ECG
O ECG de rotina é composto por 12 derivações separadas, 6 derivações dos membros e 6
derivações precordiais. Para obtenção das derivações dos membros (DI), (DII) e (DIII)
(periféricas), colocam-se os eléctrodos sobre os braços direito e esquerdo e sobre a perna
esquerda, formando um triângulo, denominado Triângulo de Einthoven. Este triângulo forma
o número mínimo de pontos de aquisição para ser possível obter o sinal ECG. As
derivações dos membros são adquiridas da seguinte forma:
Ilustração 3.3 - Derivações dos membros DI, DII e DIII.
21
Todas as diferenças de potencial têm como referência comum a perna direita do paciente
(RL). As outras três derivações dos membros são as unipolares aumentadas: AVR, AVL e
AVF. A derivação AVR utiliza o braço direito como positivo e todos os outros eléctrodos dos
membros como um fio terra comum (negativo). As outras duas derivações AVL (braço
esquerdo positivo) e AVF (pé esquerdo positivo) obtêm-se de modo semelhante.
As seis derivações I, II, III, AVR, AVL, AVF reúnem-se para formar seis linhas de referência,
que se cruzam com precisão num plano sobre o tórax do paciente (plano frontal). Cada
derivação dos membros regista-se a partir de um ângulo diferente, de modo que cada uma
delas representa uma visualização complementar da mesma actividade cardíaca (os pares
de eléctrodos são diferentes em cada derivação e sendo assim o traçado modifica-se
ligeiramente quando alteramos o ângulo de onde se regista a actividade). Ao observar-se a
actividade eléctrica por seis ângulos diferentes, temos uma perspectiva muito maior do
controle da actividade eléctrica.
As derivações precordiais (V1 a V6), figura 3.4, situam-se nas paredes anterior e lateral do
toráx. Estas dão a vista do coração e da onda de despolarização no plano horizontal. Como
está ilustrado na figura 3.4, estas derivações projectam-se do nó AV em direcção ao dorso
do paciente que é o pólo negativo de cada derivação torácica (se admitirmos que as
derivações são os raios de uma roda, o centro será o nó AV). As derivações V1 e V2 estão
sobre o lado direito do coração (derivações precordiais direitas), ao passo que V5 e V6 ficam
sobre o lado esquerdo (derivações precordiais esquerdas). V3 e V5 localizam-se sobre o
septo interventricular (parede comum ao ventrículo direito e esquerdo).
O traçado de V1 a V6 mostra uma mudança gradual em todas as ondas, por exemplo,
normalmente o complexo QRS é negativo em V1 e positivo em V6, isto significa que a onda
de despolarização ventricular (representada pelo complexo QRS) está-se a deslocar em
direcção ao eléctrodo positivo de V6.
22
Ilustração 3.4 - Derivações precordiais
3.4. Temperatura Corporal
Num sistema deste tipo é imprescindível haver um meio para determinar a temperatura
corporal, uma vez que esta constitui um forte indicador de patologias variadas que são
acompanhadas de variações características da temperatura corporal. Portanto, o percurso
de certas doenças pode ser monitorizado pela medição da mesma, permitindo ao médico
assistente, por exemplo, avaliar a eficácia do tratamento iniciado. Pode-se tomar como
exemplo, o caso da febre que é uma reacção aos estímulos específicos da doença, em que
o centro de controlo da temperatura varia para promover as defesas do organismo contra o
processo da doença.
A temperatura central mais fiável é a que se obtém por meio da inserção do termómetro no
recto (medição rectal). Esta medição é exacta e apresenta uma baixa dispersão dos
resultados. A amplitude normal na medição rectal é de aproximadamente 36.2ºC a 37.7ºC.
A medição oral pode ser efectuada como medição bucal (na bochecha), ou como medição
debaixo da língua. Ambas as medições se aproximam da medição rectal variando apenas
aproximadamente 0.3ºC a 0.8ºC em relação à mesma.
Os únicos tipos de medição da temperatura corporal superficial usados na prática clínica são
na axila (medição axilar) e na virilha (medição inguinal). Em ambos os casos, o membro
respectivo é comprimido contra o corpo de modo a reduzir qualquer influência da
temperatura ambiente. Nos adultos, a medição axilar é inferior à rectal em aproximadamente
0.5ºC a 1.5ºC. Nas crianças, estas diferenças relativamente à temperatura rectal são muito
inferiores.
23
24
25
4. Arquitectura ARM
26
Neste capítulo vai ser feita uma breve descrição da arquitectura dos processadores ARM,
sendo estes os processadores presentes na Nintendo DS Lite.
A sigla ARM advém de Advanced RISC Machine. O primeiro protótipo da arquitectura ARM
foi desenvolvido em 1983 pela Arcon Computers, sendo apenas comercializada a primeira
versão em 1986. Esta arquitectura foi baseada em MOS Technology 6502 e Berkeley RISC1
[8].
4.1. Características Principais
A arquitectura destes processadores de uma maneira geral pode ser descrita através das
seguintes características:
Processador de 32 bits
37 registos, 31 de uso geral e 6 de status
Conjunto de instruções extensível com o uso de co-processadores
Instruções de três operandos
Capacidade de executar instruções de 16 bits usando a arquitectura Thumb
[8]
Baixo consumo de energia
Tamanho do núcleo reduzido
Comporta até 16 co-processadores lógicos
4.2. Conjunto de Instruções
Relativamente ao conjunto de instruções, os ARM são em tudo semelhantes aos
processadores RISC, possuindo um conjunto de registos grande e uniforme em que muitos
deles operam segundo uma arquitectura LOAD/STORE.Estes processadores fazem uma
execução condicional da maioria das suas instruções.
O leque de instruções destes processadores está dividido em seis tipos, sendo eles:
Instruções de branch:
Instruções de processamento de dados
Transferência de registos de status
Instruções de LOAD / STORE
Instruções de co-processador
27
Instruções de geração de excepções
4.3. Registos do processador
Embora os ARM possuam 31 registos de uso geral, apenas 16 deles estão visíveis sendo
que alguns deles ainda são restritos, dependendo do modo de operação actual.
O conjunto dos 6 registos de status e composto por: 5 Saved Program Status Register
(SPSRs) e 1 Current Program Status Register (CPSR), sendo estes os registos que
guardam os bits de flags condicionais, controlo de interrupção, controlo do modo do CPU e
do tipo de instrução (ARM ou Thumb).
O modo Thumb é um modo especial que transforma o processador ARM num processador
16 bits, aumentando o espaço disponível na memória de programa. Essa mudança pode ser
feita em tempo de execução, dessa forma o ARM possui dois conjuntos de instruções, um
de 32 bits e outro de 16 bits. O segundo conjunto é mais simples que o primeiro, mas
continua a processar os dados em 32 bit.
4.4. Modos de Operação
Os processadores ARM têm capacidade para suportar até 7 modos de operação sendo eles:
USER – execução normal de programas
FIQ (Fast Interrupt) – Suporta uma transferência rápida de dados
IRQ – manipulação de interrupções
SUPERVISOR – modo protegido para o SO
ABORT – implementa memória virtual e protecção
UNDEFINED – emulação de software de co-processadores
SYSTEM – tarefas privilegiadas do SO
28
Ilustração 4.1 – Mapa de Registos associados a cada modo de operação
Alguns modos possuem registos específicos, que facilitam a troca de contexto entre eles. Na
figura acima, os registos marcados são fisicamente diferentes dos mesmos registos nos
outros modos.
4.5. Sistema de memória
O controlo do sistema de memória é feito através de um dos co-processadores, o CP15.
Este co-processador possui 16 registos primários de 32 bits cada, descrevendo estes os
tipos de acesso que são permitidos (leitura, escrita, leitura/escrita), a funcionalidade
invocada para cada tipo de acesso e outros detalhes relevantes sobre o processador.
O formato dos dados (Litle Endian ou Big Endian) de um processador ARM é igual ao
formato do sistema de memória.
O sistema de memória de primeiro nível é composto por:
29
Uma cache de instruções e dados
Áreas separadas de memória RAM para instruções e dados
Sistema DMA
Buffer de escrita
Micro-TLBs
Unidade de Gestão de Memória (MMU)
Esta é a unidade responsável pelo seguinte:
Controla o acesso à memória externa
Faz a tradução de endereços virtuais em endereços físicos
Faz a verificação de permissão de acesso
Tendo em vista a redução do custo de acesso à memória, os resultados das
pesquisas nas tabelas de tradução são armazenados em estruturas de cache,
também chamadas TLBs ( Translation Lookaside Buffers).
4.6. Aplicações destes processadores
Hoje em dia os processadores ARM são líderes de mercado no que diz respeito a
praticamente todos os dispositivos portáteis, devido à sua grande velocidade de
processamento e reduzido consumo de energia.
Os ARM estão presentes em consolas de jogos, em PDAs, em pocket PCs, em modems, ou
seja em todos os dispositivos que têm como requisito importante o baixo consumo de
energia. Dado o consumo de energia ser muito importante para os requisitos deste trabalho,
pode-se afirmar sem dúvida, que o facto da consola Nintendo DS usar estes processadores
contribuiu para que esta fosse a escolhida para base deste projecto.
Através de testes informais realizados e da consulta de fóruns sobre a temática das
consolas de jogos portáteis, é possível constatar que e Nintendo DS Lite tem uma
autonomia muito superior à da sua principal concorrente, a PSP da Sony [9]. Assim temos
para esta última uma autonomia de cerca de 4 horas contra as mais de 16 horas para a
Nintendo! Obviamente que estes valores dependem das aplicações executadas, da
regulação de brilho do display, se as comunicações sem fios estão ou não ligadas, estado
da bateria e por isso devem ser considerados valores aproximados!
30
31
5. Descrição do Sistema
32
Neste capítulo será feita uma descrição detalhada do sistema desenvolvido, nomeadamente
a apresentação do diagrama de blocos do sistema, seguida de uma descrição
pormenorizada de cada bloco.
5.1. Diagrama de Blocos
A figura seguinte apresenta um esquema global da arquitectura proposta para o sistema de
monitorização de sinais vitais:
Ilustração 5.1 – Visão global do sistema
Assim temos que os constituintes principais são:
O bloco 1 - representando os sensores (eléctrodos ECG e sensor de temperatura)
33
O bloco 2 - representando a placa 1 que contém o hardware para acomodação
(amplificação e filtragem), conversão e transmissão dos sinais eléctricos
provenientes dos sensores.
No bloco 3 está presente o R4DS [10] (cassete adaptada) e a placa 2, que contém o
módulo wireless receptor.
No bloco 4 temos a consola de jogos, onde é feito o display dos sinais, o seu
processamento e algum armazenamento, nomeadamente para detectar situações
anómalas e gerar alarmes.
Por fim no bloco 5 está o computador (opcional) para armazenamento e
tratamento/análise mais complexa dos dados.
5.2. Descrição dos blocos do sistema
5.2.1. Eléctrodos ECG e sensor de temperatura
Para realizar um electrocardiograma, é necessário estabelecer um interface entre o corpo do
paciente e o sistema. Para esse efeito, são usados sensores para registo de ECG, mais
comummente chamados eléctrodos.
Estes eléctrodos destinam-se a medir as correntes de iões que existem no corpo humano e
que geram potenciais eléctricos, como vimos no capítulo anterior. Existem diversos tipos de
eléctrodos, como por exemplo eléctrodos internos, externos, micro-eléctrodos, eléctrodos de
sucção, apresentando todos eles as suas vantagens e desvantagens. Na figura seguinte
são mostrados alguns exemplos.
34
Ilustração 5.2 - Exemplos de eléctrodos para ECG
Para este sistema foram escolhidos os eléctrodos externos, também conhecidos como
eléctrodos metal plate, que são constituídos por um contacto metálico coberto com um gel
(electrólito) que fica em contacto com a pele do paciente e é depois inserido numa espécie
de fita adesiva para fixar ao corpo do paciente.
Na figura seguinte podem ver-se os eléctrodos usados para fazer o interface entre o
paciente e o sistema.
Ilustração 5.3 - Eléctrodos ECG usados no sistema
35
Ilustração 5.4 - Cabo para ligar os eléctrodos à placa1
O cabo usado para ligar os eléctrodos à placa1 está representado na figura 5.4. É um cabo
realizado de maneira artesanal e um pouco improvisada, que poderá ser melhorado. Ele é
composto por cabos blindados terminados com uma mola que é feita de um material
condutor que se pode ligar ao eléctrodo. De seguida, todos os cabos foram ligados a um
conector para permitir uma fácil ligação à placa1. Esta não é de todo a solução perfeita, mas
serviu para demonstrar os resultados pretendidos e pretendeu demonstrar a robustez da
solução em condições de funcionamento não óptimas.
Sensor de Temperatura
No bloco dos sensores, está também um sensor de temperatura que tem como finalidade
medir a temperatura corporal. O sensor usado é um LM335 [11], sendo que é um sensor de
temperatura semicondutor apresentando a vantagem de ser linear e de se adequar bem à
gama de temperaturas necessária para este sistema.
36
Ilustração 5.5 – Sensor de temperatura (LM335) e respectivo cabo
O sensor de temperatura foi montado num cabo com cerca de 1 metro para permitir que o
sensor seja ligado do paciente à electrónica de acondicionamento dos sinais dos sensores –
a placa 1 da figura 5.1. A descrição das suas características eléctricas será feita
posteriormente.
5.2.2. Placa 1
No bloco 2 do diagrama temos a placa 1 que contém toda a electrónica para
acondicionamento, conversão e transmissão dos sinais provenientes dos sensores. Ao
chegarem à placa, os sinais passam por andares de amplificação e filtragem antes de serem
convertidos para o domínio digital e posteriormente são transmitidos para outro bloco do
sistema.
Para a conversão dos sinais do domínio analógico para digital foi usado um
microcontrolador da Microchip da família PIC18 MCU: o Pic18f258 [12]. Este para além da
gestão da placa, realiza também uma filtragem aos sinais adquiridos e envia-os para o
módulo wireless, presente nesta placa, através de um barramento Serial Peripheral Interface
(SPI). Alternativamente poderá enviá-los também para um PC via um interface RS232C.
Este interface é usado para carregar o microcontrolador com o firmware necessário, que
poderá ser melhorado constantemente sem ser preciso remover nenhum circuito integrado
da placa.
37
Após serem transmitidos através do módulo wireless, os dados correspondendo aos sinais
adquiridos pelos sensores são recebidos por outro módulo wireless igual ao da placa 1 que
se encontra presente na placa 2. Este é controlado directamente pela Nintendo DS.
Neste projecto foram apenas utilizadas algumas das funcionalidades do microcontrolador,
Pic18f258 [12] nomeadamente o módulo de conversão A/D, e o módulo Master Synchronous
Serial Port (MSSP), que permite implementar o protocolo de comunicação SPI. Foi
necessário criar algumas rotinas a nível de software que permitissem um correcto
funcionamento destes módulos. As mesmas serão expostas no capítulo referente ao
Software.
Módulos wireless
Os módulos wireless presentes nas placas 1 e 2 [13], figura 5.6, são
usados para a transferência de dados entre a placa 1 e a placa 2.
Estes operam na banda ISM (2.4GHz – 2.483GHz), possuem uma
sensibilidade de recepção até -95dBm e o seu alcance pode ir para
além dos 50 metros. No que respeita à transferência de dados, esta
é feita a uma taxa superior a 62.5kbits/s. Possuem interface SPI para
comunicação com os dispositivos com os quis operam.
Estes pequenos módulos (23.75mm x 23.75mm x 5.3mm) podem
ser alimentados com tensões entre 2.7V e 3.6V e consomem somente 4mA.
5.2.3. Nintendo DS
No bloco 4 temos a consola de jogos escolhida para a realização deste projecto, a Nintendo
DS, que é uma consola da Nintendo dotada com dois microprocessadores ARM, um ARM7
e um ARM9, e com dois ecrãs, sendo um deles táctil. É uma consola inovadora de
pequenas dimensões (13cm x 7cm x 2cm; 200g) que veio dar outra vida ao mundo dos
vídeo jogos, não só ao nível das potencialidades gráficas, mas também quebrando a
barreira existente ao nível de movimentação dos cursores, escolha de menus, e mesmo em
pleno jogo, o utilizador deixou de estar dependente dos botões da consola, passando a
poder fazer quase tudo através do ecrã táctil, actuando com os dedos, ou com um stylus,
que é uma espécie de caneta com a qual é possível actuar sobre o ecrã. Na geometria da
consola, o ecrã táctil é o ecrã inferior.
Ilustração 5.6 - WirelessUSB LR™ Radio Module
38
Esta veio dar também aos jogadores a possibilidade de jogar em rede sem que para isso
fossem necessários fios, pois a consola possui um sistema de comunicação wireless,
permitindo ligar-se a outras consolas iguais.
Ilustração 5.7 - Consola de jogos (Nintendo DS)
Em relação à transferência de dados para a consola, inicialmente não foi uma tarefa fácil
pois não havia muitos conhecimentos acerca do assunto. A solução encontrada foi enviar os
dados para a consola através do slot 1, no qual são inseridas as cassetes de jogos mais
recentes. Este possui um barramento SPI, que é usado para carregar os programas/jogos
da memoria da cassete para a memória da consola e através do qual foi possível transferir
os dados dos microcontroladores para a consola. Para tal, é usada uma cassete de jogos
adaptada , o R4DS [10], presente no bloco 3 do diagrama, que foi concebida para os
amantes de homebrew (home software developers) e que está dotada de um adaptador
para cartões microSD, nos quais são carregados os executáveis dos programas
desenvolvidos para poderem correr na consola.
39
Ilustração 5.8 - R4DS com algumas alterações
Para que fosse possível ter acesso aos pinos que estão em contacto com o barramento da
consola, foi necessário estanhar alguns fios nesses pinos e trazê-los até ao exterior da
cassete onde foram ligados numa ficha para permitir o interface entre a placa 2 e a consola.
Nessa ficha temos presentes os seguintes sinais: V+(3.3V); GND; MISO (Master In Slave Out);
MOSI (Master Out Slave In) ; SCK ( Serial Clock). Estes 5 sinais permitem fazer a comunicação
SPI com o módulo wireless e ao mesmo tempo alimenta-lo.
Na figura seguinte pode ver-se a disposição dos pinos do slot 1 da Nintendo DS.
Ilustração 5.9 - Esquema do Slot 1
5.2.4. Computador
Neste sistema, o computador é um bloco opcional, ou seja, o sistema trabalha normalmente
se o computador não fizer parte do leque dos dispositivos constituintes do mesmo. O papel
do computador no sistema é fazer o tratamento e análise dos dados que possam requerer
40
maior poder de cálculo, mas também para fazer o display com maior conforto (o display é
muito maior).
Foi desenvolvida uma aplicação gráfica que permite recolher os dados do microcontrolador
e na qual é possível armazená-los num ficheiro de texto para uma análise posterior. A
questão da visualização não será fundamental, uma vez que é feita na consola de jogos,
mas, por exemplo, essa aplicação poderá ser adaptada para fazer uma análise com
complexidade que excede o poder de cálculo da consola.
Sempre que seja necessário efectuar alguma alteração no software do microcontrolador,
também designado por firmware, tal tarefa pode ser também efectuada a partir do
computador. Claro que estas funções são apenas importantes na fase de desenvolvimento e
não no contexto do uso final deste projecto.
Nas figuras seguintes estão representados, uma aplicação desenvolvida para permitir o
armazenamento no computador dos dados adquiridos através dos sensores e o aspecto do
ficheiros de dados resultante da aplicação. Estes dados poderão ser usados para análises
posteriores mais cuidadas.
Ilustração 5.10 – Aspecto da aplicação para armazenamento dos dados
41
Ilustração 5.11 – Aspecto do ficheiro de saída para armazenamento dos dados
42
43
6. Hardware
44
Neste capítulo vai ser feita uma descrição pormenorizada do hardware que compõe o
sistema, começando pelos andares de amplificação e filtragem dos canais de ECG, seguido
da aquisição do sinal de temperatura e por fim também a comunicação entre os vários
dispositivos do sistema.
6.1. Amplificação diferencial dos sinais de ECG
Os sinais eléctricos emitidos pelo corpo humano, têm uma amplitude máxima muito
reduzida, tipicamente para os sinais de ECG estas variam entre 500µV e 1.2mV
dependendo das pessoas, pelo que é sempre necessário fazer uma amplificação dos sinais.
O sistema é composto por três canais de ECG, um canal de temperatura e um circuito para
o oximetro. Cada canal de ECG foi tratado em separado, ou seja, para cada canal de ECG
foram feitas amplificação e filtragem em separado.
Ilustração 6.1 - Andar de amplificação
Na figura 4.7 está representado o primeiro andar de amplificação que é o andar de
amplificação diferencial no qual é usado um amplificador de instrumentação da Analog
Devices, o AD623 [14]. Este amplificador é muito usado para aplicações médicas de baixo
consumo, é fácil de utilizar, possui uma elevada impedância de entrada, permite ganhos
elevados e tem um factor de rejeição de modo comum (CMMR) bastante elevado.
O ganho deste amplificador é controlado apenas por uma resistência RG, que é calculada
através da fórmula , onde G representa o ganho desejado para o amplificador.
45
O amplificador diferencial foi projectado para ter um ganho de 46, o que equivale a dizer que
. Com este ganho na saída do andar diferencial os sinais atingem já uma
amplitude máxima de cerca de 50 mV, no entanto este ganho não é suficiente para que seja
feita uma observação correcta do sinal neste sistema, sendo assim necessário mais ganho.
Isso será feito simultaneamente com a função de filtragem.
6.2. Filtragem
Nos dias que correm estamos constantemente rodeados de radiação electromagnética, que
de alguma maneira nos afecta e afecta também o correcto funcionamento dos circuitos, se
não forem tomados os devidos cuidados, ou seja, uma filtragem adequada. Para isso o
andar de amplificação diferencial é seguido de um andar de filtragem constituído por um
filtro activo passa-banda. Este filtro foi projectado para filtrar o nível DC do sinal e também
atenuar a componente de 50Hz emitida pela rede eléctrica. O andar de filtragem foi
projectado de forma a introduzir o ganho extra que ainda é necessário.
Ilustração 6.2 - Andar de filtragem
Algumas características do filtro são:
Frequência de corte inferior:
Neste tipo de sinais a componente DC do sinal não tem grande relevância, e até pode ser
mesmo prejudicial para a análise. Esta pode não ser constante devido ao facto de por
exemplo o paciente não permanecer imóvel durante o exame. Resulta daí a necessidade de
filtrar a componente DC do sinal.
46
Para , e por exemplo R1=15K, obtém-se C1=10µ.
Frequência de corte superior:
Como o ambiente que nos rodeia está normalmente cheio de interferências, nomeadamente
a componente de 50Hz da rede eléctrica, o filtro passa-banda tem também como objectivo a
filtragem dessa componente que iria afectar com certeza a visualização do sinal.
Com isto o filtro foi projectado para , com R2=82K e C2 = 100n.
O andar de filtragem apresenta ainda um ganho dado por .
6.3. Aquisição da Temperatura
A medição da temperatura, é feita, como referido no capítulo 5, através de um sensor de
temperatura, o LM335 [11]. Este sensor apresenta uma variação de tensão de +10mV/°K, e
tem capacidade para actuar deste -40°C até +100°C (informação retirada do datasheet [11]).
Para começar, partiu-se de uma informação dada pelo datasheet [11] do componente, que
refere que para 25°C, 298°K, o sensor possui uma tensão igual a 2,98V. Caso isto não se
verifique, deve proceder-se a um pequeno ajuste através de um potenciómetro ligado entre
o ânodo, o cátodo e o pino adjust, até que se verifique tal condição. Como 0°C corresponde
a 273,15°K e 25°C corresponde a 298,15°K, é fácil verificar que há uma correspondência
entre a tensão dada pelo sensor e a temperatura que queremos medir em °C. Assim, se à
tensão dada pelo sensor se subtrair 2.73V, por cada aumento de 10mV da tensão do
sensor, temos o aumento de 1°C.
A gama de temperaturas que se deseja medir varia no intervalo [20°C ; 50°C], ou seja
vamos obter uma gama de variação da tensão do sensor compreendida entre [ 2,93V ;
3,23V]. O valor de tensão dada pelo sensor tem que ser convertida para o correspondente
valor de temperatura, sendo essa operação realizada pelo microcontrolador. Para aproveitar
toda a gama de valores da ADC do microcontrolador, é necessário fazer com que 2.93V
corresponda ao valor 0 (0V) e que 3.23V corresponda ao valor 255 (3.3V), uma vez que foi
usada uma ADC com 8bits. Fica-se assim com uma resolução de temperatura de 30/255=
0.12°C.
47
Para o efeito foi usado um amplificador numa configuração diferencial com ganho de
.
Na entrada positiva do amplificador de diferenças é ligado o sinal de tensão proveniente do
sensor, enquanto na entrada negativa é ligado um sinal proveniente de uma referência de
tensão que idealmente teria 2.93V. Em muitos casos é feito à posteriori um ajuste por
software.
Na figura seguinte está o esquema do circuito usado para a medição da temperatura:
Ilustração 6.3 - Amplificação e compensação do sinal de temperatura
6.4. Algumas considerações sobre o hardware
A placa1 é alimentada com uma pilha de 9V, tensão que depois é regulada para 3,3V
através de um regulador de tensão LDO [15]. Esta solução podia ser optimizada uma vez
que ao usar uma pilha de 9V para alimentar um sistema que apenas necessita de 3.3V,
estamos a desperdiçar muita energia, mas por outro lado também traz algumas vantagens,
nomeadamente a facilidade de trocar a pilha quando esta estiver descarregada, sendo muito
mais fácil encontrar uma pilha vulgar de 9V, do que por exemplo uma bateria de lítio de
3.7V. A placa2, como foi referido atrás, apenas contém o módulo wireless que recebe os
sinais, e esta é alimentada também com uma tensão de 3.3V que vem da bateria da
consola. Uma solução a considerar no futuro poderia passar pela implementação de uma
fonte comutada e portanto com maior rendimento.
48
A protecção do paciente em relação à alimentação é feita através de díodos ligados em
paralelo entre o sinal de referência que vem de um divisor resistivo e ao qual é ligado o
eléctrodo da perna direita, funcionando este como sinal comum aos restantes eléctrodos.
Assim é evitado que apareça uma diferença de tensão superior a 0,6V entre qualquer par de
eléctrodos pertencentes a uma derivação, evitando assim valores de corrente excessiva que
poderiam ser prejudiciais para o paciente.
No bloco que trata o sinal do sensor de temperatura, é usado um TL431 [16] e algumas
resistências para gerar a tensão de referência que é subtraída ao valor dado pelo sensor.
Este é um componente estável e com uma variação muito baixa em relação à temperatura,
já o mesmo não aconteceu quando se tentou gerar essa tensão de referência com um díodo
de zener, o qual apresentava uma variação considerável com a temperatura.
6.5. Comunicação entre os dispositivos
No sistema a comunicação entre os dispositivos, é feita maioritariamente através de Serial
Peripheral Interface (SPI), estando este protocolo de comunicação implementado entre os
microcontroladores e os módulos wireless e também entre a consola e o microcontrolador.
De seguida vai ser feita uma breve descrição do protocolo de comunicação SPI.
SPI
O barramento SPI é um link de comunicação de dados síncrona implementado inicialmente
pela Motorola e tem capacidade para operar no modo full duplex. Neste protocolo, os vários
dispositivos operam como master ou slave, cabendo sempre ao master a responsabilidade
de iniciar a comunicação, sendo que dispositivos que operam no modo slave, são activados
através de slave select lines pelo master.
Interface
O barramento SPI tem quatro sinais específicos para realizar a comunicação:
SCLK – Serial Clock
MOSI – Master Output, Slave Input
MISO – Master Input, Slave Output
SS – Slave Select
49
Usualmente estes sinais também podem ter outras designações:
SCK – Serial Clock
SDI – Serial Data In
SDO – Serial Data Out
nCS, CS, nSS, STE – Chip Select, Slave Transmit Enable ( saída do master)
Para que a comunicação funcione, é necessário que o sinal SDI do master, seja ligado ao
sinal SDO do slave.
Operação
O barramento SPI pode operar apenas com um master e um ou mais slaves. Se apenas for
usado um slave, o pino SS pode ser ligado com carácter permanente ao nível lógico baixo,
se o dispositivo permitir. Quando são usados vários slaves, é necessária uma linha SS
independente para cada dispositivo.
A maior parte dos dispositivos estão equipados com saídas tri-state, que ficam em alta
impedância quando o dispositivo não está seleccionado. Os dispositivos que não tenham
saídas tri-state, não podem partilhar o barramento com outros dispositivos, sendo apenas
possível efectuar comunicação entre esse dispositivo e o master.
Transmissão de dados
Para iniciar uma comunicação, o master tem que configurar o sinal de clock usando uma
frequência mais baixa que a frequência máxima admitida pelo slave. Normalmente as
frequências de operação do SPI estão compreendidas entre 512KHz e 70 MHz.
O master activa com o nível lógico baixo a linha SS do dispositivo com o qual pretende
iniciar uma comunicação. No caso de o slave necessitar de um período de espera, o master
terá que respeitar essa condição antes de começar a enviar ciclos de clock. Durante cada
ciclo de clock ocorre uma transmissão de dados full duplex, ou seja, o master envia um bit
50
para a linha MOSI, linha essa que será lida pelo slave. Ao mesmo tempo o slave envia um
bit para a linha MISO que será lida pela master.
Numa transmissão normalmente são usados dois shift registers, um no master e o outro no
slave conectados em forma de anel. Os dados são carregados para os shift registers, sendo
em seguida lidos por cada um dos dispositivos e utilizados para o que for necessário. No
caso de haver mais dados para serem trocados entre os dispositivos, estes são novamente
carregados nos shift registers e o processo repete-se. Quando não houver mais dados para
trocar, o master deixa de emitir ciclos de clock e coloca um nível lógico alto na linha SS.
Na figura seguinte está representada uma transferência de informação entre o
microcontrolador e a consola sendo esta o master na versão do hardware que faz a
comunicação entre a placa 1 e a placa 2 através de fios. O microcontrolador está a enviar o
valor 0x61 para a consola.
De notar que o idle state do sinal de clock da consola é high, e esta faz a leitura dos dados
das linhas MISO e MOSI quando o sinal de clock transita do estado active para idle.
Ilustração 6.4 – Transferência de um byte entre o microcontrolador e a consola
Na versão do hardware que faz a comunicação entre as placas 1 e 2 através dos módulos
wireless, as transferências SPI dão-se entre o microcontrolador e o módulo emissor, e entre
a consola e o módulo receptor.
51
Uma vez que a arquitectura dos módulos exige que a leitura dos dados das linhas MISO e
MOSI seja efectuada na transição do sinal de clock de idle para active [13] e o idle state do
sinal de clock é low, foi necessário inverter o sinal de clock da consola.
No microcontrolador, não houve qualquer problema a esse nível uma vez que todos os
parâmetros relativos à comunicação SPI são configuráveis por software.
Na figura seguinte está representada a transferência de dois bytes de informação entre a
consola e o módulo wireless receptor. O primeiro byte corresponde ao valor 0x09 e o
segundo ao valor 0x06. A comunicação entre o microcontrolador e o módulo emissor é
semelhante à que está representada na figura 6.5.
Ilustração 6.5 – Transferência de dois bytes entre a consola e o módulo receptor
52
53
7. Software
54
No que respeita ao software, foram implementados alguns algoritmos para permitir o
tratamento e conversão dos dados sinais obtidos dos sensores e também para permitir a
comunicação entre os vários dispositivos constituintes do sistema.
7.1. Desenvolvimento de software para a Nintendo DS
No desenvolvimento do software (uma aplicação gráfica) para a Nintendo DS utilizou-se o
DevKitPro [17] que é um ambiente de desenvolvimento compatível com muitas arquitecturas
de processadores usados por diversas consolas de jogos existentes.
Neste projecto foi usado o pacote compatível com os processadores ARM, o DevKitARM
[17]. Este contém um compilador e uma biblioteca de funções dedicados à Nintendo DS, e
através desta é possível criar aplicações gráficas passíveis de serem executadas no
hardware da consola. O compilador que está integrado neste ambiente de desenvolvimento
chama-se MSys [18] e cria ficheiros de saída com extensão .nds, que são os ficheiros
reconhecidos para correr na consola.
55
Ilustração 7.1 - Aspecto do editor de texto do ambiente de desenvolvimento utilizado
No anexo B, está descrito o processo a seguir para a instalação do ambiente de
desenvolvimento de software para a Nintendo DS.
A biblioteca de funções usada para criar a aplicação gráfica chama-se PAlib [19]. Esta
biblioteca foi criada pela comunidade de amantes de homebrew, para poderem mais
facilmente desenvolver os seus próprios jogos e programas. O uso das funções desta
biblioteca facilita muito a vida dos programadores deste tipo de aplicações, o que foi
extensível ao desenvolvimento deste projecto apesar deste se enquadrar fora do usual para
uma consola de jogos. A linguagem de programação usada foi o C, e com o auxílio desta
biblioteca não é necessário conhecer e manipular directamente os registos do processador e
muitas especificidades do hardware da consola. O código das aplicações assim
desenvolvidas também se torna mais legível e compreensível.
No entanto tiveram de ser desenvolvidas algumas rotinas que não faziam parte da
biblioteca, nomeadamente as rotinas que permitem fazer a comunicação através do
barramento SPI. Estas rotinas resultaram de muita pesquisa e da junção de muita
informação que andava “perdida” por alguns sites presentes na internet [20] [21] [22], uma
vez que não há ainda muita documentação sobre o assunto.
56
Os sites dedicados ao homebrew foram a base desta pesquisa, possibilitando assim
primeiro contacto com a programação da consola e o desenvolvimento de pequenos
programas de teste.
7.2. Aplicação gráfica para a Nintendo
Como foi referido atrás, a aplicação gráfica para a Nintendo DS foi desenvolvida recorrendo
a uma biblioteca de funções dedicada, no entanto houve dificuldades em se conseguir
conciliar a representação gráfica dos sinais com a sua transferência da placa 2 para a
consola, uma vez que como são transferidas as quatro amostras correspondentes aos sinais
dos sensores antes de estes serem apresentadas no ecrã, teve que haver um compromisso
temporal entre esta transferência, a frequência de amostragem de cada sinal e o aspecto
visual dos sinais de ECG no ecrã da consola.
Relativamente às imagens e botões virtuais que aprecem no arranque da aplicação, estes
foram criados num programa convencional para edição de imagem e posteriormente foram
convertidos para um formato adequado através da aplicação PAGfx [23], para serem
apresentadas nos ecrãs da consola e com os quais é possível trabalhar.
Ilustração 7.2 - PAGfx conversor de imagens para o formato adequado
57
Nas duas figuras seguintes está representado o aspecto actual do arranque da aplicação
que é executada na consola.
Ilustração 7.3 - Imagem de apresentação
Ilustração 7.4 - Menu inicial
Fazendo agora referência à apresentação dos sinais de ECG e temperatura, tiveram de ser
tomados alguns cuidados, sendo o maior deles a necessidade de sincronização da
informação trocada entre a placa 2 e a consola. Durante o processo de comunicação entre
estes, é a consola que controla as operações, funcionando como master no protocolo SPI.
58
Em relação à apresentação dos sinais de ECG, o traçado dos canais de ECG que aparecem
no ecrã da consola é feito pixel a pixel, porque os traçados são feitos à medida que a
consola recebe os dados. Os sinais são amostrados a uma taxa de 120amostr/seg,
permitindo assim ver no ecrã da consola cerca de 3 ou 4 complexos QRS, dependendo do
ritmo cardíaco do paciente. Esta taxa poderia ser mais elevada, e assim teríamos mais
resolução mas daí resultava o inconveniente de os sinais não ficarem tão perceptíveis
quando são apresentados na consola. Os pontos que aparecem no ecrã correspondentes
aos valores recebidos do microcontrolador têm que ser unidos através de linhas, (há uma
função para desenhar linhas na biblioteca usada).
Fazendo agora referência ao canal da temperatura, após ser recebido o seu valor na
consola, é depois tratado adequadamente e convertido para um valor de temperatura em
°C. Como foi referido no capitulo sobre o hardware é feito um ajuste deste valor por
software, para melhorar a sua exactidão.
A aplicação tem ainda a possibilidade de criar uma base de dados para os pacientes, a qual
é totalmente manipulada através do touch screen. Esta base de dados está numa fase
embrionária, contendo apenas campos para inserir dados pessoais dos pacientes, no
entanto o objectivo é criar uma base de dados que permita guardar também um histórico
dos sinais obtidos do paciente.
Como a biblioteca permite emular um teclado virtual muito semelhante ao teclado de um
computador é relativamente fácil introduzir os dados requeridos. Foi no entanto necessário
lidar com algumas rotinas para tratar a informação vinda desse teclado virtual.
Essas rotinas têm como função converter um valor que está associado internamente a cada
uma das “teclas” do teclado virtual e convertê-lo para o caracter correspondente à tecla
seleccionada, permitindo assim a recolha da informação introduzida.
59
Ilustração 7.5 - Menu para gestão da base de dados
Ilustração 7.6 - Teclado Virtual
Este teclado tem praticamente todas as funcionalidades de um teclado real, permite
escrever em letras minúsculas e maiúsculas, permite escrever caracteres alfanuméricos,
permite apagar caracteres escritos, enfim é quase um teclado real. A rotina invocada para o
aparecimento do teclado no ecrã chama-se PA_InitKeyboard(screen);
Neste documento não se encontra quaquer referência relativa ao funcionamento do R4DS
[9] ao nível de software, nomeadamente no que repeita à passagem de ficheiros para o
60
cartão microSD para estes serem executados pela Nintendo DS, estando essa informação
apresentada com todo o detalhe no anexo C.
Na secção seguinte vai ser feita uma breve apresentação das funções usadas da biblioteca
PAlib.
7.3. PAlib ( Funções mais utilizadas)
De seguida estão representadas algumas funções usadas no desenvolvimento da aplicação
para a Nintendo DS. Para cada uma delas é feita uma descrição sucinta da sua aplicação.
PA_EasyBgLoad - Permite carregar uma imagem para ficar em background no ecrã da consola.
PA_LoadSpritePal, PA_CreateSprite - Permitem criar botões virtuais e imagens para animações.
PA_DeleteSprite – Elimina uma sprite activa no ecrã.
Modos do controlador de ecrã
PA_InitText – Inicia o modo de texto
PA_Init8bitBg – Inicia o modo de background
PA_OutputText – Escrever texto no ecrã
PA_DrawLine – Desenhar linha ente dois pontos
PA_InitKeyboard – Inicializar o teclado virtual no ecrã
Funções extra- biblioteca
cardSPIInit - Configura a comunicação SPI
cardSpiRecieve – Recebe o valor transferido através do SPI
keyboardRead – Lê o teclado virtual
As funções extra – biblioteca, são funções que foram desenvolvidas no âmbito deste
projecto, que resultaram do agrupamento de outras funções existentes em fóruns desta
área.
Uma descrição mais detalhada das funções pode ser encontrada na documentação da
biblioteca PAlib online como visto em [18].
61
7.4. Código da aplicação gráfica
No anexo A está mostrado o código desenvolvido para a aplicação que é executada na
consola. Basicamente o código está dividido em duas partes, a apresentação dos sinais no
ecrã da consola e a gestão da base de dados. Na parte da apresentação dos sinais, são
recebidos através do barramento SPI os quatro valores correspondentes aos três canais de
ECG e ao canal da temperatura e de seguida são manipulados convenientemente para
poderem ser apresentados no ecrã. O processo de manipulação e display dos sinais pode
ser visto com algum detalhe no anexo A. Há várias possibilidades para a apresentação dos
sinais de ECG, estes podem ser apresentados um a um, ou os três simultaneamente no
ecrã. Quanto ao valor da temperatura, este aparece sempre independentemente do modo
de visualização do ECG.
Relativamente à base de dados, o código implementado está numa fase inicial, permitindo
fazer uma gestão ao nível de inserir novos pacientes, listar e apagar entradas de pacientes.
Na figura seguinte está representado um fluxograma simplificado da aplicação desenvolvida
para a Nintendo DS.
62
Ilustração 7.7 – Fluxograma da aplicação desenvolvida para a Nintendo DS
7.5. Código implementado no microcontrolador
Inicialmente tiveram de ser desenvolvidas as rotinas que permitem fazer a configuração
correcta da ADC e também do módulo MASTER SYNCHRONOUS SERIAL PORT (MSSP),
que permite implementar o barramento de comunicação série SPI no microcontrolador.
63
O código das funções desenvolvidas está mostrado no anexo A.
Houve no entanto duas versões do código desenvolvido para o microcontrolador, uma para
que o sistema trabalha-se com a transmissão de dados através de fios e outra para
trabalhar com os módulos wireless.
Na versão para trabalhar com fios, depois de inicializar os modulos da ADC e MSSP, é feita
a conversão de uma amostra de cada canal de ECG e temperatura e seguidamente os
valores são enviados um a um para o barramento SPI, consoante os pedidos da consola,
uma vez que no protocolo SPI o microcontrolador funciona como slave e os valores só são
enviados para barramento quando o microcontrolador for solicitado pela consola, ou seja,
como foi referido na secção relativa ao SPI, numa tranferência tem que existir sempre um
master e pelo menos um slave, sendo que nesta situação o microcontrolador assume o
papel de slave. Assim apenas existe transferência de informação entre o microcontrolador e
a consola quando a esta necessitar de um novo valor de cada canal para ser apresentado
no ecrã.
Todos os valores enviados através de SPI do microcontrolador para a consola, são enviados
também para o computador através da porta série. Numa versão futura deverá ser utilizada
o interface USB, muito mais utilizado actualmente!
Em relação à versão que trabalha com os módulos wireless, após serem inicializados os
módulos de ADC e MSSP, também tem que ser feito um processo de inicialização do
módulo wireless, que consiste em definir alguns parâmetros de configuração para o seu
correcto funcionamento.
Seguidamente, o processo é semelhante ao anterior, com a diferença que agora o
microcontrolador assume o papel de master, uma vez que os módulos wireless têm que ter
sempre o papel de slave na comunicação SPI.
Foi também implementado um filtro digital rejeita banda no microcontrolador para filtrar a
componente de 50 Hz da rede uma vez que esta pode reduzir significativamente a qualidade
dos sinais de ECG amostrados. Inicialmente com isto conseguiu-se melhorar um pouco a
qualidade dos sinais, mas o filtro uma vez que não tem carácter adaptativo, necessitava que
a frequência de amostragem fosse o mais constante possivel, situação essa que não
acontece quando é a consola que impõe a frequência de amostragem. Através da
visualização no oscilóscopio dos sinais correspondentes aos pedidos de informação feitos
pela consola notou-se que a frequência não era constante, apresentando algum jitter. A
razão para tal acontecimento é de certa forma desconhecida, podendo passar por exemplo
64
pela necessidade que a consola tem para fazer a gestão de todo o hardware que a compõe
ao e execução simultanea das aplicações que está a executar.
O filtro foi ajustado para rejeitar a componente de 50 Hz num sinal amostrado a 200Hz e
para esses sinais os resultados obtidos são aceitáveis como será mostrado no capítulo 8.
O filtro digital tem a seguinte expressão:
A resposta em frequência do filtro para uma frequência de amostragem de 200Hz está
representada na figura seguinte.
Ilustração 7.8 – Resposta em frequência do filtro digital
Na figura seguinte á apresentado um fluxograma simplificado do código implementado no
microcontrolador.
65
Ilustração 7.9 – Fluxograma do código implementado no microcontrolador
De uma maneira geral este fluxograma ilustra o processo seguido em ambas as versões do
código implementado, uma vez que o processo seguido em ambos é semelhante.
66
8. Resultados
67
Neste capítulo vão ser apresentados os resultados do trabalho realizado durante o projecto.
Nas figuras seguintes estão representadas as PCBs desenvolvidas. Quanto à parte da
Nintendo DS vai ser apresentado o aspecto dos sinais de ECG e a temperatura corporal
presentes no ecrã da consola.
8.1. PCBs
Ilustração 8.1 - Placa1 top layer
Módulo Wireless
Microcontrolador
Amplificadores de
instrumentação -
AD623
Regulador de
tensão
Referência de
tensão
Opamps
68
Ilustração 8.2 - Placa1 bottom layer
Ilustração 8.3 – Placa 2
69
Ilustração 8.4 – Placa 2 bottom layer
A placa 1 contém todo o hardware para a acomodação dos sinais vindos dos sensores e
também o microcontrolador que faz a conversão dos sinais e os envia para os restantes
blocos do sistema. Na placa 2 apenas temos o módulo wireless receptor que é controlado
através da Nintendo DS e apenas recebe os sinais vindos do módulo presente na placa 1.
Na figura 8.5 está representado o sistema implementado durante a realização do projecto.
Ilustração 8.5 - Vista do sistema completo (excluindo computador e sensor óximetro)
70
8.2. Apresentação dos sinais na consola
Ilustração 8.6 - ECG com três canais no ecrã da Nintendo DS
Como é visível através da figura anterior, são apresentados simultaneamente no ecrã da
consola os três canais de ECG, a temperatura corporal e também os batimentos por minuto.
Para fins médicos é muito útil a visualização simultânea de todos estes indicadores, uma
vez que através deles podem ser detectadas patologias, que estariam mais camufladas se
fossem vistos um a um separadamente. É possível interromper o display dos sinais a
qualquer momento, com a ajuda dos botões da consola, ou dos botões virtuais. A aplicação
desenvolvida para a consola permite no entanto a visualização de cada um dos canais de
ECG separadamente, aparecendo assim o sinal com uma maior amplitude permitindo uma
melhor visualização do mesmo. Do mesmo modo também se poderá visualizar o gráfico da
saturação de Oxigénio do sangue. Não são apresentados resultados deste parâmetro
devido a falta de um sensor apropriado!
No que respeita ao filtro digital implementado no microcontrolador, os resultados obtidos não
são totalmente satisfatórios uma vez que com foi referido, este não tem carácter adaptativo
e sofre da existência de jitter na frequência de amostragem imposta pela consola. Mesmo
assim, pode-se constatar pelas figuras seguintes onde está representado o sinal de um
canal de ECG num ambiente com algum ruído, que há uma notória melhoria da qualidade
do sinal com o filtro digital. De realçar que estas imagens foram obtidos numa fase do
desenvolvimento deste projecto onde se usava uma frequência de amostragem de 200Hz e
o filtro como descrito em 7.5.
71
Na versão final, como já foi referido, a frequência de amostragem foi reduzida para 120Hz
(por questões de visualização). Como não houve tempo de recalcular o filtro, este foi
desactivado. No entanto, como na versão final é o microcontrolador a impor a frequência de
amostragem (que é isenta de jitter), é de prever que um filtro semelhante ao anterior
(redimensionado para uma frequência de amostragem de 120Hz) funcionará correctamente.
Ilustração 8.7 – Sinal de ECG apresentado sem filtro digital
72
Ilustração 8.8 – Sinal ECG apresentado com filtro digital
No entanto a qualidade dos resultados, neste momento varia consideravelmente de acordo
com o local onde o sistema esteja a operar, ou seja, se estivermos num sítio onde não
existam muito aparelhos que estejam ligados à rede eléctrica, obtém-se um sinal limpo no
ecrã da consola, por outro lado, quando o sistema está a operar num ambiente ruidoso no
qual haja muitos dispositivos ligados à rede eléctrica, o sinal aparece com algum ruído,
degradando assim a qualidade da sua visualização. Isto deve-se ao facto de o filtro não ter
sido adaptado para as novas condições de funcionamento.
73
9. Conclusões e trabalho
futuro
74
O objectivo deste projecto passou pelo desenvolvimento de um sistema de baixo custo,
robusto, portátil e autónomo capaz de fazer a monitorização de sinais vitais do corpo
humano. O sistema baseou-se numa consola Nintendo DS. Esta escolha justificada no
capítulo 1, levantou no entanto alguns problemas à execução do projecto, mais
concretamente ao nível da falta de documentação técnica relativa à consola.
Um dos problemas iniciais foi a comunicação entre o microcontrolador e a consola, o qual foi
solucionado após se observar que no barramento onde são inseridas as cassetes de jogos
havia pinos de acesso a um barramento SPI (que é usado originalmente para carregar os
ficheiros de jogos da memória da cassete para a memória da consola). Foi então usado
esse barramento para se conseguir fazer a comunicação entre os dispositivos. Esta decisão,
por seu lado, originou um novo desafio que consistiu em como aceder fisicamente a esse
barramento de comunicação serie. Recorreu-se a uma cassete de jogos adaptada, como foi
descrito também no capítulo referente ao hardware.
Reflectindo sobre o trabalho feito, os resultados são visíveis e vão ao encontro da maior
parte dos objectivos iniciais deste trabalho, à excepção da comunicação wireless entre a
placa 1 e a placa 2, que apesar de estar implementada fisicamente, não se encontra a
trabalhar, devido a algumas incompatibilidades entre a consola e o módulo wireless ao nível
de sincronização da informação a transmitir entre ambos, e principalmente à escassez de
tempo para a realização do projecto. Assim, os resultados apresentados foram obtidos com
a transferência de informação entre a placa 1 e a placa 2, através de fios.
No entanto as maiores dificuldades foram ultrapassadas, permitindo-nos considerar que o
sistema desenvolvido tem, de facto, as vantagens pretendidas. Uma das vantagens que
salta à vista logo à partida tem a ver com as dimensões reduzidas do sistema, permitindo
uma fácil arrumação e transporte. Como foi referido anteriormente a robustez também é um
ponto forte do nosso sistema, mas mais importante ainda são as questões da autonomia e
do custo.
Em relação ao custo do nosso sistema, ele é de longe mais barato que os sistemas do
mesmo género existentes no mercado, andando por volta dos 220€ (c/ iva) que se
distribuem pelos seguintes itens:
- Consola: 150€;
- Placa 1 e placa 2 – 60€
- Diversos – 10€;
75
- Total – 220€;
Em relação à autonomia também trás grandes vantagens entrando aqui o facto de que
estamos a trabalhar com componentes low power e com uma consola de jogos, que é
projectada para ter grande autonomia. O nosso sistema, ao nível do hardware para
acomodação dos sinais e transmissão dos dados através do módulo wireless emissor, gasta
por volta dos 25mA, que dá uma potência de sensivelmente 83mW, o que mais uma vez é
de longe mais económico face à maioria dos sistemas.
Outra vantagem evidente reside na ligação wireless entre os sensores e a consola, o que
permitirá uma maior versatilidade na utilização prática do sistema.
Trabalho futuro
Um dos pontos fortes para continuação deste trabalho diz respeito ao software, uma vez que
as áreas de aplicação de um sistema desta natureza, variam muito de acordo com o que se
queira fazer, como foi referido atrás pode-se usar um sistema destes para dar apoio em
países pobres, ou em unidades de pediatria, ou mesmo em medicina veterinária. Em
qualquer que seja a versão, reconhece-se que o software realizado é apenas um esboço
daquilo que é necessário para uma versão com utilidade prática. A ideia foi demonstrar um
conceito e caso haja interesse em continuar o projecto, o software deverá ser desenvolvido
com a supervisão de um médico.
Numa próxima versão deste projecto, será também proveitoso fazer uma melhoria do filtro
digital implementado, ou implementar um filtro adaptativo que permita uma mudança da
frequência de amostragem do sinal dependendo da aplicação prática do sistema.
Tendo em vista a aplicação final deste tipo de sistemas, e na possibilidade de serem usados
num serviço de pediatria, um sistema baseado numa consola de jogos traria algumas
vantagens para os próprios pacientes (crianças), sendo possível através de software
adequado para o efeito, fazer a monitorização dos pacientes enquanto os mesmos usam a
consola de jogos para distracção própria.
Por último, e como é óbvio, deverão implementar-se alguns dos pontos que ficaram em
standby por falta de tempo, como a inclusão do oxímetro de pulso no sistema. Muitos mais
testes terão que ser realizados para avaliar o comportamento do sistema, onde se inclui a
76
resistência a sobretensões (como gerados pelos desfibrilhadores) e a sua capacidade de
funcionamento com painel solar!
77
Referências
78
[1] - http://www.btlnet.com/p-print/&product=472296 , Junho 2008
[2] - http://www.saudeshop.com.br/produto.php?codigo=824, Junho 2008
[3] – http://www.contecmed.com/english/ArticleShow.asp?ArticleID=483, Junho 2008
[4] – http://www.imdedirect.com/Merchant2/merchant.mvc?Screen=PROD&Product
_Code=EKG_19&Categ ory_Code=ECG_EKG&Product_Count=18, Junho 2008
[5] – http://www.westernsafety.com/medtronic/medtronicpg2.html, Junho 2008
[6] - http://www.obi1st.com/product/HCG-801, Junho 2008
[7] – LIPMAN,Bradford C., CASCIO, Toni, ECG Avaliação e Interpretação, LUSOCIÊCNIA-
Edições Técnicas e Cientificas, Lda. 2001
[8] – Jonh Goodacre, Parallelism and ARM Instruction Set Architecture, IEEE Computer
Society, 2005
[9] - http://pt.playstation.com/psp, Junho 2008
[10] - http://www.r4ds.com/r4ds.htm, Dezembro 2007
[11] – National Semicinductor – “LM335”, Datasheet 2000
[12] - Microchip – “PIC18f258”, Datasheet 2004
[13] – Cypress – “WirelessUSB LR™ 2.4-GHz DSSS Radio SoC” , Datasheet 2005
[14] – Analog Devices – “AD623”, Datasheet 1999
[15] – ST – “LE33AB” , Datasheet 2008
[16] – ON Semiconductor – “TL431, A, B Series,NCV431A, B” , 2007
[17] - http://www.devkitpro.org/, Junho 2008
[18] - Compilador integrado no ambiente de desenvolvimento devKitPro
[19] – http://www.palib.info/Doc/PAlibDoc%20Eng/modules.html, Outubro 2007
[20] - http://www.hardwarebook.info/NDSL, Junho 2008
[21] - http://www.circuitdb.com/articles/4, Maio 2008
[22] - http://www.bottledlight.com/ds/index.php/Main/Hardware, Maio 2008
[23] - http://www.palib.info/Beta/PAGfxBETA.zip, Maio 2008
Recommended