Você está na página 1de 43

INSTITUTO TECNOLÓGICO DE AERONÁUTICA

Gabriel Hora de Sá

DISPOSITIVO DETECTOR DE PATOLOGIAS


AAACARDIÁCAS ATRAVÉS DE CURVAS ECG

Trabalho de Graduação - Engenharia Eletrônica

Profa. Dra. Priscila Correia Fernandes


Orientadora

Prof. Dr. Douglas Soares dos Santos


Coorientador

São José dos Campos, SP – Brasil


2020
De Sá, Gabriel Hora
Dispositivo detector de patologias cardíacas através de curvas ECG/ Gabriel Hora de Sá.
São José dos Campos, 2020.

Trabalho de Graduação – Curso de Engenharia Eletrônica – Instituto Tecnológico de


Aeronáutica, 2020. Orientadora: Profa. Dra. Priscila Correia Fernandes.

1. Eletrocardiograma. 2. Machine Learning. 3. Eletrônica. 4. Patologia. I. Instituto Tecnológico de


Aeronáutica. II. Análise de Dados

Divisão de Informação e Documentação

REFERÊNCIA BIBLIOGRÁFICA
De Sá, Gabriel Hora de Sá. Dispositivo detector de Patologias Cardíacas através de
curvas ecg. 2020. 46f. Trabalho de Conclusão de Curso (Graduação) – Instituto Tecnológico
de Aeronáutica, São José dos Campos

CESSÃO DE DIREITOS
NOME DO AUTOR: Gabriel Hora de Sá
TÍTULO DO TRABALHO: Dispositivo
TIPO DO TRABALHO/ANO: Dissertação / 2020

É concedida ao Instituto Tecnológico de Aeronáutica permissão para reproduzir cópias desta


dissertação o e para emprestar ou vender cópias somente para propósitos acadêmicos e
científicos. O autor reserva outros direitos de publicação e nenhuma parte desta dissertação ou
tese pode ser reproduzida sem a sua autorização (do autor).

__________________________________
Gabriel Hora de Sá
Av. Nove de Julho 4782, apto 22
CEP:01406-200, São Paulo - SP
iii

Gabriel Hora de Sá

Composição da Banca Examinadora:

Profa. Dra. Priscila Correia Fernandes Orientadora - ITA


Prof. Dr. Douglas Soares dos Santos Coorientador - ITA
Prof. Dr. Wagner Chiepa Cunha - ITA
Maj. Brig. José Elias Matieli - ITA
Med. Dr.

_________________________________________ Formatted: Left


Gabriel Hora de Sá
Autor

_________________________________________ Formatted: Portuguese (Brazil)


Profa. Dra. Priscila Correia Fernandes
Orientadora

Formatted: Left
_________________________________________
Prof. Dr. Douglas Soares dos Santos
Coorientador

_________________________________________
Prof. Dr. Marcelo PinhoRoberto Kawakami Harrop Galvão
iv

Coordenador do Curso de Engenharia Eletrônica

São José dos Campos, 19 de junho de 2020.


v

Dedico este trabalho a minha Avó Ilda Cesar de Sá.


vi

Agradecimentos

Gostaria de agradecer primeiramente a minha familia, em especial minha mãe Elaine


Cristina Soares de Sá, minha tia Ana Regina Soares de Sá e minha avó Ilda Cesar de Sá, elas
tiveram papel fundamental no apoio a minha formação sempre acreditando em meu
potencial
.
Gostaria de agradecer a todos os meus amigos que fiz nessa longa jornada e que,
contribuiram para minha melhoria enquanto pessoa, em especial a rapaziada do NonSense.
vii

"Você não bota uma fé, mas eu vou atrás


