SISTEMA BASEADO EM ELETROOCULOGRAMA PARA CONTROLE DE DISPOSITIVOS COMPUTACIONAIS Leonardo Araújo Lima - Danilo Veloso Daher - Edgard A. Lamounier Jr. - Adriano O. Andrade ([email protected] - [email protected] - [email protected] - [email protected]) Universidade Federal de Uberlândia – Faculdade de Engenharia Elétrica Resumo - Este projeto descreve um método de controle através do olho baseado em eletrooculograma (EOG). O eletrooculograma é um teste que usa eletrodos colocados na pele ao redor dos olhos para medir potencial elétrico entre a retina e a córnea. Os diferentes sinais são obtidos por medida da posição do olho (posição do olho na sua órbita). Esta técnica de controle pode ser útil em várias aplicações, contudo neste projeto ela será usada como um sistema para ajudar pessoas com deficiências graves. A teoria sobre o projeto e a implementação também é apresentada. Palavras-Chave - Deficiência; Eletrooculograma; EOG; Interface Homem-Máquina; Sistema de Controle. ELECTRO-OCULOGRAM BASED SYSTEM FOR COMPUTER DEVICE CONTROL Abstract - This project describes a computer eyecontrol method based on electro-oculogram (EOG). The electro-oculogram is a test that use electrodes placed on the skin around the eyes to measure electrical potential between the retina and cornea. The different signals are made by means of the ocular position (eye displacement into its orbit). This control technique can be useful in many applications, however in this work it will be used as a system to help people with severe disabilities. The theory behind this project and the implementation that will be used is also presented. 1 Keywords - Disabled People; Electrooculogram; EOG; Human-Computer Interface; System Control. 1 PROBLEMATIZAÇÃO A capacidade de comunicação do ser humano com seus semelhantes e o seu ambiente representa uma das necessidades mais básicas da sua existência, com a qual este expressa seus anseios e sua evolução quanto a sua identidade. Perder tal capacidade pela imobilidade de movimentação e expressão, torna a existência de um indivíduo uma tortura, pelo aprisionamento da sua mente em um corpo que passa a ser o seu cativeiro. 1.1 Objetivos O principal objetivo deste projeto é implementar um dispositivo capaz de ajudar pessoas com deficiência grave a usar o computador, em especial aqueles sem movimentos dos membros superiores. É importante salientar que o sistema permitirá a utilização do computador, como os programas de aplicações na internet, leitura de livros, jogos, entre outros. Além disso, a possibilidade de controlar objetos externos, como cadeiras de roda ou eletrodomésticos mais comuns, através do computador é tida em conta. Os movimentos oculares podem ser monitorados pela moderna tecnologia com grande velocidade e precisão, logo isto pode ser usado como um poderoso dispositivo de entrada com diversas aplicações práticas na interação homemcomputador. Este projeto irá utilizar o sinal da eletrooculografia como base para o seu processo de controle. Em outras palavras, o sinal será obtido através da movimentação dos olhos. O sistema irá envolver aquisição e tratamento do sinal e software de controle e avaliação, com o objetivo de treinar o usuário e medir os erros do sistema. Os sinais EOG podem ser identificados como movimento no eixo horizontal (esquerda e direita), e os movimentos no eixo vertical (para cima e para baixo). Existe a possibilidade de executar outras ações, além das mencionadas, através do piscar dos olhos. Assim esse projeto busca fornecer a possibilidade de que pessoas portadoras de necessidades especiais, com tetraplegias, ausência ou alto grau de comprometimento dos membros superiores, doenças degenerativas, dentre outros, possam utilizar um computador. Através do mouse ocular e de um teclado virtual adaptado será possível inserir palavras, frases ou textos, navegar na Web e utilizar diversos softwares. Também possibilitará a seus usuários, o resgate da auto-estima, o aumento da sua autonomia, a reinserção no mercado de trabalho e o retorno aos estudos, proporcionando tanto a sua inclusão social, quanto digital. 1.2 Discussão Há muitas maneiras de avaliar os movimentos dos olhos. Alguns aparelhos podem fornecer um sinal de saída que é proporcional à posição do olho na órbita, e muda quando a posição do olho sofrer alguma mudança. Este sinal pode então ser registrado e analisado para fornecer as informações necessárias as mais diversas finalidades. Inicialmente os problemas de obtenção do movimento dos olhos são discutidos. Dois métodos foram analisados: eletrooculografia e oculografia baseado em infravermelho (imagens dos olhos obtidas através de fonte luminosa de infravermelho). Devido ao fato de existir uma permanente diferença de potencial entre a córnea e o retina de aproximadamente 1mV, pequenas voltagens podem ser verificadas na região ao redor do olho sendo que estas variam de acordo com o posicionamento dos olhos (Figura 1). Eletrooculografia é o método usado para obter esse potencial. Colocando eletrodos de forma cuidadosa é possível obter separadamente movimentos horizontais e verticais. Esta aquisição é dependente do estado de adaptação a luz e é afetado por mudanças metabólicas no olho. Entretanto, este método é mais barato e mais fácil de obter os sinais dos movimentos dos olhos [2]. estes sinais para controle de cadeiras de rodas elétricas dentre outros sistemas. Muitos desses projetos já estão disponíveis comercialmente. Existem alguns artigos internacionais utilizando sinais eletrooculográficos para controle de dispositivos computacionais. Alguns deles são citados nas referências deste trabalho. Há, também, um modelo comercial sendo elaborado pela Digibrás, uma empresa de Manaus, sobre responsabilidade do engenheiro eletrônico Manuel Cardoso com previsão para ser vendido por R$200,00. Contudo este modelo não identifica quantidade de movimento, apenas sentido. Figura 3. Modelo sendo desenvolvido pela empresa Digibrás Figura 1. Exemplo do potencial na região ocular Se uma fonte de luz infravermelha é direcionada para o olho, a quantidade de luz refletida para um sensor varia de acordo com a posição do olho (Figura 2). A luz infravermelha é usada pois é “invisível” para o olho humano e não causa distração. Como os sensores de infravermelho não são influenciados por outras fontes de luz a iluminação ambiente não afeta as medições. Entretanto a medição horizontal é melhor detectada do que a vertical sendo um dos empecilhos do sistema e também o piscar dos olhos acarreta problemas na medição [2]. Uma outra desvantagem desses sistemas é que o módulo (óculos infravermelho) pode atrapalhar a visão do usuário [3]. Figura 2. Esquema de oculografia baseado em infravermelho O sistema de infravermelho apresenta uma implementação mais problemática e relativamente mais cara em relação ao eletrooculograma. Apesar da instabilidade do sinal, o sistema de identificação do movimento dos olhos através de eletrooculografia foi escolhido. 1.3 Estudos e Pesquisas O eletrooculograma é usado a algum tempo como diagnóstico de doenças do sono, mas recentemente ele vem sendo usado para identificação dos movimentos dos olhos. Diversos artigos e pesquisas tratam de coleta, identificação e uso de sinais eletrooculográficos para controle de dispositivos. Muitos trabalhos já foram realizados utilizando 1.4 Eletrooculograma Sinais eletrofisiológicos são fenômenos elétricos relacionados com eventos fisiológicos, como o batimento cardíaco ou a contração muscular. Esses sinais podem ser divididos entre sinais voluntários e sinais involuntários. Dependendo do sinal ou evento de interesse, existem diversos tipos de medidas que podem ser consideradas, como por exemplo o Eletrocardiograma (ECG), o Eletroencefalograma (EEG), o Eletromiograma (EMG) e o Eletrooculograma (EOG). Em termos do projeto, o olho é um dos principais subsistemas do corpo para controle, pois a posição dos olhos está diretamente relacionada com a informação visual de interesse. Utilizando a posição dos olhos, podemos prover um dispositivo muito intuitivo [4]. Sabe-se que o movimento dos olhos é acompanhado de um potencial elétrico que pode ser descrito como um dipolo fixo com a córnea no pólo positivo e a retina no pólo negativo. Tais potenciais são bem estabelecidos e estão na faixa de 0 a 4.0 mV. Os movimentos oculares, assim, produzem um movimento (rotativo) do dipolo e, portanto, sinais que são a medida do movimento podem ser obtidos. Os sinais elétricos gerados pelos movimentos dos olhos, tanto nas direções horizontal e vertical, podem ser medidos por eletrodos. Este método é conhecido como eletrooculografia [5]. A Figura 4 ilustra o posicionamento dos eletrodos. Os sinais do EOG são obtidos pela fixação de dois elétrodos da direita para a esquerda (D - E) para detectar o movimento horizontal e outro de cima para baixo do olho (B - C) para detectar movimentos verticais. O eletrodo de referência é colocado na testa (A). Com os olhos posicionados no centro, os eletrodos possuem, efetivamente, o mesmo potencial e nenhuma tensão é obtida. A rotação dos olhos à direita resulta numa diferença de potencial, com o eletrodo na direção do movimento positivo em relação ao eletrodo contrário (E) (Figura 5). mas também poderá ser abrangida a qualquer pessoa com capacidade para controlar os seus movimentos oculares. 3 METODOLOGIA 3.1. Requisitos do sistema: Figure 4. Posição dos eletrodos EOG • • • • • • • • Deve reconhecer os movimentos verticais e horizontais dos olhos para movimentar o cursor; Deve reconhecer quando o usuário deseja clicar; Deve ter um delay máximo de início do movimento de 500ms (para reconhecer o clique); Delay máximo de 100ms para alterar ou parar o movimento (estabilização do sinal); Deve dar condições de escrever um texto, navegar na internet e utilizar aplicativos simples; Deve ser confortável o suficiente para ser usado durante horas; Não deve confundir movimentos normais com clique nem com movimentação do cursor; O sistema deve permitir a calibração para se adaptar a cada usuário; 3.2. Implementação Figura 5. Sinais (EOG) gerados pelo movimento horizontal dos olhos A eletrooculografia possui vantagens e desvantagens em comparação com outros métodos para determinar o movimento dos olhos. A mais importante desvantagem considerada é o fato de que o potencial da córnea e da retina não é fixo, podendo ser afetado pela luz, fadiga, e outros. Este fato pode ser corrigido via software através de um sistema de calibração. As vantagens desta técnica incluem mínimo desconforto por parte do usuário e baixo custo para implantação [5]. 2 JUSTIFICATIVA Nos últimos anos, houve um grande desenvolvimento em sistemas para auxiliar pessoas com deficiência tendo uma melhoria significativa nos sistemas tradicionais. Além disso, a crescente utilização de computadores, tanto no trabalho quanto no lazer, levou ao desenvolvimento de aplicações associadas ao PC, principalmente usando interfaces gráficas [1]. Os métodos tradicionais utilizados para controle ou comunicação com as máquinas (joystick, mouse ou teclado), que exigem um determinado controle motor por parte dos usuários são substituídos por outros que permitem a sua utilização por pacientes com deficiências graves. Entre esses novos métodos, é necessário mencionar o eletrooculograma, pois o movimento dos olhos tende a ser uma das últimas capacidades motoras em pessoas com deficiências. Com a tecnologia descrita neste projeto, uma pessoa com limitação motora poderá interagir com um sistema de computador de forma mais independente. Além disso, este tipo de interface não será limitada a pessoas com deficiência, 3.2.1. Hardware A Eletrooculografia é realizada por um módulo EOG de aquisição de sinais. O diagrama de blocos do sistema é apresentado abaixo. Sinal EOG Hardware Conversor A/D PC Feed Back Ambiente Visual Figure 6. Diagrama de blocos do sistema de medição do EOG O sistema foi dividido em três etapas para um melhor desenvolvimento devido ao fato que as mesmas possuem configurações e requisitos diferentes. As etapas estão listadas abaixo e são ilustradas no diagrama de blocos subseqüente: • • • Aquisição do sinal Tratamento do sinal e interfaceamento com o pc (módulo EOG) Etapa de software Aquisição do Sinal Módulo EOG PC Figura 7. Diagrama de blocos do sistema O trabalho do hardware do nosso sistema é de fazer a aquisição do sinal elétrico dos eletrodos acoplados na face do usuário e enviar esse sinal ao computador. A maneira que escolhemos para fazer isso é de condicionar o sinal para a entrada de um conversor AD e enviar ao computador através do protocolo USB. Este protocolo foi escolhido devido a suas várias vantagens com relação à porta serial e paralela do computador. Uma das vantagens é que atualmente muitos computadores não vêm mais com as portas paralela e serial, somente USB, ou caso venham já estão sendo utilizada por outro periférico. Como nosso sistema ainda está em desenvolvimento, devemos escolher um padrão que não cairá em desuso num futuro próximo. Além disso, como a porta USB é a mais popular do momento, existe muita documentação a respeito facilitando o trabalho de programação. Cabos, plugs e sockets também são facilmente encontrados no mercado. Para comunicar com o computador através do protocolo USB, escolhemos trabalhar com o microcontrolador PIC 18F4550 da Microchip. Este microcontrolador é muito popular, o que implica grande facilidade na obtenção de documentação e exemplos para interfaceamento e controle. Além disso, o preço é acessível e os integrantes da equipe já são familiarizados com os microcontroladores da família PIC. Sabemos que há muitos ruídos nesse sinal. Por isso decidimos usar um amplificador de instrumentação para amplificar os sinais provenientes dos eletrodos. Utilizaremos ainda um filtro passa-baixa para eliminar ruídos de altas freqüências, e dependendo da alimentação utilizada ruído de 60 Hz da rede elétrica. Como o ganho do amplificador de instrumentação não é suficiente para por o sinal numa faixa bem próxima da faixa de operação do conversor A/D do PIC, incluiremos um outro amplificador. O PIC não trabalha com valores negativos de tensão, então será necessário ainda um somador para por o sinal numa variação em torno de 2,5 V ao invés de ser em torno de 0 V. Um esquema do circuito completo mostrando a “duplicidade do sistema”, devido ao fato de sinais horizontais e verticais exigirem aquisição e tratamento separados, é mostrado na figura seguinte: Figure 9. Componentes do sistema A seguir apresentaremos mais detalhadamente os componentes do circuito. Amplificador de Instrumentação: Figure 8. Diagrama de pinos do PIC18F4550 O sinal eletrooculográfico é basicamente um sinal DC, não exigindo de nosso sistema muitos requisitos de freqüência. Dessa forma optamos por utilizar o conversor AD que já vem integrado no PIC, com tempo de conversão inferior a 2.5 µs. Isso diminui e simplifica o circuito. Como já foi comentado anteriormente, não sabemos ainda, com certeza, qual é a variação de amplitude do sinal obtido, podendo variar bastante de usuário para usuário, mas certamente não ultrapassará os 4000 µV. Este sinal deve ser amplificado no mínimo 500 vezes para se chegar numa variação de ±2V que é próxima à amplitude do conversor AD do PIC (0V a 5V). Nosso sistema terá muito ruído devido à baixa amplitude do sinal (µV), possuir cabos que funcionam como antenas e os eletrodos coletarem sinal eletromiográficos. Logo há a necessidade de um primeiro estágio com rejeição em modo comum. Pedimos sugestões a várias pessoas que já trabalharam com amplificadores operacionais para nos ajudar a escolher um bom amplificador para o nosso sistema. Elas nos sugeriram de utilizar os amplificadores AD620 da Analog Devices ou o INA121 da Texas Instruments. Analisando as características de cada um, optamos pelo AD620, pois tem uma rejeição em modo comum maior que o INA121, a diferença de preço é mínima e é facilmente encontrado no mercado. Decidimos dar um ganho de 100 vezes, pois, segundo o datasheet do fabricante, um ganho de 1000 começa a dar um erro razoável e a CMRR para ganho de 100 é de pelo menos 110 dB. Filtro passa-baixa: Para fazer o filtro passa-baixa, decidimos usar um filtro do tipo Butterworth de 4 pólos. Este filtro serve para eliminar ruídos de alta freqüência como, por exemplo, o ruído causado pela rede elétrica de 60 Hz além de outros ruídos coletados pelo sistema. Como o sinal de eletrooculografia que nos interessa é quase 100% DC, configuramos o filtro para cortar freqüências superiores a 5 Hz. O cálculo dos valores de resistores e capacitores foi feito com a ajuda de um utilitário chamado FilterPro, criado pela Texas Instruments. Os amplificadores operacionais escolhidos foram o LM 741 pois é barato e o nosso sistema não exige muito com relação a freqüência. Um potenciômetro foi acoplado a cada um desses amplificadores para eliminar a tensão de offset. Figure 11. Eletrodo e Presilha do Cabo Amplificador Não-Inversor: O ganho de 100 dado no início pelo amplificador de instrumentação não é suficiente para deixar o sinal numa faixa de variação próxima a faixa de variação de 0-5V do conversor A/D do PIC. Por isso é necessário incluir um segundo estágio de amplificação no sistema. Para isto foi utilizado um Amplificador Não-Inversor construído com LM 741 pelos mesmos motivos listados acima na seção do filtro passa-baixa. Não sabemos ainda se o sinal captado pelos eletrodos terá amplitude máxima de 4 mV, 2 mV ou 1 mV, então construímos um amplificador de ganho ajustável. Ele pode dar ganho de 5, 10 ou 20 vezes, basta alterar os switchs do circuito alterando assim os resistores responsáveis pelo ganho do circuito. A alimentação do sistema será feita por baterias. Essa decisão foi tomada com o intuito de evitar ruídos provenientes da alimentação da rede elétrica. Já a referência do sistema, o terra, será isolada em relação ao terra do conector USB através de um acoplador óptico digital que isolará qualquer contato elétrico entre as duas partes do circuito, o que traz uma maior segurança e proteção ao usuário. Somador: Agora que o sinal se encontra com uma variação de amplitude na faixa de 4 volts pico-a-pico, é necessário eliminar a parte negativa do sinal, pois o conversor A/D do PIC não aceita sinais negativos. Este circuito soma uma tensão DC de 2,5 V fazendo com que o sinal varie entre 0,5 V e 4,5 V, faixa esta ideal para se trabalhar com o conversor. Este Somador foi construído com LM 741 pelos mesmos motivos listados acima na seção do filtro passa-baixa. Para faze de aquisição de sinal foi necessário a escolha dos eletrodos e cabos para coleta. Eletrodos devem ter baixa impedância ao longo de um intervalo freqüência, que inclui de 0 a 10 Hz. Os cabos foram analisados pensando na “isolação” quanto a ruídos, para isto foi escolhido um modelo de cabo com blindagem. Outro detalhe fundamental é que o amplificador de instrumentação deve estar o mais próximo possível dos eletrodos evitando assim uma maior coleta de ruídos. O óleo da pele deve ser limpo com álcool ou com material próprio para limpeza da pele para diminuir ruídos. Uma outra solução para diminuir ruídos é a aplicação de uma pasta condutora [7]. Figura 12. Circuito de aquisição do sinal de um par de eletrodos 3.2.2. Software Para projeto do software foram levantados os seguintes requisitos: • • • • • • Figure 10. Cabo para coleta de sinais eletrofisiológicos O software deve ser capaz de se comunicar com a porta USB e movimentar o cursor de acordo com os dados recebidos; Além disso deve identificar o comando de clique; A interface deve ser um teclado virtual onde o usuário pode digitar um texto utilizando o cursor; Devem conter também atalhos para diversos softwares, como navegador da web, editor de textos, calculadora, entre outros; O software deve permitir que qualquer entrada de texto de qualquer aplicativo possa ser preenchida pelos dados digitados no teclado virtual; A janela do software deve sempre estar à frente das outras janelas dos demais aplicativos; O software deve permitir que haja uma calibração do hardware, para definir o clique e a velocidade de movimentação do cursor; Por fim, o software deve, a partir de um banco de dados de palavras, tentar prever a palavra que está sendo digitada, informando opções para o usuário, a fim de minimizar esforços do usuário; O usuário poderá ou não aceitar uma das opções. Um sistema em tempo real normalmente realiza operações seqüenciais na forma padrão, mas é extremamente importante que também seja capaz de manipular múltiplos eventos ao mesmo tempo ou manipulá-los de forma que o tempo de reação para cada evento seja tolerável para o processo em questão. movimentação dos olhos proporciona um método intuitivo de controle da máquina. Assim, o sistema descrito pode ser utilizado como uma importante ferramenta da comunicação, em particular para aquelas que não são capazes de comunicar por outros meios. 5 REFERÊNCIAS Software 1. Controle Cursor Hardware API USB Controle Teclado Virtual 2. Figura 13. Diagrama de blocos do software A figura 10 representa o diagrama de blocos do software. A API USB é capaz de comunicar com o hardware através da porta USB e receber os dados. Estes dados, que indicam a posição dos olhos nos eixos x e y, são repassados para o módulo de controle do cursor, que irá tratá-los e tomar as decisões. 3. 4. 5. 6. 7. 8. Figura 14. Interface Gráfica 4 CONCLUSÃO Este projeto será desenvolvido para fornecer soluções para necessidades de um importante grupo das pessoas com deficiência e/ou idosos por tentar ajudar aqueles que não podem operar com segurança dispositivos convencionais. O seu objetivo principal é o controle de dispositivos através de eletrooculograma. Existem muitas formas utilizadas para medir os movimentos oculares, alguns são mais precisos do que EOG, porém, a maioria deles são muito mais caros e trazem muito transtorno e sensação de desconforto do usuário. O EOG é o método de baixo custo e fácil de usar [8]. As principais características do eletrooculograma foram mostrados: aquisição e processamento do sinal EOG e suas aplicações em sistemas de apoio às pessoas com deficiência. Um sistema baseado em EOG é proposto e é feito um estudo das suas potencialidades. A utilização da Barea, R., L. Boquete, M. Mazo, and E. López, System for Assisted Mobility Using Eye Movements Based on Electrooculography. IEEE Transactions on Neural Systems and Rehabilitation Engineering, 2002. 10. Stephenson, G., K. Fagan, P. Knox, J. Mehta, F. Rowe, D. Newsham, A. O'Connor, and H. Orton. Methods of measuring eye movements. 2007 [cited; Available from: http://www.liv.ac.uk/~pcknox/teaching/Eymovs/em eth.htm#eog. Hain, T.C. Eye Movement Recording Devices. 2007 [cited; Available from: http://www.dizziness-andbalance.com/practice/eyemove.html. Doyle, T.E., Z. Kucerovsky, and W.D. Greason, Design of an Electroocular Computing Interface. Malmivuo, J. and R. Plonsey, Bioelectromagnetism: Principles and Applications of Bioelectric and Biomagnetic Fields - The Electric Signals Originating in the Eye. 1995, New York: Oxford University Press. Guven, A. and S. Kara, Classification of electrooculogram signals using artificial neural network. Expert Systems with Applications, 2006. 31. Marmor, M.F. and E. Zrenner. International Society for Clinical Electrophysiology of Vision - Standard for Clinical Electro-oculography. [cited; Available from: http://www.iscev.org/standards/eog.html. Ding, Q., K. Tong, and G. Li, Development of an EOG (Electro-Oculography) Based HumanComputer Interface. Engineering in Medicine and Biology, 2005.