UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO ALARME DE ACIDENTE CARDIOVASCULAR Mariana Avelar, nº 50778, AE de SDC Sérgio Silva, nº 50861, AE de SDC LICENCIATURA EM ENGENHARIA ELECTROTÉCNICA E DE COMPUTADORES Relatório de Trabalho Final de Curso 63/2005/ Prof. Orientador: João Sanches Junho de 2006
Agradecimentos Ao Professor João Sanches agradecemos pelo apoio e orientação que nos deu ao longo do desenvolvimento do projecto. Agradecemos também aos nossos familiares, pelo apoio constante que nos têm dado ao longo dos anos, incutindo-nos um espírito trabalhador que nos ajudou durante todo o percurso académico. Para que fosse possível testar e validar os algoritmos desenvolvidos ao longo do projecto utilizaram-se os sinais que estão disponíveis na base de dados de sinais biológicos da Physionet, a qual pertence ao projecto de recursos de pesquisa de sinais fisiológicos complexos. Sendo assim, agradecemos também a disponibilização dos sinais. i
ii
Resumo O trabalho em estudo consiste em desenvolver um Alarme de Acidente Cardiovascular. Este divide-se em três partes fundamentais: aquisição do sinal, segmentação do ECG e desenvolvimento dos algoritmos de detecção de anomalias. A aquisição do sinal pode ser efectuada através de um ficheiro ou através da placa de aquisição desenvolvida no presente trabalho (via porta paralela). Existe a possibilidade de filtrar o sinal adquirido de forma a obter melhores resultados. A implementação dos algoritmos foi feita em C++ através do programa Visual Studio. A segmentação do ECG baseia-se no algoritmo da multiplicação das diferenças regressivas MOBD, o qual detecta as ondas características do sinal (onda P, complexo QRS e onda T). Os critérios de detecção das anomalias foram obtidos através de um estudo prévio destas e baseiam-se em limitações das características do ECG. O ECG pode ser obtido a partir de vários pontos do corpo humano, sendo este diferente em cada um deles. Neste trabalho, optou-se por usar sinais retirados da derivação DI (braço esquerdo braço direito). Para o teste deste programa usaram-se sinais retirados da base de dados de sinais biológicos da Physionet, a qual pertence ao projecto de recursos de pesquisa de sinais fisiológicos complexos. Os resultados obtidos permitem concluir que o trabalho desenvolvido é robusto, pois consegue adquirir o sinal ECG, segmentá-lo e analisar a ocorrência de anomalias em tempo real e com diferentes traçados do ECG. No entanto pode sofrer melhorias, nomeadamente nos algoritmos desenvolvidos. Palavras Chave ECG, aquisição do sinal, segmentação do ECG, MOBD e detecção de anomalias. iii
Abstract This work consists in developing a Cardiovascular Accident Alarm. It can be divided in three major parts: signal acquisition, ECG segmentation and developing algorithms of anomalies detection. The signal acquisition can be provided from a file or through the acquisition board developed in this work (via parallel port). The project also has the possibility of signal filtration, which provides better results. The algorithms implementation was made in C++ in Visual Studio program. The ECG segmentation is based on the multiplication of backward differences algorithm MOBD, which detects the characteristics waves of the signal (P wave, QRS complex and T wave). The anomalies detection criteria were obtained after a previous study and are based on the ECG characteristics limitation. The ECG can be obtained through many points of the human body, although the signal is different in each lead. In this project we work with the signal obtained in lead DI (left arm right arm). To increase the performance, the program was tested with the biologic signals of the Physionet data base, which belong to the research resource for complex physiologic signals. The results achieved show it was developed a robust project, because it can acquire the ECG signal, segmentation and diagnostic the cardiovascular anomalies in real time and with different ECG tracing. Thus, the implemented algorithms can be improved. Keywords ECG, signal acquisition, ECG segmentation, MOBD and anomalies detection. iv
Índice Pag. Agradecimentos --------------------------------------------------------- i Resumo e Palavras Chave ------------------------------------------------ iii Abstract and Keywords ------------------------------------------------ iv Índice --------------------------------------------------------------------------- v Lista de Figuras --------------------------------------------------------- vi Lista de Tabelas --------------------------------------------------------- vii Lista de Siglas --------------------------------------------------------- viii 1 Introdução ------------------------------------------------------------------ 1 2 Electrocardiograma --------------------------------------------------------- 3 3 Aquisição de sinal --------------------------------------------------------- 7 4 Segmentação do sinal ECG ------------------------------------------------ 13 5 Algoritmos de detecção de anomalias --------------------------------------- 21 6 Análise de resultados --------------------------------------------------------- 33 7 Conclusão ------------------------------------------------------------------ 41 Anexo A Datasheet do circuito integrado AD620 --------------------- 43 Anexo B Esquema da placa de aquisição ------------------------------ 65 Anexo C Variáveis utilizadas na detecção de anomalias ------------ 67 Referências ------------------------------------------------------------------ 69 Bibliografia ------------------------------------------------------------------ 71 v
Lista de Figuras Pag. Fig. 2.1 Sistema de Condução do Coração. --------------------------------------- 3 Fig. 2.2 Traçado do Electrocardiograma. --------------------------------------- 4 Fig. 2.3 Evolução do ECG. --------------------------------------------------------- 5 Fig. 2.4 Derivações dos membros. ------------------------------------------------ 6 Fig. 2.5 Derivações precordiais. ------------------------------------------------ 6 Fig. 3.1 - Estrutura da placa de aquisição de ECG. ------------------------------ 7 Fig. 3.2 - Circuito de aquisição do sinal de ECG. ------------------------------ 7 Fig. 3.3 - Diagrama de blocos do filtro e do amplificador. --------------------- 8 Fig. 3.4 - Sinal de ECG obtido na derivação DI. ------------------------------ 9 Fig. 3.5 - Sinal de ECG obtido na derivação DII. ------------------------------ 9 Fig. 3.6 - Sinal de ECG obtido na derivação DIII. ------------------------------ 9 Fig. 3.7 - Interface gráfica da aplicação. --------------------------------------- 11 Fig. 4.1 - Segmentação de um ECG. ------------------------------------------------ 13 Fig. 4.2 - Algoritmo de detecção do complexo QRS. --------------------- 15 Fig. 4.3 - Algoritmo de detecção da onda T. --------------------------------------- 17 Fig. 4.4 - Algoritmo de detecção da onda P. --------------------------------------- 18 Fig. 5.1 Extra-sístole Atrial (extraído de [13]). ------------------------------ 22 Fig. 5.2 Extra-sístole Ventricular (extraído de [13]). --------------------- 22 Fig. 5.3 Fibrilação Auricular (extraído de [14]). ------------------------------ 23 Fig. 5.4 Bradicardia Sinusal (extraído de [14]). ------------------------------ 23 Fig. 5.5 Taquicardia Sinusal (extraído de [14]). ------------------------------ 24 Fig. 5.6 Arritmia Sinusal (extraído de [14]). ------------------------------ 24 Fig. 5.7 Síndroma Wolff-Parkinson-White (extraído de [15]). ------------ 25 Fig. 5.8 Taquicardia Atrial (extraído de [15]). ------------------------------ 25 Fig. 5.9 Bloqueio AV 1º grau (extraído de [14]). ------------------------------ 26 Fig. 5.10 Bloqueio AV 2º grau tipo I (extraído de [14]). --------------------- 26 Fig. 5.11 Bloqueio AV 2º grau tipo II (extraído de [14]). ------------ 27 Fig. 5.12 Bloqueio AV 3º grau (extraído de [14]). ------------------------------ 28 Fig. 5.13 Bloqueio SA (extraído de [14]). ------------------------------ 28 Fig. 5.14 Bloqueio de Ramo (extraído de [15]). ------------------------------ 28 Fig. 5.15 Crescimento Auricular (extraído de [15]). --------------------- 29 Fig. 5.16 Hipertrofia Ventricular (extraído de [15]). --------------------- 29 Fig. 6.1 Sinal de ECG adquirido com a placa de aquisição ------------ 33 Fig. 6.2 Segmentação do ECG. ------------------------------------------------ 34 Fig. 6.3 Sinal do grupo Arritmia. ------------------------------------------------ 36 Fig. 6.4 Arritmia Supraventricular. ------------------------------------------------ 37 Fig. 6.5 Início do sinal. --------------------------------------------------------- 37 Fig. 6.6 Bloqueio Sinoatrial. ------------------------------------------------ 38 Fig. 6.7 Fibriliação. --------------------------------------------------------- 39 vi
Lista de Tabelas Pag. Tab. 6.1 Resultados da segmentação de sinais de ECG. --------------------- 35 Tab. C.1 Variáveis utilizadas na detecção de anomalias. --------------------- 67 vii
Lista de Siglas ACV ------------- Alarme de Acidente Cardiovascular; ECG ------------- Electrocardiograma; MOBD ---- Multiplication of backward differences; AV ------------- AuriculoVentricular; SA ------------- SinoAtrial; DI ------------- Derivação I; DII ------------- Derivação II; DIII ------------- Derivação III; AVR ------------- Augmented Voltage of Right arm; AVL ------------- Augmented Voltage of Left arm; AVF ------------- Augmented Voltage of left Foot; ESA ------------- Extra-sístole Atrial; ESV ------------- Extra-sístole Ventricular; FA ------------- Fibrilação Auricular; WPW ------------- Wolff-Parkinson-White; BA ------------- Bloqueio AuriculoVentricular. viii
1- Introdução O trabalho Alarme de Acidente Cardiovascular (ACV) foi proposto e desenvolvido no âmbito da disciplina de Trabalho Final de Curso com vista à conclusão da Licenciatura em Engenharia Electrotécnica e de Computadores leccionada no Instituto Superior Técnico. As áreas abordadas pelo trabalho são fundamentalmente processamento de sinal, electrónica e alguma biomedicina. O ACV desenvolvido pode ser dividido em três partes fundamentais: desenvolvimento da placa de aquisição do sinal de electrocardiograma (ECG) e respectiva comunicação com o computador, analise do sinal de forma a extrair as suas características e criação de algoritmos de detecção de anomalias. De forma a possibilitar uma maior diversificação dos sinais e anomalias analisados é também possível estudar um sinal a partir de um ficheiro. Um aspecto importante deste trabalho é a necessidade de toda a análise do sinal ter de ser feita em tempo real, pois as características de um ECG estão fortemente relacionadas com o tempo, ficando estas desvirtuadas caso não se tenha uma grande precisão temporal. A parte de segmentação do sinal implicou um estudo de algoritmos publicados em artigos e teve como objectivo atingir o menor número possível de falsas e/ou erradas detecções, tendo em conta uma complexidade mínima de implementação. Além destas características principais é também desejável que as detecções sejam feitas com a máxima precisão possível. O método escolhido para esta parte do trabalho foi o algoritmo da multiplicação das diferenças regressivas designado por MOBD (multiplication of backward differences). Para o desenvolvimento dos algoritmos de detecção de anomalias foi necessário pesquisar vários artigos de cardiologia de forma a definir critérios médicos para a detecção destas. As anomalias estudadas neste projecto foram escolhidas tendo em conta a derivação usada para adquirir o sinal, os seus critérios de detecção e as amostras existentes na base de dados de sinais biológicos da Physionet (para que se possa testar os algoritmos criados). Uma possível aplicação deste trabalho será a sua introdução num pacemaker, de forma a monitorizar permanentemente as pessoas mais vulneráveis a anomalias cardíacas. Deste modo poder-se-ia garantir uma melhor qualidade de vida para as pessoas, mantendo uma supervisão sobre estas. É possível efectuar melhoramentos, os quais passam por aperfeiçoar os algoritmos apresentados (quer de segmentação do ECG quer de detecção das anomalias), bem como aumentar o número de anomalias consideradas. 1
2
2 - Electrocardiograma O electrocardiograma é o método complementar mais simples e mais importante no diagnóstico de doenças cardiovasculares, pois é um método não evasivo, 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. 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. 2.1 Traçado do ECG O coração é constituído por dois tipos principais de células: musculares e especializadas do sistema de condução. As primeiras têm função contráctil e desempenham o trabalho mecânico da contracção: as quatro câmaras cardíacas (aurícula direita e esquerda e ventrículo direito e esquerdo) que podem ser visualizadas na figura 2.1, são formadas pelas células musculares que após a diástole (período de repouso onde as câmaras acumulam o sangue) são estimuladas durante a sístole para encurtar, propulsionando o sangue para o sistema cardiovascular. As segundas não são responsáveis pelo trabalho mecânico da contracção, mas coordenam a actividade, iniciando o ritmo cardíaco e propagando o impulso eléctrico através do estímulo da contracção das células miocárdicas. Fig. 2.1 Sistema de Condução do Coração. A actividade eléctrica no coração deve-se ao facto de as células cardíacas serem carregadas ou polarizadas no estado de repouso, mas quando electricamente estimuladas, despolarizam-se e contraem-se. Assim, a contracção do miocárdio é produzido por uma onda progressiva de estimulação (despolarização) que atravessa o coração. A onda de despolarização (interior das células torna-se positivo) e a de repolarização (as células voltam a ser negativas) ao atravessarem o coração são captadas pelos detectores externos (cutâneos), registando a actividade no ECG. Quando a onda positiva de despolarização dentro 3
das células cardíacas se move em direcção do eléctrodo positivo (pele), regista-se sobre o ECG uma deflexão positiva. Como se pode observar na figura 2.2 o electrocardiograma é composto por várias ondas: P, Q, R, S (Q+R+S = complexo QRS), T e U. Fig. 2.2 Traçado do Electrocardiograma. A onda P representa a actividade eléctrica da contracção de ambas as aurículas: o nó Sinoatrial (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 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 contracção simultânea dos ventrículos. 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. Para a origem da onda U, existem várias explicações, mas nenhuma delas é aceite universalmente. No entanto, a sua maioria justifica-a como sendo a fase final da repolarização ventricular. Na figura 2.3 observa-se a evolução do ECG, a qual resumidamente pode ser descrita como: a despolarização (contracção) auricular produz a onda P, a soma dos impulsos eléctricos produzidos pela despolarização (contracção) das células musculares ventriculares produzem o complexo QRS, e o segmento ST e onda T são gerados pela repolarização ventricular. 4
Fig. 2.3 Evolução do ECG. 2.2 Aquisição do ECG O ECG de rotina compõe-se de 12 derivações separadas (6 derivações dos membros e 6 derivações precordiais), sendo derivações electrocardiográficas eléctrodos que captam a actividade eléctrica cardíaca. Para obtenção das derivações dos membros DI, DII e DIII (periféricas), figura 2.4, 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: DI = AVL AVR DII = AVF AVR DIII = AVF AVL O membro não referido em cada derivação é o comum. 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 5
actividade eléctrica por seis ângulos diferentes, temos uma perspectiva muito maior do controle da actividade eléctrica. Fig. 2.4 Derivações dos membros. As derivações precordiais (V 1 a V 6 ), figura 2.5, 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 2.5, 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áxica (se admitirmos que as derivações são os raios de uma roda, o centro será o nó AV). As derivações V 1 e V 2 estão sobre o lado direito do coração (derivações precordiais direitas), ao passo que V 5 e V 6 ficam sobre o lado esquerdo (derivações precordiais esquerdas). V 3 e V 5 localizam-se sobre o septo interventricular (parede comum ao Ventrículo Direito e Esquerdo). O traçado de V 1 a V 6 mostra uma mudança gradual em todas as ondas, por exemplo, normalmente o complexo QRS é negativo em V 1 e positivo em V 6, 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 V 6. Fig. 2.5 Derivações precordiais. 6
3 - Aquisição de sinal O sinal de ECG pode ser adquirido de duas formas: a partir da placa de aquisição ou a partir de um ficheiro. O modo de aquisição é previamente escolhido na aplicação. Outra opção disponível ao utilizador é a selecção do filtro a usar na filtragem digital do sinal de ECG, sendo o filtro especificado pelo utilizador. 3.1 - Placa de aquisição A placa de aquisição do sinal de ECG proposta neste trabalho é constituída por três blocos principais: a aquisição de sinal, o tratamento do sinal (filtragem e amplificação) e o envio dos dados para o computador onde serão processados. Esta estrutura encontra-se exemplificada na figura 3.1, a qual contém o diagrama de blocos do circuito. Fig. 3.1 - Estrutura da placa de aquisição de ECG. 3.1.1 - Circuito de aquisição Como foi explicado no capítulo 2, onde foram abordados os conceitos teóricos de um electrocardiograma, o número mínimo de pontos de aquisição para a leitura do sinal ECG é três, os quais são colocados em posições definidas através do triângulo de Einthoven. Desta forma, e de modo a simplificar o circuito de aquisição de sinal optou-se por colocar apenas este número de entradas. O esquema escolhido fundamentou-se no datasheet do circuito integrado AD620 (anexo A), introduzindo-se alterações na parte correspondente ao tratamento do sinal, como se verá mais adiante. O esquema para esta parte do circuito encontra-se na figura 3.2. Fig. 3.2 - Circuito de aquisição do sinal de ECG. 7
Esta montagem calcula a diferença entre os sinais existentes nos dois braços (esquerdo menos o direito), tendo como referência o terminal colocado na perna esquerda, derivação DI. No entanto é possível utilizar o circuito com outras derivações. 3.1.2 - Processamento de sinal Após a fase de aquisição do sinal é necessário processá-lo de forma a ficar com os níveis de qualidade pretendidos, quer em termos da existência de ruído (o menor possível), quer em termos de amplitude (entre [ 0;5 ] V ). Para conseguir estas características efectuam-se duas operações fundamentais: a filtragem do sinal e a sua amplificação. Na figura 3.3 encontra-se a estrutura do filtro e do amplificador. Fig. 3.3 - Diagrama de blocos do filtro e do amplificador. A filtragem do sinal é feita através de um filtro passa-banda, com o qual se pretende eliminar a componente contínua e as altas-frequências, não podendo estas conter informação relevante do sinal. A análise de vários espectros de sinais de ECG permite concluir que a informação fundamental está compreendida numa banda estreita entre [ 1; 35 ] Hz, sendo então necessário dimensionar o filtro levando em consideração estes valores. A frequência de corte foi assim colocada com aproximadamente uma década de distância, entre [ 0.23;338 ] Hz. A amplitude do sinal após a sua aquisição é extremamente baixa (algumas dezenas de mv), pelo que é necessário implementar um amplificador com ganho elevado (cerca de 1000) de forma a colocar o sinal com amplitude entre [ 0;5] V. Como este valor é elevado, e de forma a não aumentar o ruído (o que aconteceria usando apenas um andar de amplificação), implementaram-se três andares de amplificação. O último andar de amplificação tem a particularidade de ter ganho variável e de introduzir offset de forma a retirar a componente contínua do sinal. 3.1.3 - Digitalização e comunicação com o computador Depois da fase de processamento dos dados, pretende-se enviá-los para o computador. A forma de comunicar entre a placa de aquisição e o computador é feita através da porta paralela, pelo que os dados são digitalizados com 8 bits por amostra. O pedido de dados à placa de aquisição é efectuado pelo computador, definindo assim o período de amostragem. O seu valor é 5 ms. Na figura 3.4 pode-se visualizar um exemplo do sinal de ECG na derivação DI, obtido através da placa. Verifica-se que o nível de ruído e a amplitude do sinal está de acordo com as especificações. 8
As figuras 3.5 e 3.6 contêm sinais de ECG obtidos com a mesma placa mas utilizando configurações diferentes (DII e DIII). Fig. 3.4 - Sinal de ECG obtido na derivação DI. Fig. 3.5 - Sinal de ECG obtido na derivação DII. Fig. 3.6 - Sinal de ECG obtido na derivação DIII. 9
Nas configurações DII e DIII o sinal medido através do eléctrodo colocado na perna deixa de ser o comum, o que aumenta o ruído no sinal ECG e torna mais difícil captá-lo. O anexo B contém o esquema completo da placa de aquisição proposta com os valores dos vários componentes utilizados. 3.2 - Aquisição dos dados a partir de um ficheiro O sinal de ECG também pode ser adquirido a partir de um ficheiro. Esta opção foi implementada de forma a estarem disponíveis para teste um maior número de exemplos de sinais ECG, com uma maior variedade de características. Desta forma também se torna mais simples testar os algoritmos de detecção de anomalias. O formato do ficheiro é o mesmo que um ficheiro de texto, com duas colunas, sendo a primeira correspondente ao tempo e a segunda ao sinal de ECG. Antes de se começar a analisar em tempo real o sinal de ECG proveniente do ficheiro este é sujeito a um pré-processamento de forma a adaptar o ficheiro aos parâmetros definidos. Para isso é calculado um ganho e um offset, os quais servem para ajustar o sinal para uma amplitude máxima de 5 V e com valores positivos. Também é necessário determinar a frequência de amostragem utilizada na digitalização do ECG de forma a verificar se está dentro dos limites de funcionamento da aplicação. Desta forma se o sinal apresentado no ficheiro tiver um período de amostragem igual ou superior a 5 ms o programa funciona com esse período, sendo que caso contrário se efectua uma sub-amostragem de forma a colocar o período igual ou superior a 5 ms. 3.3 - Filtragem do sinal ECG Na aplicação desenvolvida para a aquisição e análise do ECG foi também implementada a possibilidade de filtrar o sinal após a sua recepção. A utilização do filtro é opcional, sendo que melhora claramente o sinal. A largura de banda do sinal de ECG é de aproximadamente 35 Hz, pelo que se implementou um filtro FIR com frequência de corte igual à largura de banda e dimensão 15. O filtro analógico implementado na placa teve de ter uma frequência de corte bastante superior (uma década acima) de forma a não atenuar frequências importantes, o que não acontece através do filtro digital. O filtro com as especificações anteriores é facultado ao utilizador, no entanto caso o utilizador pretenda utilizar outro filtro este tem de ser apresentado ao programa num ficheiro de texto contendo os coeficientes do filtro FIR numa coluna. Na figura 3.7 apresenta-se a interface gráfica da aplicação desenvolvida. 10
Fig. 3.7 - Interface gráfico da aplicação. 11
12
4 - Segmentação do sinal de electrocardiograma A correcta segmentação de um sinal de ECG é uma condição fundamental deste trabalho, pois de outro modo torna-se impossível aplicar qualquer algoritmo de detecção de anomalias. Nesta tarefa pretende-se obter todas as características relevantes do sinal, tais como a localização temporal (inicio, tempo de pico e fim), a amplitude do pico e a polarização das várias ondas que constituem o sinal de ECG (o complexo QRS e as ondas P e T). Fig. 4.1 - Segmentação de um ECG. 4.1 - Algoritmo MOBD Até este momento, foram propostos pela comunidade cientifica vários algoritmos para a segmentação do complexo QRS, de entre o quais se destacam o algoritmo de Okada [1], o algoritmo de Hamilton-Tompkins [2], transformadas de wavelets [3] [4] [5], multiplicação das diferenças regressivas (MOBD) [6] e redes neuronais [7] [8]. Pretende-se que o algoritmo de segmentação possibilite a correcta extracção das características do QRS, ou seja, com a máxima precisão temporal e com o menor número possível de detecções falsas ou incorrectas. A complexidade do algoritmo, quer ao nível da sua implementação, quer ao nível da rapidez de execução (o algoritmo tem de ser implementado em tempo real) é outro aspecto a ter em consideração. Nas referências [9], [10] e [11] é feita uma comparação dos resultados da aplicação destes algoritmos, tendo em atenção não só a correcta detecção do QRS mas também a complexidade necessária. Após análise destes artigos conclui-se que o algoritmo MOBD permite obter a melhor relação entre a performance e a sensibilidade pelo que é o escolhido. O algoritmo MOBD apresenta, no entanto, a desvantagem de só possibilitar a detecção do complexo QRS pelo que é necessário introduzir novos algoritmos para a detecção das ondas P e T. Estas ondas são procuradas em janelas de busca criadas após a ocorrência de um complexo QRS, tendo em conta o valor do ritmo cardíaco. Dentro destas janelas são analisadas as sequências de declives do sinal de forma a encontrar-se a localização da onda. A transformada não linear de ordem N MOBD baseia-se na detecção de zonas com elevados declives presentes num sinal, o que é claramente o caso do complexo QRS. Esta transformada é definida como: 13
N yn n x & n k [ ] = [ ] k= 0 Onde xm & [ ] é a diferença regressiva de primeira ordem no instante m e vem dada por [ ] = [ ] [ 1]. De forma a reduzir o efeito do ruído é introduzida uma restrição, a xm & xm xm qual impõe que o sinal das várias diferenças em cada instante n seja igual. Caso esta não seja respeitada a transformada toma o valor zero. A escolha da ordem N do algoritmo é um aspecto fundamental para maximizar a sua performance, pelo que tem de ser escolhida com algum cuidado. Quanto maior for o seu valor maior se tornam as diferenças entre o valor da transformada MOBD, o que simplifica a escolha do valor para o limiar de selecção. No entanto devido à restrição de sinal imposta, e tendo em conta o número de amostras presentes nos declives do complexo torna-se impossível utilizar o algoritmo com ordem elevada. Neste caso optou-se por usar o algoritmo de ordem 2. Após este processo o sinal com a transformada MOBD é constituído por picos de valor elevado nos locais de subida ou de decaimento abrupto, como é o caso do complexo QRS. O resto da transformada é constituído por valores bastante reduzidos ou mesmo nulos. A selecção do complexo QRS é feita com recurso a dois limiares, LowThres e HighThres, sendo que sempre que a transformada MOBD passa o primeiro inicia-se a análise de um possível complexo QRS, o qual só é validado após a passagem da transformada pelo segundo limiar. Este procedimento será analisado em maior detalhe no ponto 4.2. 4.2 - Algoritmo de detecção do complexo QRS O algoritmo de detecção de QRS foi implementado de acordo com a sequência lógica de passos do fluxograma da figura 4.2, o qual corresponde a uma iteração do algoritmo. Após a detecção de um complexo QRS ocorre o período refractário, o qual corresponde ao intervalo mínimo entre a ocorrência de dois complexos consecutivos. Sendo assim, a procura do QRS só é efectuada fora deste período. A parte fundamental do algoritmo consiste no cálculo da transformada MOBD, o qual é efectuado sempre que se recebe uma amostra. Quando se está fora do período refractário e o valor do MOBD ultrapassa o limiar LowThres detecta-se o início de um possível complexo QRS, o qual é sujeito durante os instantes seguintes a testes de validação. Depois de detectado o início do QRS entra-se numa nova fase onde se procura a ocorrência de picos no sinal. Esta busca é feita através da análise dos declives da transformada MOBD, os quais correspondem à segunda derivada do sinal de ECG. Quando se encontra um pico verifica-se se o valor MOBD correspondente ultrapassa o limiar HighThres, o que é guardado em memória. O final do QRS é detectado quando o MOBD tem valor inferior ao limiar LowThres e após terem-se encontrado três picos (correspondentes às onda Q, R e S). O QRS é valido caso o valor do MOBD correspondente a algum dos três picos detectados tiver ultrapassado HighThres, caso contrário considera-se uma falsa detecção. 14
Fig. 4.2 - Algoritmo de detecção do complexo QRS Para que o algoritmo de detecção do complexo QRS não entre num ciclo infinito (caso de QRS inválido) existe um tempo limite (time out) para se concluir a sua detecção. Um aspecto importante que não se encontra totalmente explicado no fluxograma da figura 4.2 consiste na adaptação do limiar HighThres. Esta adaptação é feita de três formas distintas. A primeira é feita sempre que o tempo do último QRS detectado é superior em 50% ao valor médio dos intervalos RR, caso em que se reduz o limiar para metade do seu valor. A 15
segunda adaptação tem o efeito contrário à anterior, ou seja, sempre que o último intervalo RR é inferior a 25% da média aumenta-se o limiar em 25%. Na última adaptação analisa-se o valor médio da transformada MOBD de forma a garantir que o valor de HighThres é sempre superior a 1% da média do limiar. No final da detecção de um QRS são guardados em memória os instantes de ocorrência (inicio, tempo do pico R e fim) e o valor do pico R, os quais são utilizados na detecção de anomalias. 4.3 - Algoritmo de detecção da onda T A detecção da onda T é iniciada após a finalização do último QRS. Ao terminar o algoritmo de detecção do complexo QRS é criada uma janela de procura da onda T, a qual é determinada tendo em conta o instante final do QRS e o valor do ritmo cardíaco do sinal de ECG. Os instantes inicial e final da janela de procura são dados pelas seguintes expressões. inicio = 0.08 + fimqrs fim = inicio + 0.44, intervalorr > 0.7 fim = inicio + 0.7 intervalorr 0.06,c.c. O procedimento para a detecção da onda T é explicado em detalhe no fluxograma da figura 4.3. Quando se está dentro da janela de procura da onda T, filtra-se o sinal de ECG com um filtro de média móvel de dimensão igual a f a 1% ( f a corresponde à frequência de amostragem do sinal). Este filtro tem como função suavizar o sinal de modo a minimizar o efeito do ruído. Após a preparação do sinal inicia-se a procura dos instantes inicial, de pico e final da onda T. Esta pesquisa é feita com recurso aos dois últimos declives do sinal de ECG filtrado. Sempre que os módulos dos dois declives ultrapassam o valor de limiar slope_lim_t considerase esse instante como o início da onda T. Sendo também analisada a polaridade da onda através da sua concavidade. Quando se encontra o início da onda T começa-se a procurar o seu pico, o qual é identificado na mudança do sinal do declive. De modo a evitar que possíveis irregularidades na onda durante a subida sejam consideradas erradamente como sendo o pico, continua-se a analisar os declives de modo a verificar que a mudança do sinal não é esporádica. O final da onda ocorre quando o valor dos declives, em módulo, é inferior a slope_lim_t. No fim do algoritmo de detecção da onda T são guardados em memória os instantes inicial, de pico e final, o valor do pico (correspondente ao máximo ou ao mínimo da onda consoante a polaridade) e a polaridade da onda. 16
Fig. 4.3 - Algoritmo de detecção da onda T. 4.4 - Algoritmo de detecção da onda P Como se pode verificar no fluxograma da figura 4.4 o algoritmo de detecção da onda P é muito semelhante ao algoritmo de detecção da onda T, tendo apenas uma alteração relevante: são procuradas várias ondas P. Esta alteração deve-se à possibilidade de existirem várias ondas P em simultâneo entre QRSs e ao facto da onda P poder ter uma amplitude muito pequena, a qual pode em algumas situações ser ligeiramente superior ao ruído. Quando são encontradas várias ondas P 17
considera-se a onda com maior amplitude como sendo a principal e guarda-se o número de ondas detectadas. Fig 4.4 - Algoritmo de detecção da onda P. 18
A janela de procura da onda P é calculada no final de um QRS e corresponde à última metade do intervalo entre picos R. A procura desta onda termina quando se detecta o início dum complexo QRS novo. Após a detecção da onda P são guardados os instantes inicial, de pico e final, o valor do pico, a polaridade da onda e o número de ondas P detectadas. 19
20
5 - Algoritmos de detecção de anomalias 5.1 Anomalias Após a aquisição do sinal, este é analisado procurando-se as suas ondas características. A partir destas e recorrendo aos algoritmos descritos no ponto 5.2, analisa-se se os parâmetros que estão representados na figura 2.2 respeitam certas condições. Durante esta análise as variáveis utilizadas na detecção de anomalias (anexo C) são actualizadas. Tendo a informação necessária determina-se se o ECG apresenta alguma anomalia ou não. Para que o ritmo cardíaco seja considerado normal tem de respeitar as seguintes condições [12]: 1) Onda P de origem sinusal; 2) Intervalo PR constante e com duração entre 0,12 e 0,2 seg; 3) Configurações da onda P constantes na sua própria derivação (neste caso DI); 4) Ritmo cardíaco entre 60 e 100 bpm; 5) Intervalo PP constante (ou RR); 6) Intervalo P entre 0,06 e 0,1 seg; 7) Intervalo QRS entre 0,06 e 0,1 seg; 8) Intervalo QT menor do que 0,44 seg. O ritmo anormal pode ser classificado em irregular ou regular. De seguida apresenta-se uma pequena descrição das anomalias (ou sintomas dessas anomalias) que são detectadas neste projecto, bem como o valor das variáveis que determinam a sua detecção. No caso das arritmias irregulares, são analisadas as seguintes: Extrassístole: É a arritmia mais frequente que pode ocorrer em pessoas com ou sem doença cardíaca. Caracteriza-se por contracções prematuras do coração que interrompem brevemente o compasso normal das batidas e são sentidas, geralmente, como uma pausa, seguida ou não de um batimento mais forte (muitas pessoas referem que sentem como se o coração fosse parar). Podem ser originadas nas aurículas ou nos ventrículos, sendo chamadas, respectivamente, de extrassístoles atriais ou ventriculares. Extrassístole Atrial (ESA): ESA é o batimento prematuro que substitui um batimento de origem sinusal que viria logo a seguir. Estão muitas vezes relacionadas a episódios de stress ou após ingestão de substâncias estimulantes. 21
Fig. 5.1 Extrassístole Atrial (extraído de [13]). Critérios de detecção: 1) duração do QRS superior a 0,06 seg e inferior a 0,1 seg (flag_qrs_n_normal OFF); 2) duração da onda P inferior a 0,06 seg ou superior a 0,1 seg (flag_p_n_normal ON); 3) duração da onda T dentro da média das durações das ondas já analisadas com margem de 15% (flag_t_duracao OFF); 4) polarização da onda T não invertida (flag_t_invertida OFF); 5) ritmo do complexo que está a ser analisado inferior à média dos ritmos já analisados com uma margem de 15% (flag_ritmo_pequeno ON). Extrassístole Ventricular (ESV): As ESVs têm um aspecto mais bizarro em relação as contracções auriculares e a sua presença normalmente não é motivo de preocupação para o médico. Em pessoas com doença no músculo do coração ou com doença na artéria coronária, a presença dessas contracções em grande número podem significar um prenúncio de outros ritmos mais graves no futuro. Fig. 5.2 Extrassístole Ventricular (extraído de [13]). Critérios de detecção: 1) duração do QRS inferior a 0,06 seg ou superior a 0,1 seg (flag_qrs_n_normal ON); 2) onda P ausente (flag_p_ausente ON); 3) duração da onda T fora da média das durações das ondas já analisadas com margem de 15% (flag_t_duracao ON); 4) polarização da onda T não invertida (flag_t_invertida OFF); 5) ritmo do complexo que está a ser analisado não é inferior à média dos ritmos já analisados com uma margem de 15% (flag_ritmo_pequeno OFF). 6) ritmo do complexo que está a ser analisado não é superior à média dos ritmos já analisados com uma margem de 15% (flag_ritmo_grande OFF). 22
Fibrilação Auricular (FA): Na fibrilação auricular, as aurículas contraem-se aproximadamente 400 a 500 vezes por minuto, no entanto como a maioria dessas contracções é fraca e incompleta, as ondas P não são produzidas. Muitas dessas contracções são bloqueadas no nó AV o que resulta numa resposta ventricular irregular. Sendo assim, analisa-se no ECG se ao longo de 10 segmentos existe linha de base (sinal que está compreendido entre complexos QRS) ondulada e irregular sem onda P e complexos QRS irregulares. Fig. 5.3 Fibrilação Auricular (extraído de [14]). Critérios de detecção: 1) duração do QRS inferior a 0,06 seg ou superior a 0,1 seg (flag_qrs_n_normal ON); 2) existência de várias pequenas arritmias num intervalo de 10seg (flag_ritmo_variante ON); 3) onda P ausente (flag_p_ausente ON). Análise feita durante 3 seg. Bradicardia Sinusal: A bradicardia sinusal é comum em atletas e pode ser uma variante normal. Esta caracterizase por um ritmo cardíaco baixo. Fig. 5.4 Bradicardia Sinusal (extraído de [14]). Critérios de detecção: 1) complexo QRS detectado (flag_qrs_ausente OFF); 2) intervalo entre o início da onda P e o início do complexo QRS não é inferior a 0,12 seg (flag_pr_menor OFF ); 3) intervalo entre o início da onda P e o início do complexo QRS não é superior a 0,22 seg (flag_pr_maior OFF); 4) duração da onda P superior a 0,06 seg e inferior a 0,1 seg (flag_p_n_normal OFF); 5) ritmo inferior a 60 bpm (flag_ritmo60 ON); 6) ritmo não superior a 100 bpm (flag_ritmo100 OFF); 7) intervalo entre ondas P não superior à média dos intervalos já analisados com margem de 10% ( flag_pp OFF). 23
Taquicardia Sinusal: Caracteriza-se por um ritmo cardíaco elevado, sendo por isso normal ser detectada durante o exercício físico. Fig. 5.5 Taquicardia Sinusal (extraído de [14]). Critérios de detecção: 1) complexo QRS detectado (flag_qrs_ausente OFF); 2) intervalo entre o início da onda P e o início do complexo QRS não é inferior a 0,12 seg (flag_pr_menor OFF ); 3) intervalo entre o início da onda P e o início do complexo QRS não é superior a 0,22 seg (flag_pr_maior OFF); 4) duração da onda P superior a 0,06 seg e inferior a 0,1 seg (flag_p_n_normal OFF); 5) ritmo não inferior a 60 bpm (flag_ritmo60 OFF); 6) ritmo superior a 100 bpm (flag_ritmo100 ON); 7) intervalo entre ondas P não superior à média dos intervalos já analisados com margem de 10% ( flag_pp OFF). Arritmia Sinusal: A arritmia sinusal deve-se a bloqueios sinusais ou bloqueios na saída sinusal. Existem dois tipos de arritmias sinusal: respiratória (aceleração do ritmo) e não respiratória (diminuição do ritmo). No entanto, neste trabalho a detecção desta anomalia é independente da respiração. Fig. 5.6 Arritmia Sinusal (extraído de [14]). Critérios de detecção: 1) complexo QRS detectado (flag_qrs_ausente OFF); 2) intervalo entre o início da onda P e o início do complexo QRS não é inferior a 0,12 seg (flag_pr_menor OFF ); 3) intervalo entre o início da onda P e o início do complexo QRS não é superior a 0,22 seg (flag_pr_maior OFF); 4) duração da onda P superior a 0,06 seg e inferior a 0,1 seg (flag_p_n_normal OFF); 5) ritmo inferior a 60 bpm (flag_ritmo60 ON); 6) ritmo não superior a 100 bpm (flag_ritmo100 OFF); 7) intervalo entre ondas P superior à média dos intervalos já analisados com margem de 10% ( flag_pp ON). 24
No caso das arritmias regulares as que são detectadas neste projecto são: Síndroma Wolff-Parkinson-White (WPW): No síndroma Wolff-Parkinson-White um tecido anormal (que existe desde o nascimento) liga as aurículas aos ventrículos (via acessória) fazendo com que o nó AV não seja a única forma de comunicação entre estas duas câmaras. Dessa forma ele pode desencadear uma taquicardia por conduzir através da via para os ventrículos e destes para as aurículas pelo nó AV, ou ao contrário, se a condução da aurícula para o ventrículo passar pelo nó AV e retornar ás aurículas pela via acessória. Fig. 5.7 Síndroma Wolff-Parkinson-White (extraído de [15]). Critérios de detecção: 1) duração do QRS igual ou superior a 0,12 (seg flag_qrs_largo ON); 2) intervalo entre o início da onda P e o início do complexo QRS inferior a 0,12 seg (flag_pr_menor ON ); 3) ritmo superior a 100 bpm (flag_ritmo100 ON). Taquicardia Atrial: Séries de contracções auriculares prematuras e consecutivas denominam-se por taquicardia atrial. Neste caso um foco isolado dentro da aurícula dispara ou reentra num circuito local provocando a taquicardia pela rapidez do disparo. O ECG pode fornecer o diagnóstico através da informação da onda P. Fig. 5.8 Taquicardia Atrial (extraído de [15]). Critérios de detecção: 1) ritmo superior a 100 bpm (flag_ritmo100 ON); 2) intervalo entre ondas P superior à média dos intervalos já analisados com margem de 10% ( flag_pp ON); 3) duração da onda P inferior a 0,06 seg ou superior a 0,1 seg (flag_p_n_normal ON). 25
Bloqueio Atrioventricular (AV): O nó AV, que funciona como uma subestação da corrente eléctrica que segue das aurículas para os ventrículos, pode ser acometido de diversos graus de bloqueio da condução, impedindo que os impulsos eléctricos passem adequadamente. São eles: Bloqueio Atrioventricular 1ºgrau O Bloqueio AV de 1º Grau é apenas um prolongamento do tempo que o impulso atrial leva para chegar aos ventrículos. Fig. 5.9 Bloqueio AV 1º grau (extraído de [14]). Critérios de detecção: 1) intervalo entre o início da onda P e o início do complexo QRS é superior a 0,22 seg (flag_pr_maior ON); 2) duração da onda P superior a 0,06 seg e inferior a 0,1 seg (flag_p_n_normal OFF); 3) duração do QRS superior a 0,06 seg e inferior a 0,1 seg (flag_qrs_n_normal OFF). Bloqueio Atrioventricular 2ºgrau Neste tipo de bloqueio, parte dos impulsos que tentam chegar aos ventrículos não o fazem efectivamente, podendo o bloqueio estar no nó AV ou logo abaixo. A sua gravidade depende da análise do ECG feita pelo médico e pode variar desde uma condição variante da normalidade até a necessidade de colocar marcapasso. Mobitz tipo I Causado por uma debilitação progressiva na condução através do nó AV, que faz com que o intervalo PR aumente sucessivamente até que exista um intervalo entre QRS muito grande. Fig. 5.10 Bloqueio AV 2º grau tipo I (extraído de [14]). 26
Critérios de detecção: 1) intervalo PR aumentou consecutivamente nos últimos 3 segmentos (PR_aumentar >= 3); 2) intervalo entre o QRS analisado e o anterior superior a 1,5xmédia dos intervalos (flag_qrs_intervalo_grande ON); 3) duração da onda P superior a 0,06 seg e inferior a 0,1 seg (flag_p_n_normal OFF); 4) duração do QRS superior a 0,06 seg e inferior a 0,1 seg (flag_qrs_n_normal OFF). Mobitz tipo II Menos comum que o Mobitz tipo I, caracteriza-se pelo bloqueio total eventual de um impulso atrial no feixe de His ou nos ramos, resultando num batimento QRS desaparecido. Fig. 5.11 Bloqueio AV 2º grau tipo II (extraído de [14]). Critérios de detecção: 1) duração do QRS inferior a 0,06 seg ou superior a 0,1 seg (flag_qrs_n_normal ON); 2) duração do QRS que está a ser analisado fora da média das durações já analisadas com margem de 10% (flag_qrs_duracao ON); 3) intervalo entre o início da onda P e o início do complexo QRS não é inferior a 0,12 seg (flag_pr_menor OFF ); 4) intervalo entre o início da onda P e o início do complexo QRS não é superior a 0,22 seg (flag_pr_maior OFF); 5) ritmo do complexo que está a ser analisado inferior ou superior à média dos ritmos já analisados com uma margem de 15% (flag_ritmo_pequeno ON ou flag_ritmo_grande ON). Análise feita durante 2 seg. Bloqueio Atrioventricular 3ºgrau BAVT O Bloqueio AV 3º Grau também denominado por Bloqueio Cardíaco Total caracteriza-se pela interrupção total da condução do estímulo eléctrico, o que faz com que os ventrículos encontrem outra forma de gerar a sua própria corrente eléctrica. Assim sendo, após o marcapasso primário não ter conseguido regular o ritmo cardíaco, surge um marcapasso ventricular auxiliar que trabalha a uma frequência diferente da actividade eléctrica auricular. Esta diferença irá produzir batimentos cardíacos mais lentos e criar independência entre as ondas P e os complexos QRS. 27
Fig. 5.12 Bloqueio AV 3º grau (extraído de [14]). Critérios de detecção: 1) existência de pelo menos 3 ondas P entre complexos QRS (flag_p_varias > 3); 2) intervalo entre o início da onda P e o início do complexo QRS inferior a 0,12 seg ou superior a 0,22 (flag_pr_menor ON ou flag_pr_maior ON); 3) ritmo inferior a 60 bpm (flag_ritmo60 ON). Bloqueio Sinoatrial (SA): Os impulsos gerados no nó sinusal podem ser produzidos lentamente ou ser bloqueados na junção entre o nó sinusal e a aurícula. No bloqueio Sinoatrial de primeiro grau, ocorre um atraso na condução do nó até à aurícula, não sendo detectado no eletrocardiograma, mas podendo ser identificado por exames eletrofisiológicos. No entanto, o bloqueio de segundo grau do tipo II pode ser diagnosticado no eletrocardiograma, onde o intervalo PP subitamente aumenta até um valor que corresponde quase ao dobro do intervalo PP usual. O bloqueio de terceiro grau causa paragem atrial. Fig. 5.13 Bloqueio SA (extraído de [14]). Critérios de detecção: 1) intervalo entre o QRS analisado e o anterior superior a duas vezes a média dos intervalos com margem de 5% (flag_qrs_bloqueio ON); 2) complexo QRS detectado (flag_qrs_ausente OFF). Bloqueio de Ramo: Este tipo de bloqueio caracteriza-se por um atraso na activação do ventrículo direito/esquerdo o que resulta num bloqueio do ramo direito/esquerdo. Fig. 5.14 Bloqueio de Ramo (extraído de [15]). Critérios de detecção: 1) duração do QRS igual ou superior a 0,12 seg (flag_qrs_largo ON). 28
Crescimento das Cavidades: Sempre que há uma sobrecarga de volume ou pressão no coração, uma ou mais câmaras cardíacas aumentam. As sobrecargas de volume tendem a aumentar o diâmetro da câmara designando-se por dilatação. Por outro lado, as sobrecargas de pressão tendem a aumentar a espessura da câmara, designando-se por hipertrofia. Crescimento Auricular: A detecção de crescimento auricular nem sempre é fácil recorrendo ao ECG, pois normalmente existe uma quantidade considerável de variações na configuração da onda P. Fig. 5.15 Crescimento Auricular (extraído de [15]). Critérios de detecção: 1) duração da onda P superior a 0,12 seg (flag_p_duracao ON); 2) amplitude da onda P superior a 15% da amplitude do QRS (flag_p_alta ON). Hipertrofia Ventricular: HV indica que o coração está a fazer um esforço significativo para bombear o sangue pelo corpo sob uma pressão ampliada. O coração aumenta para poder aguentar a carga excessiva, o que ocasiona o aumento de voltagens no ECG. O diagnóstico de hipertrofia ventricular esquerda ou direita a partir do ECG é pouco eficiente (50% dos pacientes que padecem de HV não são detectados quando se utiliza os critérios de detecção a partir do ECG), no entanto quando é detectada em mais de 90% dos casos correspondem a uma correcta detecção. Fig. 5.16 Hipertrofia Ventricular (extraído de [15]). Critérios de detecção: 1) duração do QRS igual ou superior a 0,12 seg (flag_qrs_largo ON); 2) polarização da onda T invertida (flag_t_invertida ON). 29
5.2 - Algoritmos A análise do electrocardiograma é efectuada por segmentos constituídos pela onda P, seguida do complexo QRS e posteriormente da onda T (caso existam e sejam detectadas todos eles). Como tal, em cada instante de amostragem testa-se se foi detectada uma nova onda. Caso a sequência a analisar esteja completa, esta é testada através das funções desenvolvidas: - Testa_QRS; - Testa_P; - Testa_T; - Testa_PP; - Testa_PR; - Testa_QT; - Testa_anomalias. Se detectarmos a ausência de alguma das ondas, é assinalada a flag correspondente (flag_p_ausente, flag_qrs_ausente e flag_t_ausente) e sendo assim esse segmento é considerado incompleto e analisado por apenas algumas das funções. É de realçar que apesar de se analisarem segmentos, algumas anomalias apresentam as suas características ao longo de vários segmentos consecutivos. Nestes casos guardam-se as características detectadas, bem como o seu instante para que se possa determinar se o conjunto destas ocorreu num intervalo válido. Para determinar se os parâmetros são constantes ao longo do ECG, comparam-se estes com a média. Esta por sua vez, é calculada com todos os valores até ao instante anterior, excepto aqueles onde tenha sido detectado uma anomalia. Pois a introdução destes na média iria fazer com que esta não pudesse validar a característica analisada (estaria distorcida). As funções desenvolvidas para analisar a normalidade do electrocardiograma em estudo, são agora descritas: Testa_QRS Nesta função calcula-se o ritmo cardíaco, recorrendo à seguinte expressão: 60 ritmo _ cardiaco = seg tempo _ pico _ R Através deste valor determina-se se existe algum tipo de arritmia: - pequenas arritmias caso o ritmo varie mais do que 15% em relação à sua média; - bradicardia (ritmo < 60bpm) ou taquicardia sinusal (ritmo > 100bpm). Também são analisados a duração do complexo QRS e o intervalo de tempo entre QRSs consecutivos. A duração é calculada através do tempo entre o início da detecção do QRS e o seu fim. Esta tem de se encontrar entre 0,06 e 0,1 seg para ser considerada normal, não poderá variar mais de 10% da sua média para que não seja detectada uma arritmia sinusal e caso seja superior a 0,12 seg estamos na presença de um sintoma de bloqueio de ramo. 30
O intervalo entre QRS é calculado através do tempo de pico R e caso ultrapasse a margem de 50% do valor médio de intervalos até ao instante que está a ser analisado, existe uma irregularidade. Se ultrapassar o dobro do tempo da média, ou seja, se numa sequência constante de complexos QRS tenha havido uma omissão, estamos na presença de um bloqueio sinoatrial. Variáveis actualizadas: flag_ritmo_pequeno; flag_ritmo_grande; flag_ritmo60; flag_ritmo100; flag_ritmo_variante; flag_qrs_largo; flag_qrs_n_normal; flag_qrs_duracao; flag_qrs_bloqueio; flag_qrs_intervalo_grande. Testa_P Através da diferença entre o início da onda P e o seu fim, calcula-se a sua duração. Esta terá que se encontrar entre 0,06 e 0,1 seg para que o electrocardiograma seja considerado normal. Se for superior a 0,2 seg é obtido um dos sintomas de crescimento auricular. Para que a onda P seja considerada alta, a amplitude desta terá de ser superior a 15% da amplitude do QRS. Variáveis actualizadas: flag_p_n_normal; flag_p_duracao; flag_p_alta. Testa_T A duração da onda T é menos constante do que a do complexo QRS, como tal atribuísse uma margem de 15% em relação à sua média para considerar a onda não constante. Esta onda poderá ter a polarização invertida, sendo assim a função testa a polarização da onda e verifica se existe uma sequência de inversões ao longo do electrocardiograma. Variáveis actualizadas: flag_t_duracao; flag_t_invertida; flag_t_ninv_inv. Testa_PP O objectivo desta função é determinar se o intervalo PP é constante, para isso, através do instante detectado como sendo o pico da onda P, calcula-se a média dos intervalos entre picos P sucessivos e testa-se se a sequência que está a ser analisada pertence ao intervalo constituído pela média com uma margem de 10%. Variáveis actualizadas: flag_pp. 31
Testa_PR O intervalo PR é calculado com base nos instantes detectados como sendo o início da onda P e o início do complexo QRS. Num electrocardiograma normal este intervalo tem de se encontrar entre 0,12 e 0,20 seg, no entanto, caso este se encontre fora está-se na presença de uma anomalia (bloqueio atrioventricular). Além de se calcular a duração do intervalo PR, também se estuda o seu comportamento (se está a crescer ou não), sintoma de Bloqueio AV 2º grau tipo I. Variáveis actualizadas: flag_pr_menor; flag_pr_maior; PR_aumentar. Testa_QT A função determina se o intervalo QT é superior a 0,44 seg. Este intervalo é calculado a partir de: Intervalo _ QT = QT RR onde QT é o intervalo entre o instante em que se detecta o complexo QRS e o instante em que se detecta o fim da onda T, e RR o intervalo entre os picos R detectados. Variáveis actualizadas: flag_qt. Testa_Anomalias Esta função é chamada após ter-se corrido todas as outras, como tal todos os testes já foram efectuados ao segmento que está a ser analisado e sendo assim as variáveis utilizadas na detecção de anomalias estão actualizadas. Através destas determina-se se o indivíduo em análise padece de alguma anomalia. Caso sejam detectadas anomalias, o nome destas e o instante em que foram detectadas são guardados no ficheiro ANOMALIAS.txt. No entanto, para ser mais fácil a análise do ECG, estas são divididas pelas suas categorias (ritmo normal, arritmia regular e irregular) e guardadas em ficheiros específicos ANOM_NORM.txt, ANOM_REG.txt e ANOM_IRREG.txt. 32
6 - Análise de resultados A performance do trabalho desenvolvido pode ser analisada de duas formas. A primeira é através dos resultados obtidos na segmentação do ECG, a qual só é possível desde que o sinal adquirido esteja em boas condições. A segunda forma consiste na análise das anomalias detectadas no sinal de ECG, o que tem por base a segmentação efectuada anteriormente. Desta forma a análise de resultados é feita tendo em consideração estes dois aspectos fundamentais. 6.1 - Segmentação do ECG A segmentação das ondas P e T é feita através da análise dos declives no sinal de ECG, sendo que sempre que estes ultrapassam o limiar de detecção se inicia a segmentação da onda correspondente. Desta forma, é essencial que o sinal contenha pouco ruído pois as zonas de elevado ruído normalmente também são zonas de declives elevados. Este aspecto é mais relevante no caso da detecção da onda P pois a sua amplitude é, para esta derivação, substancialmente menor que a amplitude da onda T. No caso do complexo QRS o ruído tem pouca influência pois o algoritmo MOBD minimiza o efeito deste. É então conveniente analisar a existência de ruído no sinal e o efeito da filtragem digital, antes de se proceder à análise da segmentação. Na figura 6.1 encontra-se o exemplo de um sinal de ECG adquirido através da placa, antes e depois de ser filtrado. (a) Sinal não filtrado. (b) Sinal filtrado. Fig. 6.1 - Sinal de ECG adquirido com a placa de aquisição. O sinal obtido da placa de aquisição apresenta algum ruído, principalmente nos períodos entre as ondas T e P, figura 6.1 (a). Este efeito era expectável visto que o sinal é mais constante nessa zona tornando mais visível a existência do ruído. Também se verifica a existência de 33
algum ruído nos picos das ondas T e P, o que torna mais complicada a identificação deste (passa a não haver um pico bem definido). A figura 6.1 (b) contém o mesmo sinal após a sua filtragem, onde é visível a atenuação das frequências correspondentes ao ruído. Também é de realçar a maior suavidade existente no pico das ondas. No entanto continuam a existir casos em que o pico não está bem definido, o que é minimizado através do algoritmo de segmentação da respectiva onda. A aplicação do filtro também apresenta outro tipo de efeitos como é o caso do atraso introduzido e da pequena atenuação existente nos picos do complexo QRS. O atraso não é significativo para o funcionamento do programa, sendo proveniente da aplicação de um filtro FIR. A atenuação do complexo QRS não é desejável pois torna mais difícil a sua detecção, no entanto o seu efeito é reduzido. Para analisar a eficiência dos algoritmos de segmentação do sinal de ECG, estes foram testados usando sinais de ECG provenientes de várias bases de dados e contendo diversas irregularidades nas ondas. A validação dos resultados foi feita manualmente, analisando as ondas e a segmentação efectuada. A precisão da segmentação do sinal ECG é um aspecto de extrema importância, pois caso contrário torna-se impossível detectar qualquer tipo de anomalia presente neste, o que corresponde ao objectivo do trabalho. Desta forma pretende-se não só identificar uma janela que delimite cada onda, mas sim identificar com precisão o instante inicial e final de cada uma das ondas. Na figura 6.2 estão representadas duas segmentações efectuadas em dois sinais distintos. Verifica-se que neste caso as ondas foram bem segmentadas, estando o início e o fim da onda bem delimitados. Um aspecto importante do algoritmo utilizado é a sua robustez a variações na polaridade das ondas. Nesta figura encontram-se duas ondas T com polarizações contrárias, as quais são detectadas com a mesma eficiência. (a) Exemplo 1. (b) Exemplo 2. Fig. 6.2 Segmentação do ECG. Na figura 6.2 (a) verifica-se um exemplo de um segmento com as várias ondas bem delimitadas. Na figura 6.2 (b) a precisão obtida pela segmentação também é aceitável, no entanto 34
existem alguns erros: o fim do QRS é detectado precocemente e o inicio da onda T está antecipado. O erro na detecção do fim do complexo QRS é devido a variações existentes na forma do complexo, tais como, o aumento da amplitude da onda S, ou o seu prolongamento no tempo. No caso da onda T, o seu início é mal detectado porque o sinal já está a diminuir apesar de ainda não ter começado a onda. Na tabela 6.1 encontram-se os resultados obtidos através dos algoritmos de segmentação do ECG. Para cada tipo de onda existem três hipóteses de detecção: onda bem detectada, onda mal detectada e onda não detectada. Uma onda bem detectada é aquela em que os seus limites foram encontrados com precisão, por exemplo as ondas da figura 6.2. No caso das ondas mal detectadas existem dois casos distintos: apenas parte da onda é detectada, ou a onda é detectada num sítio errado. Uma onda não detectada é aquela que apesar da sua existência num segmento não é encontrada. Origem Tab. 6.1 - Resultados da segmentação de sinais de ECG. P [%] QRS [%] T [%] Nome Bem Mal Não Bem Mal Não Bem Mal Não PA Sem filtro 44.4 22.2 33.3 96.7 3.3 0.0 93.3 6.7 0.0 PA Com filtro 95.0 5.0 0.0 100.0 0.0 0.0 98.4 1.6 0.0 BD Ritmo Sinusal Normal 93.0 0.0 7.0 100.0 0.0 0.0 98.2 1.8 0.0 BD Arritmia 64.0 28.0 8.0 100.0 0.0 0.0 68.0 32.0 0.0 BD Arritmia Supraventricular 91.1 3.6 5.4 98.1 1.9 0.0 98.0 2.0 0.0 BD Fibriliação Auricular 62.1 25.8 12.1 98.8 1.2 0.0 87.8 12.2 0.0 Total (sinais filtrados) 82.6 11.0 6.4 99.3 0.7 0.0 92.5 7.5 0.0 Os resultados da segmentação de sinais de ECG foram divididos tendo em conta as características do sinal de ECG e a sua proveniência. A origem do sinal pode ser a placa de aquisição (PA) ou a base de dados da Physionet (BD). Os sinais provenientes da base de dados foram sempre filtrados. No caso dos sinais provenientes da placa de aquisição testaram-se os algoritmos utilizando sinais com e sem a utilização do filtro digital. Verifica-se que o uso do filtro aumenta substancialmente a eficiência dos algoritmos, especialmente no caso da detecção da onda P (situação em que o efeito do ruído é mais evidente). Os sinais provenientes da base de dados da Physionet têm características muito diferentes entre si, pelo que é conveniente uma análise independente para grupo de sinais. O grupo de sinais Ritmo Sinusal Normal, figura 6.2 (a), são semelhantes aos sinais obtidos através da placa de aquisição pelo que os resultados obtidos são semelhantes. Neste grupo de sinais existem situações em que a onda P tem amplitude bastante reduzida pelo que não é detectada. Na figura 6.3 encontra-se um exemplo do grupo de sinais Arritmia, onde se pode verificar que as ondas P e T se encontram mal definidas, desta forma o valor da eficiência da segmentação reduz-se bastante. No grupo Arritmia Supraventricular a eficiência volta a subir para valores próximos do caso da placa de aquisição. Na figura 6.4 pode-se verificar que o período de transição entre a onda T e P contém bastante ruído o que provoca a existência de alguns picos que podem ser confundidos com a onda P. Esta característica dificulta a detecção da onda P, pelo que a eficiência de detecção desta diminui. 35
Fig. 6.3 - Sinal do grupo Arritmia. A figura 6.6 contém um exemplo do grupo Fibriliação Auricular. Pode-se verificar que este sinal é muito diferente dos restantes sinais em análise, o que leva a uma diminuição da eficiência. Neste sinal a onda T tem uma amplitude elevada pelo que se detecta com maior facilidade que a onda P. Ao longo do tempo a onda P varia bastante as suas características pelo que se torna complicado segmentá-la de forma correcta. Através de uma análise geral verifica-se que os resultados obtidos são satisfatórios sendo que a onda P é a mais difícil de segmentar, o que era esperado. Outro aspecto importante de verificar é que os melhores resultados são obtidos para os sinais provenientes da placa de aquisição. Estes resultados podem ser melhorados através da escolha um melhor filtro capaz de reduzir ainda mais o ruído existente nos sinais. 6.2 - Anomalias Ao testar-se o programa através dos ficheiros existentes na base de dados de sinais biológicos da Physionet, obtiveram-se os seguintes resultados: Arritmia Supraventricular A base de dados contém a informação que aos 50.6 seg o ECG apresenta uma arritmia supraventricular. Esta é detectada pelo programa aos 51.1 seg, figura 6.4, sendo a diferença de tempo justificada pelo facto de a análise das ondas ser feita segmento a segmento (onda P + complexo QRS + onda T) e não no instante em que se detecta cada onda e também ao atraso do filtro. As condições que levaram à sua detecção, baseiam-se no facto de a média dos ritmos até à arritmia ser de 60.3 bpm, sofrendo um aumento brusco nesse instante para 80.8 bpm. 36
Fig. 6.4 Arritmia Supraventricular. É de salientar que a média dos ritmos é baixa considerando que o ritmo normal situa-se entre os 60 e 100 bpm. Este baixo valor deve-se ao facto de que nos instantes inicias o ECG apresenta um ritmo baixo, o qual pode ser confirmado ao comparar-se as figuras 6.4 e 6.5, verificando-se que no mesmo intervalo de tempo (7 ms) o número de complexos existentes em cada é diferente: na figura 6.5 existem 6 QRS (média dos ritmos iniciais: 46.7 bpm) e na figura 6.4 visualizam-se 8 QRS (média depois de estabilizar e até à arritmia: 63.9 bpm). Devido a esta irregularidade inicial o programa detecta nesses instantes iniciais a presença de bradicardia sinusal (ritmo inferior a 60 bpm e restantes características normais), o que não está presente na base de dados Fig. 6.5 Início do sinal. 37
Bloqueio Sinoatrial Tal como foi descrito no capítulo 5.1, esta anomalia apresenta-se como sendo a falta de um complexo QRS numa sequência de QRSs. Como se pode verificar na figura 6.6 a duração do intervalo que está assinalado (1600 ms) é bastante maior do que os outros intervalos, sendo quase o dobro destes (média da duração dos restantes intervalos: 804.3 ms). Devido à existência desta anomalia, a bradicardia sinusal detectada no mesmo instante é anulada (ritmo diminui para 37.5 bpm, sendo a média 74.4 bpm). Fig. 6.6 Bloqueio Sinoatrial. Fibriliação Auricular Ao contrário das anomalias anteriores, os sintomas de fibriliação apresentam-se ao longo de um intervalo de tempo e não apenas durante um segmento. Na figura 6.7 estão assinalados os instantes onde ocorreram os sintomas: em A existe um QRS não normal, em B há variação de ritmos e em C temos a ausência da onda P. Salienta-se que este ECG tem um traçado irregular, mas que mesmo assim o programa desenvolvido detecta as ondas características do ECG e consequentemente as anomalias. 38
Fig. 6.7 Fibriliação. 39
40
7 - Conclusões O desenvolvimento do Alarme de Acidente Cardiovascular permitiu aprofundar os conhecimentos, através de um projecto prático, nas áreas de processamento de sinal, electrónica e também biomedicina. Ao terminar este projecto pode-se concluir que os objectivos propostos foram atingidos os quais consistiam em desenvolver uma placa de aquisição de ECG, comunicar via porta paralela com o computador, e desenvolver algoritmos para a segmentação do sinal recebido e para a detecção de anomalias. A placa de aquisição desenvolvida retorna um sinal com pouco ruído e dentro dos parâmetros pretendidos, referidos ao longo do relatório. Esta é uma parte muito importante no trabalho, pois sem obter um bom sinal não se poderá prosseguir com as restantes tarefas. Tal como se pode observar nos resultados obtidos, a segmentação do ECG é feita de uma forma satisfatória, com uma elevada percentagem de detecções efectuadas com precisão. Esta percentagem é máxima para os sinais provenientes da placa de aquisição, o que é um bom resultado pois uma das aplicações para este trabalho é a monitorização em tempo real do ECG. Estes bons resultados na segmentação do ECG, permitem que os algoritmos de detecções de anomalias consigam determinar de forma mais correcta a existência destas, pois eles baseiamse em limitações de intervalos das ondas e caso estas não sejam bem detectadas os critérios de detecção das anomalias estão descaracterizados. É de salientar que apesar de o programa detectar anomalias segundo certos critérios, estes são independentes de alguns factores relevantes para essa detecção, tais como a idade do paciente e antecedentes. Desta forma a detecção de anomalias não podes ser encarada como uma certeza mas sim como um aviso para uma possível anomalia. Apesar de o programa desenvolvido produzir bons resultados, é possível melhorá-lo. Mais precisamente, podem-se introduzir melhorias nos algoritmos desenvolvidos, quer na segmentação (melhorar a detecção da onda P usando outro tipo de ferramentas tais como Wavelets) quer na detecção de anomalias (melhorar os critérios de detecção e detectar outros tipos de anomalias). Outro aspecto que melhoraria os resultados seria aumentar a frequência de amostragem, o que possibilitaria a existência de um maior número de amostras em cada segmento do ECG. O aumento da frequência de amostragem além de melhorar a definição do ECG permitia também ter limites mais precisos para a detecção de anomalias. 41
42
Anexo A - Datasheet do circuito integrado AD620 43
Low Cost Low Power Instrumentation Amplifier AD620 FEATURES Easy to use Gain set with one external resistor (Gain range 1 to 10,000) Wide power supply range (±2.3 V to ±18 V) Higher performance than 3 op amp IA designs Available in 8-lead DIP and SOIC packaging Low power, 1.3 ma max supply current Excellent dc performance (B grade) 50 µv max, input offset voltage 0.6 µv/ C max, input offset drift 1.0 na max, input bias current 100 db min common-mode rejection ratio (G = 10) Low noise 9 nv/ Hz @ 1 khz, input voltage noise 0.28 µv p-p noise (0.1 Hz to 10 Hz) Excellent ac specifications 120 khz bandwidth (G = 100) 15 µs settling time to 0.01% APPLICATIONS Weigh scales ECG and medical instrumentation Transducer interface Data acquisition systems Industrial process controls Battery-powered and portable equipment CONNECTION DIAGRAM R G IN +IN V S 1 2 3 4 AD620 TOP VIEW 8 7 6 5 R G +V S OUTPUT REF Figure 1. 8-Lead PDIP (N), CERDIP (Q), and SOIC (R) Packages PRODUCT DESCRIPTION The AD620 is a low cost, high accuracy instrumentation amplifier that requires only one external resistor to set gains of 1 to 10,000. Furthermore, the AD620 features 8-lead SOIC and DIP packaging that is smaller than discrete designs and offers lower power (only 1.3 ma max supply current), making it a good fit for battery-powered, portable (or remote) applications. The AD620, with its high accuracy of 40 ppm maximum nonlinearity, low offset voltage of 50 µv max, and offset drift of 0.6 µv/ C max, is ideal for use in precision data acquisition systems, such as weigh scales and transducer interfaces. Furthermore, the low noise, low input bias current, and low power of the AD620 make it well suited for medical applications, such as ECG and noninvasive blood pressure monitors. The low input bias current of 1.0 na max is made possible with the use of Superϐeta processing in the input stage. The AD620 works well as a preamplifier due to its low input voltage noise of 9 nv/ Hz at 1 khz, 0.28 µv p-p in the 0.1 Hz to 10 Hz band, and 0.1 pa/ Hz input current noise. Also, the AD620 is well suited for multiplexed applications with its settling time of 15 µs to 0.01%, and its cost is low enough to enable designs with one in-amp per channel. 00775-0-001 30,000 10,000 TOTAL ERROR, PPM OF FULL SCALE 25,000 20,000 15,000 10,000 5,000 R G AD620A 3 OP AMP IN-AMP (3 OP-07s) RTI VOLTAGE NOISE (0.1 10Hz) (µv p-p) 1,000 100 10 1 G = 100 TYPICAL STANDARD BIPOLAR INPUT IN-AMP AD620 SUPERβETA BIPOLAR INPUT IN-AMP 0 0 5 10 15 20 SUPPLY CURRENT (ma) 00775-0-002 0.1 1k 10k 100k 1M SOURCE RESISTANCE (Ω) 10M 100M 00775-0-003 Figure 2. Three Op Amp IA Designs vs. AD620 Rev. G Information furnished by Analog Devices is believed to be accurate and reliable. However, no responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other rights of third parties that may result from its use. Specifications subject to change without notice. No license is granted by implication or otherwise under any patent or patent rights of Analog Devices. Trademarks and registered trademarks are the property of their respective owners. Figure 3. Total Voltage Noise vs. Source Resistance One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A. Tel: 781.329.4700 www.analog.com Fax: 781.326.8703 2004 Analog Devices, Inc. All rights reserved.
AD620 TABLE OF CONTENTS Specifications...3 Absolute Maximum Ratings...5 ESD Caution...5 Typical Performance Characteristics...7 Theory of Operation...13 Gain Selection...16 Input and Output Offset Voltage...16 Input Protection...16 RF Interference...16 Common-Mode Rejection...17 Grounding...17 Ground Returns for Input Bias Currents...18 Outline Dimensions...19 Ordering Guide...20 Reference Terminal...16 REVISION HISTORY 12/04 Rev. F to Rev. G Updated Format... Universal Change to Features...1 Change to Product Description...1 Changes to Specifications...3 Added Metallization Photograph...4 Replaced Figure 4-Figure 6...6 Replaced Figure 15...7 Replaced Figure 33...10 Replaced Figure 34 and Figure 35...10 Replaced Figure 37...10 Changes to Table 3...13 Changes to Figure 41 and Figure 42...14 Changes to Figure 43...15 Change to Figure 44...17 Changes to Input Protection section...15 Deleted Figure 9...15 Changes to RF Interference section...15 Edit to Ground Returns for Input Bias Currents section...17 Added AD620CHIPS to Ordering Guide...19 7/03 Data Sheet changed from REV. E to REV. F Edit to FEATURES...1 Changes to SPECIFICATIONS...2 Removed AD620CHIPS from ORDERING GUIDE...4 Removed METALLIZATION PHOTOGRAPH...4 Replaced TPCs 1 3...5 Replaced TPC 12...6 Replaced TPC 30...9 Replaced TPCs 31 and 32...10 Replaced Figure 4...10 Changes to Table I...11 Changes to Figures 6 and 7...12 Changes to Figure 8...13 Edited INPUT PROTECTION section...13 Added new Figure 9...13 Changes to RF INTERFACE section...14 Edit to GROUND RETURNS FOR INPUT BIAS CURRENTS section...15 Updated OUTLINE DIMENSIONS...16 Rev. G Page 2 of 20
AD620 SPECIFICATIONS Typical @ 25 C, VS = ±15 V, and RL = 2 kω, unless otherwise noted. Table 1. AD620A AD620B AD620S 1 Parameter Conditions Min Typ Max Min Typ Max Min Typ Max Unit GAIN G = 1 + (49.4 kω/rg) Gain Range 1 10,000 1 10,000 1 10,000 Gain Error 2 VOUT = ±10 V G = 1 0.03 0.10 0.01 0.02 0.03 0.10 % G = 10 0.15 0.30 0.10 0.15 0.15 0.30 % G = 100 0.15 0.30 0.10 0.15 0.15 0.30 % G = 1000 0.40 0.70 0.35 0.50 0.40 0.70 % Nonlinearity VOUT = 10 V to +10 V G = 1 1000 RL = 10 kω 10 40 10 40 10 40 ppm G = 1 100 RL = 2 kω 10 95 10 95 10 95 ppm Gain vs. Temperature G = 1 10 10 10 ppm/ C Gain >1 2 50 50 50 ppm/ C VOLTAGE OFFSET (Total RTI Error = VOSI + VOSO/G) Input Offset, VOSI VS = ±5 V 30 125 15 50 30 125 µv to ± 15 V Overtemperature VS = ±5 V 185 85 225 µv to ± 15 V Average TC VS = ±5 V 0.3 1.0 0.1 0.6 0.3 1.0 µv/ C to ± 15 V Output Offset, VOSO VS = ±15 V 400 1000 200 500 400 1000 µv VS = ± 5 V 1500 750 1500 µv Overtemperature VS = ±5 V 2000 1000 2000 µv to ± 15 V Average TC VS = ±5 V 5.0 15 2.5 7.0 5.0 15 µv/ C to ± 15 V Offset Referred to the Input vs. Supply (PSR) VS = ±2.3 V to ±18 V G = 1 80 100 80 100 80 100 db G = 10 95 120 100 120 95 120 db G = 100 110 140 120 140 110 140 db G = 1000 110 140 120 140 110 140 db INPUT CURRENT Input Bias Current 0.5 2.0 0.5 1.0 0.5 2 na Overtemperature 2.5 1.5 4 na Average TC 3.0 3.0 8.0 pa/ C Input Offset Current 0.3 1.0 0.3 0.5 0.3 1.0 na Overtemperature 1.5 0.75 2.0 na Average TC 1.5 1.5 8.0 pa/ C INPUT Input Impedance Differential 10 2 10 2 10 2 GΩ_pF Common-Mode 10 2 10 2 10 2 GΩ_pF Input Voltage Range 3 VS = ±2.3 V VS + 1.9 +VS 1.2 VS + 1.9 +VS 1.2 VS + 1.9 +VS 1.2 V to ±5 V Overtemperature VS + 2.1 +VS 1.3 VS + 2.1 +VS 1.3 VS + 2.1 +VS 1.3 V VS = ± 5 V VS + 1.9 +VS 1.4 VS + 1.9 +VS 1.4 VS + 1.9 +VS 1.4 V to ±18 V Overtemperature VS + 2.1 +VS 1.4 VS + 2.1 +VS + 2.1 VS + 2.3 +VS 1.4 V Rev. G Page 3 of 20
AD620 AD620A AD620B AD620S 1 Parameter Conditions Min Typ Max Min Typ Max Min Typ Max Unit Common-Mode Rejection Ratio DC to 60 Hz with 1 kω Source Imbalance VCM = 0 V to ± 10 V G = 1 73 90 80 90 73 90 db G = 10 93 110 100 110 93 110 db G = 100 110 130 120 130 110 130 db G = 1000 110 130 120 130 110 130 db OUTPUT Output Swing RL = 10 kω VS = ±2.3 V to ± 5 V VS + +VS 1.2 VS + 1.1 +VS 1.2 VS + 1.1 +VS 1.2 V 1.1 Overtemperature VS + 1.4 +VS 1.3 VS + 1.4 +VS 1.3 VS + 1.6 +VS 1.3 V VS = ±5 V VS + 1.2 +VS 1.4 VS + 1.2 +VS 1.4 VS + 1.2 +VS 1.4 V to ± 18 V Overtemperature VS + 1.6 +VS 1.5 VS + 1.6 +VS 1.5 VS + 2.3 +VS 1.5 V Short Circuit Current ±18 ±18 ±18 ma DYNAMIC RESPONSE Small Signal 3 db Bandwidth G = 1 1000 1000 1000 khz G = 10 800 800 800 khz G = 100 120 120 120 khz G = 1000 12 12 12 khz Slew Rate 0.75 1.2 0.75 1.2 0.75 1.2 V/µs Settling Time to 0.01% 10 V Step G = 1 100 15 15 15 µs G = 1000 150 150 150 µs NOISE Voltage Noise, 1 khz 2 Total RTI Noise = ( e ni ) + ( e 2 / G) no Input, Voltage Noise, eni 9 13 9 13 9 13 nv/ Hz Output, Voltage Noise, eno 72 100 72 100 72 100 nv/ Hz RTI, 0.1 Hz to 10 Hz G = 1 3.0 3.0 6.0 3.0 6.0 µv p-p G = 10 0.55 0.55 0.8 0.55 0.8 µv p-p G = 100 1000 0.28 0.28 0.4 0.28 0.4 µv p-p Current Noise f = 1 khz 100 100 100 fa/ Hz 0.1 Hz to 10 Hz 10 10 10 pa p-p REFERENCE INPUT RIN 20 20 20 kω IIN VIN+, VREF = 0 50 60 50 60 50 60 µa Voltage Range VS + 1.6 +VS 1.6 VS + 1.6 +VS 1.6 VS + 1.6 +VS 1.6 V Gain to Output 1 ± 0.0001 1 ± 0.0001 1 ± 0.0001 POWER SUPPLY Operating Range 4 ±2.3 ±18 ±2.3 ±18 ±2.3 ±18 V Quiescent Current VS = ±2.3 V 0.9 1.3 0.9 1.3 0.9 1.3 ma to ±18 V Overtemperature 1.1 1.6 1.1 1.6 1.1 1.6 ma TEMPERATURE RANGE For Specified Performance 40 to +85 40 to +85 55 to +125 C 1 See Analog Devices military data sheet for 883B tested specifications. 2 Does not include effects of external resistor RG. 3 One input grounded. G = 1. 4 This is defined as the same supply range that is used to specify PSR. Rev. G Page 4 of 20
AD620 ABSOLUTE MAXIMUM RATINGS Table 2. Parameter Rating Supply Voltage ±18 V Internal Power Dissipation 1 650 mw Input Voltage (Common-Mode) ±VS Differential Input Voltage 25 V Output Short-Circuit Duration Indefinite Storage Temperature Range (Q) 65 C to +150 C Storage Temperature Range (N, R) 65 C to +125 C Operating Temperature Range AD620 (A, B) 40 C to +85 C AD620 (S) 55 C to +125 C Lead Temperature Range (Soldering 10 seconds) 300 C Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only; functional operation of the device at these or any other condition s above those indicated in the operational section of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. 1 Specification is for device in free air: 8-Lead Plastic Package: θja = 95 C 8-Lead CERDIP Package: θja = 110 C 8-Lead SOIC Package: θja = 155 C ESD CAUTION ESD (electrostatic discharge) sensitive device. Electrostatic charges as high as 4000 V readily accumulate on the human body and test equipment and can discharge without detection. Although this product features proprietary ESD protection circuitry, permanent damage may occur on devices subjected to high energy electrostatic discharges. Therefore, proper ESD precautions are recommended to avoid performance degradation or loss of functionality. Rev. G Page 5 of 20
AD620 00775-0-004 Figure 4. Metallization Photograph. Dimensions shown in inches and (mm). Contact sales for latest dimensions. Rev. G Page 6 of 20
AD620 TYPICAL PERFORMANCE CHARACTERISTICS (@ 25 C, VS = ±15 V, RL = 2 kω, unless otherwise noted.) 50 2.0 SAMPLE SIZE = 360 1.5 PERCENTAGE OF UNITS 40 30 20 10 INPUT BIAS CURRENT (na) 1.0 0.5 0 0.5 1.0 I B +I B 1.5 0 80 40 0 40 80 INPUT OFFSET VOLTAGE (µv) 00775-0-005 2.0 75 25 25 75 TEMPERATURE ( C) 125 175 00775-0-008 Figure 5. Typical Distribution of Input Offset Voltage Figure 8. Input Bias Current vs. Temperature 50 2.0 SAMPLE SIZE = 850 PERCENTAGE OF UNITS 40 30 20 10 CHANGE IN OFFSET VOLTAGE (µv) 1.5 1.0 0.5 0 1200 600 0 600 1200 INPUT BIAS CURRENT (pa) 00775-0-006 0 0 1 2 3 4 5 WARM-UP TIME (Minutes) 00775-0-009 Figure 6. Typical Distribution of Input Bias Current Figure 9. Change in Input Offset Voltage vs. Warm-Up Time 50 1000 SAMPLE SIZE = 850 40 GAIN = 1 PERCENTAGE OF UNITS 30 20 10 0 400 200 0 200 400 INPUT OFFSET CURRENT (pa) 00775-0-007 VOLTAGE NOISE (nv/ Hz) 100 10 GAIN = 100, 1,000 GAIN = 10 GAIN = 1000 BW LIMIT 1 1 10 100 1k 10k 100k FREQUENCY (Hz) 00775-0-010 Figure 7. Typical Distribution of Input Offset Current Figure 10. Voltage Noise Spectral Density vs. Frequency (G = 1 1000) Rev. G Page 7 of 20
AD620 1000 CURRENT NOISE (fa/ Hz) 100 10 1 10 100 1000 FREQUENCY (Hz) 00775-0-011 00775-0-014 Figure 11. Current Noise Spectral Density vs. Frequency Figure 14. 0.1 Hz to 10 Hz Current Noise, 5 pa/div 100,000 RTI NOISE (2.0µV/DIV) TIME (1 SEC/DIV) 00775-0-012 TOTAL DRIFT FROM 25 C TO 85 C, RTI (µv) 10,000 1000 100 FET INPUT IN-AMP AD620A 10 1k 10k 100k 1M 10M SOURCE RESISTANCE (Ω) 00775-0-015 Figure 12. 0.1 Hz to 10 Hz RTI Voltage Noise (G = 1) Figure 15. Total Drift vs. Source Resistance 160 140 G = 1000 120 G = 100 RTI NOISE (0.1µV/DIV) CMR (db) 100 80 60 G = 10 G = 1 40 TIME (1 SEC/DIV) 00775-0-013 20 0 0.1 1 10 100 1k FREQUENCY (Hz) 10k 100k 1M 00775-0-016 Figure 13. 0.1 Hz to 10 Hz RTI Voltage Noise (G = 1000) Figure 16. Typical CMR vs. Frequency, RTI, Zero to 1 kω Source Imbalance Rev. G Page 8 of 20
AD620 180 160 35 30 G = 10, 100, 1000 PSR (db) 140 120 100 80 60 G = 1000 G = 100 G = 10 OUTPUT VOLTAGE (V p-p) 25 20 15 10 G = 1 BW LIMIT 40 G = 1 5 G = 1000 G = 100 20 0.1 1 10 100 1k FREQUENCY (Hz) 10k 100k 1M 00775-0-017 0 1k 10k 100k FREQUENCY (Hz) 1M 00775-0-020 Figure 17. Positive PSR vs. Frequency, RTI (G = 1 1000) Figure 20. Large Signal Frequency Response 180 +V S 0.0 PSR (db) 160 140 120 100 80 60 40 20 0.1 1 10 100 1k FREQUENCY (Hz) 10k G = 1000 G = 100 G = 10 G = 1 100k 1M 00775-0-018 INPUT VOLTAGE LIMIT (V) (REFERRED TO SUPPLY VOLTAGES) 0.5 1.0 1.5 +1.5 +1.0 +0.5 V S +0.0 0 5 10 SUPPLY VOLTAGE ± Volts 15 20 00775-0-021 Figure 18. Negative PSR vs. Frequency, RTI (G = 1 1000) Figure 21. Input Voltage Range vs. Supply Voltage, G = 1 1000 +V S 0.0 0.5 GAIN (V/V) 100 10 1 OUTPUT VOLTAGE SWING (V) (REFERRED TO SUPPLY VOLTAGES) 1.0 1.5 +1.5 +1.0 +0.5 R L = 10kΩ R L = 2kΩ R L = 2kΩ R L = 10kΩ 0.1 100 1k 10k 100k 1M 10M FREQUENCY (Hz) 00775-0-019 V S +0.0 0 5 10 SUPPLY VOLTAGE ± Volts 15 20 00775-0-022 Figure 19. Gain vs. Frequency Figure 22. Output Voltage Swing vs. Supply Voltage, G = 10 Rev. G Page 9 of 20
AD620 30 OUTPUT VOLTAGE SWING (V p-p) 20 10 V S = ±15V G = 10 0 0 100 1k 10k LOAD RESISTANCE (Ω) 00775-0-023............ 00775-0-026 Figure 23. Output Voltage Swing vs. Load Resistance Figure 26. Large Signal Response and Settling Time, G = 10 (0.5 mv = 0.01%).................. 00775-0-024 Figure 24. Large Signal Pulse Response and Settling Time G = 1 (0.5 mv = 0.01%)............ 00775-0-025 00775-0-027 Figure 27. Small Signal Response, G = 10, RL = 2 kω, CL = 100 pf...... 00775-0-030 Figure 25. Small Signal Response, G = 1, RL = 2 kω, CL = 100 pf Figure 28. Large Signal Response and Settling Time, G = 100 (0.5 mv = 0.01%) Rev. G Page 10 of 20
AD620 20.................. SETTLING TIME (µs) 15 10 5 TO 0.01% TO 0.1% 00775-0-029 0 0 5 10 15 2 0 OUTPUT STEP SIZE (V) 00775-0-032 Figure 29. Small Signal Pulse Response, G = 100, RL = 2 kω, CL = 100 pf Figure 32. Settling Time vs. Step Size (G = 1) 1000...... SETTLING TIME (µs) Figure 30. Large Signal Response and Settling Time, G = 1000 (0.5 mv = 0.01% ) 00775-0-030.................. 00775-0-031 100 10 1 1 10 100 1000 GAIN Figure 33. Settling Time to 0.01% vs. Gain, for a 10 V Step 00775-0-033...... 00775-0-034 Figure 31. Small Signal Pulse Response, G = 1000, RL = 2 kω, CL = 100 pf Figure 34. Gain Nonlinearity, G = 1, RL = 10 kω (10 µv = 1 ppm) Rev. G Page 11 of 20
AD620...... INPUT 10V p-p 100kΩ 10kΩ * 1kΩ 10T 10kΩ V OUT 11kΩ 1kΩ 100Ω G = 1000 2 1 G=1 +V S 7...... Figure 35. Gain Nonlinearity, G = 100, RL = 10 kω (100 µv = 10 ppm) 00775-0-035 AD620 G=100 G=10 49.9Ω 499Ω 5.49kΩ 8 4 3 V S *ALL RESISTORS 1% TOLERANCE Figure 37. Settling Time Test Circuit 5 6 00775-0-037.................. 00775-0-036 Figure 36. Gain Nonlinearity, G = 1000, RL = 10 kω (1 mv = 100 ppm) Rev. G Page 12 of 20
AD620 THEORY OF OPERATION IN R3 400Ω I1 Q1 20µA V B 20µA C1 A1 R1 GAIN SENSE R G V S R2 A2 C2 GAIN SENSE Q2 I2 10kΩ 10kΩ R4 400Ω 10kΩ A3 Figure 38. Simplified Schematic of AD620 10kΩ +IN OUTPUT The AD620 is a monolithic instrumentation amplifier based on a modification of the classic three op amp approach. Absolute value trimming allows the user to program gain accurately (to 0.15% at G = 100) with only one resistor. Monolithic construction and laser wafer trimming allow the tight matching and tracking of circuit components, thus ensuring the high level of performance inherent in this circuit. REF 00775-0-038 The input transistors Q1 and Q2 provide a single differentialpair bipolar input for high precision (Figure 38), yet offer 10 lower input bias current thanks to Superϐeta processing. Feedback through the Q1-A1-R1 loop and the Q2-A2-R2 loop maintains constant collector current of the input devices Q1 and Q2, thereby impressing the input voltage across the external gain setting resistor RG. This creates a differential gain from the inputs to the A1/A2 outputs given by G = (R1 + R2)/RG + 1. The unity-gain subtractor, A3, removes any common-mode signal, yielding a single-ended output referred to the REF pin potential. The value of RG also determines the transconductance of the preamp stage. As RG is reduced for larger gains, the transconductance increases asymptotically to that of the input transistors. This has three important advantages: (a) Open-loop gain is boosted for increasing programmed gain, thus reducing gain related errors. (b) The gain-bandwidth product (determined by C1 and C2 and the preamp transconductance) increases with programmed gain, thus optimizing frequency response. (c) The input voltage noise is reduced to a value of 9 nv/ Hz, determined mainly by the collector current and base resistance of the input devices. The internal gain resistors, R1 and R2, are trimmed to an absolute value of 24.7 kω, allowing the gain to be programmed accurately with a single external resistor. The gain equation is then 49.4kΩ G = + 1 R G R G 49.4kΩ = G 1 Make vs. Buy: a Typical Bridge Application Error Budget The AD620 offers improved performance over homebrew three op amp IA designs, along with smaller size, fewer components, and 10 lower supply current. In the typical application, shown in Figure 39, a gain of 100 is required to amplify a bridge output of 20 mv full-scale over the industrial temperature range of 40 C to +85 C. Table 3 shows how to calculate the effect various error sources have on circuit accuracy. Rev. G Page 13 of 20
AD620 Regardless of the system in which it is being used, the AD620 provides greater accuracy at low power and price. In simple systems, absolute accuracy and drift errors are by far the most significant contributors to error. In more complex systems with an intelligent processor, an autogain/autozero cycle will remove all absolute accuracy and drift errors, leaving only the resolution errors of gain, nonlinearity, and noise, thus allowing full 14-bit accuracy. Note that for the homebrew circuit, the OP07 specifications for input voltage offset and noise have been multiplied by 2. This is because a three op amp type in-amp has two op amps at its inputs, both contributing to the overall input error. 10V R = 350Ω R = 350Ω R G 499Ω AD620A OP07D 10kΩ** 10kΩ * 10kΩ* REFERENCE 100Ω** 10kΩ** OP07D R = 350Ω R = 350Ω PRECISION BRIDGE TRANSDUCER 00775-0-039 AD620A MONOLITHIC INSTRUMENTATION AMPLIFIER, G = 100 SUPPLY CURRENT = 1.3mA MAX 00775-0-040 OP07D 10kΩ* 10kΩ* "HOMEBREW" IN-AMP, G = 100 *0.02% RESISTOR MATCH, 3ppm/ C TRACKING **DISCRETE 1% RESISTOR, 100ppm/ C TRACKING SUPPLY CURRENT = 15mA MAX 00775-0-041 Figure 39. Make vs. Buy Table 3. Make vs. Buy Error Budget Error, ppm of Full Scale Error Source AD620 Circuit Calculation Homebrew Circuit Calculation AD620 Homebrew ABSOLUTE ACCURACY at TA = 25 C Input Offset Voltage, µv 125 µv/20 mv (150 µv 2)/20 mv 6,250 10,607 Output Offset Voltage, µv 1000 µv/100 mv/20 mv ((150 µv 2)/100)/20 mv 500 150 Input Offset Current, na 2 na 350 Ω/20 mv (6 na 350 Ω)/20 mv 18 53 CMR, db 110 db(3.16 ppm) 5 V/20 mv (0.02% Match 5 V)/20 mv/100 791 500 Total Absolute Error 7,559 11,310 DRIFT TO 85 C Gain Drift, ppm/ C (50 ppm + 10 ppm) 60 C 100 ppm/ C Track 60 C 3,600 6,000 Input Offset Voltage Drift, µv/ C 1 µv/ C 60 C/20 mv (2.5 µv/ C 2 60 C)/20 mv 3,000 10,607 Output Offset Voltage Drift, µv/ C 15 µv/ C 60 C/100 mv/20 mv (2.5 µv/ C 2 60 C)/100 mv/20 mv 450 150 Total Drift Error 7,050 16,757 RESOLUTION Gain Nonlinearity, ppm of Full Scale 40 ppm 40 ppm 40 40 Typ 0.1 Hz to 10 Hz Voltage Noise, µv p-p 0.28 µv p-p/20 mv (0.38 µv p-p 2)/20 mv 14 27 Total Resolution Error 54 67 Grand Total Error 14,663 28,134 G = 100, VS = ±15 V. (All errors are min/max and referred to input.) Rev. G Page 14 of 20
AD620 5V 3kΩ 3kΩ 1.7mA 3kΩ 3kΩ G = 100 499Ω 3 8 1 2 1.3mA MAX 7 AD620B 4 5 20kΩ 6 10kΩ 0.10mA 20kΩ AD705 0.6mA MAX REF IN ADC AGND DIGITAL DATA OUTPUT 00775-0-042 Figure 40. A Pressure Monitor Circuit that Operates on a 5 V Single Supply Pressure Measurement Although useful in many bridge applications, such as weigh scales, the AD620 is especially suitable for higher resistance pressure sensors powered at lower voltages where small size and low power become more significant. Figure 40 shows a 3 kω pressure transducer bridge powered from 5 V. In such a circuit, the bridge consumes only 1.7 ma. Adding the AD620 and a buffered voltage divider allows the signal to be conditioned for only 3.8 ma of total supply current. Small size and low cost make the AD620 especially attractive for voltage output pressure transducers. Since it delivers low noise and drift, it will also serve applications such as diagnostic noninvasive blood pressure measurement. Medical ECG The low current noise of the AD620 allows its use in ECG monitors (Figure 41) where high source resistances of 1 MΩ or higher are not uncommon. The AD620 s low power, low supply voltage requirements, and space-saving 8-lead mini-dip and SOIC package offerings make it an excellent choice for batterypowered data recorders. Furthermore, the low bias currents and low current noise, coupled with the low voltage noise of the AD620, improve the dynamic range for better performance. The value of capacitor C1 is chosen to maintain stability of the right leg drive loop. Proper safeguards, such as isolation, must be added to this circuit to protect the patient from possible harm. PATIENT/CIRCUIT PROTECTION/ISOLATION +3V C1 R4 1MΩ R1 10kΩ R3 24.9kΩ R2 24.9kΩ R G 8.25kΩ AD620A G = 7 0.03Hz HIGH- PASS FILTER G = 143 OUTPUT AMPLIFIER OUTPUT 1V/mV AD705J 3V 00775-0-043 Figure 41. A Medical ECG Monitor Circuit Rev. G Page 15 of 20
AD620 Precision V-I Converter The AD620, along with another op amp and two resistors, makes a precision current source (Figure 42). The op amp buffers the reference terminal to maintain good CMR. The output voltage, VX, of the AD620 appears across R1, which converts it to a current. This current, less only the input bias current of the op amp, then flows out to the load. V IN+ V IN R G 3 7 8 1 2 +V S AD620 V S Vx I L = R1 = [(V IN+ ) (V IN )] G R1 4 5 6 AD705 + V X R1 LOAD Figure 42. Precision Voltage-to-Current Converter (Operates on 1.8 ma, ±3 V) GAIN SELECTION The AD620 s gain is resistor-programmed by RG, or more precisely, by whatever impedance appears between Pins 1 and 8. The AD620 is designed to offer accurate gains using 0.1% to 1% resistors. Table 4 shows required values of RG for various gains. Note that for G = 1, the RG pins are unconnected (RG = ). For any arbitrary gain, RG can be calculated by using the formula: R G 49.4kΩ = G 1 To minimize gain error, avoid high parasitic resistance in series with RG; to minimize gain drift, RG should have a low TC less than 10 ppm/ C for the best performance. Table 4. Required Values of Gain Resistors 1% Std Table Value of RG(Ω) Calculated Gain 0.1% Std Table Value of RG(Ω ) I L 00775-0-044 Calculated Gain 49.9 k 1.990 49.3 k 2.002 12.4 k 4.984 12.4 k 4.984 5.49 k 9.998 5.49 k 9.998 2.61 k 19.93 2.61 k 19.93 1.00 k 50.40 1.01 k 49.91 499 100.0 499 100.0 249 199.4 249 199.4 100 495.0 98.8 501.0 49.9 991.0 49.3 1,003.0 INPUT AND OUTPUT OFFSET VOLTAGE The low errors of the AD620 are attributed to two sources, input and output errors. The output error is divided by G when referred to the input. In practice, the input errors dominate at high gains, and the output errors dominate at low gains. The total VOS for a given gain is calculated as Total Error RTI = input error + (output error/g) Total Error RTO = (input error G) + output error REFERENCE TERMINAL The reference terminal potential defines the zero output voltage and is especially useful when the load does not share a precise ground with the rest of the system. It provides a direct means of injecting a precise offset to the output, with an allowable range of 2 V within the supply voltages. Parasitic resistance should be kept to a minimum for optimum CMR. INPUT PROTECTION The AD620 features 400 Ω of series thin film resistance at its inputs and will safely withstand input overloads of up to ±15 V or ±60 ma for several hours. This is true for all gains and power on and off, which is particularly important since the signal source and amplifier may be powered separately. For longer time periods, the current should not exceed 6 ma (IIN VIN/400 Ω). For input overloads beyond the supplies, clamping the inputs to the supplies (using a low leakage diode such as an FD333) will reduce the required resistance, yielding lower noise. RF INTERFERENCE All instrumentation amplifiers rectify small out of band signals. The disturbance may appear as a small dc voltage offset. High frequency signals can be filtered with a low pass R-C network placed at the input of the instrumentation amplifier. Figure 43 demonstrates such a configuration. The filter limits the input signal according to the following relationship: FilterFreq FilterFreq DIFF CM where CD 10CC. 1 = 2πR(2C 1 = 2 πrc C D + C CD affects the difference signal. CC affects the common-mode signal. Any mismatch in R CC will degrade the AD620 s CMRR. To avoid inadvertently reducing CMRR-bandwidth performance, make sure that CC is at least one magnitude smaller than CD. The effect of mismatched CCs is reduced with a larger CD:CC ratio. C ) Rev. G Page 16 of 20
AD620 +15V 0.1µ F 10µ F INPUT +V S R R C C C D C C 499Ω +IN IN + AD620 REF V OUT 100Ω 100Ω AD648 V S R G AD620 REFERENCE V OUT 0.1µ F 10µ F 15V Figure 43. Circuit to Attenuate RF Interference COMMON-MODE REJECTION Instrumentation amplifiers, such as the AD620, offer high CMR, which is a measure of the change in output voltage when both inputs are changed by equal amounts. These specifications are usually given for a full-range input voltage change and a specified source imbalance. For optimal CMR, the reference terminal should be tied to a low impedance point, and differences in capacitance and resistance should be kept to a minimum between the two inputs. In many applications, shielded cables are used to minimize noise; for best CMR over frequency, the shield should be properly driven. Figure 44 and Figure 45 show active data guards that are configured to improve ac common-mode rejections by bootstrapping the capacitances of input cable shields, thus minimizing the capacitance mismatch between the inputs. 00775-0-045 100Ω GROUNDING + INPUT V S Figure 44. Differential Shield Driver INPUT AD548 + INPUT R G 2 R G 2 +V S AD620 V S Figure 45. Common-Mode Shield Driver REFERENCE V OUT Since the AD620 output voltage is developed with respect to the potential on the reference terminal, it can solve many grounding problems by simply tying the REF pin to the appropriate local ground. To isolate low level analog signals from a noisy digital environment, many data-acquisition components have separate analog and digital ground pins (Figure 46). It would be convenient to use a single ground line; however, current through ground wires and PC runs of the circuit card can cause hundreds of millivolts of error. Therefore, separate ground returns should be provided to minimize the current flow from the sensitive points to the system ground. These ground returns must be tied together at some point, usually best at the ADC package shown in Figure 46. 00775-0-046 00775-0-047 ANALOG P.S. +15V C 15V DIGITAL P.S. C +5V 0.1µ F 0.1µ F 1µF 1µF 1µF + AD620 AD585 S/H AD574A ADC DIGITAL DATA OUTPUT 00775-0-048 Figure 46. Basic Grounding Practice Rev. G Page 17 of 20
AD620 GROUND RETURNS FOR INPUT BIAS CURRENTS Input bias currents are those currents necessary to bias the input transistors of an amplifier. There must be a direct return path for these currents. Therefore, when amplifying floating input sources, such as transformers or ac-coupled sources, there must be a dc path from each input to ground, as shown in Figure 47, Figure 48, and Figure 49. Refer to A Designer s Guide to Instrumentation Amplifiers (free from Analog Devices) for more information regarding in-amp applications. INPUT + INPUT R G +V S AD620 V S REFERENCE LOAD V OUT INPUT +V S TO POWER SUPPLY GROUND Figure 48. Ground Returns for Bias Currents with Thermocouple Inputs 00775-0-050 R G AD620 V OUT LOAD INPUT +V S + INPUT REFERENCE V S R G AD620 V OUT TO POWER SUPPLY GROUND 00775-0-049 LOAD Figure 47. Ground Returns for Bias Currents with Transformer-Coupled Inputs 100kΩ + INPUT 100kΩ V S REFERENCE TO POWER SUPPLY GROUND Figure 49. Ground Returns for Bias Currents with AC-Coupled Inputs 00775-0-051 Rev. G Page 18 of 20
AD620 OUTLINE DIMENSIONS PIN 1 0.210 (5.33) MAX 0.150 (3.81) 0.130 (3.30) 0.115 (2.92) 0.022 (0.56) 0.018 (0.46) 0.014 (0.36) 0.400 (10.16) 0.365 (9.27) 0.355 (9.02) 8 1 0.100 (2.54) BSC 0.070 (1.78) 0.060 (1.52) 0.045 (1.14) 5 0.280 (7.11) 0.250 (6.35) 4 0.240 (6.10) 0.015 (0.38) MIN SEATING PLANE 0.005 (0.13) MIN 0.060 (1.52) MAX 0.015 (0.38) GAUGE PLANE 0.325 (8.26) 0.310 (7.87) 0.300 (7.62) 0.430 (10.92) MAX COMPLIANT TO JEDEC STANDARDS MS-001-BA CONTROLLING DIMENSIONS ARE IN INCHES; MILLIMETER DIMENSIONS (IN PARENTHESES) ARE ROUNDED-OFF INCH EQUIVALENTS FOR REFERENCE ONLY AND ARE NOT APPROPRIATE FOR USE IN DESIGN. CORNER LEADS MAY BE CONFIGURED AS WHOLE OR HALF LEADS. Figure 50. 8-Lead Plastic Dual In-Line Package [PDIP] Narrow Body (N-8). Dimensions shown in inches and (millimeters) 0.195 (4.95) 0.130 (3.30) 0.115 (2.92) 0.014 (0.36) 0.010 (0.25) 0.008 (0.20) 4.00 (0.1574) 3.80 (0.1497) 0.25 (0.0098) 0.10 (0.0040) COPLANARITY 0.10 5.00 (0.1968) 4.80 (0.1890) 8 5 1 SEATING PLANE 4 1.27 (0.0500) BSC 6.20 (0.2440) 5.80 (0.2284) 1.75 (0.0688) 1.35 (0.0532) 0.51 (0.0201) 0.31 (0.0122) 0.25 (0.0098) 0.17 (0.0067) 0.50 (0.0196) 0.25 (0.0099) 45 1.27 (0.0500) 0.40 (0.0157) COMPLIANT TO JEDEC STANDARDS MS-012AA CONTROLLING DIMENSIONS ARE IN MILLIMETERS; INCH DIMENSIONS (IN PARENTHESES) ARE ROUNDED-OFF MILLIMETER EQUIVALENTS FOR REFERENCE ONLY AND ARE NOT APPROPRIATE FOR USE IN DESIGN 8 0 Figure 52. 8-Lead Standard Small Outline Package [SOIC] Narrow Body (R-8) Dimensions shown in millimeters and (inches) 0.005 (0.13) MIN 0.055 (1.40) MAX PIN 1 8 5 1 4 0.310 (7.87) 0.220 (5.59) 0.200 (5.08) MAX 0.200 (5.08) 0.125 (3.18) 0.023 (0.58) 0.014 (0.36) 0.100 (2.54) BSC 0.405 (10.29) MAX 0.070 (1.78) 0.030 (0.76) 0.060 (1.52) 0.015 (0.38) 0.150 (3.81) MIN SEATING PLANE CONTROLLING DIMENSIONS ARE IN INCHES; MILLIMETER DIMENSIONS (IN PARENTHESES) ARE ROUNDED-OFF INCH EQUIVALENTS FOR REFERENCE ONLY AND ARE NOT APPROPRIATE FOR USE IN DESIGN 15 0 0.320 (8.13) 0.290 (7.37) 0.015 (0.38) 0.008 (0.20) Figure 51. 8-Lead Ceramic Dual In-Line Package [CERDIP] (Q-8) Dimensions shown in inches and (millimeters) Rev. G Page 19 of 20
AD620 ORDERING GUIDE Model Temperature Range Package Option 1 AD620AN 40 C to +85 C N-8 AD620ANZ 2 40 C to +85 C N-8 AD620BN 40 C to +85 C N-8 AD620BNZ 2 40 C to +85 C N-8 AD620AR 40 C to +85 C R-8 AD620ARZ 2 40 C to +85 C R-8 AD620AR-REEL 40 C to +85 C 13" REEL AD620ARZ-REEL 2 40 C to +85 C 13" REEL AD620AR-REEL7 40 C to +85 C 7" REEL AD620ARZ-REEL7 2 40 C to +85 C 7" REEL AD620BR 40 C to +85 C R-8 AD620BRZ 2 40 C to +85 C R-8 AD620BR-REEL 40 C to +85 C 13" REEL AD620BRZ-RL 2 40 C to +85 C 13" REEL AD620BR-REEL7 40 C to +85 C 7" REEL AD620BRZ-R7 2 40 C to +85 C 7" REEL AD620ACHIPS 40 C to +85 C Die Form AD620SQ/883B 55 C to +125 C Q-8 1 N = Plastic DIP; Q = CERDIP; R = SOIC. 2 Z = Pb-free part. 2004 Analog Devices, Inc. All rights reserved. Trademarks and registered trademarks are the property of their respective owners. C00775 0 12/04(G) Rev. G Page 20 of 20
64
Anexo B - Esquema da placa de aquisição Fig. B.1 - Esquema da placa de aquisição. 65
66
Anexo C - Variáveis utilizadas na detecção de anomalias segmento Tab. C.1 Variáveis utilizadas na detecção de anomalias. Nome Tipo Função int novo_qrs bool ON novo QRS detectado. novo_p bool ON nova onda P detectada. novo_t bool ON nova onda T detectada. flag_qrs_ausente bool ON QRS ausente. flag_p_ausente bool ON onda P ausente. flag_t_ausente bool ON onda T ausente. Indica quantas ondas já foram detectadas, para se poder analisar um segmento inteiro. ON despreza-se a onda P detectada, pois não se detectou depreza_p bool QRS. ON auxiliar para a manipulação dos vectores que indica QRS_passou99 bool que já foram detectadas mais de 99 QRS. ON auxiliar para a manipulação dos vectores que indica P_passou100 bool que já foram detectadas mais de 100 P. ON auxiliar para a manipulação dos vectores que indica T_passou100 bool que já foram detectadas mais de 100 T. ON ritmo do complexo que está a ser analisado é inferior à flag_ritmo_pequeno bool média dos ritmos já analisados com uma margem de 15%. ON ritmo do complexo que está a ser analisado é superior à flag_ritmo_grande bool média dos ritmos já analisados com uma margem de 15%. ON ritmo do complexo que está a ser analisado é inferior a flag_ritmo60 bool 60 bpm. ON ritmo do complexo que está a ser analisado é superior a flag_ritmo100 bool 100 bpm. ON ritmo do complexo que está a ser analisado é superior ritmo_subir bool ao ritmo anterior. ON ritmo do complexo que está a ser analisado é inferior ritmo_descer bool ao ritmo anterior. Conta o número de passagens entre pequenas arritmias counter_ritmo_variante int inferior e superior à média dos ritmos mais 15% (é inicializada quando detectada a anomalia). 1ª coluna - instante em o ritmo analisado é inferior à média vector dos ritmo mais 15%; ritmo_variante float 2ª coluna - instante em o ritmo analisado é superior à média dos ritmo mais 15%. ON quando as passagens entre pequenas arritmias ocorrem flag_ritmo_variante bool num intervalo de 10seg. flag_qrs_largo bool ON duração do QRS igual ou superior a 0,12 seg. ON intervalo entre o QRS analisado e o anterior superior a flag_qrs_bloqueio bool duas vezes a média dos intervalos com uma margem de 5%. ON duração do QRS inferior a 0,06 seg ou superior a 0,1 flag_qrs_n_normal bool seg. 67
Tab. C.1 (cont.) Variáveis utilizadas na detecção de anomalias. flag_qrs_duracao bool ON duração do QRS que está a ser analisado é superior à média das durações já analisadas com uma margem de 10%. flag_qrs_intervalo_grande bool ON intervalo entre o QRS analisado e o anterior superior a (1,5 x média dos intervalos). flag_p_n_normal bool ON duração da onda P inferior a 0,06 seg ou superior a 0,1 seg. flag_p_duracao bool ON duração da onda P superior a 0,12 seg. flag_p_alta bool ON amplitude da onda P superior a 15% da amplitude do QRS. flag_p_varias bool ON existência de várias ondas P entre complexos QRS. flag_t_duracao bool ON duração da onda T que está a ser analisada é superior à média das durações já analisadas com uma margem de 15%. flag_t_invertida bool ON polarização da onda T invertida. counter_inversoest int Incrementado sempre que existe inversão da polarização da onda T, em relação à onda T anterior. flag_t_ninv_inv bool ON sequência de inversões da polarização da onda T. flag_pp bool ON intervalo entre ondas P é superior à média dos intervalos já analisados com uma margem de 10%. flag_pr_menor bool ON intervalo entre o início da onda P e o início do complexo QRS é inferior a 0,12 seg. flag_pr_maior bool ON intervalo entre o início da onda P e o início do complexo QRS é superior a 0,22 seg. PR_aumentar int Incrementado sempre que o intervalo PR é superior ao anterior e reinicializado caso contrário. flag_qt bool ON intervalo entre o início do complexo QRS e o fim da onda T é superior a 0,44 seg. No instante em que se está a analisar um segmento, guarda-se AV2II esse tempo caso o intervalo PR seja considerado normal e: vector 1ª coluna flag_qrs_n_normal activa; float 2ª coluna flag_qrs_duracção activa; 3ª coluna flag_ritmo_pequeno ou flag_ritmo_grande activa. FA vector float No instante em que se está a analisar um segmento, guarda-se esse tempo caso: 1ª coluna flag_qrs_n_normal activa; 2ª coluna flag_ritmo_variante activa; 3ª coluna flag_p_ausente activa. 68
Referências [1] Okada, M., A Digital Filter for the QRS Complex Detection, IEEE Transactions on Biomedical Engineering, Vol. 26, Nº 12, Dec. 1979, pp. 700-703. [2] Hamilton, P.S. and Tompkins, W.J., Quantitative Investigation of QRS Detection Rules using the MIT/BIH Arrhythmia Database, IEEE Transactions on Biomedical Engineering, Vol. 33, Nº 12, Dec1986, pp. 1157-1165. [3] Dinh, H.A.N., Kumar, D.K., Pah, N.D. and Burton, P., Wavelets for QRS Detection, Proceedings of the 23 rd Annual International Conference of the IEEE Engineering in Medicine and Biology Society, Vol. 2, Oct 2001, pp. 1883-1887. [4] Kadambe, S.; Murray, R.; Boudreaux-Bartels, G.F., Wavelet Transform-Based QRS Complex Detector, IEEE Transactions on Biomedical Engineering, Vol. 46, Nº 7, July 1999, pp. 838-848. [5] McDarby, G., Celler, B.G. and Lovell, N.H., Characterising the Discrete Wavelet Transform of an ECG Signal with Simple Parameters for use in Automates Diagnosis, Proceedings of the 2 nd International Conference on Bioelectromagnetism, 15-18 Feb. 1998, pp. 31-32. [6] Suppappola, S. and Sun, Y., Nonlinear Transforms in QRS detection algorithms, Proceedings of the 12 th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, 1990, 1-4 Nov. 1990, pp. 815-816. [7] Clifford, G., Tarassenko, L. and Townsend, N., Fusing Conventional ECG QRS Detection Algorithms with an Auto-associative Neural Network for the Detection of Ectopic Beats, 5 th International Conference on Signal Processing Proceedings, WCCC-ICSP 2000, Vol. 3, 21-25 Aug. 2000, pp. 1623-1628. [8] Dayong, G., Madden, M.G., Schukat, M., Chambers, D. and Lyons, G., Arrhythmia identification from ECG signals with a neural network classifier based on a Bayesian framework, Work-in-Progress track of AI-2004, 24 th SGAI International Conference on Innovative Techniques and Applications of Artificial Intelligence, Dec 2004. [9] Suppappola, S. and Sun, Y., A Comparison of Three QRS Algorithms using the AHA ECG Database, Proceedings of the Annual Engineering in Medicine and Biology Society, 1991, Vol. 13, 31 Oct. - 3 Nov. 1991, pp. 586-587. [10] Suppappola, S. and Sun, Y., Nonlinear Transforms of ECG Signals for Digital QRS Detection: A Quantitative Analysis, IEEE Transactions on Biomedical Engineering Vol. 41, Nº 4, April 1994, pp. 397-400. [11] Wagner, G.V., Stork, W., Muller-Glaser, K., Model-based Evaluation of Different QRS Detection Algorithms for Use in Mobile Systems, Biomedizinische Technik, Vol. 48, Nº 1, 2003, pp. 210-211. 69
[12] Chung, E. K., Pocket Guide to ECG Diagnosis, Blackwell Science, USA, 1996. [13] http://www.hu.ufsc.br/~cardiologia/ecgcases.htm [14] http://www.rnceus.com [15] http://medlib.med.utah.edu/kw/ecg 70
Bibliografia Kunzmann, U., von Wagner, G., Schochlin, J., Bolz, A., Parameter Extraction of ECG Signals in Real-Time, Biomedizinische Technik, Vol. 47, Nº 1, 2002, pp. 875-878. Xu, X., Liu, Y., ECG QRS Complex Detection Using Slope Vector Waveform (SVW) th Algorithm, Proceedings of the 26 Annual International Conference of the IEEE EMBS, Vol. 2, Sep. 1-5, 2004, pp. 3597-3600. Johnson, R., Swartz, M. H., Electrocardiografia - Uma Abordagem Simplificada, Editora Guanabara, Brasil, 1988. Electrocardiografia. Goldberger AL, Amaral LAN, Glass L, Hausdorff JM, Ivanov PCh, Mark RG, Mietus JE, Moody GB, Peng CK, Stanley HE. PhysioBank, PhysioToolkit, and PhysioNet: Components of a New Research Resource for Complex Physiologic Signals. Circulation 101(23):e215-e220 [Circulation Electronic Pages; http://circ.ahajournals.org/cgi/content/full/101/23/e215]; 2000 (June 13). http://paginas.terra.com.br/saude/fisioajuda http://www.institutofleury.org.br/site/calandra.nsf/0/b5d69edd12a5de6503256d3200464647?opendocument&pub=t&proj=site_instituto&gen=dg_artigos_tecnicos http://www.medsobral.ufc.br/aulas/s5/cardio http://www.picotech.com/applications/ecg.html http://www.txai.org/edu/irregular/other_atrial.htm http://www.hu.ufsc.br/~cardiologia/ http://www.pucpr.br/saude/laboratorios/lec/body_rit.html http://www.medsobral.ufc.br/aulas/s5/cardio/22 http://www.ecglibrary.com/norm.html http://decs.bvs.br/homepage.htm http://www.ccs.uel.br/medicina/pbl/cardio http://cal.vet.upenn.edu/anestecg/basics/pqrstexp.htm 71