da minha formula mágica da paz”.
(Racionais Mc's)
viii

Resumo

Devido aos novos investimentos no Laboratório de bioengenharia, decidiu-se


criar um projeto para auxiliar no estudo futuro dos alunos através de materiais disponíveis
para a graduação. Utilizando um hardware do tipo arduino UNO, disponível em
laboratório este trabalho tem como intuito detectar possíveis
patologias cardíacas através do estudo de ondas ECG e da teoria de análise de sinais
temporais apredendidas durante a graduação.
ix

Abstract

Due to new investments in the biotechnology department, it was decided to create a project to
assist in the future study of students through materials available for graduation. Using UNO
Arduino hardware, available in the laboratory, this work aims to detect possible cardiac
pathologies through the study of ECG waves and the theory of analysis of temporal signals
learned during graduation
x

Lista de Abreviaturas e Siglas

IDLE Integrated DeveLopment Environment

mV mili Volt

AV Atrioventricular

CNPq Conselho Nacional de Desenvolvimento Científico e Tecnológico

dSPACE companhia dSPACE GmbH, produtora de software e hardware

FAPESP Fundação de Amparo à Pesquisa do Estado de São Paulo

FEM método dos elementos finitos (finite element method)

FRF função resposta em frequência (frequency response function)

ITA Instituto Tecnológico de Aeronáutica

MATHEMATICA software de álgebra computacional concebido por Stephen Wolfram.

MATLAB software de computação numérica da empresa MathWorks

SI Sistema Internacional de Unidades


xi

Sumário

1 INTRODUÇÃO .............................................................................................................. 13

2 REVISÃO BIBLIOGRÁFICA ...................................................................................... 15


2.1 Funcionamento do coração .................................................................................... 15
2.2 Eletrocardiograma.................................................................................................. 17
2.3 Derivações................................................................................................................ 18

3 COMPONENTES ........................................................................................................... 20
3.1 Arduino .................................................................................................................... 20
3.2 AD8232 .................................................................................................................... 24
3.3 Clustering ................................................................................................................ 29
3.4 PCA .......................................................................................................................... 30

4 RESULTADOS E DISCUSSÕES ................................................................................. 31


4.1 Análise da Base de Dados via PCA ....................................................................... 31
4.2 Clustering da base de dados representadas via Componentes principais ......... 37
4.3 Resultados Obtidos ................................................................................................. 39

5 CONCLUSÃO ................................................................................................................. 40

ERROR!BOOKMARKNOTDEFINED.ERROR!BOOKMARKNOTDEFINED.Ero!BokmarknotdefindE
.ro!BokmarknotdefindE
.ro!BokmarknotdefindE
.RROR!BOOKMARKNOTDEFINED.Ero!BokmarknotdefindE
.ro!BokmarknotdefindE
.RROR!BOOKMARKNOTDEFINED.Ero!BokmarknotdefindE
.RROR!BOOKMARKNOTDEFINED.ERROR!BOOKMARKNOTDEFINED.
12

1 Introdução

Cada vez mais, técnicas de análise de dados veem se tornando uma grande ferramenta

para resolução de problemas.

Esse trabalho tem como propósito utilizar essas técnicas, em especial a abordagem de

Clustering, para criar um dispositivo capaz de apontar um possível laudo de patologia cardíaca

de maneira rápida e mais precisa possível.

Uma recente aquisição do Laboratório de Bioengenharia são os sensores AD8232

utilizados em medidores ECG portáteis, esse fato foi uma das motivações para a realização

desse projeto que auxiliará no estudo da fisiologia cardíaca para futuros alunos do Laboratório.

Além disso, é proposta fundamental desse projeto fornecer uma alternativa de baixo custo para

medidores ECG com laudo interpretativo, que hoje custa em média R$ 7,000 no mercado

nacional.
13

Figure 1 Exemplo de medidor ECG com laudo interpretativo disponível no mercado

A validação do projeto em questão pode se dar através de um simulador de curvas ECG,


projeto esse desenvolvido em paralelo também pelo laboratório de Bioengenharia.
14

2 Revisão Bibliográfica
2.1 Funcionamento do coração

O coração possui dois tipos de células, as miocárdiasmiocárdicas que podem se contrair


quando estimuladas eletricamente e as células marcapasso, estas responsáveis pela geração e
condução dos estimulosestímulos elétricos do coração. Os tecidos responsáveis pela condução
e geração de estimulosestímulos elétricos no coração são o nó sinoatrial (nó SA), nó
atrioventricular (nó AV), o feixe de His e as fibras de Purkinje. O ritmo do coração é ditado
pelo nó SA, também conhecido como marcapasso do coração. Isso se dá poisdá, pois, as
membranas das fibras do nó SA são altamente permeáveis ao sódio, que ao passar para região
interior da fibra causam uma diferença de potencial que será responsável pela propagação do
15

impulso. Ao atingir o potencial de ação o impulso se propaga pelo sistema de Purkinje até
chegar nos átríosátrios causando a sua contração.
Após centésimos de segundos, o impulso atinge o nó AV que o retarda para que os
átrios possam forçar a passagem do sangue aos ventrículos, após isso o sistema de Purkinje
propaga o impulso aos ventrículos para forçar sua contração.
A imagem abaixo exemplifica os sistemas citados acima:
16

Figure 2 Desenho dos sistemas de um coração humano

2.2 Eletrocardiograma

Um eletrocardiograma tem como finalidade analisar o processo elétrico do coração


descrito anteriormente, seu output são as curvas curvas ECG que representa a diferença de
potencial ao longo do tempo entre dois pontos onde os eletrodos estarão conectados, um
conjunto de dois pontos aplicação dos eletrodos é chamado de derivação. Para exemplificar
melhor a curva ECG, é mostrado um exemplo da curva da derivação periférica bipolar D2 (
polo negativo no braço direito, polo positivo na perna direita):

Figure 3 traçado ECG de uma derivação D2

Note que nesta curva existem pontos notáveis denominados, P Q R S T esses pontos
serão fundamentais na análise do funcionamento do coração como veremos a seguir.
A curva com pico em P, também chamada de curva P, corresponde a despolarização
dos átrios, ela possui duração menor que 120 ms e amplitude inferior a 0,2 mV. O
segmento P-R representa a defasagem do impulso no nó AV, fenômeno visto na seção
anterior.

O complexo QRS corresponde a despolarização interventricular, forçando sua


contração. O Ponto R representa o momento em que o sistema de Purkinje propaga o
impulso aos ventrículos. O Seguimento S-T representa o inicioinício da ejeção,
17

enquanto a curva t representa a polarização interventricular, note que a repolarização


atrial não é representada no ECG.
Abaixo podemos ver como outras grandezas se comportam no ciclo
cardíaco, tais quais
o volume ventricular e as pressões atrais e ventricular:

Figure 4 Diagrama de Wieggers- Pressão e volume ao longo do ciclo cardíaco

2.3 Derivações

Como foi dito anteriormente, dois pontos de aplicação dos eletrodos definem uma
derivação. Cada derivação representa uma projeção do vetor dipolo do ciclo cardíaco
em um determinado ângulo.

Um ECG convencional produz doze derivações diferentes, dentre essas se destacam as


derivações periféricas importantes para definir o plano frontal, fundamental para a
determinação do eixo elétrico do coração correspondente ao vetor dipolo resultante da
despolarização ventricular, geralmente possui angulação de 60º.
As derivações periféricas se classificam entre bipolares e unipolares, sendo as primeiras
18

D1, D2, D3 e as unipolares aVR, aVL e aVF. Na imagem abaixo podemos visualizar o
plano frontal definido pelas derivações periféricas:

Figure 5 Plano frontal


19

3 Componentes
3.1 Arduino

O Arduino é um hardware livre para prototipagem projetado com um microcontrolador


Atmel AVR.

Ele possui uma linguagem padrão C/C++ , porém a Arduino disponibiliza uma IDE
baseada na linguagem Processing. Sua placa possui 14 pinos que podem ser tanto
utilizados como entrada ou saída digital, além de 6 pinos de entrada analógica como
pode ser visto na imagem abaixo:
20

Figure 6 Esquema de uma placa de arduino UNO

Abaixo podemos ver sua tabela de especificação:

Tabela 1 Especificação Arduino UNO

Microcontrolador ATmega328P
Voltagem de Operação 5V
Voltagem de Entrada
7-12V
(recomendada)
Voltagem de entrada (limite) 6-20V
Digital Pinos E/S 14 (dos quais 6 fornecem saída PWM )PWM)
Pinos Digitais PWM E/S 6
21

Pinos de entrada Analógica 6


Corrente continua por pino E/S 20 mA
Corrente para o pino de 3.3V 50 mA
32 KB (ATmega328P) dos quais 0.5 KB vão para
Memória Flash
bootloader
SRAM 2 KB (ATmega328P)
EEPROM 1 KB (ATmega328P)
Velocidade do Clock 16 MHz
LED_BUILTIN 13
Comprimento 68.6 mm
Largura 53.4 mm
Peso 25 g

Abaixo podemos ver de maneira detalhada a especificação do ATmega328P, microcontrolador


presente no Arduino UNO:

Table Tabela 2 Especificação ATmega328P

Tipo de CpuCPU 8-bit AVR

Performance 20 MIPS em 20 MHz[2]

Memória Flash 32 KB

SRAM 2 KB
22

EEPROM 1 KB

Números de Pinos 28 ou 32 pinos:

Frequência máxima de operação 20 MHz

Canais de toque 16

Hardware de aquisição QTouch -

Máximo de pinos de E/S 23

Interrupções externas 2

USB Interface No

USB Speed –

Seu desing podedesign pode ser visto na imagem na imagem abaixo :abaixo:

Figure 777 Esquema de um chip ATmega328P Formatted: Font: Bold


Formatted: Font: Bold
23

Entre as vantagens desse microcontrolador se destaca o seu baixo consumo energético,


uma vez que seu design preza por otimizar o consumo de energia por velocidade
de processamento.

3.2 AD8232
O AD8232 é um sensor de monitoramento cardíaco, capaz de traçar curvas ECG e
outras aplicações de caráter biopotencial. Seu circuito tem como finalidade
extrair, amplificar e filtrar pequenos sinais de origem biológica na presença de ruídos.

O AD8232 é capaz de implementar um filtro passa-alta que em


conjunto com a sua arquitetura é capaz de promover um grande
ganho, traduzido em amplificação do sinal no final.
Economizando, portanto, espaço e custo.

Abaixo podemos ver o diagrama de blocos de um AD8232:

Figure 8 Diagrama de blocos do AD8232

Abaixo podemos ver sua tabela de operação máxima:


24

Voltagem de Alimenitenação 3.6V


Duração da corrente de saída em curto circuitocurto-circuito -
Voltagem máxima em qualquer terminal +Vs + 0.3V
Voltagem minimamínima em qualquer terminal -0.3V
Intervalo da temperatura da memória −65°C to +125°C
Temperatura de operação −40°C to +85°C
Temperatura de Junção máxima 4.4°C/W
Valor de discargadescarga eletrostática para o modelo de
8kV
corpo humano
Valor de discargadescarga eletrostática para o modelo de
1.25kV
dispositivo carregado
Valor de discargadescarga eletrostática para o modelo de
200V
máquina

NiveísNíveis de operação que ultrapassam os limites listados acima tendem a


danificar permanentemente o sensor.

Abaixo uma imagem do sensor e seus eletrodos:

Figure 999 AD8232 e seus eletrodos Formatted: Font: Bold


Formatted: Font: Bold
Formatted: Portuguese (Brazil)
Seu funcionamento se dá através da integração com o Arduino UNOArduino UNO na
seguinte montagem :montagem:
25

Figure 10 Montagem do AD8232 em protoboard

Os pontos LO- e LO + do AD8232 se conectam aos pinos 11 e 10 do arduino


respectivamente, o GND do Arduino e do AD8232 são
compartilhados, assim como o pino de 3.3V e a saída do AD8232 será
conectada no pino analógico A0.

Feito a montagem os eletrodos podem ser colocados no corpo do paciente de duas


formas, para obtermos as curvas ECG, como podemos ver na figura abaixo:
26

Figure 11 Posições dos eletrodos no corpo humano

Para analisar a curva ECG do paciente, basta rodar um simples código na IDLE do
projeto Arduino. O código tem como objetivo resgatar o valor na saída analógica A0
do arduino como podemos ver na imagem abaixo:
27

Figure 12 Código para o funcionamento do circuito Arduino AD8232

Feito isso é possível ver a curva ECG do paciente no Serial Plotter da IDLE, como é
mostrado na figura abaixo:

Figure 131313 Curva ECG obtida pelo sensor após sua estabilização
28

Feita a coleta de dados, a curva salva será comparada por um algoritmo de machine learning
descrito abaixo através de um código escrito em Python como será discutido na seção 4.

3.3 Clustering

Técnicas de análise de dados se mostram muito eficientes em problemas de


classificação e organização, dentre as técnicas mais usadas na literatura a técnica de
clustering para classificação de grupos parece ser a melhor alternativa para a solução do
problema em questão : “Classificar uma curva ECG em um grupo patológico”.

O algoritmo é uma ferramenta de auto aprendizado, a partir de um conjunto de dados


não classificados e premissas de classificação ele cria os grupos de elementos mais próximos
na distribuição de dados.
Para visualizar melhor, imagine que distribuíssemos os pontos de vários
exames ECG em um plano xy considerando no eixo x a idade em meses e no eixo y o valor
do batimento cardíaco em BPM e colocando como premissas:
- Adultos possuem batimento médio de 60 BPM
- Adultos com Ventricular Tachycardia possuem batimento médio de 150 BMP
- Crianças e adolescentes possuem batimento médio de 115 BPM, podendo atingir até
170 BMP

Poderíamos organizar nossa base de dados em 3 grupos, crianças e


adolescentes saudáveis(vermelho), adultos saudáveis (verde) e adultos
com Ventricular Tachycardia(azul).

O resultado é exemplificado na imagem abaixo:


29

Figure 14 Exemplo de Clustering

3.4 PCA

Para definir os melhores parâmetros analisar as patologias cardíacas foi feito uma
análise através de uma base de dados utilizando o método de principal component analisys
(PCA).
O PCA é uma ferramenta de análise de dados que tem como finalidade obter
uma base ortogonal que melhor explica as variáveis aleatórias estudadas.
Através da matriz de covariância das variáveis aleatórias, são obtidos os
autovalores e autovetores, os autovetores representam a
base ortornomal que explica a variedade em questão, já os autovalores representam
quanto que o seu respectivo autovetor explica da variedade.
30

Figure 15 Exemplo de uma distribuição gaussiana sob análise de PCA

Na figura acima podemos ver uma que quando uma distribuição gaussiana é posta sob
análise do PCA dois vetores unidimensionais e linearmente independentes são obtidos como
resposta, ambos representam os estimadores ótimos da média e do desvio padrão da amostra
em questão.

4 Resultados e Discussões

4.1 Análise da Base de Dados via PCA


31

Para o bom funcionamento do Clustering é necessário uma vasta base de dados


amostrando diversas curvas ECG de uma mesma patologia, para tal foi utilizado uma
base de dados de 14,000 amostras de curvas ECG representando um universo de 14
patologias amostradas 64 vezes no tempo. Essa base de dados foi construída pelo
trabalho de graduação Simulador de Curvas ECG para o Apoio ao diagnóstico de
Patologias Cardíacas” realizado também em conjunto do laboratório de bioengenharia.

Parte dessa amostra é representada na figura na pagina seguinte:


32

Figure 16 Representação das curvas ECG amostradas 64 vezes no tempo de 13 patologias


33

As curvas na base de dados foram padronizadas para que sua amostragem comece em
um ponto em que não houvesse vetor dipolo resultante.
A partir dessa base de dados foi realizado um PCA para reduzir a dimensão do
problema, o código utilizado é mostrado na figura abaixo :

Figure 171717 CodigoCódigo de PCA utilizado para análise da base de dados Formatted: Font: Bold
Formatted: Font: Bold
34

Foi utilizado um critério de escolha de componentes principais que


representassem pelo menos 85% da variância total da amostra da base de dados.
Para o exemplo em questão foram encontrados 3 componentes principais, compostas
por combinações lineares dos 64 pontos de amostragem que melhor explicam as 14
patologias presentes na base de dados.
Esses vetores são apresentados na figura abaixo :
35

Figure 18 coordenadas de cada componente do PCA

Cada coordenada de uma componente do PCA representa o peso que cada uma
das 64 amostragens possui para explicar a variação da amostra.
36

A partir do PCA foi representado a amostra de 14,000 curvas por 3 coordenadas,


tais coordenadas são obtidas realizando a multiplicação de matrizes entre 64
amostragens de uma curva e a matriz das componentes principais mostradas na figura
acima. O trecho código abaixo exemplifica esse passo :

Figure 19 Trecho de código exemplificando a mudança na base de representação do


problema

Onde a variável dffinal2 representa a base de dados original.

Constata-se então que o problema de 14,000 curvas representadas por 64


coordenadas é reduzido para um problema de 14,000 curvas representadas por 3
coordenadas, conforme mostrado na figura abaixo:

Figure 20 Exemplificação da redução de coordenadas através do PCA

4.2 Clustering da base de dados representadas via Componentes principais

Após o tratamento e simplificação da base de dados via PCA, foi utilizado o


método de clustering, em específico o método de K-Means descrito na seção 3. Em
específico foi utilizado o método exemplificado pela biblioteca
sklearns.

Escolheu-se então realizar o método de Clustering até que 14 núcleos fossem


definidos, pois a base de dados contempla 14 patologias entre as 14,000 curvas.
37

Para verificar a eficiência do método basta olhar a distribuição das patologias


nos 14 clusters obtidos como resultado do algoritmo, como descrito no código
abaixo:

Figure 21 Código exemplificando a indexação de cada curva ao seu cluster e sua patologia

Para o diagnóstico de uma nova curva obtida através do sensor AD8232, basta
adicioná-la à base de dados realizar o PCA e o Clustering e verificar qual patologia é
mais presente no cluster ao qual a nova curva pertence. O Código abaixo exemplifica
esse processo:
38

Figure 22 código para diagnóstico mais provável de uma curva desconhecida

A função Diagnostico definida acima possui um tempo de execução menor que um


minuto para retornar o diagnóstico em uma base de 14,000 curvas.

4.3 Resultados Obtidos


A fim de testar a qualidade do clustering obtido com uma base de dados de 14,000
curvas ECG, verificou-se em quais clusters cada patologia era encontrada. O Código para
realizar tal teste é exemplificado abaixo:
39

Figure 23 Código para visualizar a distribuição das patologias nos clusters

Ao rodar o código foi obtido o seguinte output:

Figure 24 Output do código apresentado na figura anterior

Conclui-se então que cada patologia está sendo representada unicamente por um cluster,
constatando grande eficácia do algoritmo para catalogar 14,000 amostras.

5 Conclusão
Pode-se concluir que o método de clustering tem larga utilização no ambiente de
bioengenharia, em especial para pré-diagnósticos de exames não tão complexos como o
eletrocardiograma, sua complexidade aumenta exponencialmente com o número de
40

coordenadas da amostra que servirá de base de dados, porém a ferramenta de análise de


componentes principais permite reduzir considerávelmenteconsideravelmente os números de
pontos representativos da amostra.

Para maior eficácia do projeto, pode-se considerar analisar diversas derivações de uma
mesma curva na base de dados, entretanto esse número deverá ser escolhido de forma a não
deixar o tempo de execução muito elevado.
41

6 Referências
Formatted: Heading 1, Indent: Left: 0", Line spacing: single
6

https://www.analog.com/media/en/technical-documentation/data-sheets/AD8232.pdf Formatted: Line spacing: 1.5 lines


Field Code Changed

https://www.arduino.cc/

SHEA, Michael J., MD, Michigan Medicine at the University of Michigan:


<https://www.msdmanuals.com/pt-pt/profissional/doen%C3%A7as-cardiovasculares/exames-
e-procedimentos-cardiovasculares/eletrocardiografia> Acessado em 01. Junho.2020

MITCHELLl, Jamie R.; Wang, Jiun-Jr (2014-06-01). "Expanding application of the Wiggers
diagram to teach cardiovascular physiology". Advances in Physiology Education. 38 (2):
170-175. doi:10.1152/advan.00123.2013. ISSN 1043-
4046. PMC 4056172. PMID 24913453.

Helder José Lima Reis, Hélio Penna Guimarães, Ana Denise Zazula, Ronaldo Gomes Vasque
e Renato Delascio Lopes. “ECG Manual Prático de Eletrocardiograma”:
http://ole.uff.br/wp-content/uploads/sites/419/2019/04/ECG-Manual-Pr%C3%A1tico-de- Field Code Changed

Eletrocardiograma-HCor.pdf

https://towardsdatascience.com/clustering-clearly-explained-5561642ec20c Field Code Changed

https://scikit-learn.org/stable/modules/clustering.html#k-means Field Code Changed


42
43

Você também pode gostar