Você está na página 1de 200

UNIVERSIDADE ESTADUAL DE CAMPINAS FACULDADE DE ENGENHARIA MECNICA COMISSO DE PS-GRADUAO EM ENGENHARIA MECNICA

Aplicao do Estudo da Interface Homem Mquina em Cadeiras de Rodas Motorizadas

Autor : Paulo Henrique de Arajo Madeira Orientador: Prof. Dr. Giuseppe Franco Dedini

23/2008

UNIVERSIDADE ESTADUAL DE CAMPINAS FACULDADE DE ENGENHARIA MECNICA COMISSO DE PS-GRADUAO EM ENGENHARIA MECNICA DEPARTEMANETO DE PROJETO MECNICO

Aplicao do Estudo da Interface Homem Mquina em Cadeiras de Rodas Motorizadas


Autor : Paulo Henrique de Arajo Madeira Orientador: Prof. Dr. Franco Giuseppe Dedini

Curso: Engenharia Mecnica. rea de concentrao: Mecnica dos Slidos e Projeto Mecnico Dissertao de mestrado apresentada comisso de Ps Graduao da Faculdade de Engenharia Mecnica, como requisito para obteno do ttulo de Mestre em Engenharia Mecnica.

Campinas, 2008 S.P. Brasil

FICHA CATALOGRFICA ELABORADA PELA BIBLIOTECA DA REA DE ENGENHARIA E ARQUITETURA - BAE - UNICAMP

M264a

Madeira, Paulo Henrique de Arajo Aplicao do estudo da interface homem mquina em cadeiras de rodas motorizadas / Paulo Henrique de Arajo Madeira. -Campinas, SP: [s.n.], 2008. Orientador: Franco Giuseppe Dedini Dissertao (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Mecnica. 1. Deficiente fisicos. 2. Cadeiras de rodas. 3. Interfaces de usurio (Sistema de computador). 4. Interao homem-mquina. 5. Construo modular. 6. Veculos autnomos. I. Dedini, Franco Giuseppe. II. Universidade Estadual de Campinas. Faculdade de Engenharia Mecnica. III. Ttulo.

Ttulo em Ingls: Application of human machine interface research in powered wheelchair Palavras-chave em Ingls: Interface, Wheelchair, Integration, Modularization, Navigation support rea de concentrao: Mecnica dos Slidos e Projeto Mecnico Titulao: Mestre em Engenharia Mecnica Banca examinadora: Pablo Siqueira Mereilles, Marcelo Becker Data da defesa: 22/02/2008 Programa de Ps-Graduao: Engenharia Mecnica

ii

iii

Dedicatria:
Dedico este trabalho a minha famlia, por sempre me apoiar; ao Dr. Torsten Felzer, pelo interesse a apoio; e a comunidade portadora de limitaes fsicas, a quem espero contribuir com este projeto.

iv

Agradecimentos:
Este trabalho resultado do apoio de diversas pessoas, a quem devo minha homenagem: A minha famlia e amigos Manuel e Giancarlo, por estarem sempre ao meu lado; Ao Prof. Dr. Franco Giuseppe Dedini pela orientao, incentivo e tambm por acreditar neste projeto; Ao Dr. Torsten Felzer pelo apoio e interesse em meu trabalho; Ao meu pai, que me ajudou a projetar o amplificador para o piezoelctrico; A toda equipe do Departamento de Projeto Mecnico da Unicamp, Vitor Akira Hanzama, Flvia Bonilha Alvarenga e Geraldo Gonalves Delgado Neto pela construo do kit de motorizao; e inclusive ao Breno Raizer, pela pacincia ao me ajudar na reviso da estrutura deste trabalho; A toda a equipe do Departamento de Inspeo Robtica do CenPRA, inclusive ao Dr. Roberto Tavares por me ensinar a programao em microcontroladores PIC, e ao Sebastio Simes de Lima pelo apoio; E a CAPES pela ajuda financeira para a realizao deste trabalho.

Hey you, dont tell me theres no hope at all Together we stand, divided we fall

Pink Floyd Hey You (1979) Msica composta a respeito do muro de Berlim

vi

Resumo
MADEIRA, Paulo Henrique de Arajo, Aplicao do Estudo da Interface Homem Mquina em Cadeiras de Rodas Motorizadas, Campinas,: Faculdade de Engenharia Mecnica, Universidade Estadual de Campinas, 2008. 115 p. Dissertao (Mestrado) H uma parcela da populao que, por possuir severas limitaes fsicas e motoras, inapta a utilizar cadeiras de rodas convencionais, manuais ou eltricas, bem como dispositivos de interface que no consideram as suas caractersticas particulares. Deste modo, este trabalho possui foco no desenvolvimento de interfaces e sistemas de navegao para cadeiras de rodas, provendo solues para a incluso deste grupo de usurios. Para isto, a reviso bibliogrfica envolve trs aspectos: as interfaces para usurios, os sistemas de navegao e a integrao entre ambos. Primeiramente localiza-se a interface como parte da relao entre usurio e tarefa, para posteriormente restringir-se a interfaces para portadores de severas limitaes fsicas. Reconhecendo que determinados tipos de limitaes de usurios demandam sistemas de navegao, estes so descritos na forma de exemplos de implementaes. A reviso bibliogrfica conclui com a descrio de mtodos para a integrao entre interface, navegao e controle da cadeira de rodas. Com base nesta pesquisa bibliogrfica, desenvolveu-se um protocolo de integrao e trs tipos interfaces: controle de voz, filtragem do sinal de joystick para usurios com dificuldade em posicionar a mo, e controle por contraes musculares. A interface de reconhecimento de voz permitiu obter dois prottipos: um primeiro que utiliza um software comercial e um segundo em microcontrolador. A interface de filtragem do sinal do joystick foi prototipada virtualmente, demonstrando a resposta deste filtro a diferentes distrbios. A interface que utiliza controle por contraes musculares foi implementada em prottipo funcional, por meio de um microcontrolador, e modularizada por meio do protocolo de integrao desenvolvido. Este protocolo de integrao foi testado em um kit de motorizao com os mdulos joystick, interface por contraes musculares e sonar, permitindo alternar, remover e inserir mdulos sem a necessidade de reprogramao.

Palavras chave

Interface, Cadeiras de Rodas, Integrao, Modularidade, Auxlio a Navegao

vii

Abstract
MADEIRA, Paulo Henrique de Arajo, Aplicao do Estudo da Interface Homem Mquina em Cadeiras de Rodas Motorizadas, Campinas,: Faculdade de Engenharia Mecnica, Universidade Estadual de Campinas, 2008. 115 p. Dissertao (Mestrado) There is a part of population, with physical impairment, that cannot use conventional manual or powered wheelchair and kinds of interface with do not consider they own characteristics. To solve this problem, this work does a bibliographic review on wheelchair interfaces and navigation support, alloying development on solutions for inclusion of this users group. The bibliographic review embraces three aspects: interfaces and users, navigation support systems, and integration between navigation and interfaces. The first chapter, interfaces and users, localizes the interface as an medium between user and task, allowing to be more focused on next chapter: interfaces for wheelchair uses with severe impairment level. Recognizing about in some kinds of user impairment levels an adequate interface is not enough, navigation support systems are described. The bibliographic review concludes with a description about integration methods for interfaces, navigation support and wheelchair control. Based on this bibliographic review, an integration protocol and three interfaces have developed: voice control, joystick filtering for users with difficult on hand positioning, and muscular contraction control. The voice recognition interface allows creating two prototypes: one with commercial software, and a second using embedded microcontroller on wheelchair. The joystick filtering interface was virtually prototyped allowing response tests for different noisy sources. The muscular contraction interface has implemented as functional prototyping, by a microcontroller, and modularized by the developed modularization protocol. This protocol has tested in a wheelchair motorization kit with joystick, muscular contraction interface and auxiliary sonar modules, allowing inserting or removing then without any reprogramming needs.

Keywords Interface, Wheelchair, Integration, Modularization, Navigation Support

viii

ndice
Lista de Figuras ............................................................................................................................ xiii Lista de Tabelas.......................................................................................................................... xviii 1. Introduo.....................................................................................................................................1 1.1. 1.2. 1.3. Formulao da Hiptese e Objetivos da Pesquisa ..............................................................2 Histrico de Projetos...........................................................................................................3 Organizao do Trabalho ....................................................................................................6

2. Desenvolvimento de Interfaces Homem Mquina .......................................................................8 2.1. Caractersticas de uma Interface Adequada ao Usurio....................................................10 Interfaces para Crianas .............................................................................................10

2.1.1. 2.2. 2.3. 2.4.

Procedimentos de Desenvolvimento de Interfaces ...........................................................14 Avaliao de Tempos de Resposta para Desenvolvimento de Interfaces.........................16 Dispositivos para Interface com o Usurio.......................................................................21 Dispositivos de Entrada de Dados..............................................................................21 Dispositivos de Sada de Dados .................................................................................24

2.4.1. 2.4.2.

3. Interfaces para Cadeiras de Rodas Motorizadas ........................................................................26 3.1. 3.2. 3.3. 3.4. Utilizao de Sensores de Movimento..............................................................................31 HaWCoS e a Utilizao de Sensores Piezoeltricos.........................................................34 Interface Remota por Computador Embarcado ................................................................42 Utilizao da Informao Facial .......................................................................................44
ix

3.5. 3.6. 3.7. 3.8. 3.9.

Eletrodos para Leitura de Posio dos Olhos ...................................................................46 Eletroencefalografia da Componente Alfa........................................................................50 Implantes Neurais e Comunicao Bidirecional...............................................................53 Aplicaes com Implantes Cerebrais................................................................................56 Filtragem e Condicionamento de Sinal.............................................................................58 Filtrar Eventuais Distores provenientes do Meio Externo .....................................58 Condicionar uma Caracterstica do Sensor ou do Sinal Desejado .............................58 Ajustar uma Interface s Caractersticas do Usurio .................................................59

3.9.1. 3.9.2. 3.9.3.

4. Sistemas de Navegao e Sensoreamento ..................................................................................61 4.1. Origens da Navegao para Cadeiras de Rodas................................................................64 Roteamento do Caminho............................................................................................65 Sensoreamento ...........................................................................................................67 Controle de Movimento .............................................................................................68 Orientao ..................................................................................................................70 Aceitao e Trabalhos Futuros ...................................................................................71

4.1.1. 4.1.2. 4.1.3. 4.1.4. 4.1.5. 4.2. 4.3.

Os projetos TAO 1 e TAO 2 .......................................................................................71 NavChair e a Combinao de Primitivas ..........................................................................75 Algoritmos de Assistncia Navegao do NavChair...............................................76 Modos de Operao....................................................................................................79 Seleo de Modo ........................................................................................................80

4.3.1. 4.3.2. 4.3.3. 4.4.

Abordagens VOA e BOA para o Desvio de Obstculos...................................................81 Abordagem BOA........................................................................................................83

4.4.1. 4.5.

MAid e a Navegao em Locais Muito Populosos...........................................................85 Deteco de Objetos e Planejamento de Rotas de Desvio .........................................87
x

4.5.1.

5. Integrao entre os Sistemas Envolvidos ...................................................................................88 5.1. 5.2. 5.3. Protocolo de Comunicao M3S ......................................................................................89 Utilizao de uma Hierarquia de Entradas........................................................................92 Abordagem Subsumption ..................................................................................................94 O rob RAM-1 .........................................................................................................100 O Aprendizado de Comportamentos com o Rob Obelix........................................101 Aprendizado por meio de Subsumption ...................................................................103

5.3.1. 5.3.2. 5.3.3.

6. Construo e Implementao de Prottipos .............................................................................106 6.1. 6.2. 6.3. Reconhecimento de Voz .................................................................................................107 Filtragem de Joystick por Fuzzy .....................................................................................117 Implementao do HaWCoS em Microcontroladores PIC .............................................122 Condicionamento de sinal ........................................................................................124 Processamento e Controle ........................................................................................126 Interface de Sada e Controle de Movimentos .........................................................127

6.3.1. 6.3.2. 6.3.3. 6.4.

Integrao entre Interfaces e Sistemas Auxiliares ..........................................................130

7. Resultados e Discusses...........................................................................................................137 7.1. 7.2. 7.3. 7.4. Reconhecimento de Voz .................................................................................................137 Filtragem de Joystick por Fuzzy .....................................................................................139 Implementao do HaWCoS em Microcontroladores PIC .............................................146 Integrao entre Interfaces e Sistemas Auxiliares ..........................................................146

8. Concluses e Planos Futuros....................................................................................................150 9. Bibliografia...............................................................................................................................152 Apndice I Histrico de Cadeiras de Rodas ...............................................................................158 Apndice II Tabelas com o levantamento das curvas de freqncia utilizadas ...........................163
xi

Apndice III Software Labview .................................................................................................168 Apndice IV Programao do PIC 16F877A .............................................................................169 Apndice V Circuitos Envolvidos na Interface Modular .............................................................174 Apndice VI Algoritmo do Firmware Utilizado na Interface HaWCoS ....................................176

xii

Lista de Figuras
Figura 1.1 - Primeira e segunda verso do kit de motorizao ........................................................5 Figura 2.1 - Relaes entre usurio e tarefa. ....................................................................................9 Figura 2.2 - Exemplo de consistncia entre os navegadores Mozilla Firefox 1.0.7, Internet Explorer 6 e pera 7. .....................................................................................................................12 Figura 2.3 - Menu de comandos para unidades removveis. ..........................................................14 Figura 2.4 - Comparao da movimentao de um mouse entre usurio com paralisia cerebral e usurio comum. ..............................................................................................................................20 Figura 2.5 - Teclado tipo Chord de cinco teclas. ...........................................................................22 Figura 2.6 - Eyegaze, capaz de ler o posicionamento do olho. ......................................................23 Figura 2.7 - Teclado virtual Microsoft. .......................................................................................24 Figura 2.8 - Display braile..............................................................................................................25 Figura 3.1 - Interface entre usurio e cadeira de rodas. .................................................................29 Figura 3.2 - Sensor piezoeltrico e amplificador. ..........................................................................36 Figura 3.3 - Estgios do sistema HaWCoS. ...................................................................................36 Figura 3.4 - Reconhecimento de evento de clique simples e duplo clique ...............................37

Figura 3.5 - Controle do avano por cliques. .................................................................................39 Figura 3.6 - Percursos para teste. ...................................................................................................40
xiii

Figura 3.7 - Tragetria da cadeira e sistema de controle................................................................41 Figura 3.8 - Sinal sem filtragem e com filtragem,. ........................................................................45 Figura 3.9 - Exemplo de utilizao do EagleEyes .........................................................................46 Figura 3.10 - Comparao entre disposio dos sensores pelo mtodo EagleEyes e Law et al. (2002). ............................................................................................................................................49 Figura 3.11 - Diagrama do sistema de controle pela componente alfa. .........................................51 Figura 3.12: Amostragem de componente alfa para dois usurio diferentes. ................................52 Figura 3.13: Implante Bidirecional e Eletrodos. ............................................................................54 Figura 4.1 - Exemplo de um mapa de escritrio ............................................................................66 Figura 4.2 - Erros de leitura de sonares..........................................................................................68 Figura 4.3 - Utilizao de rodap preto como referencial..............................................................69 Figura 4.4 - Reconhecimento das paredes de um corredor por sonar. ...........................................70 Figura 4.5 - Arquitetura comportamental do projeto TAO-1.........................................................72 Figura 4.6 - Mtodo MVFH. ..........................................................................................................77 Figura 4.7 - Mtodo Vector Force Field. .......................................................................................78 Figura 4.8 - Utilizao do modo passagem por porta. ...................................................................79 Figura 4.9 - Obteno do cone de colises para um obstculo fixo...............................................81 Figura 4.10 Determinao de rotas de desvio pelo mtodo VOA...............................................83 Figura 4.11 Utilizao da abordagem BOA para o desvio de obstculos. ..................................84 Figura 5.1 - Arquitetura M3S para protocolo de integrao. .........................................................91 Figura 5.2 - Representao de evento em mdulo para hierarquia de sonar..................................93 Figura 5.3 - Abordagem tradicional para sistemas de navegao. .................................................94 Figura 5.4 - Abordagem subsumption para sistemas de navegao...............................................96 Figura 5.5 - Camada 0, destinada ao controle. ...............................................................................97
xiv

Figura 5.6 - Integrao entre Camadas 0 e 1..................................................................................98 Figura 5.7 - Integrao entre camadas 0, 1 e 2...............................................................................99 Figura 5.8 - Rob RAM1. ............................................................................................................100 Figura 5.9 - Mdulos do rob Obelix...........................................................................................102 Figura 5.10 - Rob Genghis, MIT................................................................................................103 Figura 5.11 - Sensores de feedback para o rob Genghis. ...........................................................104 Figura 6.1 - Arquitetura do primeiro prottipo de reconhecimento de voz. ................................108 Figura 6.2 - Arquitetura do segundo prottipo de reconhecimento de voz..................................110 Figura 6.3 Comparao entre fonemas a, e, i, o, u.......................................................112 Figura 6.4 Aquisio das bordas de subida, para os fonemas a e i. .....................................112 Figura 6.5 - Curvas de freqncia para diferentes palavras. ........................................................114 Figura 6.6 - Comparando uma amostragem com duas curvas de freqncias da biblioteca........115 Figura 6.7 Aplicao direta de lgica fuzzy para um eixo do joystick. ....................................118 Figura 6.8 - Software para obteno da posio desejada pelo usurio. ......................................121 Figura 6.9 - Arquiteturas do Sistema HaWCoS. ..........................................................................122 Figura 6.10 - Arquitetura utilizada para interface ........................................................................124 Figura 6.11 - Piezoeltrico. ..........................................................................................................125 Figura 6.12 - Interface de sada. ...................................................................................................127 Figura 6.13 - Navegao na interface por cliques. .......................................................................128 Figura 6.14 - Interface simplificada modelo 1. ............................................................................129 Figura 6.15 - Interface simplificada modelo 2. ............................................................................130 Figura 6.16 - Configurao de pinos no protocolo utilizado........................................................133 Figura 6.17 - Regulador de tenso. ..............................................................................................134 Figura 6.18 - Exemplo de integrao hierrquica entre mdulos. ...............................................135
xv

Figura 6.19 - Arquitetura modular utilizada.................................................................................136 Figura 7.1 - Fontes de rudo senoidal e randmico adicionada a uma entrada. ...........................139 Figura 7.2 - Acomodao de 4 segundos para 40 amostras. ........................................................140 Figura 7.3 - Supresso do rudo senoidal por filtragem. ..............................................................141 Figura 7.4 - Resposta em degrau para rudo senoidal de 1Hz......................................................142 Figura 7.5 - Filtragem passa baixa de um rudo randmico.........................................................143 Figura 7.6 - Filtragem fuzzy.........................................................................................................143 Figura 7.7 - Curvas relacionadas a filtragem. ..............................................................................144 Figura 7.8 - Testes com dois joysticks reais. ................................................................................145 Figura 7.9 - Mdulos utilizados no kit de motorizao................................................................147 Figura 7.10 - Conectividade entre mdulos. ................................................................................148 Figura I.1 - Maca grega e cadeira com rodas chinesa. .................................................................159 Figura I.2 - Cadeira de rodas utilizada pelo rei Philip II..............................................................159 Figura I.3 - Cadeira de Stephan Farfler........................................................................................160 Figura I.4 - Cadeira de John Dawson...........................................................................................160 Figura I.5 - Cadeira modelo seating wheelchair. .........................................................................161 Figura I.6 - Cadeira com foco em reduo de peso......................................................................161 Figura I.7 - Cadeira de Everest & Jennings. ................................................................................162 Figura II.1 Comparao entre curvas mdias obtidas ...............................................................167 Figura III.1 Software em Labview ............................................................................................168 Figura IV.1 Pinagens de microcontroladores da famlia 16F....................................................170 Figura IV.2 Placa de testes para programas ..............................................................................171 Figura IV.3 Fonte de alimentao .............................................................................................172 Figura. IV.4 Progranador ..........................................................................................................173
xvi

Figura V.1 Amplificador Piezoelctrico ...................................................................................174 Figura V.2 Ajuste de Nveis de Tenso para o driver (MAANT).............................................174 Figura V.3 Inibidor paraadicionar mdulo de Sonar.................................................................175 Figura V.4 Aplicao do microcontrolador 16F877A na Interface HaWCoS ..........................175 Figura VI.1 Subrotinas do menu 1 ............................................................................................176 Figura VI.2 Rorina principal, responsvel por organizar menus ..............................................177 Figura VI.3 Subrotinas do menu 2 ............................................................................................178 Figura VI.4 Subrotinas do menu 3 ............................................................................................179 Figura VI.5 Subrotinas para obter interaes do usurio por interrupo.................................180 Figura VI.6 Atribuio de movimentos.....................................................................................181

xvii

Lista de Tabelas
Tabela 3.1 - Interface por movimentos dos ombros.......................................................................32 Tabela 3.2 - Comparao de tempos (segundos) entre percursos. .................................................41 Tabela 3.3 - Movimentao pelo mtodo de Law et al. (2002)......................................................50 Tabela 4.1 - Mtodos de controle em funo do grau de autonomia. ............................................62 Tabela 5.1 - Exemplo de hierarquia para interface. .......................................................................92 Tabela 6.1 - Comparao entre recursos de microcontrolador e computador..............................116 Tabela 6.2 - Lgica de controle para o driver. .............................................................................131 Tabela 6.3 - Relao entre comandos de direo e movimentos .................................................134 Tabela 7.1 - Estimativa de custos da segunda arquitetura............................................................138 Tabela II.1 Amostragem da palavra Frente ...............................................................................163 Tabela II.2 Amostragem da palavra Testando...........................................................................164 Tabela II.3 Amostragem da palavra Esquerda ..........................................................................164 Tabela II.4 Amostragem da palavra Direita ..............................................................................165 Tabela II.5 Amostragem da palavra Trs ..................................................................................165 Tabela II.6 Amostragem da palavra Liga..................................................................................166 Tabela II.7 Amostragem da palavra Desliga .............................................................................166

xviii

Captulo 1 Introduo

Graas aos progressos nas caractersticas construtivas de cadeiras de rodas, como as redues no custo e peso, ao longo dos anos foi possvel permitir que um nmero cada vez maior de portadores de limitaes fsicas tenham acesso a este veculo. Este progresso inicialmente ocorreu na melhoria dos materiais (da madeira para os metais de ligas leves) e em caractersticas construtivas, que juntos garantiram maior conforto e menor fadiga ao usurio. Com os avanos atuais da engenharia mecatrnica, observa-se que h um novo segmento de pesquisa em cadeiras de rodas: interfaces e sistemas de auxlio navegao. Assim, do mesmo modo que os avanos tecnolgicos iniciais permitiram incluir um maior grupo de usurios por meio de uma reduo de peso e ajustes ergonmicos nas cadeiras, os avanos atuais permitem incluir um grupo ainda maior de usurios, como resultado de uma significativa reduo no esforo ao utilizar a cadeira de rodas. Esta reduo de esforos conseqncia direta das inovaes tecnolgicas posteriores motorizao de cadeiras de rodas, entre as quais possvel citar a deteco de contraes musculares para interfaces, e o compartilhamento de nveis de autonomia entre usurio e o sistema de navegao da cadeira de rodas.

Deste modo, a realizao de um levantamento bibliogrfico e o desenvolvimento de novas interfaces e sistemas de auxlio a navegao permitem encontrar solues que se adaptem a diversas caractersticas de usurios. A escolha ou o desenvolvimento de uma interface adequada permitir, em ltima instncia, um significativo ganho na mobilidade e qualidade de vida de portadores de limitaes fsicas: possvel observar que alguns usurios consideram que a cadeira de rodas uma extenso de seu corpo. 1.1. Formulao da Hiptese e Objetivos da Pesquisa Reconhecendo que portadores de limitaes severas so incapazes de utilizar cadeiras de rodas motorizadas convencionais, que utilizam interface por joystick, formulou-se a seguinte hiptese: A utilizao de um sistema de interface e auxlio navegao adequado permite que usurios com severas limitaes fsicas controlem uma cadeira de rodas. Esta hiptese permitiu definir o objetivo principal para este trabalho: pesquisar e desenvolvimer interfaces e sistemas de auxlio a navegao, que possam ser acessveis a usurios com limitaes fsicas graves. Iniciando-se com a pesquisa de interfaces foi possvel obter uma relao entre usurio e tarefa, a qual permite definir as caractersticas necessrias para uma interface, como um produto desta relao. Ou seja, a interface um mdulo que permite relacionar o usurio, e suas formas de interao, com a tarefa a os comandos necessrios para a sua execuo. Esta abordagem permitiu restringir-se as caractersticas de interfaces para usurios de cadeiras de rodas com limitaes motoras graves e, posteriormente a sistemas de auxlio navegao. Aps a pesquisa em solues de interface e sistemas de auxlio a navegao, observou-se a necessidade de integrar estes sistemas em uma arquitetura modular, que permita o intercmbio entre solues de diferentes autores. Para isto, delimitou-se um objetivo secundrio que no dirigido a desenvolver uma interface especfica, mas um protocolo para permitir utilizar diferentes formas de interfaces e sistemas de auxlio a navegao.

Por meio de uma reviso bibliogrfica, foi possvel reunir trs reas de conhecimento: interfaces para usurios com limitaes fsicas, sistemas de navegao e mtodos para a integrao entre ambos com a cadeira de rodas. A base terica nestes trs campos permitiu determinar um terceiro e ltimo objetivo: desenvolver e, se possvel, implementar sistemas de interface para a sua utilizao em um kit de motorizao de baixo custo. Observa-se que este kit foi desenvolvido pelo Departamento de Projeto Mecnico, que possui um prottipo funcional. 1.2. Histrico de Projetos Os projetos desenvolvidos e descritos neste trabalho so parte das pesquisas sobre motorizao de cadeiras de rodas realizadas no laboratrio de projeto mecnico da Unicamp, sob orientao do Prof. Dr. Franco Giuseppe Dedini. Desta forma possvel apresentar um breve histrico respeito destes trabalhos realizados, permitindo localizar a contribuio deste trabalho. A dissertao de mestrado de Becker (1997) avaliou as caractersticas construtivas relacionadas locomoo de robs com o objetivo da construo de veculos destinados ao transporte de usurios com limitaes fsicas. Desta forma, realizou-se um modelamento das rodas avaliando deslocamentos com e sem escorregamento e as caractersticas de rodas elsticas ou rgidas. Este modelamento das rodas permitiu avaliar diferentes formas construtivas de robs, combinando o nmero e a disposio das rodas de trao e direo, para avaliar a estabilidade ao tombamento e dirigibilidde de cada construo. A dissertao conclui com uma discusso a respeito de formas de controle nebuloso, e o desenvolvimento e simulao de uma tcnica de controle para o desvio de obstculos. Em seu doutorado, Becker (2000) estuda e prope tcnicas assistivas para cadeiras de rodas inteligentes. Para isto inicia-se com uma descrio respeito dos portadores de deficincia usurios de cadeiras de rodas no Brasil: quem so onde vivem e tipos de deficincia apresentados. Aps este descrio ampla, restringe-se ao aspectos ergonmicos da relao entre usurio e cadeiras de rodas: dimenses do usurio, tipos de estofamentos adequados, exemplos de interfaces tipo joystick e demais fatores associados. A delimitao das caractersticas ergonmicas permite estudar as formas de acionamento manual de cadeiras de rodas em funo do tipo de leso e posicionamento do usurio na cadeiras de rodas

Aps concluir uma anlise das caractersticas do cadeirante, Becker (2000) apresenta o modelamento e a simulao esttica e dinmica da estabilidade lateral e longitudinal para cadeira de rodas, relacionando os fatores posio do centro de gravidade, cambagem e aceleraes decorrentes do movimento. Por meio destas caractersticas estticas e dinmicas obtidas, e levantamento bibliogrfico, desenvolvem-se tcnicas de navegao e sensoreamento por lgica fuzzy para cadeiras de rodas. Estas tcnicas de navegao e sensoreamento permitem reconhecer e mapear paredes, e demais obstculos, para desviar-se de rodas de coliso e alcanar um local desejado. A dissertao de mestrado de Lombardi Jnior (2002) demonstra um mecanismo servoassistido para reduzir os esforos realizados por cadeirantes, permitindo transpor obstculos e evitar leses por esforos repetitivos. Esta dissertao inicialmente define e caracteriza os portadores de deficincia no Brasil e relaciona a cadeira de rodas com o portador de limitaes. Este relao envolve aspectos como as caractersticas das cadeiras e a influncia da cadeira de rodas nas relaes interpessoais. Aps descrever o usurio, e suas relaes com as cadeiras de rodas, descrevem-se os aspectos estticos e dinmicos das cadeiras de rodas, como: modelamento da roda, estabilidade, tombamento e dirigibilidade. Desta forma, Lombardi Jnior (2002) realiza um estudo das caractersticas biomecnicas, ou seja, como a relao de trabalho entre homem e cadeira de rodas avaliando os esforos musculares. A anlise biomecnica considerou os esforos, e diferentes formas de acionamento de cadeiras de rodas manuais, para propor um sistema servo-assistido que proporcione uma reduo de esforos no controle de uma cadeira de rodas. No mesmo ano, a dissertao de mestrado de Alvarenga (2002) reconhece que aproximadamente 75% das cadeiras de rodas utilizadas no Brasil so manuais, e analisa as possibilidades para a motorizao destas cadeiras com uma soluo modular e de custo acessvel. Para isto, inicialmente realizada um estudo sobre portadores de limitaes fsicas sobre os aspectos de: tipos de deficincia, trabalho, lazer e acessibilidade. De forma semelhante tambm estudaram-se tipos e caractersticas para cadeiras de rodas e sistemas de motorizao j existentes. Por meio de uma metodologia de projeto, que inclusive considerou as caractersticas ergonmicas dos cadeirantes e modelamentos dinmicos das cadeiras de rodas, desenvolveu-se
4

um mdulo tipo reboque para motorizao de cadeiras de rodas. A dissertao concluiu com as simulaes dinmicas do produto desenvolvido. Continuando a linha de pesquisas, a tese de doutorado de Alvarenga (2006) prope uma abordagem para o projeto de produtos inclusivos por meio do Universal Design. Desta forma inicia-se com uma reviso bibliogrfica a respeito das caractersticas do projeto inclusivo para posterior anlise e discusso de metodologias de projeto. Por meio desta reviso Alvarenga (2006) desenvolve uma metodologia de projeto e a aplica no desenvolvimento de um produto inclusivo: um kit de motorizao para cadeiras de rodas. No decorrer da dissertao de mestrado foram desenvolvidos e construdos duas verses de kits de motorizao para cadeiras de rodas, ilustrados na figura 1.1.

Fig. 1.1 - Primeira e segunda verso do kit de motorizao, respectivamente esquerda e direita, (fonte: Alvarenga, 2006). Assim, neste contexto, o presente trabalho realizar uma reviso bibliogrfica sobre solues em interface para usurios tetraplgicos para o posterior desenvolvimento e implementao destas interfaces no kit de motorizao desenvolvido na tese de Alvarenga (2006). necessrio ressaltar que, seguindo o conceito apresentado por Alvarenga (2006), mantido o compromisso de desenvolver solues de custo acessvel a todos os usurios portadores de limitaes fsicas. Para isto, apresentada uma abordagem na relao usurio e tarefa para encontrar as necessidades principais do usurio e, desta forma, encontrar quais so os mecanismos essenciais na execuo de uma determinada tarefa.

1.3.

Organizao do Trabalho H uma parcela da populao que, por possuir severas limitaes fsicas e motoras, inapta

a utilizar cadeiras de rodas convencionais, manuais ou eltricas, bem como dispositivos de interface que no consideram as suas caractersticas. Assim, este trabalho descrever a pesquisa e desenvolvimento de interfaces, sistemas de auxlio a navegao, e a integrao entre ambos para o controle de cadeiras de rodas motorizadas, provendo a incluso de usurios com limitaes motoras graves. Estas solues, j anteriormente citadas, envolvem trs aspectos: as interfaces para usurios, os sistemas de navegao e a integrao entre ambos. Para facilitar a delimitao do tema, o apndice I apresenta um breve histrico sobre o desenvolvimento das cadeiras de rodas que permite observar a sua evoluo at os dias atuais. Prioritariamente ao desenvolvimento de interfaces para portadores de limitaes fsicas, necessrio reconhecer quais caractersticas sero necessrias em uma interface. Desta forma, o captulo 2: Desenvolvimento de Interfaces Homem Mquina localiza a interface como meio para relao entre usurio e tarefa e descreve as caractersticas presentes em uma boas interfaces e procedimentos para o seu desenvolvimento. O conhecimento no desenvolvimento de interfaces permite restringir esta rea de conhecimento a portadores de severas limitaes fsicas no captulo 3: Interfaces para Cadeiras de Rodas Motorizadas Contudo, ainda que estas interfaces permitam interagir com o usurio, para determinadas limitaes so necessrios sistemas de auxlio navegao. Estes sistemas permitem uma navegao facilitada (semi-autnoma) ou mesmo autnoma, e sero apresentados no captulo 4: Sistemas de Navegao e Sensoreamento. O levantamento bibliogrfico realizado permitiu observar que, em grande parte dos casos, as interfaces so desenvolvidas e embarcadas na forma de solues especficas para um determinado problema. Esta abordagem dificulta o compartilhamento entre interfaces e sistemas de navegao desenvolvidos por autores diferentes.

Para uma integrao entre diferentes solues, para diferentes caractersticas de usurios, no captulo 5: Integrao entre os Sistemas Envolvidos so apresentados protocolos e meios de integrao. Com base na teoria apresentada, foi possvel desenvolver trs mdulos de interface e um protocolo de integrao. Estes sistemas so descritos no captulo 6: Construo e Implementao de Prottipos. Estas trs interfaces e o protocolo de integrao desenvolvidos foram testados no captulo 7: Resultados e Discusses, que demonstra algumas dificuldades encontradas no seu desenvolvimento e os resultados obtidos nos experimentos realizados. Uma concluso que engloba os quatro sistemas desenvolvidos apresentada no captulo 8: Concluses e Planos Futuros.

Captulo 2 Desenvolvimento de Interfaces Homem Mquina

A interface est presente em qualquer ferramenta, na forma de intermdio entre o usurio e a tarefa realizada. Contudo, antes de desenvolver uma determinada interface, necessrio um estudo prvio dos objetivos do usurio em funo da tarefa para definir qual a ferramenta ser a mais adequada. Segundo Donald A. Norman, em Laurel (1994), uma anlise adequada deve sugerir um conjunto de interface e ferramenta que melhor se adaptem a relao de usurio e tarefa, de forma a evitar a falta de dispositivos em locais necessrios ou o seu emprego em locais desnecessrios. Desta forma, este captulo descreve os elementos envolvidos no desenvolvimento de interfaces, favorecendo a delimitao das caractersticas necessrias em funo da relao usurio e tarefa.

Refletindo a respeito das caractersticas do usurio e da atividade a ser executada pode ser observado que, em funo da experincia do usurio, a ferramenta ideal pode ser a soluo que apresente um menor nmero de recursos. A medida em que o usurio possui maior aptido a lidar com recursos mais sofisticados podem ser utilizadas interfaces mais complexas, e que possuem um nmero maior de recursos e funes. Esta aptido envolve aspectos culturais, sociais, idade ou caractersticas como limitaes fsicas (determinadas limitaes necessitam interfaces adaptadas). Desta forma, possvel observar que o tipo de ferramenta e interface associada deve ser encarada como um produto da relao entre usurio e aplicao. Estas situaes podem ser ilustradas na figura 2.1, que representa a diversidade nas relaes entre usurio e tarefa, em funo da sofisticao da ferramenta utilizada:

Usurio

Mtodo

Tarefa

Texto Escrito

Ambiente Externo

Fig. 2.1 - Relaes entre usurio e tarefa.

observada tambm a presena do ambiente externo neste diagrama, pois no possvel a existncia de um sistema completamente isolado. Como exemplos, este ambiente pode permitir retorno por informao visual das interaes do usurio; ou pode ocasionar distrbios na ferramenta ou mtodo utilizado (a poluio sonora pode inviabilizar o reconhecimento de voz ). Uma avaliao correta das caractersticas do usurio, e posterior escolha da interface adequada, permitir que este se relacione do modo mais direto possvel com a tarefa realizada. Esta proximidade favorece a cognio e posterior aprendizado, bem como a facilidade na execuo da tarefa pois, a medida em que uma interface torna-se mais complexa, h uma menor transparncia entre usurio e tarefa. Os tpicos seguintes descrevem as caractersticas destes elementos que compe o desenvolvimento de interfaces, abrangendo o usurio, caractersticas da interfaces adequadas, mtodos para o seu desenvolvimento e exemplos de interfaces e suas aplicaes. 2.1. Caractersticas de uma Interface Adequada ao Usurio No processo de desenvolvimento de uma interface necessrio estudar as caractersticas comportamentais e as limitaes do usurio, pois estas variam em funo de aspectos culturais, sociais, idade e caractersticas prprias como alguma limitao fsica. Como exemplo so citadas caractersticas particulares a relao entre crianas e interfaces. 2.1.1. Interfaces para Crianas

A idade influencia de forma significativa na forma com a qual uma pessoa interage com o seu meio. Esta influncia sugere que, para desenvolver uma interface adequada, esta interao deve ser facilitada de forma a considerar as caractersticas que cada idade apresenta. Segundo Joyce Hakansson, em Laurel (1994), que por possuir experincia no desenvolvimento de produtos associados ao aprendizado para crianas, cita algumas lies aprendidas em respeito ao comportamento de crianas: - H interesse por jogos eletrnicos, principalmente quando este apresenta nveis de dificuldade graduais, pois permite que elas possam se testar e comparar-se a outras.

10

- Crianas apresentam certa dificuldade com textos e grande facilidade com imagens, pois estas permitem associao direta interface. interessante observar que imagens tambm facilitam uma comunicao mais direta e menos cansativa, inclusive para adultos. - Quando h menos computadores que crianas, possvel a realizao de trabalhos em grupo por meio do aprendizado de novos recursos. - Pode ser observado um maior interesse por computadores em garotos que em meninas aps uma determinada idade, como resultado de motivos culturais e das caractersticas dos softwares desenvolvidos. - Crianas podem aprender a utilizar uma grande variedade de interfaces, embora encontrem dificuldades com o teclado, pois precisam dividir as palavras e procurar cada letra, ainda que estas estejam em ordem alfabtica. Desta forma interfaces como um joystick ou mouse so mais indicadas. - O aprendizado facilitado por recursos multimdia (com grficos, sons e movimentos) se comparado a uma linguagem apenas textual. - Desde que estimuladas, as crianas so capazes de aprender por associaes nicas e inesperadas. Como exemplo, nos anos 60, crianas com idade entre 5 e 7 anos aprenderam as letras do alfabeto assistindo programas educativos como a Vila Ssamo (Sesame Street). Segundo Donald A. Norman, em Laurel (1994), Devemos nos perguntar a respeito de quais tarefas as pessoas precisam cumprir, e quais seriam as ferramentas mais apropriadas, de forma a sugerir um design centrado na relao entre a tarefa a ser realizada e o usurio. Esta abordagem sugere que uma interface adequada aquela que se comporta de forma transparente com a relao usurio e tarefa, sugerindo que esta deve ser simples e possuir aspectos semelhantes a outras interfaces j conhecidas pelo usurio (consistncia). Uma abordagem mais restrita realizada por Preece et al. (2002), ao delimitar que o desenvolvimento de interfaces compreende duas reas de objetivos: a relao entre usurio e interface, e a prtica de uso. A relao entre usurio e interface, definida como user experience goals por Preece et al. (2002), composta por aspectos subjetivos. Desta forma uma interface adequada ao usurio deve ser: agradvel, divertida, interessante, fcil de aprender, motivante, possuir uma esttica
11

harmoniosa, facilitar a criatividade, recompensadora e agregar emoes. Sob o ponto de vista da prtica de uso (usability) so definidas metas de como melhorar a interface para o usurio, associadas s caractersticas de: efetividade, eficincia, segurana, utilidade e facilidade para aprender e memorizar para uso posterior. A combinao das metas de prtica de uso com a relao entre usurio e interface, permitem obter as necessidades de grupo de usurios para o qual a interface se destina em foco. Esta delimitao do grupo de usurios e levantamento de suas necessidades permite reconhecer em quais pontos uma interface pode ser melhorada. Como exemplo do emprego das metas de prtica de uso (usability), a programao de um vdeo cassete para gravao de um determinado programa uma tarefa difcil para a maioria dos usurios. Isto se deve ao fato de que a maioria das interfaces no favorece aspectos como facilidade de aprendizado e memorizao. O aprendizado e facilidade de memorizao podem ser favorecidos quando se utiliza recursos consistentes, ou seja, associar sempre um comando a uma determinada funo, facilitando a sua memorizao. Pode ser citado um exemplo na figura 2.2, que demonstra as ferramentas de navegao em internet para retornar e avanar pginas em trs programas diferentes:

Fig. 2.2 - Exemplo de consistncia entre os navegadores Mozilla Firefox 1.0.7 (superior), Internet Explorer 6 (centro) e pera 7 (inferior).

12

Segundo Bruce Tognazzini, em Laurel (1994), Uma interpretao consistente do comportamento do usurio pelo sistema mais importante que o comportamento consistente de sistemas ou objetos, ou seja, o sistema deve realizar a operao desejada pelo usurio, aquela que ele est acostumado a realizar em sistemas semelhantes. Pode ser citado como exemplo, os gravadores de fita: quando o usurio insere a fita e pressiona o comando play, este reproduz o lado da fita que aparente para o usurio, independente do sentido de rotao do motor (horrio ou anti-horrio), pois a fita pode ser colocada por cima, por baixo ou horizontalmente em funo do tipo de equipamento. Desta forma, conclui-se que o comando de play, para o usurio, equivale a reproduzir o lado que lhe visvel, e no o sentido de rotao da fita. Uma interface com comandos simplificados e uma utilizao de imagens e cores associadas aos comandos mais utilizados tambm facilitam o aprendizado e memorizao. Esta facilidade se demonstra na reduo do tempo gasto para a leitura da funo de um determinado comando, e pode ser observada no exemplo dos navegadores de Internet j citados na figura 2.2, onde se utiliza setas para indicar funes comuns. observado consenso entre Bruce Tognazzini, em Laurel (1994), e Preece et al. (2002) que os aspectos associados segurana podem ser obtidos de diversas formas, como organizar os comandos em grupos prprios, utilizar mensagens e meios de confirmar aes, prevenir aes que podem colocar em risco o usurio, fazer uso de funes consistentes e utilizar mecanismos redundantes para corrigir erros (como confirmar aes ou fazer cpias de segurana). Comandos organizados em grupos, em acordo com a sua funo, permitem evitar erros ao pressionar a tecla indesejada. Exemplos de organizao inadequada incluem colocar prximo funes de salvar e fechar, ou desligar prximo de controles direcionais.

13

Como exemplo, a figura 2.3 representa uma disposio de comandos para unidades de armazenamento removveis. Nesta disposio a funo ejetar, que muito utilizada, encontra-se ao lado de uma funo formatar, favorecendo um erro que resulta na perda de todos os dados.

Fig. 2.3 - Menu de comandos para unidades removveis (fonte: MS WindowsXP). Em mecanismos que apresentam riscos a usurios inexperientes como crianas, segundo Preece et al. (2002), podem ser utilizados sistemas de proteo: a confirmao de aes pode ser realizada por meio de mensagens de confirmao tipo sim, no e cancelar ou sistemas mecnicos, como protees sobre botes que associam-se a aes arriscadas. Como exemplo, a caixa de pilhas de brinquedos que s pode ser aberta por adultos, pois necessria uma fora maior que a utilizada por uma criana para brincar, outra restrio de acesso a tampa sobre a caixa de disjuntores. 2.2. Procedimentos de Desenvolvimento de Interfaces De forma anloga s ferramentas para o desenvolvimento de um determinado produto, tambm possvel utilizar mtodos para o desenvolvimento de interfaces. Segundo Preece et al. (2002), possvel citar as principais fases que compe o desenvolvimento de uma interface: identificao das necessidades requeridas, desenvolvimento de novos projetos, desenvolvimento de projetos interativos e fase de testes.

14

Para o desenvolvimento de uma interface centrada no usurio, necessrio compreender quais as suas expectativas em relao ao produto. Esta compreenso favorece o reconhecimento de aspectos da relao entre usurio e interface, permitindo atribuir maior ou menor peso a aspectos como: diverso, interesse, esttica harmoniosa, favorecer aprendizado e criatividade. Observa-se que a atribuio de pesos a estes aspectos resultado do tipo de interface, usurio e tarefa. Aps definir os interesses do usurio em um produto, so desenvolvidos os projetos com as novas caractersticas para incorporar estas necessidades. Este projeto pode ser subdivido em duas fases: conceitual e fsico. Na fase conceitual o produto, descrito como este que deve ser, se comportar e como pode ser a sua aparncia. A fase seguinte o projeto fsico, que inclui uma quantidade maior de detalhes, como cores sons e imagens caso seja um projeto de interface grfica. Definidos os projetos conceitual e fsico inicia-se o seu refinamento, antes de construir prottipos de alta fidelidade. Este refinamento realizado por meio de prottipos de baixa fidelidade, pois agregam pouco custo e podem ser construdos e alterados em pouco tempo. Estes prottipos de baixa fidelidade permitem um certo grau de interao com a interface que suficiente para que os projetistas e, caso necessrio os usurios, avaliem os pontos em que o projeto pode melhorar. Os prottipos de baixa fidelidade no necessitam apresentar funcionalidade, permitindo a sua construo em papel ou carto, representando uma interface simples com botes e displays. Para a construo destes prottipos podem ser utilizados outros materiais, como caixas pintadas, desde que seja possvel fazer o prottipo em pouco tempo a um baixo custo sem se preocupar com muitos detalhes. Deve ser ressaltado que o objetivo do prottipo de baixa fidelidade transmitir os conceitos bsicos da interface a ser desenvolvida. Segundo Preece et al. (2002), aps a avaliao e otimizao dos prottipos de baixa fidelidade, inicia-se a construo de prottipos de alta fidelidade e decorrente fase de avaliao dos mesmos. Esta avaliao realizada com o auxlio dos usurios que testam os prottipos, permitindo obter informaes para aproximar o produto as suas necessidades. O prottipo

15

tambm pode ser divido em dois tipos sob o ponto de vista do seu objetivo: prottipo horizontal (com vrias funes embora poucos detalhes) ou vertical (poucas funes e muitos detalhes). Durante o desenvolvimento destas quatro fases necessrio manter contato direto com o usurio, de forma a melhorar continuamente a interface. Este conceito reafirmado por Donald A. Norman, no livro de Laurel (1994), que sugere um acompanhamento constante do incio ao fim do projeto por usurios na forma de prottipos rpidos. Observa-se que Preece et al. (2002) tambm compartilha deste ponto de vista por meio do conceito projeto interativo e da necessidade em desenvolver prottipos, ainda que estes sejam de baixa fidelidade. Os testes realizados com os usurios permitem obter novos pontos de vista, de modo a evitar a anlise realizada apenas por projetistas e colegas de trabalho. Estes novos pontos de vista permitem novas correes no projeto de forma a garantir uma interface mais prxima ao grupo de usurios ao qual se destina. 2.3. Avaliao de Tempos de Resposta para Desenvolvimento de Interfaces Segundo Keates et al. (1999) a utilizao de computadores para portadores de limitaes fsicas trouxe muitos benefcios, como a leitura e utilizao de processadores de texto, que permitiram inclusive a integrao no mercado de trabalho deste grupo de pessoas. Contudo, segundo Karshmer (1997), as HCI (Human Computer Interface) desenvolvidas para portadores de limitaes so adaptaes de interfaces para usurios que no possuem limitaes. Entre os principais motivos para a falta de interfaces adequadas, segundo Keates et al. (1999), pode ser citado que a maioria dos usurios no possui limitaes, aumentando a dificuldade e custos para encontrar e realizar testes com grupos representativos de usurios. Deste modo, so necessrias mudanas na filosofia de projeto para incluir usurios com limitaes. No desenvolvimento de interfaces confortveis e teis para usurios com limitaes (idosos ou deficientes), necessrio reconhecer as caractersticas do usurio. Para isto, possvel utilizar uma abordagem que permita obter um modelo do usurio em relao a sua percepo, cognio e reao no manuseio de uma determinada interface.

16

Segundo Blessing et al. (1995), o desenvolvimento de uma metodologia para a criao de interface ocorre em trs estgios: - Estgio 1, Definir o problema: aprender como usurios com limitaes de movimentos interagem com computadores e as diferenas entre usurio com ou sem limitaes. Neste estgio um modelo de interao entre usurio e mquina, como o desenvolvido por Card et al. (1983), pode ser utilizado. - Estgio 2: Sugerir uma soluo: desenvolver uma metodologia que considere o conhecimento do usurio - Estgio 3: Testar a soluo: garantir-se que a soluo efetiva Ignorar o primeiro estgio resulta em produtos no usveis (Buhler, 1997) ou mal sucedidos comercialmente (Mahoney, 1997). Segundo Keates et al. (1999) o modelo do usurio pode ser obtido pelos mtodos os modelos MHP (Modelo do Processador Humano) e KLM (Keystroke Level Model), desenvolvidos por Card et al. (1983). A origem destas modelagens para o comportamento humano provm da neuropsicologia, e utilizam modelagem emprica. Ao utilizar dispositivos como teclado e mouse, esta metodologia adaptou-se tambm para o campo de conhecimento da HCI (Human Computer Interface). Estas metodologias, propostas por Card et al. (1983), subdividem e permitem quantificar os tempos relacionados a execuo de uma determinada tarefa, bem como prever os tempos gastos em tarefas semelhantes. ressaltado que cada usurio possui suas caractersticas individuais e, deste modo, necessitam de uma calibrao prpria para seus tempos. Quando no h dados disponveis a respeito de uma determinada caracterstica do usurio comum assumir estimativas, como utilizar a resposta motora baseando-se em dados de outros usurios. No Modelo do Processador Humano (MHP) o processo de interao subdividido em trs tipos de tempos: - Percepo ( p ): Tempo para percepo do evento, - Cognio ( c ): Tempo para processar a situao e encontrar uma resposta adequada, - Motora ( m ): Tempo para realizar a resposta apropriada.

17

Cada tempo multiplicado por um coeficiente representado por um nmero inteiro, representando os ciclos de cada tipo de tempo (x, y e z, respectivamente), como ilustrado na equao 2.1:

TempoTotal = x. p + y. c + z. m

Eq. 2.1

O coeficiente (x, y, z) sempre um nmero inteiro, pois no se considera meia percepo, meia cognio ou meio movimento. Caso um evento ocorra mais de uma vez, este o coeficiente dado em funo do nmero de repeties da tarefa, como levantar e descer um membro resulta em duas aes motoras. Neste mtodo, assume-se que o tempo total da tarefa e os coeficientes x, y e z de cada tarefa so conhecidos. Estas informaes permitem obter os tempos relativos a percepo, cognio e movimentao do usurio por meio de comparaes entre os tempo utilizados para realizar tarefas que apresentam constantes x, y, z distintas, resultando em um sistema de equaes. Assim, uma tarefa de apertar um boto em funo de um flash de luz permite definir todos os coeficientes como um, pois esta percepo luminosa um estmulo simples que consome um nico tempo de percepo, e a cognio e movimentao (abaixar o dedo) tambm consomem um nico perodo de tempo. Caso se utilize um boto que necessita ser pressionado e solto, dois eventos motores so considerados: apertar e soltar o boto. Desta forma possvel obter diretamente este tempo ao realizar uma tarefa de pressionar e soltar o boto repetidamente. Ainda que Harter (1967) observe que a percepo seja diferente em funo da natureza de cada sentido humano, bem como de indivduo para indivduo, Card et al. (1983) restringem que no contexto de interface homem-mquina apenas estmulos visuais e audveis so considerados. Esta condio permite que o tempo de percepo visual tambm seja obtido diretamente por meio de um teste de percepo a estmulos visuais. Neste teste utilizam-se pequenas interrupes de tempo em uma animao: a menor interrupo de tempo perceptvel equivale ao tempo de percepo.

18

O tempo cognitivo no pode ser obtido diretamente, mas por meio de tipos particulares de estmulos: a medida em que se aumenta o nvel de abstrao da atividade, este tempo cognitivo tambm aumenta. Desta forma o menor nvel de abstrao reconhecer uma cor e uma forma que ocupam um nico ciclo de cognio. Caso seja adicionada uma escolha a ser realizada, como entre um tringulo vermelho e um crculo azul, totalizam-se dois ciclos cognitivos (um para reconhecimento e outro para a deciso). Um nvel de maior abstrao (trs ciclos cognitivos) envolve formas j conhecidas ou que possuem nome, como a seleo de letras, pois adiciona-se um ciclo cognitivo adicional. Desta forma, obtm-se primeiramente os tempos visual e motor. Utilizando-se estes tempos, realizamse testes para a obteno dos tempos cognitivos, variando-se os graus de abstrao e mantendo-se estmulos visuais e motores com o mnimo possvel de alteraes. Para casos mais complexos, se comparado aos utilizados em modelagem MHP, Card et al. (1983) descreve a metodologia Keystroke Level Model (KLM), direcionada a teclado. O mtodo KLM no utiliza coeficientes para os tempos de cada tarefa, mas aumenta o nvel de subdivises da tarefa total, como demonstrado na equao 2.2. Eq. 2.2

TempoTotal = Wk + W p + Wh + Wd + Wm + Wr
Wk : Pressionar tecla Wp : Apontar Wh : Direcionar Wd : Arrastar Wm : Operaes Mentais Wr : Resposta respectiva

Ambos os modelos MHP e KLM segmentam as aes em partes quantificveis que podem descrever as aes realizadas pelo usurio em uma determinada tarefa. Estes mtodos apresentam como limitao no ser considerada uma interdependncia entre estas partes subdivididas, o que impede que o tempo gasto em um segmento altere o tempo gasto em outro segmento desta mesma tarefa.

19

Para o estudo da interao de usurios com limitaes com dispositivos apontadores, como o mouse, necessrio uma metodologia diferenciada, que permita avaliar o percurso realizado durante a movimentao do usurio. Deste modo, Graham e MacKenzie (1996) observam que a interao de usurios sem limitaes com dispositivos apontadores, combinam um movimento inicial balstico (rpido) com um movimento lento em torno do ponto a ser selecionado. Uma comparao realizada por Keates et al. (1999) entre usurios com e sem limitaes motoras demonstra a existncia de movimentos no controlados e conseqente dificuldade de posicionamento como ilustrado na figura 2.4:

Balstico
Distncia Absoluta (Pixels)

Posicionamento Pos. Final

Alvo Pos. Incial

Tempo (ms) Distncia Absoluta (Pixels)

Tempo (ms)

Fig. 2.4 - Comparao da movimentao de um mouse entre usurio com paralisia cerebral (acima), e usurio comum (abaixo) (fonte: Keates et al., 1999). Esta dificuldade pode ser compensada pelo uso de filtros passa baixa, curvas de velocidade e acelerao, interfaces auto-adaptativas e agentes inteligentes de interfaces. Outro aspecto a ser avaliado a tcnica de seleo, em que estudos iniciais demonstram que a utilizao de botes

20

tipo switch facilita a interao e a compreenso, se comparados a movimentos gestuais, ou no original gestures. 2.4. Dispositivos para Interface com o Usurio Mesmo que um sistema possua um elevado grau de autonomia, como veculos inteligentes, ainda necessria a existncia de uma interface entre homem e mquina. Esta interface permite uma realimentao do sistema pelo usurio, seja na forma de corrigir erros ou prover novas tarefas. No seu desenvolvimento, a interface deve ser pensada como funo das variveis dos sistemas a serem controlados (ligar/desligar, controle de temperatura, vazo, etc.), e caractersticas do usurio (fora, altura, presena de limitaes fsicas, etc.). Neste tpico ser realizada uma reviso dos dispositivos de interfaces homem-mquina mais comuns, listados por Dix et al. (1998) e subdivididos em: entrada de texto, posicionamento, e dispositivos de sada de dados. Tambm foram pesquisados dispositivos menos conhecidos para usurios portadores de algum tipo de limitao, de forma a organiz-los seguindo os critrios j descritos. 2.4.1. Dispositivos de Entrada de Dados

Segundo Dix et al. (1998), o teclado tipo QWERTY um dos dispositivos de entrada de texto mais utilizados em computadores, embora tambm existam os modelos alfabtico e DVORAC, nos quais apenas a disposio das teclas de letras alterada. Diversamente do teclado QWERTY, que possui uma letra por tecla, o teclado tipo chord pode possuir quatro ou cinco teclas, de modo que as letras so uma combinao entre as teclas pressionadas.

21

Esta abordagem permite a digitao com apenas uma mo, este teclado ilustrado na figura 2.5:

Fig. 2.5 - Teclado tipo Chord de cinco teclas (fonte: Engelbart, 2007). Alm do uso de teclados, informao textual tambm pode ser adquirida por meio de reconhecimento de escrita em uma rea dedicada, como em palmtop, ou por reconhecimento de voz. Contudo, necessrio relevar que cada usurio possui caractersticas prprias (tipo de letra ou sotaque na fala) que, associadas a fatores emotivos, influenciam interpretao textual ou vocalizada. Outro tipo de dispositivo para entrada o que permite apontar ou arrastar objetos. Dentre os mais conhecidos pode se citar o mouse (convencional ou ptico), touchpad utilizado em laptops, o touchscreen ou tela de toque (utilizada em sistemas de informao para o pblico) e o joystick que pode ser acionado com a mo ou p (em funo do grau das suas limitaes). Para aplicaes associadas escrita ou desenho mo, possvel utilizar o tablet de digitalizao, pois este comporta de forma semelhante uma touchscreen, ainda que no possua nenhum dispositivo para gerao de imagens abaixo da rea na qual se escreve ou desenha. Quando necessria a leitura de vrios pontos da posio do usurio, como em ambientes de realidade virtual, dispositivos como o dataglove (luva com sensores para determinar posio da mo e dedos) ou tcnicas para leitura do corpo inteiro (como reconhecimento de imagem) podem ser utilizadas. na confiabilidade da

22

Segundo Poole e Ball (2007), em casos onde h um grau de perda muito severa nos movimentos possvel utilizar o eyegaze. Esta tcnica consiste em emitir luz infravermelha de baixa potncia sobre o olho. Por meio da medio da posio de reflexo desta luz na crnea, possvel obter a localizao para a qual o usurio est observando. Atualmente este dispositivo, demonstrado na figura 2.6, apresenta um preo que pode torn-lo inacessvel para os usurios finais, em torno de 14900 dlares, como observado em uma pesquisa de preos no site LC Technologies (2007).

Fig. 2.6 - Eyegaze, capaz de ler o posicionamento do olho (fonte: LC Technologies, 2007). Segundo o site de referncia portadores de limitaes fsicas Microsoft (2007), h opes de baixo custo para usurios que perdem movimentos dos membros superiores e inferiores, e necessitam realizar tarefas como digitar pequenos textos ou utilizar funes ativadas por botes. Entre estas alternativas citada a utilizao de um basto que, preso a cabea, permite utilizar interfaces pouco adaptadas ao usurio, como teclados de computador.

23

Outra soluo so os teclados virtuais, que permitem a digitao por meio de apenas um entrada (nico boto do teclado, joystick, contraes musculares ou sistema de sopro e suco), como demonstrado na figura 2.7, por meio do teclado Microsoft (2007):

Fig. 2.7 - Teclado virtual Microsoft (fonte: Microsoft, 2007). tambm possvel a utilizao de dispositivos de sopro e suco de forma a permitir controle de cadeiras de rodas, segundo Speropoulos e Townson (2001), ou o controle de dispositivos eletrnicos como o desenvolvido por Cunningham (2007). 2.4.2. Dispositivos de Sada de Dados

Para a sada de dados, inicialmente utilizavam-se apenas sistemas mecnicos, como galvanmetros e indicadores baseados na leitura direta de transdutores (como termmetros a base de mercrio e sensores de presso). Com o desenvolvimento da eletrnica, as interfaces para sada de dados tambm se modernizaram, de forma a combinar componentes mecnicos e eletrnicos, como impressoras, ou tornando-se puramente eletrnicas. Segundo Siegwart e Nourbakhsh (2004), dentre os sistemas eletrnicos mais comuns para exibir dados, podem ser citados displays (CRT ou LCD) utilizados em computadores e diversas aplicaes. Outro dispositivo de sada de dados utilizado so os diodos emissores de luz, tambm conhecidos por LEDs. Os LEDs possuem como vantagem no precisar do uso de uma luz externa para exibir dados, como o LCD, e um custo que o torna acessvel a diversas aplicaes. Em ambientes de realidade virtual pode ser utilizada a projeo hologrfica, ou o uso de pares de imagens estereogrficas associadas a culos que exibem uma imagem para cada olho.
24

Para portadores de limitaes fsicas torna-se necessrio um estudo de qual interface se adapta melhor a cada tipo de limitao. Usurios de computador com perda total de viso podem utilizar softwares capazes de vocalizar palavras, como o IBM ViaVoice, que permite a leitura de textos sem a necessidade direta de um monitor. Outra alternativa, tambm destinada a usurios com perda de viso so os displays em braile. Estes displays, como o representado pela figura 2.8, utilizam clulas de 6 a 8 pinos capazes se subir ou descer por controle eletrnico, exibindo mensagens de texto codificadas em braile.

Fig. 2.8 - Display braile (fonte: James, 2007) A escolha da interface para portadores de limitaes auditivas deriva do seu grau de perda de sensibilidade, assim as solues podem variar de amplificadores de udio at a cirurgia de implante coclear demonstrada pela USP (2007) e utilizada em casos de surdez profunda.

25

Captulo 3 Interfaces para Cadeiras de Rodas Motorizadas

Usurios com dificuldades cognitivas ou com incapacidades fsicas (fora insuficiente ou problemas de coordenao) podem encontrar dificuldades ou apresentar incapacidade ao operar cadeiras de rodas manuais ou eltricas. Um sistema adequado de interface deve se adaptar s caractersticas dos usurios (diferenas cognitivas e fsicas) e aos locais onde este ser utilizado, (residncia, centro de readaptao, hospital e outros). A reviso bibliogrfica, a respeito de interfaces para cadeiras de rodas, permitiu delimitar objetivos considerados relevantes no desenvolvimento destas interfaces. Para incluir uma maior diversidade em tipos de limitaes, segundo Agostini e Bourhis (1995), uma interface deve apresentar uma modularidade com maior foco em software que em hardware. Segundo os autores, este foco facilita os aspectos de implementao, segurana e confiana.

26

No desenvolvimento das cadeiras TAO-1 e TAO-2, Gomi e Griffith (1998) definiram quatro caractersticas: - Suavidade e Flexibilidade: no significa apenas utilizar materiais macios nos acabamentos, mas tambm prover uma arquitetura flexvel para acomodar os aspectos fsicos e psicolgicos do usurio. Em muitas circunstncias, os aspectos comportamentais humanos so muito diversificados e no podem ser modelados por algoritmos. Deste modo observa-se a necessidade de um sistema flexvel capaz de evitar modos rgidos de operao, desenvolvidos para cenrios especficos. Como exemplo, utilizar apenas reconhecimento de voz pode impossibilitar o controle de uma cadeira de rodas em locais com poluio sonora acentuada. necessria a presena de uma segunda interface para usurio, como um joystick ou mecanismo de sopro e suco. - Falha segura e robustez: o conceito de falha segura refere-se a existncia de sistemas adicionais em espera. Estes sistemas garantem a segurana ao tornarem-se ativos em relao a uma possvel falha. - Degradao esperada: as interfaces e sistemas que se relacionam com o usurio devem evitar falhas inesperadas. Para isto, observa-se que um sistema composto de um maior nmero de pequenos mdulos permite uma degradao mais lenta, se comparado a sistemas que possuem mdulos maiores que envolvem muitas funes. - Evoluo: segundo Gomi e Griffith (1998), um dos motivos pelo qual as teorias de aprendizado em inteligncia artificial falham, o curto prazo de tempo no qual um sistema testado at se obter um determinado resultado. Em sistemas incorporados e situados em um ambiente real, como organismos naturais ou robs autnomos, a evoluo resultado de uma grande diversidade de combinao de caractersticas reais. Desta forma, uma adaptao que considere estas caractersticas pode necessitar um prazo maior que o esperado.

27

Segundo Harvey (1992), robs evolutivos (ER) so uma campo emergente da cincia e tecnologia, no qual estruturas autnomas reais e virtuais evoluem para adquirir caractersticas coletivas de aprendizado em funo de novas geraes. Os princpios da robtica evolutiva podem ser implementados na relao homem-mquina para, por meio de um aprendizado em longo prazo, prover uma adaptao a mudanas de operao. A pesquisa de Min et al. (2002) cita quatro metas para o desenvolvimento de uma interface para usurios de cadeiras de rodas tetraplgicos: - Design amigvel ao usurio: focando uma aparncia agradvel. - Facilidade para vestir: h interfaces, como o uso de eletrodos ou sensores de movimento tipo boto que so presos ao corpo, o que pode dificultar o ato de vestir ou retirar. Um exemplo apresentado por Law et al. (2002), ao otimizar o conceito EagleEyes de Gips (1998); - Modo de dirigir intuitivo: relacionado facilidade do usurio em aprender a utilizar os comandos necessrios e lembrar-se quando necessrio. Esta caracterstica assemelha-se ao conceito de consistncia apresentado por Preece et al. (2002); - Baixo custo. tambm necessrio observar o fenmeno toque de Midas, descrito por Jacob (1991), como Em um primeiro momento, muito gratificante saber que possvel apenas olhar e fazer acontecer, contudo ao fim de algum tempo tudo que o usurio quer olhar executa um comando. Desta forma o desafio construir uma interface que evite este problema.

28

Seguindo a abordagem de interfaces j demonstrada, possvel relacionar um usurio, e suas respectivas formas de interao, com uma tarefa de controlar o deslocamento de uma cadeira de rodas eltrica. Deste modo possvel estruturar uma arquitetura para a relao entre usurio, interface, navegao e tarefa, como descrito na figura 3.1:

Usurio

Mtodo

Tarefa

Interface e filtragem

Auxlio a Navegao

Ambiente Externo

Fig. 3.1 - Interface entre usurio e cadeira de rodas. necessrio observar novamente a presena do ambiente externo, que fecha o sistema provendo feedback visual para o usurio e informaes para os sensores. Observa-se que a interface, filtragem, auxlio navegao e cadeira de rodas tambm podem ser influenciados por distrbios externos, alterando a resposta s interaes do usurio. Para um projeto centrado nas capacidades de interface do usurio, necessrio primeiramente relacionar as suas formas de interao com os comandos necessrios execuo da tarefa, neste caso controlar a cadeira motorizada. Esta associao permite escolher qual o melhor tipo de interface para cada usurio, como movimentos da cabea, de fala, de dispositivos de sopro e suco e de joysticks montados no queixo. Observa-se tambm que a interface escolhida influenciar diretamente na relao do usurio com o mtodo de navegao e no controle da cadeira de rodas. Esta influncia associa-se a fatores como complexidade para aquisio de dados, graus de liberdade para movimentos, custo, confiabilidade e facilidade de uso.

29

Como exemplos, pode-se citar a pesquisa de Shaw et al. (1990) que descreve ser possvel controlar uma cadeira de rodas com dois comandos (virar para a esquerda e andar para frente) e Law et al. (2002) que descrevem um controle com trs comandos (virar para a esquerda, virar para a direita e andar para frente), ambos resumindo-se ao menor nmero de funes necessrias. medida que o usurio apresenta uma maior diversidade de modos de interao tambm possvel aumentar o nmero de funes controladas. Conhecendo-se as formas de interao que o usurio pode realizar e as funes da cadeira de rodas a serem controladas, o mtodo de interface, a navegao e o controle so desenvolvidos como uma combinao de dois fatores: - Tipo de interface a ser utilizada: joystick, controle de voz, respirao (sistemas de sopro), movimentos da cabea e sistemas tipo eye-gaze. Esta avaliao deve ser focada nos graus de liberdade que o usurio possui. - Grau de autonomia do sistema de navegao: definir se e quais funes de suporte para navegao (primitivas) sero utilizadas, como exemplo esto as funes evitar colises e seguir parede. Este estudo deve ser focado nas dificuldades que o usurio possui ao utilizar uma determinada interface previamente escolhida. Deve ser ressaltado que, na abordagem apresentada neste trabalho e ilustrada na figura 3.1, o filtro e o sistema de aquisio de sinal so considerados partes integrantes da mesma interface, favorecendo a sua modularizao. Este conceito permite padronizar entradas e sadas, e alternar entre mdulos de interface sem alteraes no sistema de navegao e controle. Assim sero descritas solues em interface destinadas a usurios tetraplgicos, para posteriormente exemplificar algumas das caractersticas de filtragem e condicionamento de sinal presentes nestas interfaces.

30

3.1.

Utilizao de Sensores de Movimento Interfaces por sensores de movimento relacionam as solues que utilizam estes sensores

posicionados nos locais onde o usurio ainda possui movimentos. Desta forma, as interaes de controle normalmente so resultado da combinao de dois ou mais graus de liberdade e respectivos movimentos do usurio nestes graus. tambm possvel combinar o movimento de um grau de liberdade em funo do tempo, como em dispositivos de scan de opes (teclados virtuais). A escolha e implementao deste tipo de interface inicia-se pela identificao de quais graus de liberdade o usurio possui. Posteriormente estes graus so utilizados para acionar sensores presos ao seu corpo ou a estrutura de uma cadeira de rodas motorizada. Caso o usurio possua apenas um grau de liberdade disponvel, em ltima instncia, podem ser utilizados sistemas de scan de botes semelhantes ao teclado virtual Microsoft. Nestas interfaces apenas uma entrada necessria, como em sistemas de sopro e suco ou botes tipo interruptor. Segundo Yanco (1998a), interfaces de scan apresentam problemas relativos lentido, pois necessrio esperar o tempo de scan. citado como exemplo que, caso um pneu esteja escorregando, preciso compensar parando a cadeira, realizando-se novas interaes para a curva de correo do percurso e retornar ao modo de avano. Sistemas de navegao automtica podem melhorar esta interface acrescentando funes como evitar obstculos e o controle de derrapagem. Outro mtodo de interface apresentado por Min et al. (2002), ao descrever duas interfaces que utilizam como sensores resistores sensveis fora (FSR). Estes FSR se encontram associados a um mecanismo preso ao ombro na primeira interface, e na cabea na segunda opo. Em ambos os casos, antes de utilizar os sensores de movimentos, foram realizados levantamentos do percurso que o usurio pode realizar em cada grau de liberdade. Neste levantamento

31

utilizaram-se sensores magnticos de posio (FOB), demonstrando quais graus podem ser utilizados para cada interface. Desta forma, analisaram seis pessoas que possuem movimentos da cabea e ombros mas, devido coluna vertebral comprometida, so impossibilitadas de movimentar braos e pernas. Os testes de graus de liberdade de um primeiro grupo de usurios demonstrou ser possvel utilizar o movimento de subir e descer dos ombros. Esta interface permitiu duas entradas independentes e quatro movimentos em funo dos ombros esquerdos e direito, como demonstrado na tabela 3.1:

Tabela 3.1 - Interface por movimentos dos ombros (fonte: Min et al., 2002).
Movimentao da cadeira Virar a direita Virar a esquerda Para frente Para trs Ombro esquerdo Cima Repouso Cima Cima e Cima Ombro direito Repouso Cima Cima Cima e Cima

O segundo mtodo, desenvolvido por Min et al. (2002), utiliza movimentos da cabea. Este mtodo tambm se iniciou por um levantamento dos graus de liberdade para cada usurio: subir e descer (pitch) e inclinar lateralmente (roll). Para este levantamento utilizaram-se sensores magnticos de posio (FOB). Os testes de ambas as interfaces, com usurios portadores de limitaes, demonstraram que h certa dificuldade em coordenar os movimentos do ombro ou da cabea de forma a associ-los ao movimento desejado. Em comparao com pessoas normais possvel observar que pessoas com limitaes demoram mais para realizar o trajeto, bem como um maior nmero de colises. Nos testes realizados, com os usurios que apresentam limitaes, houve uma satisfao por poder controlar a cadeira de rodas sem a necessidade de ajuda de outra pessoa. Os usurios tambm aprovaram a interface que possui sensores nos ombros no quesito possuir um design agradvel.

32

Taylor e Nguyen (2003) combinaram redes neurais ou ANN (Artificial Neural Network) e acelermetros para reconhecer movimentos da cabea, testando esta interface com seis pessoas, das quais 2 so incapazes de utilizar joystick. Esta interface tambm utilizou um display para retornar ao usurio a posio lida da cabea de modo grfico. Este retorno permite observar o quanto o usurio se movimentou a partir de um referencial neutro. Os movimentos reconhecidos so: frente, trs, neutro, esquerda e direita, nas variaes: - Aceno: avano para a posio de movimento e retorno imediato para a posio neutra; - Reteno: avano para a posio de movimento e pequena pausa antes do retorno. Segundo Taylor e Nguyen (2003), o retorno visual no altera de modo significativo os resultados, sendo apenas til quando este est prximo ao campo de vista do usurio. Observouse tambm que o sistema de controle por redes neurais deve ser melhor adaptado para evitar condies de falso positivo, bem como estar apto a receb-los sem prejudicar a navegao. Outra soluo pode ser a incluiso de uma entrada rpida adicional para o usurio prevenir situaes de emergncia. Shaw et al. (1990) observam que determinadas interfaces, como sopro e suco, joysticks montados no queixo e movimentos da cabea, ocasionam perda de movimentos desejados. Este fenmeno tambm observado por Jacob (1991), que o reconhece como toque de Midas, por interferir nos graus de liberdade do usurio. Este fenmeno dificulta a adaptao e pode estar presente em interfaces rgidas. Desta forma Shaw et al. (1990) propoem um sensor que utiliza o piscar de olhos como interface. Assim utiliza-se como sensor um par de emissor (LED) e receptor de infravermelho (fototransistor) ao lado de cada olho, permitindo detectar com qual olho o usurio pisca. Esta deteco ocorre por meio da intensidade do sinal infravermelho amostrado. Neste sistema, o LED emite infravermelho pulsado a 1 kHz, para evitar influncia de interferncias externas de luz.

33

Caso o olho esteja aberto, o infravermelho reflete na superfcie do olho, e o fototransistor obtm este sinal para posterior filtragem (filtro passa faixa de 1 kHz) e converso para nvel lgico DC. Quando o olho fechado, no h reflexo de infravermelho para o fototransistor. Esta aquisio permite obter dois estados: olho aberto ou fechado. necessrio tambm considerar o perodo relacionado a eventos de piscar o olho de modo a evitar comandos errados. Assim, apenas so consideradas eventos de fechar de olhos de perodo maior que 0,5 segundo. O procedimento de testes utilizado considerou quatro estados: olhos abertos, olhos fechados, olho direito fechado e olho esquerdo aberto. Por exemplo, para uma curva para a direita, inicialmente os olhos esto abertos, fecha-se o olho direito e o abre novamente. Os testes realizados demonstraram que o sistema no restringiu outros graus de liberdade do usurio, como movimentos da cabea ou dos olhos, e que todos conseguiram se lembrar dos comandos e terminar o percurso. Contudo, alguns usurios encontraram dificuldade para piscar, de modo que um dentre eles no se demonstrou capaz de fechar o olho direito de modo independente ao olho esquerdo. Quando este usurio desejava avanar, utilizava ambos os olhos, e ao realizar curvas utilizava seu olho esquerdo: para uma curva de 90 no sentido horrio, percorria 270 no sentido anti-horrio. 3.2. HaWCoS e a Utilizao de Sensores Piezoeltricos Um caso particular do emprego de uma interface para scan de opes apresentado no projeto HaWCoS (Hands Free Wheelchair Control System), de Felzer e Freisleben (2002) e Felzer e Nordmann (2007), por permitir uma seleo ativa da opo desejada. No scan ativo possvel alternar entre os comandos desejados sem esperar o tempo de varrimento, aumentando o tempo de resposta. O objetivo do projeto HaWCoS, desenvolver uma interface que no utilize as mos para o controle para cadeiras de rodas eltricas e no necessite aguardar os tempos de scan para selecionar opes. Deste modo, o usurio necessitar utilizar de apenas um grupo muscular que

34

possua a capacidade de se contrair voluntariamente, como msculos faciais, queixo ou dedo. Na implementao atual utiliza-se a musculatura da sobrancelha. Esta implementao, por piezoelctricos associados a contraes musculares, fundamentada na observao de Felzer e Freisleben (2002) de outras formas de interface e seus respectivos problemas. Como exemplo, segundo Gips (1998) a aquisio por EOG (potencial electro-oculografico) amostra as tenses musculares da ordem de 100 microvolts. Este baixo nvel de tenso facilita a interferncia de contraes musculares prximas. O mtodo utilizado po Felzer e Freisleben (2002) sensvel a contraes musculares, o que permite tempos de resposta superiores a mtodos de EEG (eletroencefalografia), nos quais os tempo de resposta podem ser superiores a 2 segundos. Sistemas EEG tambm so sensveis a contraes musculares prximas, resultando em falsos positivos, como demonstrado por Kirkup et al. (1997). Interfaces que se utilizam de comando por voz tambm so sensveis a outras fontes sonoras, como conversas com pessoas prximas ou locais com muitas fontes de rudo. Estas limitaes podem impossibilitar a navegao em locais abertos ou conversar e dirigir ao mesmo tempo. Desta forma, segundo Felzer e Nordmann (2007), a utilizao de sensores piezoeltricos para as contraes musculares apresenta como vantagem uma maior robustez a fontes de rudos. Estes sensores piezoelctricos so presos superficialmente a testa por meio de uma faixa elstica, como ilustrado na figura 3.2, permitindo converter a presso mecnica recebida, pelas contraes musculares em uma tenso.

35

Fig. 3.2 - Sensor piezoeltrico e amplificador (fonte: Felzer e Nordmann, 2007). Esta tenso amplificada e enviada para um microcomputador laptop. A arquitetura mais recente de Felzer e Nordmann (2007) j permite substituir este laptop por uma interface embarcada na cadeira de rodas. O microcomputador, ou dispositivo embarcado, so os responsveis pelo reconhecimento e execuo dos comandos da interface. Para isto, so utilizados trs estgios (ou modos) de interface: configurao, switch e controle, como ilustrado na figura 3.3. H tambm um quarto estgio oculto, dedicado a testes.

a. Modo de controle da cadeira de rodas; b. Modo de switch, que seleciona a posio dos controles (esquerda/direira, frente/trs) e comandos da cadeira; c. Modo de configuraes do programa; d. Modo oculto de teste

Fig. 3.3 - Estgios do sistema HaWCoS (fonte: Adaptado de Felzer e Nordmann 2007).

36

Estes estgios podem ser acessados quando necessrio. Desta forma, possvel utiliza-los em uma ordem diferente ou avanar diretamente para o modo desejado. O modo de configuraes ajusta a sensibilidade do sinal obtido do usurio, e os tempos para os comandos de clique simples (uma contrao muscular) ou duplo clique (duas contraes musculares). Para o ajuste de sensibilidade, so definidos o ganho e uma constante de threshold. Esta constante que permite reconhecer quando ocorre um evento de clique por meio da borda de subida do sinal, ou seja quando este ultrapassa a constante de threshold. Outro parmetro que permite ajuste o tempo entre os dois cliques, permitindo diferenciar um comando de clique simples ou duplo para cada usurio. necessrio observar que, quando uma funo de duplo clique ocorre, o primeiro clique ignorado. A figura 3.4 exemplifica estes parmetros como a constante de threshold (T) e o reconhecimento de um evento de duplo clique (perodo definido como mximo de 1,2 segundo para duplo clique).
Tenso (V) 1,2 seg. 5 5 Tenso (V) 1,2 seg.

T (2,4)

T (2,4)

0 1 Clique Tempo (seg.) 2 Clique (no ocorreu)

0 Tempo (seg.) 1 Clique 2 Clique (ocorreu)

Fig. 3.4 - Reconhecimento de evento de clique simples (esquerda) e duplo clique (direita) (adaptado de: Felzer e Freisleben, 2002). Para um ajuste adequado, tambm necessrio o correto posicionamento do piezoeltrico para cada usurio e suas respectivas caractersticas. Este ajuste realizado de modo iterativo: o usurio utiliza o piezoeltrico em posies diferentes e contrai voluntariamente o msculo associado. A medida que os resultados permitem uma melhor sensibilidade ao msculo escolhido, define-se a melhor posio.

37

Experimentos com diferentes usurios demonstram que usualmente este tempo de posicionamento inferior a 2 minutos. Este tempo tambm tende a ser reduzido a medida em que se conhece melhor as posies em que h uma maior sensibilidade para cada usurio. Quando o sistema HaWCoS no se encontra conectado a cadeira de rodas, o modo de controle pode ser utilizado como simulao. Esta simulao permite treinar os comandos utilizados, de modo a testar se os ajustes da fase anterior esto definidos de modo adequado ao usurio. Segundo Felzer e Freisleben (2002), a simulao tambm permite o aprendizado para os modos de interface antes de realizar um controle real de uma cadeira de rodas. A simulao possui dois indicadores grficos de barra para representar os eventos de cliques: o primeiro para indicar o reconhecimento do clique e um segundo para o tempo decorrido entre dois cliques. Para a indicao de um clique utiliza-se um grfico de barra com um indicador de threshold. Quando o nvel de tenso supera este threshold, ocorre um evento de clique. O segundo indicador representa o tempo entre dois cliques: trata-se de uma barra vertical que inicialmente saturada a cada evento de clique, e decresce a medida em que o perodo definido para o duplo clique decorre. Quando o seu nvel se esgota (fim do perodo de duplo clique) e nenhum evento de clique ocorre, define-se como um clique. Caso ocorra um segundo clique neste perodo, considerado um duplo clique, como demonstrado na figura 3.4 ( direita), e o evento do primeiro clique ignorado. Estes indicadores de tempos para clique so necessrios durante a adaptao do usurio com a interface, normalmente entre 15 a 20 minutos. Aps este prazo, o indicador no mais necessrio. A fase de simulao recebeu aprimoramentos para a sua execuo em microcomputador no artigo de Felzer e Nordmann (2007), que incluem um percurso virtual para testar a navegao.

38

No modo de controle da cadeira de rodas, os movimentos alternam-se entre as funes de avanar (frente/trs) e rotacionar (esquerda/direita) a cada clique. A cada evento de dois cliques alterna-se entre parar ou controlar movimentos (avanar ou rotacionar), como ilustrado na figura 3.5. Observa-se que o comando trs no presente neste layout, e pode ser utilizado ao selecionar um layout diferente.

Avanar (Frente)

Rotacionar (Esquerda)

Parar

Rotacionar (Direita)

Legenda: Clique simples


Avanar (Frente)

Clique duplo

Fig. 3.5 - Controle do avano por cliques (fonte: Adaptado de Felzer e Nordmann, 2007). Na condio parar, possvel retornar e alternar entre os modos de simulao e ajuste a cada clique nico. No estado avanar (para frente ou para trs) inicialmente desloca-se com metade da velocidade, e esta aumenta at a velocidade mxima em funo do tempo. Esta acelerao permite facilitar a realizao de manobras lentas, ao custo de uma reduo da velocidade inicial de deslocamento em percursos maiores. Segundo Felzer e Freisleben (2002), esta variao de velocidade no ocorre com sistemas tradicionais de joysticks, que permitem iniciar com a velocidade mxima. Deste modo, espera-se que o controle pelo sistema HaWCoS apresente um tempo maior que o controle tradicional para a execuo de um mesmo percurso.

39

Para a realizao de testes em situaes de controle reais utilizou-se uma cadeira modelo Invacare Garant G24SX-Pr, que permite uma velocidade mxima de 50 metros por minuto. Realizaram-se 20 testes para o modo de controle por joystick e 20 testes para o modo de controle pelo HaWCoS. Desta forma, comparou-se os tempos gastos pelo controle de um joystick comum com o sistema HaWCoS na execuo de trs percursos, como ilustrado na figura 3.6:

Percurso 1

Percurso 2

Corredor Percurso 3 3m

50m

Edifcios

250m Sala 2 Sala 1

Fig. 3.6 - Percursos para teste (fonte: Felzer e Freisleben, 2002). O primeiro percurso foi realizado em local aberto pavimentado de 250m, o segundo percurso um deslocamento em edifcio pblico, e o terceiro uma manobra em um corredor. No terceiro percurso, considera-se que inicialmente o usurio est de frente para a primeira porta, e realiza uma manobra para ficar de frente para a segunda porta.

40

A tabela 3.2 representa os tempos gastos em cada percurso, permitindo comparar os tempos gastos com o sistema HaWCoS e uma interface tradicional de joystick.

Tabela 3.2 - Comparao de tempos (segundos) entre percursos (fonte: Felzer e Freisleben, 2002).
Mtodo \ Percurso (segundos) Joystick HaWCoS Aumento de Demanda (HaWCoS) Percurso 1 312 441 41% Percurso 2 67 98 46% Percurso 3 Menor que 20 Menor que 30 50%

Os tempos observados demonstram que a interface HaWCoS demanda em torno de 41% a 50% a mais que o tempos gastos para as interfaces convencionais de joystick. Contudo Felzer e Freisleben (2002) consideram que este acrscimo de tempo aceitvel, em vista que a interface utilizada possui apenas uma entrada. tambm observado que o esforo necessrio do usurio para o controle reduzido, e permite que usurios com limitaes fsicas severas utilizem esta interface. Testes realizados por Felzer e Nordmann (2007) nos percursos da figura 3.7 demonstram que h dificuldades para percorrer percursos retos.

Controle por joystick

Controle por HaWCoS

Fig. 3.7 - Tragetria da cadeira e sistema de controle (fonte: Felzer e Nordmann, 2007).

41

Estas dificuldades so associadas a dois fatores: o no alinhamento dos rodzios dianteiros (caster wheel), e a diferena de velocidade entre os motores de trao. Quando h um desalinhamento dos rodzios dianteiros, usurios com a interface de joystick so capazes de realizar compensaes imediatas. Contudo seria necessrio adicionar sensores de direo nas rodas dianteiras, para desta forma o sistema HaWCoS realizar as mesmas correes. Outro fator de desvio se deve diferena de velocidade com que cada um dos dois motores traciona as rodas traseiras. Para a correo deste desvio podem ser utilizados encoders nas rodas traseiras e deste modo realimentar a malha de controle. Novos aprimoramentos foram realizados, por Felzer e Nordmann (2007), ao incluir um sistema embarcado que permite a utilizao desta interface sem a necessidade de um computador. Este dispositivo embarcado utiliza um microcontrolador e um display LCD de 128 x 64 pixels, ambos alimentados por baterias da cadeira de rodas. Desta forma, tornou-se possvel utilizar a mesma interface grfica, j implementada no computador, bem como permitir escolher entre computador ou dispositivo stand-alone. Segundo Felzer e Freisleben (2002) e Felzer e Nordmann (2007), as pesquisas futuras podem envolver o emprego de sensores para o aumento do grau de autonomia da cadeira de rodas, bem como o estudo de melhorias para esta tcnica de interface. 3.3. Interface Remota por Computador Embarcado A pesquisa de Ross (1996) prope um controle remoto digital de eletrodomsticos e equipamentos de escritrio por rdio freqncia e infra vermelho. Este prottipo utilizou como arquitetura uma placa me com processador 8086, uma placa dedicada a reconhecimento e sntese de voz, e dois mdulos de transmisso e recepo de dados, um para por infravermelho e um segundo para rdio freqncia.

42

O mdulo de infravermelho tambm possui um modo de aprendizado, que permite memorizar e reproduzir outros protocolos de comunicao infra-vermelha, para posterior controle de outras aplicaes. Desta forma possvel controlar eletrodomsticos, de forma remota, por meio de uma interface adequada s caractersticas do usurio. Testes realizados com os usurios demonstram que alguns preferem sistemas de sopro e suco ao invs de reconhecimento de voz. Esta opo resultado de um maior consumo de tempo para a vocalizao dos comandos, e perda da privacidade quando se utiliza comandos associados a senhas, por exemplo. Este projeto foi utilizado como referncia para Ross e Sanford (1997) propor uma interface homem-mquina para controle remoto, fundamentando-se em dois princpios: - Construir um computador que para ser vestido pelo usurio. Este computador deve possuir interfaces de entrada modulares e necessidades do usurio. - Desenvolver um conjunto mnimo de softwares que permitam a comunicao com protocolos de diversos produtos presentes em residncias. O desenvolvimento deste novo prottipo utiliza como metodologia: identificar as interfaces adequadas para cada usurio, avaliar estas solues por meio dos critrios de prtica de uso do projeto universal, e selecionar a interface que apresente a melhor prtica de uso. Desta forma, Ross e Sanford (1997) citam as opes: teclados, matrizes de teclas, touch-pads, telas de toque, softwares de reconhecimento de voz (associados a uma placa de som interna), sopro e suco, sistema de rastreamento da posio dos olhos e tcnicas EMG (eletromiografia) e EOG (electrooculografia). intercambiveis em funo das

43

3.4.

Utilizao da Informao Facial Reconhecendo que a maior parte das intenes humanas aparecem na face, Adachi et al.

(1998) propem uma interface que se utiliza dos movimentos faciais observados por uma cmera. Restringindo-se as expresses faciais e a direo da cabea, possvel utilizar duas abordagens para a interface: na primeira controla-se de uma cadeira de rodas, e na segunda abordagem so emitidos alertas de obstculos no observados pelo usurio. Nesta segunda abordagem, mensagens de alerta podem ser enviadas ao usurio quando objetos se aproximam em uma direo diferente daquela observada pela face, facilitando o desvio de obstculos. Desta forma, os comandos de movimento podem vir de uma outra interface, como a voz por exemplo. Na primeira abordagem, controlar a cadeira de rodas, a interface pode utilizar os movimentos faciais como meio de confirmao de movimentos autnomos. Neste caso, o usurio pode acenar a cabea para concordar com um movimento de avanar. Outro meio de confirmar os movimentos pode ocorrer por um joystick com atuadores internos: quando sugerido um deslocamento para frente, este se inclina para o mesmo sentido. Desta forma, caso o usurio no deseje avanar, basta segurar o joystick em uma posio neutra (centro). Outro meio de controle reconhece a posio da face, e desta forma, realiza os movimentos de controle da cadeira de rodas ao acompanhar as rotaes da cabea. Como exemplo, se o usurio move a cabea para a direita, a cadeira se desloca para a direita. Para a obteno da direo da face, so observados 10 pontos referenciais, envolvendo olhos, nariz, queixo e face. Estes pontos so acompanhados de modo a se obter a direo e respectivos movimentos de um plano representado pela disposio destes pontos sob a face. reconhecido, por Adachi et al. (1998), que normalmente o usurio realiza movimentos da cabea por motivos alheios a necessidade de controle da cadeira de rodas. Para distinguir estes movimentos dos necessrios para o controle, fenmeno de toque de midas, apenas so interpretados as situaes de movimentos lentos seguidos de uma parada. Desta forma, utilizouse um filtro de suavizao, ajustado pelo nmero de amostras (frames) por segundo obtidos.

44

Neste filtro, amostra-se a variao de posio da cabea por meio dos frames: para uma quantidade menor de amostras (inferior a 5); e para uma sensibilidade maior, utiliza-se uma amostragem maior (superior a 20). Assim, caso a sensibilidade do filtro seja alta, movimentos rpidos da cabea sero adquiridos com maior freqncia, resultando em deslocamentos indesejados. De modo recproco, caso a sensibilidade do filtro seja baixa, evita-se um maior nmero movimentos indesejados, embora o tempo de resposta do sistema aumente (torna-se mais lento). Optou-se por utilizar 10 amostras como um valor otimizado para esta relao. Um exemplo desta filtragem demonstrado na figura 3.8:

Posio (Graus)

Posio (Graus)

Tempo (x 1/30 segundos)

Tempo (x 1/30 segundos)

Fig. 3.8 - Sinal sem filtragem (esquerda) e com filtragem (direita), (fonte: Adachi et al., 1998). Os testes realizados demonstram que os tempos de resposta so lentos para o usurio se desviar de obstculos durante a navegao. Deste modo, esta funo auxiliada por sonares, mediante uma expresso de confirmao do usurio, para a navegao autnoma. As informaes obtidas pelo sonar, como a deteco de um obstculo em determinada direo, permitem inibir movimentos da cadeira para a direo de uma parede, por exemplo. Como sugestes para outros meios de interface, Adachi et al. (1998) sugerem o reconhecimento de expresses faciais, acompanhamento da posio dos olhos e o mapeamento prvio do local para uma navegao facilitada.

45

3.5.

Eletrodos para Leitura de Posio dos Olhos Em casos que o grau de limitao impossibilita o uso de sensores de movimento pelo corpo,

possvel utilizar eletrodos sensveis a estmulos gerados pela movimentao dos msculos dos olhos, permitindo uma leitura da sua posio. O projeto EagleEyes, apresentado por Gips (1998), utiliza como sensor um conjunto de eletrodos que avaliam a posio dos olhos por leituras de potenciais eltricos. Estes potenciais so amplificados e enviados para interface com o computador. Testes com pessoas normais demonstram um tempo de 15 a 30 min. para se adaptar a interface, e escrever uma mensagem pequena no teclado virtual do monitor. Segundo Gips (1998), esta interface tambm foi testada com grande sucesso em 24 crianas com limitaes severas, focando aspectos de diverso, comunicao e educao. Como sensores so utilizados eletrodos sensveis ao potencial electro-oculografico (EOG), tambm conhecido como potencial electronystagmo-graphic (ENG), correspondente ao ngulo do olho em relao cabea. Estes cinco eletrodos so dispostos na face, como ilustrado na figura 3.9, de modo que o par horizontal obtm o movimento horizontal e o par vertical obtm os movimentos verticais, ambos os pares possuindo um mesmo eletrodo de referencial.

Fig. 3.9 - Exemplo de utilizao do EagleEyes (fonte: Gips e Olivieri, 2007).

46

A aquisio de dados realizada por amplificadores diferencias, em ganho da ordem de 10000. Este sinal amplificado ento adquirido por um sistema de aquisio (A/D) de um computador Macintosh ou Windows. Considerando que os sinais amostrados so da ordem de 100 microvolts, Gips (1998) reconhece que os sensores so sensveis a movimentos de outros msculos, como piscar de olhos, movimentos da cabea, movimentos faciais, interferncia de outros equipamentos eltricos ou reaes qumicas entre a pele e o eletrodo. No sistema EagleEyes necessrio ajustar os ganhos por eletrodo, que variam de usurio para usurio, pois o sistema emula o controle de um mouse. Esta emulao permite o seu uso em aplicaes convencionais, indicando um clique quando o usurio observa um determinado ponto por um tempo maior. relatado o fenmeno toque de Midas descrito por Jacob (1991), no qual comandos so executados de modo involuntrio, apresentando-se como soluo o uso do piscar de olhos voluntrio para executar a funo. Contudo deve ser observado se o usurio capaz de piscar voluntariamente. Usurios novos so ensinados a utilizar o EagleEyes, mantendo a cabea fixa e, movimentando apenas os olhos para controlar um cursor em uma tela branca. Posteriormente um jogo de computador simples utilizado para o treinamento. Testes realizados com 12 estudantes de faculdade e 10 professores e funcionrios demonstraram que, aps uma hora, j possvel obter um acerto de 90% a 100% no jogo de treinamento; e 11 dos estudantes e 8 dos funcionrios e professores conseguiram escrever a mensagem Hello EagleEyes. Esta capacidade de adaptao varia muito em funo do usurio (de 15 min ou at meses). Como exemplo, crianas paralticas desde o nascimento, e que nunca interagiram fisicamente com objetos, encontram grande dificuldade at reconhecerem que podem controlar o cursor. Na interface EagleEyes foi possvel observar que cada usurio adquire uma forma prpria de se comunicar, de forma que no necessrio seguir exatamente o movimento dos olhos, mas a forma com a qual a pessoa interage com esta interface.

47

Considerando que no possvel para a maioria dos usurios utilizarem um teclado virtual de 30 teclas, dada acurcia necessria, estas teclas foram agrupadas em grupos. Para o caso de usurios com limitaes severas, as perguntas se resumem a sim ou no (ex: A sua letra est no grupo ABCD?). Segundo Gips (1998), possvel controlar objetos reais por meio do EagleEyes, como carrinho de controle remoto ou cadeiras de rodas, como a Wheelesley de Yanco e Gips, (1997). No projeto de Yanco e Gips, (1997) a posio dos olhos associada a uma interface grfica em um computador com setas: quando o usurio observa uma das setas por um determinado tempo, entende-se como um clique. Nesta cadeira de rodas Wheelesley os testes demonstram que pode ser necessrio adicionar uma entrada adicional como um piscar voluntrio de olhos, ou um boto que possa ser utilizado pelo usurio para desligar a interface. Estas medidas permitiro evitar comandos acidentais quando o usurio observa o ambiente local apenas. Outra observao sugere retirar a interface grfica para usurios com maior experincia neste sistema, mantendo apenas o controle pelo EagleEyes. Segundo Gips (1998), um ponto a ser estudado como melhorar a inteligncia do sistema EagleEyes para facilitar o controle do usurio. Como exemplo, utilizar os movimentos rpidos (30 a 120ms) que o olho humano capaz de realizar enquanto observa uma cena ou l um texto no computador como forma de prever onde o usurio deseja mover o cursor na tela. Reconhecendo duas fontes de distrbio para a aquisio de sinais e adaptando as caractersticas do sistema de interface EagleEyes, Law et al. (2002) realizaram otimizaes para reduzir o nmero de sensores e facilitar o ato de vestir esta interface. A primeira fonte de distrbios de leitura referente a movimentos inconscientes dos olhos (que raramente esto parados), e a segunda fonte de distrbios relacionada a variaes de condutividade da pele de indivduo para indivduo como resultados de movimentos como piscar de olhos.

48

Deste modo, o projeto de Law et al. (2002) contornou a primeira fonte de distrbio ao interpretar os sinais recebidos como zero ou um, e no mais como uma emulao de mouse e o posicionamento contnuo em cada eixo. A segunda fonte de interferncia foi contornada ao reduzir-se o nmero de eletrodos utilizados, de cinco sensores para trs, e a sua colocao em um dispositivo semelhante a um pequeno capacete. Os movimentos da mandbula so observados pela presena de um potencial eltrico muito acima do observado pelos olhos. Desta forma o EOG obtido pelos trs sensores permite obter o posicionamento horizontal dos olhos e a movimentao da mandbula, relacionando todos os pares de sensores a um ponto referencial. A aquisio do sinal se faz por meio de eletrodos de superfcie (tipo metal-metal chloride), e amplificadores operacionais para filtrar a componente DC (offset relacionado diferena de potencial da posio dos eletrodos), e amplificar em 72 dB a componente AC (resultante do estmulo muscular). Este conjunto permite um sistema estvel, desde que a posio e sensibilidade dos eletrodos bem ajustada para o usurio. Uma comparao entre o mtodo de disposio utilizado pelo EagleEyes e por Law et al. (2002) permite observar que os sensores verticais foram retirados, como ilustrado na figura 3.10:

Fig. 3.10 - Comparao entre disposio dos sensores pelo mtodo EagleEyes e Law et al. (2002), esquerda e direita respectivamente (fonte: Law et al., 2002).

49

Desta forma, para desloca-se para frente ao se movimentar a mandbula, e para a direita e esquerda ao olhar para a direita e esquerda, respectivamente, como ilustrado na tabela 3.3:

Tabela 3.3 - Movimentao pelo mtodo de Law et al. (2002), (fonte: Law et al., 2002). Comando Curva para esquerda Curva para direita Movimentar-se para frente Movimentar-se para trs Interao Olhar para a esquerda Olhar para a direita Movimentar o queixo No implementado

O movimento andar para traz no foi implementado por motivos de segurana, posto que uma pessoa com grande grau de limitao fsica no capaz de observar com clareza obstculos que se encontram para trs. 3.6. Eletroencefalografia da Componente Alfa Diversamente das tcnicas de EMG e a EOG, que so dedicadas a leitura do potencial eltrico muscular, a eletroencefalografia (EEG), que consiste em analisar os sinais eltricos gerados pelo crebro, utiliza-se de eletrodos dispostos na superfcie do couro cabeludo. Estes sinais, devidamente tratados e filtrados, permitem diagnsticos mdicos e estudos de biofeedback. Este estudo de meios de biofeedback permitir desenvolver novas interfaces, como o cursor de computador controlado por EEG, demonstrado por Wolpaw et al. (1991). Segundo Kirkup et al. (1997), embora tenha sido observado um progresso na rea de biofeedback nos ltimos anos, ainda so encontradas dificuldades na sua implementao. Como exemplo, pode ser citado o tempo necessrio para treinamento, que pode variar de dias a meses e dificuldades para a amostragem do sinal. Estas dificuldades de amostragem se associam a caractersticas de impedncia dos eletrodos, em alguns casos a alta impedncia dificulta a obteno do sinal e em outros, h um mau contato entre eletrodo e usurio.

50

Observando estas dificuldades, Kirkup et al. (1997) prope uma interface que utiliza-se de dois eletrodos, e de uma tcnica de biofeedback que favorea um aprendizado amigvel. Os dois eletrodos so configurados como bipolar, e dispostos na parte traseira do couro cabeludo, prximo as regies ocipital-temporal. A utilizao dos eletrodos neste local permite uma aparncia mais discreta, evitando demonstrar os traos de limitao do usurio. Como biofeedback utiliza-se a componente alfa do espectro do eletroencefalografia, que possui de 3 a 8Hz. A sua presena no necessita de treinamento do usurio, e ocorre quando se fecha os olhos por mais de um segundo. Aps este perodo, esta componente tende a aumentar em amplitude at se estabilizar. Para os testes utilizou-se um grupo de 11 mulheres e 10 homens, instrudos para permanecerem sem se movimentar (relaxados) e fechar os olhos por 5 segundos. A EEG foi observada por meio de 24 eletrodos, contudo apenas o sinal dos dois eletrodos da regio ocipital-temporal foram estudados. Os resultados permitiram concluir que todos os usurios apresentaram um aumento da atividade alfa aps fechar os olhos. Nos testes, esta freqncia alfa foi observada entre 8Hz e 12Hz aps 1,3 segundo ou mais aps os fechar dos olhos. Possuindo como base estes dados, Kirkup et al. (1997) desenvolveram um sistema que reconhece esta componente alfa e responde com um sinal de infravermelho. Esta configurao se assemelha a um controle remoto e representada pela figura 3.11:

Usurio

Amplificador de ganho 74dB

Filtro passa-faixa Freqncia: 8Hz a 12Hz

Conversor RMS para DC

Transmissor de infravermelho

Comparador

Amplificador de ganho 34dB

Amostrador de sinal

Tenso de referncia (Vth)

Fig. 3.11 - Diagrama do sistema de controle pela componente alfa (fonte: Kirkup et al., 1997).

51

Os experimentos realizados demonstraram situaes de falsos positivos, ou seja, quando os olhos esto abertos e observa-se uma tenso de sada do comparador associada a olhos fechados (presena de componente alfa). Segundo Kirkup et al. (1997), estes eventos esto associados a interferncias de msculos prximos aos eletrodos, como movimentar ou piscar dos olhos, movimentos da cabea, mandbulas e fontes externas de rudos. Observaram-se tambm, situaes de falso negativo, ou seja, quando o usurio est com os olhos fechados e no detectado o sinal do comparador em nvel alto. Para corrigir ambos os casos, de falso positivo ou falso negativo, realizado o ajuste da tenso de referncia Vth (ilustrada na figura 3.11) para cada usurio. Este ajuste realizado de forma iterativa, por meio de vrios testes de fechar e abrir de olhos com o usurio. Como exemplo, um dos usurios apresenta uma tenso entre 0,7V a 1,1.V para olhos fechados e 3V a 4V para olhos abertos, sugerindo um referencial de comparao (Vth) de 1,6V a 2,0V. A figura 3.12 demonstra que usurios diferentes apresentam um aumento da componente alfa em taxas de crescimento e amplitudes diferentes.

Tenso (V)

Tempo (seg.)

Fig. 3.12: Amostragem de componente alfa (tenso amplificada em funo do tempo) para dois usurio diferentes (fonte: Kirkup et al., 1997).

52

Desta forma, Kirkup et al. (1997) observam que, embora o posicionamento dos sensores no seja critico, necessrio um ajuste de referencial de comparao para cada usurio (Vth na figura 3.12). Aps o ajuste da Vth, testes realizados com dois usurios demonstram que estes so capazes de realizar as atividades de chaveamento em perodos de 2 a 3 segundos. Contudo, quando submetidos a situaes de estresse, este tempo tende a ser superior a 5 segundos. Observou-se que, para um mesmo usurio, os valores de tenso da componente alfa aumentam de 1V para 3V de modo aproximadamente proporcional em funo do tempo. A taxa de crescimento constante da componente alfa pode permitir mais de uma sada de controle, desde que ocorra um ajuste adequado entre os nveis de tenso de referncia para cada sada (Vth). Alm do ajuste adequado do valor Vth, outro meio desenvolvido para corrigir os falsos positivos opera em paralelo ao sistema EEG e consiste em reconhecer interferncias de msculos prximos pelo mtodo da EMG. Este mtodo reconhece que as componentes EMG possuem uma amplitude muito superior a EEG e se localiza em freqncias prximas a 15Hz. Deste modo, utiliza-se uma arquitetura semelhante a utilizada na figura 3.12 operando em paralelo e dedicada a leitura da EMG. Quando um sinal relativo a contrao muscular (EMG) detectado, as leituras EEG so desabilitadas; e reabilitadas assim que este sinal proveniente de estmulos musculares no mais presente. Os testes realizados, com a implementao deste dispositivo adicional de EMG, demonstram que no houveram falsos positivos no perodo testado de 15 minutos. Contudo observada a necessidade em definir uma tenso de referencial adicional para o sistema EMG em paralelo, bem como o inconveniente de no ser possvel obter leituras da componente alfa durante distrbios EMG. 3.7. Implantes Neurais e Comunicao Bidirecional Pesquisas de interfaces neurais em animais, como a utilizao de neurnios de uma lampreia por Graham-Rowe (2000) para o controle de robs; e os implantes realizados por Chapin et al. (1999) e Talwar et al. (2002), que permitiram receber e enviar sinais de crebros de ratos, demonstraram a possibilidade de utilizar implantes como meio de interface homemmquina.

53

Atualmente, tambm possvel encontrar exemplos de implantes para interfaces homemmquina bem sucedidos, tanto para o envio quanto para o recebimento de informaes. Dentre estes exemplos podem ser citados o implante coclear para casos de surdez profunda (homem recebe informaes), apresentado pela USP (2007); e o controle de cursores de computadores (homem envia informaes), como demonstrado por Kennedy et al. (2000). Observando ser possvel receber e enviar informaes por meio de implantes, Gasson et al. (2002) prope um implante para interface bidirecional entre homem e mquina. Este implante constitui-se de uma matriz de 100 eletrodos sobre uma base de 4 x 4 mm, ilustrada na figura 3.14, implantada em um nervo perifrico do brao esquerdo de um dos autores (K. Warwick). Desta forma foi possvel o acesso a neurnios responsveis por atividades sensoras (da pele) e motoras (msculos).

Fig. 3.13: Implante Bidirecional e Eletrodos (fonte: adaptado de Gasson et al., 2002). Segundo Gasson et al., 2002, os sinais obtidos por meio dos eletrodos so amplificados e filtrados pela tcnica butterworth em 5 ordem, em passa-faixa de 250Hz a 7,5KHz, para um ganho de 5000. Aps este tratamento, um microcontrolador realiza a converso analgica para digital e posterior envio para o transmissor de rdio freqncia (RF). A recepo de dados para o usurio ocorre de modo inverso: a recepo em RF convertida em pulsos para o eletrodo correspondente, de modo a estimular conjuntos de neurnios associados a pele.

54

Observou-se que a utilizao do implante no resultou em perda da capacidade motora ou sensora do usurio implantado, segundo Gasson et al. (2002). Esta interface permitiu o controle de trs dispositivos: uma prtese moderna Southampton Hand, uma cadeira de rodas e um conjunto de trs robs. Para o controle de um conjunto de trs robs utilizaram-se as funes reagrupar ou afastar, em funo dos estmulos do usurio. A prtese utilizada possui um conjunto de sensoreamento e controle sensvel a fora e escorregamento de objetos, permitindo a pega de objetos com o mnimo de fora necessria. O implante permitiu facilitar o controle desta prtese, bem como fechar a malha de controle ao receber informaes de seus sensores. No controle da interface com a cadeira de rodas utilizaram-se sensores para evitar colises associados a dois mtodos de interface, em ambos os casos observou-se uma margem de acerto de 90% em relao aos movimentos desejados pelo usurio. - No primeiro mtodo: os eletrodos produzem valores discretos para a movimentao na direo escolhida (frente, trs, esquerda e direita). - No segundo mtodo: utiliza-se apenas uma entrada, que permite varrer as direes a cada novo estmulo. Desta forma a direo desejada escolhida quando o usurio interrompe o varrimento por um determinado perodo. Segundo Gasson et al. (2002), o ponto utilizado para a instalao da prtese foi definido pelo seu fcil acesso, ainda que distante do crebro. Deste modo, implantes realizados diretamente no crebro podem obter resultados diferentes. relevado que, para a execuo deste implante, foi necessria autorizao das autoridades do pas local (Reino Unido) nos procedimentos da neurocirurgia e aplicaes de interfaces bidirecionais. Deste modo, os trabalhos futuros tambm devem considerar os aspectos ticos envolvidos. Um aspecto observado por Gasson et al. (2002) a sensao de incorporar o brao mecnico como parte de seu corpo. Esta constatao facilita a utilizao do brao artificial e os autores sugerem novas pesquisas neste sentido.

55

3.8.

Aplicaes com Implantes Cerebrais As pesquisas de Nicolelis (2001) possuem como foco os aspectos relacionados ao

desenvolvimento de interfaces homem-mquina por meio do crebro, definidas como HBMI (hybrid brain-machine interface). Segundo Nicolelis (2001), futuramente estas interfaces permitiro o controle de dispositivos virtuais, eletrnicos e mecnicos de modo a possibilitar novas possibilidades teraputicas para restaurar as capacidades motoras, sensoriais e cognitivas (como resultado das duas anteriores). Assim possvel definir dois tipos de aplicao para as HBMIs em funo do usurio: receber (tipo 1) ou enviar informaes (tipo 2). As aplicaes em que a HBMI envia dados ao usurio por estmulos no crebro relacionamse a atividades sensoriais, como um exemplo tpico pode ser citado o implante coclear, descrito em USP (2007). De forma anloga a leitura e interpretao em tempo real das atividades cerebrais do usurio permite o controle de dispositivos artificiais, como braos robticos. interessante observar que Nicolelis (2001) define que aplicaes clnicas envolvem uma combinao entre enviar e receber dados, como os implantes para usurios com epilepsia. No desenvolvimento de uma HBMI que recebe informaes do usurio, necessrio resolver duas questes: como ler estes dados, e como transmiti-los ao dispositivo a ser controlado. Para a aquisio de dados necessrio o monitoramento de um grupo de neurnios cerebrais e processar esta informao por algoritmos dedicados a extrair os comandos desejados. O monitoramento da informao pode ser realizado sob o couro cabeludo, pelo mtodo do eletroencefalografia (EEG), como j utilizado para a movimentao de cursores de computador na pesquisa de Wolpaw et al. (1991). Infelizmente as leituras realizadas por mtodos pouco intrusivos, como EEG, apresentam um sinal de sada correspondente a um grupo de milhes de neurnios. Deste modo torna-se difcil isolar a leitura relacionado ao comando desejado, pois os sinais motores esto presentes apenas em determinas populaes de neurnios. Contudo Nicolelis (2001) ressalta a presena de um fenmeno, denominado plasticidade, no qual outros neurnios podem enviar informaes associadas a movimentos, a medida em que so treinados pelo usurio.

56

Desta forma, segundo Nicolelis (2001), um desafio maior que a escolha do local adequado para a colocao do implante o desenvolvimento de algoritmos adequados a interpretar os comandos do usurio, pois estes mudam a sua forma em diferentes intervalos de tempo. Um exemplo de aplicao clnica para o HBMI so os casos de epilepsia, nos quais as pesquisas realizadas demonstram que normalmente h um padro de sinal cerebral que antecede os ataques em intervalos de 2 a 5 minutos (em funo do paciente). Assim, segundo Nicolelis (2001), a utilizao de HBMI para pacientes em que os ataques podem ser substancialmente reduzidos por impulsos eltricos j apresentam resultados significativos. Nos demais casos, em que os ataques so inibidos por medicamentos, estuda-se o implante de micro-bombas de medicamentos no paciente. Os estudos de mapeamento cerebral em humanos e primatas j permite identificar as regies em que se concentram as atividades relacionadas a movimentao, sugerindo que os implantes para HBMI devem localizar-se prximos a determinadas famlias de neurnios. Desta forma, os experimentos realizados por Chapin et al. (1999) em ratos por meio de grupos de 50 a 100 pontos de leitura, com interpretao em tempo real, demonstraram ser possvel o controle de um brao mecnico. Para a realizao dos experimentos em ratos, as interaes associadas movimentos motores bem sucedidos foram recompensadas com alimentos, permitindo ao rato associar o comando cerebral a uma recompensa. Um aspecto relevante constatado em Chapin et al. (1999) que, aps certo treino, os ratos apresentam contraes motoras quase imperceptveis e concentram-se em gerar apenas estmulos cerebrais, que so necessrios para as interaes HBMI. Esta constatao de Chapin et al. (1999) reafirmada por Nicolelis (2001), que apresenta como possibilidade a incorporao destas novas formas de interao ao usurio como parte de seu corpo. Estas novas formas de interao podem permitir a usurios com limitaes severas, como no possuir atividade muscular voluntria, a realizar interaes com o meio no qual se localiza.

57

3.9.

Filtragem e Condicionamento de Sinal Aps a escolha do tipo de interface com o usurio, estuda-se qual melhor mtodo para

filtragem e condicionamento dos dados amostrados dos sensores sob trs aspectos: Desta forma, este tpico exemplifica os aspcetos associados a filtragem e condicionamento de sinal para as interfaces j descritas. 3.9.1. Filtrar Eventuais Distores provenientes do Meio Externo O local no qual o usurio se localiza pode interferir na leitura dos sensores utilizados na forma de oferecer referncias cruzadas, como variao da luminosidade, interferncias sonoras ou rudos na alimentao eltrica. Como exemplo deste tipo de filtragem, pode ser citado Shaw et al. (1990) que utiliza um emissor em 1 kHz, e um receptor com filtro passa faixa na mesma freqncia (1 kHz), evitando interferncias do infravermelho proveniente do meio externo. 3.9.2. Condicionar uma Caracterstica do Sensor ou do Sinal Desejado Para sinais de baixa potncia, provenientes dos sensores, pode ser necessria a sua amplificao associada ao ajuste de sensibilidade antes de sua aquisio. Como exemplo, o mtodo EOG utiliza eletrodos para capturar tenses muito baixas, de aproximadamente 100 microvolts, segundo Gips (1998). Outro exemplo da necessidade de amplificao e condicionamento de um sensor demonstrado na pesquisa de Kirkup et al. (1997), para obteno da componente alfa por um par de eletrodos. Nesta aquisio so necessrios diversos passos de amplificao, filtragem e condicionamento para se obter o sinal desejado.

58

3.9.3.

Ajustar uma Interface s Caractersticas do Usurio Considerando que cada indivduo possui caractersticas prprias, tanto comportamentais

quanto fsicas, necessrio que tanto a interface quanto o sistema de controle se adaptem a estas diferenas. Esta adaptao permite incluir diferentes usurios para o uso de uma mesma interface e obter uma resposta de controle semelhante. Desta forma, possvel citar Min et al. (2002) que realizou um levantamento de quais graus de liberdade poderiam ser utilizados e seus respectivos cursos por meio de sensores magnticos de posio. Tambm Law et al. (2002) observou ser necessrio ajustar a sensibilidade dos eletrodos utilizados. Tcnicas de filtragem mais sofisticadas, como a pesquisa de Abellard e Khelifa (2004), podem incorporar redes neurais artificiais para a obteno dos comandos desejados pelo usurio. Nesta pesquisa, o algoritmo de redes neurais foi abordado pela tcnica redes de Petri (Petri Net) que facilitou a sua implementao em FPGA (Field-Programmable Gate Array). As redes de Petri, definidas por Alhmana (1983), permitem o controle de dados em situaes de multiprocessamento, como: compartilhamento de barramento, o controle de conflitos de memria e a troca de dados entre processadores. A Implementao desta rede neural pelos pesquisadores Abellard e Khelifa (2004) ocorreu por intermdio do projeto FRACAH, que adaptou uma cadeira de rodas comercial com diversos sensores: on-off, joysticks, comandos de cabea, por p, por sopro, por voz, sonares e cmeras para reconhecimento de imagem. Esta diversidade de sensores permite que o sistema se adapte ao usurio, e no o contrrio. A utilizao de diversos sensores tambm permite obter uma redundncia de sinais de entrada. Como exemplo de redundncia, citam a possibilidade de reconhecer expresses do usurio, de medo ou surpresa, por meio de uma cmera. Esta interpretao permite identificar situaes de insegurana por meio das expresses do usurio. Para a implementao da interface, Abellard e Khelifa (2004), utilizaram um joystick associado a uma rede neural treinada,

59

prioritariamente, para corrigir dois aspectos do usurio: limitaes de movimentao e tremores na mo. As limitaes de movimentos podem ser corrigidas por meio de uma multiplicao por uma constante proporcional nas direes em que estas limitaes ocorrem. Para a correo do tremor, Abellard e Khelifa (2004) sugerem duas abordagens: - A primeira se destina a usurios com pouca amplitude de movimentos involuntrios, reconhecendo e delimitando zonas de movimento. - Uma segunda abordagem destina-se a usurios com maior amplitude de movimentos involuntrios (tremor). Neste mtodo, realiza-se uma amostragem das ltimas posies do joystick que comparada com os erros de movimentao comuns do usurio. Desta forma, realiza-se o ajuste do nmero de amostragens como forma de otimizar uma relao que permite maiores margens de reconhecimento (menos amostragens) e a reduo de falsos positivos (maiores amostragens). Estes ajustes de amostragem, definidos em valores prximos de 5 ou 6, permitiram obter um ponto de timo com confiabilidade de 83,3% e 83,5%, respectivamente. Os tpicos seguintes descrevem algumas solues de interface para usurios com severo grau de limitaes; mtodos para obteno dos tempos de interao na relao entre usurio e interface; e uma descrio da utilizao de filtros e condicionamento de sinal para interfaces. Para a delimitao do escopo dos tpidos seguintes consideram-se dois aspectos: primeiramente observa-se que as solues propostas priorizam usurios incapazes de operar interfaces convencionais de cadeiras de rodas motorizadas, como joystick. Um segundo aspecto que este captulo possui foco em interfaces de entrada, considerando-se que os usurios so capazes de utilizar interfaces de sada voltadas viso, como displays CRT, LCD e indicadores com LEDs. Caso o usurio no seja apto a utilizar uma interface voltada viso tambm possvel utilizar-se interfaces tcteis (mecanismos com vibrao ou braile) ou sonoras (beeps ou vocalizao por software dedicado).

60

Captulo 4 Sistemas de Navegao e Sensoreamento

Diversamente da escolha do mtodo de interface, cujo foco so os graus de liberdade que o usurio possui, o sistema de auxlio navegao deve enfocar as necessidades geradas pelas limitaes do usurio. Como exemplo, a reduo de esforo do usurio ao precisar desviar-se de obstculos e a compensao dos escorregamentos nas rodas. Deste modo, este tpico descreve o que so funes de auxlio navegao, os graus de autonomia e exemplos aplicao em cadeiras de rodas. Estas funes de auxlio a navegao, tambm conhecidas como primitivas, permitem uma navegao facilitada pela colaborao entre usurio e cadeira de rodas. Nesta colaborao, as funes primitivas reduzem o esforo do usurio (fsico e mental) ao realizar tarefas como seguir paredes, desviar-se de obstculos e deslocar-se para um determinado local. A escolha das funes primitivas a serem implementadas depende dos objetivos de cada projeto, capacidade de processamento implementada, necessidades do usurio, tipo e modo de implementao dos sensores. Segundo Bourhis e Agostini (1998b), um sistema de auxlio navegao eficaz deve ser simples e utilizar o mnimo de comandos possvel, para que o aprendizado ocorra de forma facilitada, caracterizando o conceito de interface consistente apresentado por Preece et al. (2002).

61

Outra caracterstica, que ponto comum entre diversos autores, observa que o sistema de auxlio navegao deve sempre permitir a interveno humana, ainda que a navegao possua grande autonomia. Esta observao ocorre tanto por motivos de segurana (Bourhis e Agostini, 1998a), quanto para aumentar a confiana do usurio (Bourhis e Agostini, 1998b), ou mesmo para prevenir erros de falsos positivos da interface (Yanco 1998a, descrevendo caractersticas do EagleEyes). Um sistema de auxlio navegao, que pode possuir uma ou mais funes de auxlio ao usurio, aumenta o seu grau de autonomia medida em que controla um maior nmero de funes antes associadas ao usurio. Segundo Rasmussen (1983), a autonomia de um usurio ou sistema de navegao pode ser classificada trs nveis: 1. Skill Based Behavior: Reaes por reflexos, como desvio de obstculos; 2. Rules Based Behavior: Reaes padronizadas associadas a situaes conhecidas, como seguir paredes; 3. Knowledge Based Behavior: Reaes em funo do conhecimento de situaes semelhantes e empregadas em situaes desconhecidas, como rotear o melhor caminho para um determinado local. Bourhis e Agostini (1998b) dividem estes nveis de autonomia sob dois pontos de vista: usurio como supervisor e sistema de auxlio a navegao como supervisor, como indicado na tabela 4.1:

Tabela 4.1 - Mtodos de controle em funo do grau de autonomia (fonte: Adaptado de Bourhis e Agostini, 1998b).
Nvel de autonomia 1 2 3 Humano como supervisor Usurio desvia-se de obstculos no encontrados pelo sonar Usurio ajuda na execuo de primitivas (seguir parede), indicando o melhor caminho para desviar de obstculos O usurio escolhe qual o melhor roteamento de caminho mapeado pelo SAN para um determinado local Sistema de auxlio a navegao (SAN) como supervisor O SAN desvia-se de obstculos no encontrados pelo usurio Em funo do local, o SAN sugere o melhor primitivo ao usurio. O primitivo escolhido pelo usurio ser executado apenas pelo SAN. Supe-se que o SAN possui melhor conhecimento do local que o usurio. Deste modo, em funo do local desejado pelo usurio, o SAN indica o melhor caminho ou avisa quando o usurio se desvia do caminho adequado.

62

Desta forma possvel reconhecer diferentes tipos e graus de autonomia para funes de auxlio a navegao, como tambm observado por Yanco (1998a) na determinao uma hierarquia entre os comandos primitivos, de forma que um comando tipo desviar-se de obstculos possua prioridade sobre seguir corredor. O emprego de primitivas, ainda que utilizados no 1 nvel de autonomia j suficiente para uma melhora significante para a navegao. Segundo Yanco (1998a), ao realizar testes acrescentando funes como evitar obstculos e controle de derrapagem, em uma interface de scan de botes, observa-se um ganho de 25% de tempo de percurso e 71% menos cliques se comparado a sistemas convencionais sem auxlio ao usurio. Bourhis e Agostini (1998a) tambm observam ser possvel desenvolver sistemas com menor custo medida em que se aumenta a colaborao humana, e se reduz o processamento necessrio. Partindo da premissa que sistemas de interface que utilizam uma entrada e varredura por LEDs para pessoas tetraplgicas so lentos, Bourhis e Agostini (1998a) propoem um sistema de navegao que combina primitivas e mapas em dois graus de autonomia: - Automtico: avaliando o caminho que est sendo percorrido (por exemplo: cozinha para o banheiro), reconhecendo portas fechadas e outros obstculos, sugerindo novos caminhos e facilitando o controle por uma entrada; contudo necessitando de um mapa local; - Semi - Automtico: quando no h mapa presente, e a navegao automtica no possvel, permitindo usar apenas os primitivas como seguir parede ou desviar-se de obstculos. O sistema tambm pode propor primitivas, como seguir parede ao invs de simplesmente evitar obstculos, sugerindo tambm uma hierarquia entre os primitivas resultante da situao encontrada. Os tpicos seguintes descrevem exemplos de cadeiras de rodas que se utilizam de primitivas como meio de auxlio ao usurio. Inicia-se pela descrio do exemplo mais antigo encontrado de funes de auxlio para navegao de cadeiras de rodas.

63

Esta arquitetura, desenvolvida por Madarasz et al. (1986), pode ser utilizada como referncia para os modelos posteriores por incluir as funes bsicas necessrias para a navegao. 4.1. Origens da Navegao para Cadeiras de Rodas Entre as primeiras iniciativas para a implementao de graus de autonomia em cadeiras de rodas motorizadas, podem ser citados paradigmas da dcada de 80. Como exemplo destes paradigmas, Madarasz et al. (1986) utiliza de tcnicas de navegao de veculos autnomos e as adapta para cadeiras de rodas, contudo so observadas trs diferenas entre a navegao para veculos autnomos (no tripulados) e para cadeiras de rodas motorizadas: Como primeira diferena observa-se que veculos autnomos normalmente navegam, e planejam suas rotas, em apenas um andar de um local previamente mapeado, (como um prdio, por exemplo). Cadeiras de rodas com sistemas de navegao devem estar aptas a mudanas de andares, para isto necessrio considerar diferentes mapas sobrepostos no planejamento de sua rota. A segunda diferena se relaciona necessidade de uma maior liberdade de navegao para cadeira de rodas, se comparado a veculos autnomos, visto que estas no devem seguir caminhos pr-determinados por fios ou faixas pintadas sob o solo. tambm observado por Madarasz et al. (1986) que veculos autnomos convencionais no precisam se desviar de obstculos inesperados como pessoas, ao contrrio da navegao de uma cadeira de rodas, onde esta capacidade deve estar presente. O terceiro ponto em que cadeiras de rodas e veculos autnomos se diferem, que todas as decises (roteamento de caminhos, desvios de obstculos e demais funes) devem ser tomadas pelo sistema de processamento embarcado, no caso da cadeira de rodas. Quando se utiliza um veculo autnomo no tripulado, possvel a centralizao de determinadas decises em computadores externos, ainda que esta opo encarea e torne o sistema dependente da estabilidade da comunicao entre os computadores fixo e o embarcado.

64

Na implementao de Madarasz et al. (1986), caso o usurio esteja apto, o controle da cadeira motorizada pode ser realizado por meio de um joystick padro, em caso contrrio o sistema de navegao ser utilizado. Desta forma, a arquitetura implementada utiliza para processamento um PC-IBM porttil com 320Kbytes de RAM, dois drivers de disquete, interface paralela, conversores A/D e uma interface exclusiva para uma cmera que opera em at 11 frames por segundo. Este computador foi programado utilizando mdulos de programas que comunicam entre si, mas que tambm podem ser inseridos ou retirados de forma independente. A cmera utilizada possui 128x128 pixels de resoluo e um ngulo de viso de 35 graus. Para a informao de distncia, utilizou-se um sonar Polaroid montado sob uma plataforma acima do usurio da cadeira de rodas. Considerando que a plataforma do sonar rotacionada por um motor, possvel varrer 360 graus, em intervalos de 3 graus, cada 30 segundos e obter a leitura de objetos a uma distncia mxima de 35 ps (aproximadamente 10,6 metros). No processo de deslocamento, Madarasz et al. (1986) observaram desvios da trajetria e tambm utilizaram encoders associados as rodas, permitindo corrigir as velocidades dos motores. 4.1.1. Roteamento do Caminho

O sistema de navegao deve estar apto a definir a melhor rota para, com esta informao, escolher uma seqncia adequada de primitivas para se deslocar a posio desejada. Para o roteamento do melhor caminho Madarasz et al. (1986) combinaram a memorizao de um mapeamento prvio do local com a captura, por cmera, de obstculos em movimento e referenciais descritos no mapeamento, como a numerao das portas. A numerao das portas est presente no mapa da memria do veculo, e na forma de discos pretos com sries de pontos brancos presos nas portas para referencial. Desta forma, o mapeamento representa a localizao de escritrios, corredores e elevadores em uma organizao de trs planos de informao. No primeiro plano de informao determinado o nmero do andar (prevendo o uso de elevadores), no segundo plano o nmero das paredes, e no terceiro plano a localizao das salas. Como exemplo pode ser citado o mapa da figura 4.2:

65

Planta Piso 1

Rm 17 Rm 16 Rm 10 Rm Rm 9 8 Rm 8 Rm 15 Rm 14 Rm 13 Rm 10 Rm 12 Rm 11 Parede 1 Parede 2 Parede 3 Parede 4 Rm 7 Rm 10 Rm 9

Rm

Rm Rm

6 5 Rm Rm 2 4

Rm Rm

8 7 6 5 4 3 2 1

Rm Rm Rm Rm Elevadores Rm

5 Rm 4 3 2 1 Rm 1 Rm 4 3 Rm 3

Rm Rm Rm Rm Rm Rm

Fig. 4.1 - Exemplo de um mapa de escritrio (fonte: Adaptado de Madarasz et al. 1986). No decorrer do processo de navegao, obstculos no indicados no mapa podem ser encontrados. Quando um novo obstculo encontrado, a este atribuida uma varivel incrementada a cada novo obstculo identificado. Assim, as varives associadas a obstculos so incrementadas, em uma unidade, a cada evento de novo obstculo encontarado. Considerando que obstculos com maior ndice so mais antigos, e com maior probabilidade de no existncia, o sistema de planejamento para navegao seleciona um caminho que possua os obstculos com maior ndice. A navegao ocorre em duas etapas: planejamento e movimentao. Na primeira etapa, que corresponde ao planejamento, realiza-se o roteamento do melhor caminho em funo do mapa local memorizado e do ndice de cada obstculo j detectado. Este roteamento resulta em uma srie de instrues do tipo: seguir em frente at um determinado referencial (corredor, sala, referncia conhecida), subir elevador (alterna o mapa) e realizar curvas (90 ou 90). Na fase de deslocamento utilizam-se estas instrues de movimentao, geradas na fase anterior, e a capacidade de identificar e desvia-se de obstculos.
66

Caso no seja possvel desviar-se de um obstculo, retorna-se novamente ao planejamento da rota. 4.1.2. Sensoreamento

Como citado no tpico 4.1, para a deteco de referenciais e desvio de obstculos o sistema de sensoreamento utilizado composto de um sonar giratrio e uma cmera fixa. Segundo descrito por Madarasz et al. (1986), a cmera permite uma imagem detalhada do local, contudo no pode ser utilizada como fonte primria de informao para a navegao. Como motivos para a no utilizao da cmera como fonte primria de informao podem ser citados: a no existncia da informao de profundidade (distncia), o grande tempo de processamento necessrio e a fatores que dificultam a interpretao das imagens obtidas. Um dos fatores que dificultam o reconhecimento da imagem so variaes na iluminao. Este fator foi corrigido por meio de uma fonte de luz auxiliar no mdulo, permitindo compensar as imagens obtidas em diferentes momentos do dia, ajustando-se a luz solar. Realizaram-se tambm testes ao associar um projetor de linha esta fonte luminosa, permitindo uma deteco tridimensional de partes de objetos por meio do reconhecimento de imagem sobre as distores na linha projetada. Deste modo, o sensoreamento por viso foi utilizado para detectar objetos conhecidos (para referencial), detectar as luzes no painel do elevador, alteraes no local (movimentao de pessoas) e para manter a cadeira centralizada no corredor (reconhecendo e acompanhando os rodaps). reconhecido por Madarasz et al. (1986) que a utilizao de duas cmeras, para obteno de profundidade por estereogramas, associa uma demanda computacional invivel na poca do projeto. Desta forma, utilizou-se um sensor tipo sonar para complementar as funes de sensoreamento para a navegao. Assim, o sonar utilizado para determinar a distncia entre a cadeira de rodas e os objetos prximos, evitando colises, e para a orientao em relao as paredes, quando a cadeira de rodas se encontra em local desconhecido.

67

Segundo Madarasz et al. (1986), a utilizao do sonar resulta em dois tipos de erros de leitura: o aumento de tamanho dos objetos e distores na distncia real. O aumento do tamanho de objetos relaciona-se a um grande ngulo de cone (25), caso a varredura ocorra com incrementos menores que este ngulo, os objetos observados podem ser observados mais de uma vez dentro deste cone. Esta amostragem ambgua resulta em ampliar o tamanho de objetos, e ser ampliada a medida que o ngulo de cone tambm for maior. As leituras falsas, tambm observadas por Holland (2004) se relacionam a reflexes em cantos de paredes, como podem ser observadas na figura 4.2.

Sonar

Objeto amostrado (ampliado) Objeto real Aumento de distncia Leituras por varrimento

Fig. 4.2 - Erros de leitura de sonares (fonte: Adaptado de Holland, 2004). A utilizao de sonares tambm deve considerar a altura do objeto a ser detectado, pois caso este esteja em altura superior (mesas) ou inferior (degraus ou bolsas), estes no sero detectados, como observado por Holland (2004) e Prassler et al. (1999). 4.1.3. Controle de Movimento

A incerteza de posicionamento no controle de veculos autnomos est diretamente associada a qualidade de suas caractersticas construtivas. Desta forma, Madarasz et al. (1986) consideram que cadeiras de rodas como sistemas que oferecem baixa certeza no processo de navegao, pois desviam-se da rota planejada com facilidade devido a fatores construtivos.

68

Quando a cadeira de rodas manual, o usurio realiza correes de trajetria de modo inconsciente, pois a malha de controle fechada pela sua viso. Contudo para sistemas de navegao necessrio adquirir informaes do local, por meio de sonar ou reconhecimento de imagens. A implementao de Madarasz et al. (1986) utiliza reconhecimento de imagens para reconhecer e se alinhar aos rodaps pretos das paredes nos corredores, como ilustrado na figura 4.3.

Fig. 4.3 - Utilizao de rodap preto como referencial (fonte: Adaptado de Madarasz et al., 1986). Esta soluo reduz o grande processamento necessrio, utilizado na soluo clssica, que consiste em reconhecer toda a imagem para posteriormente planejar a rota. Contudo, mesmo utilizando um algoritmo de reconhecimento de imagens otimizado, a aquisio e reconhecimento de imagens ainda limitado em dois frames por segundo (FPS). Esta baixa taxa de amostragem permite uma velocidade mxima segura de aproximadamente 0,254 metros por segundo, 10 polegadas por segundo. Testes realizados em um corredor de 70 ps de comprimento (aproximadamente 21 metros) demandam um tempo mdio de 98 segundos para ser percorrido. Este tempo aumenta na presena de obstculos, como pessoas ou objetos, e alteraes na iluminao das janelas durante o dia.

69

4.1.4.

Orientao

Durante a movimentao, fatores como desvios entre a edificao real e a mapeada, rudos nos sensores, falhas no hardware e incertezas no movimento do veculo podem resultar em desvios de trajetria e respectiva desorientao do veculo. No procedimento adotado por Madarasz et al. (1986), para situaes de desorientao, o veculo deve procurar a parede mais prxima e segui-la at encontrar um referencial conhecido. Para encontrar a parede so realizadas duas varreduras de 360, com incrementos de 6, por meio do sonar e demandando 30 segundos por varredura completa. Aps executar estas duas varreduras (1 minuto), estas so comparadas para evitar a associao de obstculos mveis e paredes. As etapas seguintes so: comparar as distncias obtidas pelo sonar para reconhecer uma parede ou corredor, ilustrado na figura 4.4; posicionar a cadeira de rodas paralelamente e retornar ao sistema de reconhecimento de imagens para a navegao.

Fig. 4.4 - Reconhecimento das paredes de um corredor por sonar (fonte: Madarasz et al., 1986). Para a validao do sistema de orientao, Madarasz et al. (1986) realizaram mais de 100 testes sob diversas condies de luz e volume de pessoas no local. As pessoas presentes no local incluem tanto observadores passivos que percorrem o local, quanto indivduos que buscaram desorientar o veculo, como ao passar a mo sob o sonar. Em situaes simples, como a ilustrada na figura 4.4, o procedimento de orientao realiza apenas duas iteraes: varrimento do local com o sonar e movimentao, demandando 2,5 minutos. Caso o veculo esteja presente em um canto de corredor este tempo varia entre 3 a 6 minutos, ao utilizar aproximadamente 5 interaes, para reconhecer quais so as paredes do corredor e orientar-se.

70

Quando o nmero de iteraes para se localizar ultrapassa de 15, como locais com muitos espectadores, o sistema pra de se mover e emite um sinal sonoro para requerer ajuda. Deve ser relevado que estes tempos, da ordem de minutos, se associam principalmente as caractersticas da capacidade do processamento embarcado disponvel na poca do projeto (1986). 4.1.5. Aceitao e Trabalhos Futuros

Os testes realizados por Madarasz et al. (1986), que ocorreram em horrio e ambiente normal de trabalho, demonstraram que inicialmente as pessoas do local demonstram fascinao. Em um segundo momento as reaes tornaram-se de irritao ao conviver com o veculo. As reaes finais demonstram que as pessoas reconheceram o veculo como parte do edifcio. O consenso entre as pessoas do local demonstrou que, se o veculo til, este pode ser reconhecido como algo normal. 4.2. Os projetos TAO 1 e TAO 2 Segundo Gomi e Griffith (1998), h duas abordagens de desenvolvimento robs autnomos: o modo cartesiano e o modo comportamental. Robs cartesianos so o mtodo mais tradicional de desenvolvimento, baseando-se no reconhecimento do local seguido pelo clculo da rota e posteriores clculos cinemticos e dinmicos. Para o desenvolvimento dos projetos TAO-1 e TAO-2 utilizou-se uma abordagem baseada no comportamento, semelhante a uma arquitetura subsumption que ser descrita no tpico 5.3. A abordagem comportamental pode ser empregada em situaes reais de deslocamento dirio e permite reduzir a necessidade de recursos computacionais, quando comparada a uma abordagem tradicional.

71

A abordagem comportamental assemelha-se a arquitetura subsumption pois em ambas no observado um programa central para coordenar a tomada de deciso, como ilustrado na figura 4.5:

Estrutura comportamental da cadeira de rodas TAO1


Sistema de Viso
Cmera CCD 1

Distancia Esquerda Distancia Central Distancia Direita DSP Viso Virar direita leve Seguir em Frente Virar esquerda leve Virar direita mnimo S S S

Motores Motor Esquerdo Motor Direito

Cmera CCD 2

Sensores Infra Vermelho

Vrtice esquerdo Frontal esquerdo Frontal direito Vrtice direito

Sensores Infra Vermelho

Lado esquerdo

Virar direita leve Virar direita mdio Virar direita forte

Vrtice esquerdo

Frontal esquerdo

Girar
Frontal direito

Girar Virar esquerda

Vrtice direito

Virar esquerda
Lado direito

Virar esquerda leve Virar esquerda Virar direita forte

Para Choques

Esquerdo Traseiro Direito

Virar direita leve Seguir em Frente Virar esquerda leve Virar esquerda

Fig. 4.5 - Arquitetura comportamental do projeto TAO-1 (fonte: Gomi e Griffith, 1998).

72

Na abordagem comportamental utilizada por Gomi e Griffith (1998) para a leitura de sensores, todos os mdulos comportamentais sempre possuem um ou mais sensores associados as suas entradas, diferindo-se da arquitetura subsumption. Em uma arquitetura subsumption, como a apresentada por Brooks (1986) tambm esto presentes associaes entre comportamentos e sensores, contudo a sada de um comportamento pode ser a entrada de um comportamento seguinte, algo no observado na arquitetura de Gomi e Griffith (1998) para a leitura de sensores. A abordagem comportamental de Gomi e Griffith (1998) permitiu uma significativa reduo nos tempos de implementao, pois as caractersticas dos sensores no precisam estar com grande uniformidade, se comparado a uma abordagem convencional (robs cartesianos). Os autores Gomi e Griffith (1998) ressaltam que a arquitetura subsumption de Brooks (1986) tambm apresenta esta vantagem para a implementao de sensores, devido a semelhana entre ambas. Na arquitetura utilizada no projeto TAO-1 observa-se tambm uma reduo nos tempos de calibrao dos sensores, como tambm demonstrado por Brooks (1986) pela Subsumption Architecture. Como exemplo, possvel o emprego de sensores infra-vermelhos de menor preo, e menos homogneos em relao a potncia e rea coberta pelo emissor. Esta no homogeneidade entre os sensores no influencia significativamente o comportamento do sistema como um todo. O projeto TAO, desenvolvido por Gomi e Griffith (1998) tambm possui o objetivo de desenvolver uma metodologia para projetar, implementar e testar um sistema adicional de autonomia para cadeiras de rodas comerciais. Neste sistema procurou-se implementar cinco funes de auxlio a navegao: - Evitar colises: implementada pela combinao de cmeras tipo CCD e sensores infravermelho. Quando a cadeira encontra um obstculo, parado ou em movimento, primeiramente h uma reduo de velocidade, seguida de uma parada ou desvio caso necessrio. - Passar por um corredor estreito: quando paredes prximas de um corredor so detectadas, o sistema de navegao buscar uma navegao paralela s mesmas.

73

- Atravessar uma porta estreita: determinadas doenas, como o mau de Parkinson, impossibilitam o controle fino do joystick para transpor locais estreitos. Neste caso o sistema de navegao reduz a velocidade e atravessa o portal evitando colises com as paredes. - Manobrar em um local estreito: quando a cadeira de rodas se encontra confinada em um determinado local, esta procura encontrar uma sada. O usurio tambm pode sobrepor-se a esta funo e indicar um caminho que reconhece como mais adequado. - Navegao por pontos referenciais: As cmeras podem ser utilizadas para identificar referenciais em um local, e desta forma navegar de uma localidade para outra. ressaltado que no foi necessrio inserir referenciais artificiais externos para a execuo desta funo. No processo de amadurecimento deste projeto, inicialmente implementaram-se as funes evitar colises e passagem por corredor estreito em 22 de agosto de 1995, na exposio IJCAI95 em Montreal. Nesta data (1995), outras duas funes como atravessar uma porta estreita e manobrar em um local estreito, ainda apresentavam alguns problemas em sua execuo; e a navegao por pontos referenciais ainda no havia sido implementada. Atualmente todas as cinco funes de auxlio navegao foram implementadas nos projetos TAO-1 e TAO-2, mas permitindo que o joystick se sobreponha e o sistema priorize os comandos do usurio sobre as funes auxiliares. O projeto TAO-1 foi construdo sob uma cadeira de rodas motorizada comercial modelo 760V, e o projeto TAO-2 utilizou um modelo Suzuki MC-13P. Esta segunda verso apresentou as seguintes mudanas em relao o projeto TAO-1: - Ajustes nos comportamentos da programao utilizada no projeto TAO-1; - Mudanas na disposio dos sensores de coliso dianteiros para favorecer curvas mais fechadas; - A construo mecnica da Suzuki MC-13P permitiu realizar curvas menores em raios menores que o modelo anterior. Este otimizao permitiu desativar o pra-choque sensor de colises traseiro por ser raramente utilizado;

74

- Dois pra-choques laterais foram acrescentados, para evitar colises com pessoas prximas durante curvas. Em 1996, realizaram-se testes de navegao com o prottipo TAO-2 avaliando a performance em locais fechados e em locais abertos com neve. Os testes em locais fechados foram realizados em um ginsio de uma escola primria com vrias pessoas, onde no se observou nenhuma coliso. Outros testes realizados em corredores resultaram em colises apenas com portas de vidro, pois estas no foram detectadas por cmeras ou sensores de infra vermelho. Observou-se que sonares podem corrigir esta limitao. Em alguns casos, Gomi e Griffith (1998) observaram que podem ocorrer contradies entre dois ou mais comportamentos. Como exemplo citada a aproximao de um portal: quando os sensores de infra-vermelho esquerdo e direito detectam obstculos inexistentes pela reflexo de seus prprios sinais no portal, ocorrem eventos de interferncia cruzada. Este conflito resulta em um comportamento conhecido como oscilao de Braitenberg, descrito por Braitenberg (1984). Neste caso especfico, sensores direcionados para a frente enviam um comando que autoriza seguir em frente. Os experimentos, segundo Gomi e Griffith (1998), demonstraram que possvel a navegao em locais fechados como escritrios, corredores e desviar-se de obstculos fixos ou mveis a uma velocidade adequada ao usurio. Contudo os autores Gomi e Griffith (1998) observam a necessidade de se realizar melhorias para a navegao em locais mais diversificados. Como exemplo, podem ser citadas otimizaes na funo de navegar por referenciais para permitir uma adaptao a uma maior diversidade de locais. 4.3. NavChair e a Combinao de Primitivas O desenvolvido por Simpson et al. (1998) possui como objetivo uma navegao colaborada entre operador e sistema de navegao, de modo a reduzir os esforos motores e cognitivos do usurio. Desta forma, utilizou-se uma cadeira de rodas motorizada comercial, na qual adaptaramse trs unidades: um computador padro IBM-PC (486 / 33MHz), um conjunto de 12 sensores ultra-snicos, montados frente da cadeira, e um mdulo de interface com o usurio.

75

Para a interface com o usurio, implementaram-se duas opes de controle, por voz ou por joystick. Os comandos de voz foram implementados por meio do Verbex, que um equipamento externo para reconhecimento de voz, como descrito por Edison (1996) e Khyber Technologies (2007). No processo de implementao do sistema de reconhecimento de voz buscou-se implementar poucos comandos. Esta deciso deve-se ao reconhecimento de que, ao implementar muitos comandos, h uma maior dificuldade de recordar-se, inutilizando algumas funes. Deste modo, implementaram-se os comandos: parar, avanar para frente e para trs, e trs velocidades para rotacionar para direita ou esquerda;. Para a deteco de obstculos prximos, so utilizados sonares associados a encoders. Desta forma, possvel realizar um mapeamento, com auxlio do mtodo EERUF, desenvolvido por Borenstein e Koren (1992), para a reduo de erros de leituras de sonares. interessante observar que, ainda que Simpson et al. (1998) no apresenta o conceito subsumption em seu projeto, possvel observar caractersticas desta arquitetura presentes em seu trabalho. Como exemplo, observa-se que o projeto NavChair organiza-se em nveis de autonomia, equivalentes a camadas subsumption: algoritmos de assistncia a navegao (camada 0), modos de operao (camada 1) e seleo de modo (camada 2). Desta forma, a tcnica de navegao apresentada por Simpson et al. (1998) ser mantida em sua estrutura original, e aspectos relacionados a uma integrao subsumption sero descritos em um tpico dedicado. 4.3.1. Algoritmos de Assistncia Navegao do NavChair

Em conjunto com o sensoreamento, navegao realizada por uma combinao de dois mtodos: Minimum Vector Field Histogram (MVFH) e Vector Force Field (VFF).

76

Minimum Vector Field Histogram Esta tcnica uma adaptao do mtodo Vector Field Histogram (VFH), j utilizado para veculos autnomos. O sistema VFH considera que o veculo utilizado circular e possui deslocamento omnidirecional, o que pode dificultar a execuo de tarefas como a passagem por portais. Outra caracterstica da tcnica VFH que esta permite desviar-se de obstculos com o mnimo de reduo em velocidade, tornando-a favorvel a veculos autnomos. Contudo, desvios rpidos podem resultar em movimentos abruptos e inesperados para o usurio, tornando-se uma caracterstica indesejvel a cadeiras de rodas. Deste modo, Simpson et al. (1998) prope uma abordagem MVFH, que combina os comandos do usurio com a capacidade de desviar-se de obstculos. Esta abordagem identifica a presena de obstculos, representando-os em uma matriz, em funo da sua incerteza. A matriz de incerteza permite a gerao de um historiograma na forma polar, como ilustrado na figura 4.6 direita pela curva h.

Historiograma Polar
Densidade de obstculos Baixa Alta s

s j
h

w Esquerda Direo de Movimento Direita

Fig. 4.6 - Mtodo MVFH (fonte: Simpson et al., 1998). Este historiograma de obstculos (h) somado curva (w), obtida pelo joystick que representa a direo desejada pelo usurio. A soma das curvas w e h permite obter a direo de movimento pela curva s, que permite combinar a direo desejada pelo usurio (Oj) com o desvio de obstculos (Os). A velocidade da cadeira de rodas , deste modo, determinada em
77

relao proximidade de objetos na direo do movimento. O mtodo MVFH tambm considera as dimenses da cadeira, permitindo aproximar-se sem coliso de obstculos enquanto a cadeira se movimenta. Outro aspecto do mtodo MVFH que este permite alterar o peso da curva w, representada pelo comando do usurio, permitindo ajustar o grau de autonomia do usurio em relao a curva de deteco de obstculos h. Vector Force Field O mtodo VFF (Vector Force Field), ilustrado na figura 4.8, utilizado em conjunto com o mtodo MVFH para considerar as dimenses da cadeira de rodas em relao a posio de obstculos prximos.

Fig. 4.7 - Mtodo Vector Force Field (fonte: Simpson et al. 1998). O mtodo VFF localiza cinco pontos, na cadeira de rodas, para disposio de vetores de repulso a objetos. Estes vetores so funo da localizao e proximidade dos objetos prximos. A soma dos cinco vetores de repulso resulta em um vetor capaz de corrigir a direo de movimentao da cadeira de rodas.

78

4.3.2.

Modos de Operao

Estes mtodos utilizados para navegao auxiliam a navegao da NavChair, de modo a sustentar o desenvolvimento de trs modos de operao para auxiliar a navegao do usurio. Desvio Comum de Obstculos (GOA) Este o modo de navegao padro no sistema NavChair, e dedica-se ao desvio de obstculos por meio das tcnicas MVFH e VFF. O desvio comum de obstculos o modo de navegao que permite maior liberdade de controle ao usurio. A utilizao do modo GOA apresenta como vantagem manter uma distncia mnima de obstculos. Contudo, comparando o modo GOA a uma navegao sem assistncia controlada por um usurio com experincia, observa-se que o modo GOA associa velocidades menores e tempos maiores para deslocar-se a um mesmo ponto. Passagem por Porta O modo de passagem por porta utilizado em situaes de transpor dois obstculos prximos, como o portal ilustrado na figura 4.9, nas quais o modo GOA no pode ser utilizado. Desta forma, quando um modo de passagem por porta iniciado, o mtodo de navegao VFF desabilitado, e utiliza-se apenas o mtodo MVFH.

Fig. 4.8 - Utilizao do modo passagem por porta (fonte: Simpson et al., 1998).

79

Neste caso, o mtodo MVFH reduz a velocidade da cadeira e a curva h torna-se um vale de amplitude acentuada, permitindo sobrepor uma prioridade em desviar-se de obstculos aos comandos do usurio. observada a possibilidade, na figura 4.9c, ao usurio abortar o modo passagem por porta ao apontar uma direo diferente do portal. Este modo de passagem por porta demonstrou ser possvel transpor obstculos com distncia mnima de 81,3 cm em 70% dos testes. Contudo, Simpson et al. (1998) observam que a performance do usurio experiente superior apresentada pelo modo de passagem de porta (tempo e ndice de acerto). Esta queda de performance no modo de passagem de porta deve ser relevada, posto que permite a usurios com maiores limitaes fsicas transpor obstculos prximos. Seguidor de Parede O modo seguidor de parede iniciado quando o usurio direciona a cadeira de rodas prxima a uma parede, e desativado quando o usurio de afasta da parede. Neste modo, os sistemas MVFH e VFF so desabilitados, e a cadeira NavChair utiliza-se de um conjunto de sensores de sonar para manter-se prxima a parede. Outro conjunto de sonares responsvel por identificar obstculos frente e reduzir ou parar a cadeira, caso necessrio. Este modo, seguidor de parede, permite velocidades maiores que o modo GOA, contudo associa um tempo duas vezes maior que o utilizado por um usurio com experincia. 4.3.3. Seleo de Modo

Para a seleo do modo de operao utiliza-se uma combinao de dois algoritmos adaptao sugerida pelo ambiente (ECA) e adaptao baseada na localizao (LBA). Esta duas tcnicas so combinadas por meio de modelamentos de probabilidade e incerteza, resultantes das informaes do local no qual a cadeira se encontra. Os testes realizados demonstraram que os algoritmos de seleo ECA e LBA evitaram constantes mudanas do modo de navegao, proporcionando maior conforto ao usurio. Observou-se tambm que o tempo de processamento para a escolha do modo de navegao no

80

interferiu nas demais funes da cadeira de rodas, permitindo uma resposta em tempo real nas tomadas de deciso. Aps a realizao dos testes, Simpson et al. (1998) observaram uma queda de desempenho quando so utilizadas funes de auxlio, mas justificam que estas funes permitem a incluso de usurios com limitaes severas. 4.4. Abordagens VOA e BOA para o Desvio de Obstculos A pesquisa desenvolvida por Becker et al. (2005) e apresentada no Cobem 2005, demonstra duas abordagens para a navegao e desvio de obstculos para robs autnomos: Velocity Obstacle Approach (VOA), proposta por Fiorioni e Shiller (1993); e BOA, proposta por Becker (2000). Estas abordagens permitem a robs autnomos detectar e desviar-se de obstculos, mveis ou imveis, mantendo a rota para um local pr-definido. A tcnica VOA relaciona cada obstculo detectado a um crculo de raio Ro e o rob a um crculo de raio Rv. A soma das dimenses do rob e do obstculo, inscritas em seus respectivos crculos, permite obter um terceiro crculo de raio R. Este crculo de raio R permite gerar um cone de colises que possui sua origem na posio do rob, como ilustrado na figura 4.9.

Obstculo Vo

R Vo

Ro

Cone de Coliso Cone de Velocidade do Obstculo Vv

Rv Veculo

Vv

Vv,o

Vo

R = Rv + Ro

Fig. 4.9 - Obteno do cone de colises para um obstculo fixo (fonte: Becker, 2000)

81

Considerando a velocidade de deslocamento do obstculo (Vo) necessria uma translao da posio do cone de coliso, permitindo obter o Cone de Velocidade do Obstculo que independente da velocidade do rob Vv. Desta forma, quando a velocidade do rob (Vv) encontra-se dentro do Cone de Velocidade do Obstculo, considerada uma rota de coliso Assim, as relaes entre o vetor de velocidade do rob (Vv) e o cone de velocidades do obstculo resultam em trs situaes avaliadas a cada intervalo de tempo: Rota de coliso: Quando o ponto apontado pelo vetor Vv localiza-se dentro do cone de velocidades do obstaculo, esta situo ocorre na figura 4.9; Rota de desvio: Quando o ponto apontado pelo vetor Vv localiza-se fora do cone de velocidades do obstaculo; Rota de desvio mnimo: Quando o ponto apontado pelo vetor Vv localiza-se sobre uma das linhas do cone de velocidades do obstaculo. Em uma situao real necessrio tambm considerar as caractersticas dinmicas do rob, como o torque necessrio nos motores para a realizao de uma determinada curva. Desta forma, sobrepe-se ao ponto A, e cones de coliso, um polgono com as velocidades mximas e mnimas possveis para avanar e realizar curvas. Esta sobreposio permite delimitar as rotas de desvio por meio das reas externas aos cones, demonstrando em quais condies de direo e velocidade para o deslocamento do rob (vetor Va) evita-se os cones de coliso.

82

Assim a figura 4.10 demonstra que possvel decidir entre acelerar ou reduzir a velocidade em funo de objetivos maiores, como deslocar-se no menor intervalo de tempo ou menor consumo de baterias.

Ponto A: representa o rob

Legenda: Cone de Coliso Polgono de velocidades mximas e mnimas Rotas de desvio

Reduo de velocidade

Aumento de velocidade

Fig. 4.10 Determinao de rotas de desvio pelo mtodo VOA (fonte: Becker et al., 2005). 4.4.1. Abordagem BOA

Mantendo caractersticas da tcnica de Fiorioni e Shiller (1993), que utiliza cones de coliso para projetar obstculos e um vetor de velocidade do rob restrito a um polgono, Becker (2000) observa ser possvel desvincular as caracterticas de translao e realizao de curvas no rob modelado e contrudo para a realizao de experimentos. Esta desvinculao permite a Becker (2000) substituir o polgono que limita as velocidades e direes por crculos para diferentes mdulos de velocidade Va, propondo uma nova abordagem para o desvio de obstculos fixos ou mveis denominada BOA.

83

Nesta nova abordagem, ilustrada na figura 4.11, mantm-se o vetor de velocidade do rob (Va) e o mesmo conceito utlizado na contruo dos cones de desvio de objetos, contudo a utilizao de crculos de velocidade permite evitar uma constante alterao no vetor de velocidade Va. Desta forma, possvel desviar-se ao alterar a direo de movimento e, apenas quando no for possvel encontrar uma soluo adequada para o desvio de um determinado obstculo, alterar a velocidade de deslocamento do rob.

Fig. 4.11 Utilizao da abordagem BOA para o desvio de obstculos (fonte: Becker et al., 2005). Os testes realizados por Becker et al. (2005), com a abordagem BOA, consistiram em uma simulao em ambiente MATLAB e posterior implementao em rob real. O rob real utilizou como sensores dois Sick LMS 200 2D a laser; 6 sensores de sonar dispostos frente, nas laterais e atraz do rob, e um sensor de coliso montado no pra-choque. Em ambos os casos, rob simulado ou construdo, obsservou-se a capacidade de locomoo autnoma em corredores estreitos ou largos.

84

4.5.

MAid e a Navegao em Locais Muito Populosos Pesquisas realizadas por Prassler et al. (1999) com usurios de cadeiras de rodas,

demonstraram que determinados recursos de navegao implementados no so utilizados. Como exemplo esto os recursos seguir parede e passar por portais, nos quais os usurio preferem controlar a cadeira de modo manual. O projeto MAid, baseia-se em uma cadeira do rodas comercial equipada com um conjunto de sensores e um sistema de navegao inteligente. Como sensores so utilizados: Um par de encoders para as rodas, Um giroscpio de fibra ptica (Andrew RD2030), Um sistema constitudo de 3 mdulos de 8 sonares cada (um a frente e os demais nas laterais), Dois sensores infravermelho para distncias curtas, Um range-finder a lazer (modelo SICK 2D, PLS200), montado em uma base removvel frente da cadeira. A integrao destes sensores, com exceo do range-finder, foi realizada por fieldbus com o computador responsvel pela navegao e controle. Segundo Prassler et al. (1999), o rangefinder possui uma porta serial dedicada para interface com o computador, pois amostra uma maior quantidade de dados por intervalo de tempo que os demais sensores. O sistema de navegao apresenta dois modos de operao: semi-autnomo e autnomo. No modo semi-autnomo, definido como NAN por Prassler et al. (1998), a cadeira evita colises em locais fechados, como banheiros, facilitando a interao para usurios com dificuldades motoras. O modo autnomo, que Prassler et al. (1999) denomina WAN, dedica-se a uma navegao autnoma em locais muito populosos (movimentados) como concursos, shoppings ou centros de convenes. Neste modo (WAN) o usurio indica a posio desejada, e um conjunto de instrues como seguir parede e desviar-se de objetos iniciado.

85

A arquitetura de controle e navegao ocorre em trs nveis: controle bsico, nvel ttico e nvel estratgico: - O nvel de controle bsico recebe e processa valores relativos ao controle dos motores associados ao deslocamento e velocidade da cadeira de rodas. Desta forma, este nvel recebe um vetor com informaes da velocidade de translao e rotao desejadas pelo nvel ttico. - O nvel ttico, por sua vez, composto de trs sub-mdulos: deteco de movimento, seguidor dos movimentos e clculo de rotas evasivas. Estes sub-mdulos em conjunto observam objetos, estimam o seu deslocamento e, desta forma, definem as rotas para evitar colises. - O nvel estratgico responsvel por definir a prxima meta para o deslocamento. Embora nesta implementao seja o usurio que define os prximos objetivos, Prassler et al. (1999) observam que futuramente esta funo poder definir uma seqncia de metas de deslocamento, compondo um planejamento da rota. Neste processo de deslocamento para um determinada local predefinido, h uma prioridade para o desvio de obstculos. Deste modo, o caminho realizado entre o ponto de partida e de chegada pode no ser definido como uma reta, reconhecida a necessidade de desvios. A avaliao do sistema de navegao foi realizada em uma estao de trens nos horrios mais movimentados. Desta forma, o usurio define a distncia e aponta o joystick para a posio desejada e o sistema de navegao desvia-se dos objetos ou pessoas no caminho. Nos testes no foram observadas colises com nenhuma pessoa, mesmo em situaes de grande trfego. Nestas condies de grande trfego, o deslocamento interrompido at que o trfego seja reduzido a uma intensidade que permita voltar ao movimento. As nicas colises observadas se relacionam a objetos pequenos sobre o cho, como mochilas ou malas, que no foram detectados por meio dos sensores. Como correo para os projetos futuros, Prassler et al. (1999) citam a utilizao de dois sensores tipo sonar montados nos suportes para os ps da cadeira.

86

4.5.1.

Deteco de Objetos e Planejamento de Rotas de Desvio

A deteco de objetos ocorre pela constante comparao, em funo do tempo, dos dados amostrados pelo range-finder na forma de grid de clulas. Nestas matrizes, denominadas de time stamp por Prassler et al. (1999), cada clula descreve uma pequena regio real. Para a observao de movimentos, realizada uma comparao entre as time stamp memorizadas para encontrar suas alteraes em funo do tempo. Deste modo, a comparao de uma seqncia temporal de diferentes time stamp permite obter a posio, velocidade e acelerao de um determinado objeto, ao estimar o seu deslocamento como linear. Esta anlise permite definir quais objetos esto em rota de coliso. Para situaes de muitos objetos, atribuda uma preferncia na definio da rota de desvio para aqueles objetos que esto mais prximos da cadeira de rodas. Para a definio desta rota de desvio avaliam-se tambm as velocidades mximas possveis para deslocamento, de modo a propor a opo de cruzar a frente do obstculo ou reduzir a velocidade de deslocamento da cadeira de rodas.

87

Captulo 5 Integrao entre os Sistemas Envolvidos

A reviso bibliogrfica demonstra que, em geral, cada autor possui foco na soluo de um problema especfico e, deste modo, apresenta uma soluo especfica de interface ou mtodo para navegao. tambm observado que os sistemas de navegao utilizados, em geral, so derivaes de sistemas de navegao de veculos autnomos, como exemplos o projeto de citado Madarasz et al. (1986) e Simpson et al. (1998). Segundo Yanco (1998b), aps o desenvolvimento destas solues centradas em problemas especficos, a fase seguinte para o amadurecimento de um projeto ser a integrao de diversas solues para resolver problemas mais complexos. Esta integrao ocorre por meio de uma padronizao, que deve ser desenvolvida como resultado de uma anlise dos pontos comuns entre os projetos. Deste modo, ser necessrio integrar diversas reas de pesquisa relacionadas interface, controle e navegao. Outro ponto a ser observado o momento adequado para realizar a padronizao de um conjunto de mdulos nos campos de interface, navegao e controle de um projeto. Esta padronizao deve ocorrer somente aps o desenvolvimento de solues nestes trs campos, evitando utilizar conjunto de solues restritas a padres.

88

Considerando a diversidade nas caractersticas de cada usurio, necessrio compartilhar os aspectos positivos de cada soluo ao definir mtodos que permitam a sua fcil integrao. A utilizao de protocolos em comum, associados as caractersticas de modularidade, permitem a integrao de diferentes interfaces, sistemas de navegao e controle. Desta forma, este tpico apresenta meios para combinar diferentes solues em interface, navegao e sistemas de controle. 5.1. Protocolo de Comunicao M3S comum observar que cada autor ou fabricante sugere solues particulares, ou seja, os mdulos de interface com usurio, sistema de navegao e mdulos de potncia normalmente so incompatveis. Considerando-se que usurios portadores de limitaes possuem caractersticas particulares entre si, so necessrios mtodos de interface e suporte para a navegao diferentes. Observa-se ento a necessidade de evitar a incompatibilidade entre os dispositivos utilizados. Um meio para evitar problemas de incompatibilidade a utilizao de uma arquitetura modular, que possa ser interligada por um mesmo protocolo de comunicao. Assim, a integrao proposta por Nelisse (1998) possui como objetivos: - Facilidade para uso, - Utilizao segura, - Flexibilidade: facilidade para adaptaes para as necessidade do usurio, - Custos baixos para instalao, manuteno e adaptao, - Prover suporte para interfaces de entrada e sistemas de controle j existentes, - Suporte para projetos de futuros dispositivos.

89

Para alcanar estes objetivos, possvel utilizar uma arquitetura modular para uma fcil integrao e modificao dos dispositivos utilizados. As alteraes relacionadas a modificar, inserir ou retirar mdulos envolvidos, so resultados de eventuais necessidades do usurio que possam surgir com o tempo de uso de uma cadeira de rodas eltrica. Este conceito tambm est presente nas pesquisas de Gomi e Griffith (1998) e Harvey (1992) sob a forma de interface e robtica evolutiva, respectivamente. O protocolo de integrao proposto por Nelisse (1998) o M3S (Multiple Master Multiple Slave). Este protocolo reconhecido pelo comit da ISO como uma interface serial para o controle de cadeiras de rodas e, segundo Nelisse (1998), esforos vm sendo realizados para a sua padronizao. O protocolo M3S utiliza trs pares de linhas: um para comunicao serial a 250kbit/s, um segundo para distribuio de energia, e um terceiro para sistema de segurana. O par de fios associado ao sistema de segurana composto de um fio para o boto dead man (gera evento quando desligado) e um segundo para o comando key switch (gera evento quando ligado). Estas duas linhas permitem parar qualquer ao ou desligar o sistema em qualquer circunstncia de emergncia. Caso necessrio, possvel integrar mais de um dispositivo em um nico mdulo, de modo a utilizar uma nica linha de comunicao. De modo semelhante, com a insero de mdulos adicionais, tambm possvel utilizar comunicaes wireless entre dispositivos para facilitar a integrao a mdulos externos (computadores e barramentos residenciais). Nesta arquitetura possvel distinguir quatro tipos de componentes: - Central de controle e configurao: componente nico e relacionado configurao de todos os demais componentes e gerenciamento da informao que circula no barramento de dados; - Sada: componentes relacionados a funes de atuao (drivers de controle). - Intermedirio: componentes que relacionam os sistemas de entrada e sada, (sistemas de evitar obstculos, navegadores). - Entrada: componentes relacionados interfaces com o usurio ou sensores (joystick, infravermelho, reconhecimento de voz).

90

A integrao entre sistemas, presentes na figura 5.1, realizada por meio de uma Central de Controle e Configurao, definida como CCM por Nelisse (1998). Quando o sistema inicializado pela CCM, cada mdulo recebe um cdigo (device number), que permite a sua identificao. Este processo chamado de Serial Number Arbitration Protocol (SNAP), possvel atribuir o comportamento de cada mdulo, ou seja, a forma com a qual ocorrer a sua interao. Para isto, utiliza-se um software padro IBM-PC que permite inserir e configurar os mdulos pela sua interface grfica.

Entradas

Mdulos Intermedirios

Central de controle e configurao

Barramento M3S

Sadas

Fig. 5.1 - Arquitetura M3S para protocolo de integrao (fonte: Nelisse, 1998). Deste modo, possvel inserir mais de uma entrada, bem como definir quais sero reconhecidas como dispositivos de segurana. Caso o sistema implementado seja simples, como uma entrada e uma sada, o modo plug and play presente na CCM dispensar esta configurao manual. Os dispositivos inseridos sero detectados pela Central de Controle Configurao e o sistema j estar apto a funcionar.

91

5.2.

Utilizao de uma Hierarquia de Entradas Em situaes em que muitos dispositivos de entrada so utilizados, como joysticks, sonares,

reconhecimento de voz e botes de emergncia necessrio utilizar uma lgica para evitar conflitos. Uma opo, semelhante a arquitetura subsumption, o emprego de uma lgica de controle hierrquico que permita uma integrao de todos os mdulos de interface com o usurio de modo intuitivo e consistente. Esta lgica considera que determinadas entradas possuem predominncia sobre outras quando utilizadas, e se mantm como inoperantes at que um evento ocorra. necessrio observar que a integrao hierrquica no permite que nveis de prioridade baixa gerem aes durante a ocorrncia de eventos de prioridade mais alta, o que no ocorre em uma integrao subsumption. Na integrao subsumption h a presena de funes supressoras, que permitem a laos de prioridade menor suprimir laos de prioridade maior, por um intervalo de tempo pr-definido. Como exemplo, um controle hierrquico que combina as entradas de joystick e sonar para desvio de obstculos seguir os comandos do joystick at que um evento de deteco de objeto ocorra. Neste caso, os movimentos em direo ao objeto realizados pelo joystick so desabilitados at que o objeto se afaste ou o usurio se afaste do mesmo. Para a construo de uma hierarquia de controle, definem-se as interfaces que apresentam maior robustez e so associadas segurana em nveis maiores de prioridade e os sistemas menos robustos nos nveis mais baixos, como representado na tabela 5.1:

Tabela 5.1 - Exemplo de hierarquia para interface.


Interface Boto de emergncia Sonar Joystick Controle de voz Teclado Controle de voz Tipo de evento Boto pressionado Obstculo detectado Mover-se para fora da posio zero Voz gritada Novo comando reconhecido Novo comando reconhecido Prioridade 1 Alta 2 3 4 5 6 Baixa

92

A confiabilidade e performance deste sistema de controle est diretamente relacionadas aos primeiros nveis da hierarquia: caso o sonar seja muito suscetvel a falsos positivos (detectar objetos inexistentes) por situaes de referncias cruzadas, o sistema encontrar dificuldades ao se movimentar. O mesmo acontece se o joystick possuir uma m regulao gerando rudos indicando a sua sada da posio zero, de modo a se sobrepor s entradas do teclado e controle de voz. Na tabela 5.1 tambm possvel observar o controle de voz em dois nveis diferentes da hirararquia. A escolha de comandos de voz como baixa hierarquia (6) deve-se baixa confiabilidade no reconhecimento de voz, de modo que pode ser necessria a intervao por sonar ou joystick quando ocorre um comando indesejado. Observa-se tambm a presena do reconhecimento de voz gritada em uma hierarquia mais alta (4), pois este tipo de evento associa uma incerteza menor no seu reconhecimento e relaciona-se a situaes de emergncia como o comando Parar!. Em ambos os casos possvel sobrepor o controle de voz por meio do joystick ou sonar, contornando situaes de falsos positivos, ou no reconhecimento da interao do usurio. Desta forma, a integrao entre os mdulos ocorre ao receber os comandos de uma hierarquia inferior e repass-los para a hierarquia superior seguinte caso no ocorra nenhum evento na hierarquia presente. Como exemplo, um diagrama representativo de mdulo inibidor associado a um sonar que gera eventos ao detectar obstculos ilustrado na figura 5.2:

Entrada inibidora

Entrada Movimento 1 Entrada Movimento 2 No Movimentar

Sada Movimento 1 Sada Movimento 2

Fig. 5.2 - Representao de evento em mdulo para hierarquia de sonar.

93

Em uma situao normal de operao, os comandos de entradas so transmitidos diretamente sada. Caso ocorra um evento do sonar, o mdulo inibidor sobrepe seu comando as hierarquias inferiores. 5.3. Abordagem Subsumption Segundo Brooks (1986), solues tradicionais (cartesianas) para o desenvolvimento de sistemas autnomos de navegao subdividem os mdulos necessrios verticalmente, como ilustrado na figura 5.3:

Execuo de Tarefa

Sensores

Controle Motor

Planejamento

Modelamento

Percepo

Atuadores

Fig. 5.3 - Abordagem tradicional para sistemas de navegao (fonte: Brooks, 1986). Deste modo, o fluxo de dados segue um caminho rgido em seu processamento: 1. Ambiente externo para rob: por meio da percepo intermediada associada aos sensores; 2. Atravessando cada subsistema interno: os dados obtidos pelo sensoreamento atravessam todas as subdivises, da percepo ao controle motor, como ilustrado na figura 5.3; 3. Controlando os motores: aps os dados obtidos atravessarem todas a subdivises do sistema de processamento, obtm-se o controle para os motores e atuadores. Este controle resultado da percepo do meio externo e das metas definidas para o rob e permite a interao com o meio externo. 4. Fechando o ciclo: aps um ciclo de percepo, processamento e controle, a interao com o meio externo retorna do ambiente ao rob. Este retorno pode ser uma nova

94

posio, resultante de um deslocamento; a coliso com um obstculo, entre outros eventos; Esta abordagem demanda a presena de uma unidade central, responsvel por processar a informao proveniente dos sensores e interfaces com o usurio, e agregando uma maior complexidade ao sistema. Outra caracterstica, observada por Gomi e Griffith (1998) e Brooks (1986), descreve a alterao das caractersticas, ou a substituio de componentes presentes na arquitetura cartesiana (tradicional). Quando componentes so alterados ou substitudos, necessrio que as mudanas decorrentes no interfiram nos mdulos prximos associados. Outra forma para manter a funcionalidade, de um sistema cartesiano, compensar as mudanas das caractersticas novas nos componentes associados a estas mudanas. Observando esta dependncia, entre os componentes, presente em uma arquitetura rgida, Brooks (1986) prope uma nova arquitetura para organizar os mdulos envolvidos no sistema de controle de robs autnomos. Deste modo procurou-se descentralizar o processamento, para permitir que cada mdulo seja inserido ou retirado sem a necessidade de reprogramao do sistema pelo usurio. Para esta descentralizao, assume-se que cada mdulo possui um comportamento caracterstico e que um conjunto de mdulos resulta em uma camada de processamento paralelo associada a uma funo (ou nvel de competncia).

95

Estas camadas so organizadas horizontalmente por nveis de competncia, como ilustrado na figura 5.4:

Razo Sobre Comportamento dos Objetos Planejar Mudanas no Mundo Identificar Objetos Sensores Monitorar Mudanas Construir Mapas Explorar Vaguear Evitar Objetos Atuadores

Fig. 5.4 - Abordagem subsumption para sistemas de navegao (fonte: Brooks, 1986). interessante observar que a composio de mdulos simples permite a execuo de tarefas complexas, como demonstrado por Simon (1969) ao afirmar que: Comportamentos complexos (e teis) no so necessariamente um produto de um sistema complexo de controle. Preferivelmente, um comportamento complexo pode ser o simples reflexo de um ambiente complexo.

96

Detalhando esta subdiviso horizontal, possvel observar a presena dos mdulos comportamentais, como ilustrado na figura 5.5 que demonstra a camada mais baixa e destinada ao controle do rob:

Rob Rob Rob Sentir Fora Fugir Realizar Curva Reset Sonar Avanar para Frente

Detectar Coliso

Fig. 5.5 - Camada 0, destinada ao controle (fonte: Brooks, 1986). A camada 0 exemplificada composta de um mdulo comportamental destinado a evitar colises (quando obstculos muito prximos so detectados), e um conjunto de mdulos comportamentais para evitar a aproximao de obstculos. O mdulo comportamental detectar colises envia um comando de parar funo avanar para frente a cada evento de deteco de obstculo muito prximo. Este comportamento evita colises durante a movimentao do rob. Outro conjunto de mdulos monitora obstculos prximos (sentir fora), e compara com uma distncia segura pr definida (fugir). Caso a distncia seja insegura, envia-se um comando para realizar curva e posteriormente avanar para frente (quando a curva for concluda). Deste modo possvel desviar-se de obstculos mveis e evitar colises durante a movimentao. O desenvolvimento e debug de uma arquitetura subsumption realizado em ciclos de adicionar, testar, corrigir e adicionar novas camadas a medida em que as camadas (nveis de competncia) inferiores apresentam o resultado esperado. Deste modo, no processo de adio de mdulos comportamentais ou camadas, h uma hierarquia que permite suprimir ou inibir

97

informaes de mdulos ou camadas de hierarquias inferiores por um perodo de tempo predeterminado. Como exemplo deste sistema adio de mdulos e camadas, a figura 5.6 representa um exemplo de adio de uma camada vaguear (1) camada de controle j existente:

Nvel 1 Vaguear Desviar Rob

Rob Sentir Fora Detectar Coliso Fugir S 20 Realizar Curva Reset

Rob

Nvel 0

Avanar para Frente

Sonar

Fig. 5.6 - Integrao entre Camadas 0 e 1 (fonte: Brooks, 1986). Neste exemplo para integrao de camadas, possvel observar uma entrada supressora (S/20) para integrar o nvel 1 ao nvel 0. Esta entrada suprime o comportamento fugir por um determinado intervalo de tempo, indicando outra direo para movimentar-se, por meio dos comportamentos vaguear (escolhe direo para locomover) e desviar (mantm distncia de objetos). Observa-se que, durante o perodo em que o comportamento fugir suprimido, o comportamento detectar coliso continua habilitado, evitando colises com objetos prximos. Deste modo, a combinao entre as camadas 0 e 1 permite que o rob navegue sem uma rota definida, ao mesmo tempo em que se desvia de obstculos. Este rob possui ainda uma camada 2, dedicada a explorar o local por meio de informao visual, permitindo-lhe planejar rotas de caminho em funo da imagem obtida por cmeras. Observa-se que na data de publicao estas cmeras so emuladas por um sensor de sonar dedicado a encontrar corredores.

98

A integrao desta camada 2 s camadas 0 e 1 demonstrada na figura 5.7:

Rob

Nvel 2

Imagem Streo Integrar Quando Observar Observar Reset Planejar Rota Reset Nvel 1 Desviar Rob Rob Sentir Fora Detectar Coliso Fugir S 20 Realizar Curva Reset Avanar para Frente Nvel 0 Status

Vaguear

1 75

S 15

Rob

Sonar

Fig. 5.7 - Integrao entre camadas 0, 1 e 2 (fonte: Brooks, 1986). Assim, o conceito da modularidade presente nas arquiteturas comportamental de Gomi e Griffith (1998), e subsumption de Brooks (1986), permitem um processamento descentralizado e paralelo entre os mdulos de interface e auxlio a navegao. Reconhecidas as caractersticas presentes em arquiteturas subsumption, este tpico descrever outros exemplos de sua implementao.

99

5.3.1.

O rob RAM-1

A tese de dissertao de mestrado de Jcobo (2001), desenvolvida na Faculdade de Engenharia Mecnica da Unicamp e orientada pelo professor Dr. Pablo Siqueira Meirelles, possuiu como objetivo desenvolver e implementar um sistema de controle, em arquitetura subsumption, para um rob autnomo microcontrolado. O rob RAM1, ilustrado na figura 5.8, possui dois sensores de coliso e outros dois sensores para presena de solo (evitando a sua queda de um degrau ou mesa, por exemplo).

Fig. 5.8 - Rob RAM1 (fonte: Jcobo, 2001). Como processamento utilizam-se dois microcontroladores PIC 16F84 associados respectivamente aos mdulos: Sb Step Control (para controle dos motores a passo), e Sb 9902_2 (para o firmware de sensoreamento e controle do rob). Neste rob implementaram-se as camadas evitar obstculos (nvel 0) e vagar sem direo definida (nvel 1). Estas camadas permitiram que o rob RAM1 inicialmente vague, em linha reta, sem uma direo definida at encontrar um obstculo. Quando encontra-se um obstculo (coliso ou fim de piso), o comportamento evitar, que se sobrepe ao comportamento vagar, controla os motores para recuar e realizar uma curva para desviar-se do obstculo. Concludo o desvio, o comportamento vagar novamente habilitado, permitindo que este escolha uma nova direo para deslocar-se livremente at a deteco de um novo obstculo.

100

Segundo Jcobo (2001), o objetivo proposto no trabalho foi alcanado: implementar a arquitetura subsumption na construo de um rob mvel autnomo. Este rob tambm permite ser utilizado como base de testes para novos componentes como motores, sensores, controladores e baterias. A arquitetura subsumtion implementada por meio de mdulos comportamentais, que so executados por polling ao varrer os sensores, demonstrou-se prtica e eficiente para a construo de robs autnomos. tambm concludo por Jcobo (2001) que o rob RAM-1, por ser caracterizado como um sistema mecnico no-holonmico, com restries cinemticas no integrveis, no pode ser estabilizado por meio das leis de controle com realimentao de estados. 5.3.2. O Aprendizado de Comportamentos com o Rob Obelix

O projeto de Mahadevan e Connell (1991) observa que h dificuldades em programar os mdulos comportamentais em uma arquitetura subsumption. Desta forma, prope-se que novos comportamentos podem ser aprendidos pelo rob, poupando o esforo do programador ao evitar uma anlise profunda nas relaes entre o rob e o meio no qual se realiza a tarefa. Para a avaliao deste aprendizado realizam-se experimentos na forma de aprendizado reforado. A tcnica de aprendizado reforado consiste em realizar experimentos e utilizar sensores para avaliar situaes de sucesso (ou insucesso), atribuindo valores a um ndice presente em cada mdulo de comportamento. Desta forma, construiu-se o rob Obelix para testar a capacidade de aprendizado da arquitetura subsumption em uma tarefa de transportar caixas. Para isto, este rob possui 8 sonares, um sensor infravermelho e um sensor de excesso de corrente nos motores (quando o rob est preso por um obstculo e fora avanar). A leitura dos sensores realizada de modo discreto: os sensores de sonar possuem dois estados, prximo e longe, resultando em 16 bits de informao. Considerando que os outros dois sensores associam mais um bit de dados cada um, totalizam-se 18 bits de informao ao somar-se todos os sensores.

101

Na coordenao e execuo da tarefa, utilizou-se uma arquitetura subsumption organizada em trs camadas: encontrar a caixa, empurrar a caixa e no forar movimentao quando preso, como ilustrado na figura 5.9:

Feedback F Feedback P Feedback U Sensores

2. Encontrar Caixa 1. Empurrar Caixa 0. No Forar Movimento S S Atuadores

Fig. 5.9 - Mdulos do rob Obelix (Fonte: Adaptado de Mahadevan e Connell, 1991). Assim, quando o rob ligado, as camadas 1 e 0 no geram eventos, iniciando a camada 2. Encontrar Caixa inicia-se movimentando o rob para encontrar objetos prximos. Esta camada procura caixas por meio dos bits correspondentes a informao obstculos prximos do sonar. Quando um objeto frente encontrado, este testado para ser definido como caixa ou no. Para isto realizada uma comparao entre os bits referentes aos 8 sonares, avaliando a forma do objeto encontrado. Caso a forma seja adequada, recebe-se um feedback F positivo e a primeira camada, empurrar caixa, habilitada. Esta primeira camada procura manter a caixa frente do rob, a medida em que este a empurra. Durante este processo, caso a caixa saia da frente do rob Obelix, ocorre um feedback P negativo. A medida em que desloca-se a caixa, mantendo-a corretamente em frente do rob recebem-se feedback P positivos. Durante o processo de procura por caixas, obstculos podem ser encontrados, impossibilitando a movimentao da caixa. Nestas situaes a camada 0 deve realizar uma desvio de modo a permitir que contorne-se o obstculo. A cada evento de contorno de obstculo bem sucedido recebe-se um feedback U positivo, e caso no seja possvel contornar receber-se feedback U negativo.

102

Estes feedbacks so avaliados estatisticamente e permitem otimizar as camadas comportamentais, resultando em uma maior performance na execuo da tarefa desejada. Deste modo, Mahadevan e Connell (1991) comparam os tempos gastos para o aprendizado com uma abordagem monoltica com os obtidos na abordagem comportamental. A abordagem monoltica, utilizada antes da abordagem comportamental descrita, utiliza apenas um mdulo para gerenciar todas as subtarefas envolvidas, de modo a estar ativa durante todo o processo de controle. Esta abordagem monoltica foi substituda pela comportamental. Deste modo os testes realizados, em ambas as abordagens, demonstraram um tempo de aprendizado para a abordagem subsumption equivalente a metade do tempo necessrio em uma abordagem monoltica. 5.3.3. Aprendizado por meio de Subsumption

A pesquisa de Maes e Brooks (1990) demonstra uma arquitetura subsumption capaz de escolher, por meio de aprendizado, quais comportamentos so mais adequados a uma determinada situao. Nesta abordagem utilizaram-se 12 comportamentos predefinidos para o um rob com dois graus de liberdade em cada uma das suas de 6 pernas, totalizando 12 graus de liberdade, como ilustrado na figura 5.10.

Fig. 5.10 - Rob Genghis, MIT (fonte: Britannica Concise, 2008).

103

Estes 12 comportamentos so todos atribudos para o controle de cada uma das seis pernas: - Avanar rob: mover para trs, subir, para frente e descer a perna; - Recuar rob: mover para frente, subir, para trs e descer a perna; Para o treinamento deste rob atriburam-se duas variveis, cujos valores so resultados de tentativas bem ou mal sucedidas (feedback positivo ou negativo, respectivamente) em relao a cada um dos 12 comportamentos. A gerao de feedback negativo utiliza dois sensores de contato, dispostos na base do rob e acionados quando h contato entre a base do rob e o solo. Para a gerao de feedback positivo avalia-se o movimento de avano na posio desejada, por meio de um encoder associado a um fio preso ao rob. Estes dois sensores so representados na figura 5.11:

Sensor de movimento

Avano para frente

Sensores de contato

Fig. 5.11 - Sensores de feedback para o rob Genghis (fonte: Maes e Brooks, 1990). Considerando que os mdulos comportamentais alternam-se durante o processo de aprendizagem, necessrio utilizar ndices para determinar a sua freqncia de uso e necessidade de otimizao. Desta forma, associa-se um ndice para relevncia e outro para confiabilidade em cada mdulo comportamental. O ndice de relevncia associa-se ao nmero de vezes em que foi possvel obter um feedback positivo em uma situao de mdulo comportamental ligado. Deste modo, ndices de relevncia maiores associam-se a mdulos comportamentais que apresentam maior ocorrncia de feedback positivo, quando em operao. Este ndice de relevncia resulta nas chances de um determinado mdulo ser selecionado como ativo. O segundo ndice utilizado para seleo de mdulos no processo de aprendizagem o ndice de confiabilidade, que relaciona a chance de ocorrer um feedback positivo quando um
104

determinado mdulo utilizado. Considerando que este ndice relaciona probabilidade seu valor de -1 a 1, incluindo valores fracionrios. Este ndice de confiabilidade resulta nas chances de um determinado mdulo ser otimizado ou no. Desta forma, realizaram-se dois experimentos para avaliar a capacidade de aprendizado: o primeiro utilizando 6 mdulos comportamentais e o segundo utilizando 12 mdulos comportamentais. Os primeiros experimentos utilizaram apenas os comportamentos avanar rob, que no so capazes de gerar um feedback negativo de forma isolada, mas permitem obter feedback positivo quando o rob desloca-se para frente. Como resultado do aprendizado foi possvel observar um deslocamento na forma de trips: o rob mantm sempre trs pontos de apoio, demonstrando um deslocamento similar ao apresentado por insetos. Procurando aumentar o grau de dificuldade, Maes e Brooks (1990) habilitaram tambm os mdulos comportamentais recuar rob. Estes comportamentos, desde que em movimento coordenado, no geram feedback negativo, contudo tambm no geram feedback positivo. Desta forma, o aprendizado deve inibir o uso de funes que no agregam feedback positivo, por meio do ndice de relevncia que permite utilizar um nmero maior de vezes os comportamentos bem sucedidos Desta forma, observa-se que a tcnica de integrao entre camadas subsumption por supresso em tempos constantes, proposta inicialmente por Brooks (1986), difere-se do mtodo de aprendizado, apresentado por Maes e Brooks (1990), no qual possvel utilizar intervalos de tempo que se adaptam a situao em funo dos feedbacks obtidos. Esta adaptao, por feedback externo, permite inclusive atribuir perodos que tendem a suprimir mdulos no favorveis a uma determinada tarefa.

105

Captulo 6 Construo e Implementao de Prottipos

A reviso bibliogrfica, apresentada nos captulos anteriores, sustentou a construo e implementao de prottipos para interfaces e sistemas de auxlio a usurios de cadeiras de rodas motorizadas. Deste modo, inicialmente desenvolveram-se duas arquiteturas de interface para reconhecimento de voz e uma tcnica de filtragem para joystick. Posteriormente ao desenvolvimento destes prottipos, em trabalho conjunto com o pesquisador Torsten Felzer, que desenvolvedor do projeto HaWCoS, foi possvel adaptar e implementar esta tcnica de interface em prottipo utilizando um microcontrolador PIC 16F877A. O prottipo desenvolvido com o conceito HaWCoS pde ser implementado na forma de dois prottipos: inicialmente em um pequeno veculo, e posteriormente em um kit de motorizao para cadeira de rodas. Para uma implementao consistente da interface desenvolvida com o conceito HaWCoS, para o kit de motorizao, definiu-se um protocolo para modularizar os componentes envolvidos. Esta modularizao resultado de uma padronizao do protocolo de comunicao entre sistemas envolvidos, possibilitando a utilizao de interfaces diferentes sem alteraes nos drivers dos motores ou em qualquer outro mdulo. Observa-se que, neste captulo, a seqncia de apresentao dos prottipos organizada cronologicamente. Deste modo, o primeiro prottipo
106

desenvolvido o que realiza reconhecimento de voz para a interface com o usurio. Assim, a tcnica de integrao entre interfaces e sistemas de auxlio a navegao apresentada segue a proposta de Yanco (1998b) na qual a padronizao entre os mdulos envolvidos ocorre posteriormente ao desenvolvimento dos mdulos. 6.1. Reconhecimento de Voz Para situaes de grave limitao motora, como a tetraplegia, necessrio o emprego de uma interface que seja sensvel s demais formas de interao que o usurio possui, como voz, posio dos olhos ou movimentos dos ombros. A utilizao de reconhecimento de voz e sons permite manter consistncia com comandos utilizados no cotidiano, como frente e trs. De forma semelhante a pesquisa de Bilmes et al. (2006), o reconhecimento de voz tambm deve reconhecer sons emitidos pelo usurio como ans e uns, caso este no possa se comunicar. Seguindo os passos de Preece et al. (2002) para o desenvolvimento de interfaces, a primeira fase teve como objetivo delimitar o escopo do projeto: desenvolver uma interface simples e intuitiva para o controle de cadeiras de rodas por voz. Este escopo permitiu definir que, para o controle da cadeira de rodas, o usurio dever utilizar poucos comandos, favorecendo a simplicidade e o seu aprendizado. Deste modo definiram-se cinco comandos necessrios: frente, trs, esquerda, direita e parar, que possam ser executados por meio de palavras ou sons emitidos pelo usurio. Reconhecidos o escopo e as necessidades do usurio, desenvolveu-se um prottipo funcional. Este prottipo permitiu realizar simulaes de controle e observar aspectos desta interface, como a transparncia entre a funo solicitada e o comando realizado, e estudar novas aplicaes alm do controle de cadeiras de rodas.

107

O prottipo inicial consistiu em um conjunto formado por trs elementos: as interfaces de entrada, os sistemas de controle e sistemas controlados como representado pelo diagrama da figura 6.1:

Usurio

Microfone e software de reconhecimento de voz

Teclado

Joystick

Interfaces

Interpretador de texto Sistemas de controle

Microcontrolador

Drivers

Cadeiras de rodas

Controle Ambiental

Sistemas controlados

Fig. 6.1 - Arquitetura do primeiro prottipo de reconhecimento de voz. * Controle Ambiental: controle de portas, lmpadas, tomadas, ar condicionado, etc. As interfaces de entrada so: a vocalizao e o reconhecimento de palavras por software dedicado (IBM ViaVoice), a digitao da palavra em teclado, ou o controle direto por um joystick. Reconhecendo que este primeiro prottipo foi implementado em um computador com um software para reconhecimento de voz, foi possvel reconhecer e armazenar uma maior diversidade de palavras que no segundo prottipo. Por meio do software de reconhecimento de voz observou-se inclusive uma maior facilidade em reconhecer palavras, j armazenadas na biblioteca do software; se comparado a sons, pois estes devem ser treinados para posterior reconhecimento. Deste modo, foi possvel

108

uma relao direta entre comando e palavra vocalizada: a palavra frente vocalizada corresponde a uma movimentao tambm para frente. Os comandos utilizados nesta sintaxe assemelham-se a forma com a qual o usurio conversaria com uma pessoa para encaminha-la uma posio desejada. Deste modo possvel manter a consistncia de comandos e favorecer o aprendizado. Assim, os comandos podem ser digitados pelo usurio, ou reconhecimento de voz, e adquiridos por um software de interpretao de texto em tempo real. Este software de interpretao de texto foi desenvolvido neste projeto e possui uma biblioteca de comandos gerada em tempo de programao. Nesta biblioteca possvel relacionar palavras a comandos, que so transmitidos por meio de uma interface serial (RS232) para um microcontrolador externo. O microcontrolador externo, embarcado em um prottipo de rob, o responsvel pelo controle dos drivers e pela recepo direta dos comandos do joystick, que possui uma prioridade maior que os comandos textuais. A prototipagem da interpretao de textos permitiu encontrar novas aplicaes, alm do controle de cadeiras de rodas, como ligar ou desligar lmpadas ou tomadas de uma residncia por meio de uma central de reconhecimento de comandos. Contudo este primeiro prottipo de reconhecimento de voz apresentou como desvantagens a necessidade de utilizar um computador dedicado para o reconhecimento de voz e digitao. A necessidade de um computador e software para reconhecimento de voz torna este prottipo imprprio a aplicaes embarcadas, nas quais a mobilidade e consumo de energia so fatores fundamentais. Outra dificuldade encontrada foi a necessidade em adquirir um software de reconhecimento de voz (aproximadamente R$ 350) e um computador laptop (aproximadamente R$1700), pois ambos encarecem significativamente o custo do projeto. Este aumento de custo; pode tornar esta interface inacessvel a uma grande parte dos seus possveis usurios. A soluo encontrada foi desenvolver um conjunto de hardware e firmware para um microcontrolador que incorpore os elementos presentes no computador, de forma a eliminar este ltimo, permitindo maior mobilidade e significativa reduo de custos na interface final. Por

109

meio deste conceito, o segundo prottipo incorporou as funes de reconhecimento de voz e interpretador de texto no firmware do microcontrolador. Desenvolveu-se tambm um hardware para amplificar o sinal de microfone para uma faixa de tenso que possa ser reconhecida. A arquitetura deste segundo prottipo demonstrada na figura 6.2, na qual o joystck considerado opcional e representado por uma linha pontilhada:

Usurio

Microfone

Teclado

Joystick

Interfaces

Amplificador PWM para Ajuste de offset Microcontrolador 1 Sistemas de controle

Microcontrolador 2

LEDs e Drivers

Sistemas Controlados

Fig. 6.2 - Arquitetura do segundo prottipo de reconhecimento de voz

110

necessrio observar que esta arquitetura utiliza dois microcontroladores e um amplificador: - Amplificador: Recebe o sinal do microfone e o amplifica para o primeiro microcontrolador. Possui um ganho constante ajustado por potencimetro e, quando o sistema ligado, pode ser necessrio um ajuste de offset do sinal de entrada por meio do microcontrolador 1; - Microcontrolador 1: Recebe o som amplificado do microfone na forma de interrupes de bordas de subida (freqncia), e converso analgica para digital (10 bits de resoluo). Retorna o ajuste para offset para o amplificador, e o comando associado ao som vocalizado; - Microcontrolador 2: Recebe as informaes das trs entradas e, por meio da prioridade de cada uma, controla os LEDs e drivers. Desta forma, a amostragem e interpretao de palavras ou sons emitidos pelo usurio realizada apenas pelo microcontrolador 1, que repassa os comandos associados para o microcontrolador 2. Para o desenvolvimento do algoritmo de reconhecimento de voz, inicialmente vocalizaramse cinco fonemas em um microfone padro IBM-PC. Estes fonemas foram amplificados e apresentados em um osciloscpio, permitindo observar que cada fonema possui uma forma de onda prpria e peridica. Esta amostragem, contudo, no se demonstrou adequada pois o osciloscpio utilizado no permite gravar o sinal obtido para posterior comparao. Reconhecendo esta necessidade, um segundo experimento utilizou-se de uma software para edio de udio, goldwave v3.24, que permitiu gravar cinco fonemas distintos, em intervalos de tempo de 100ms, para demonstrar a sua forma de onda. A gravao e comparao entre os fonemas a, e, i, o, u ilustrada na figura 6.3 demonstrou que todos apresentam uma componente peridica, de aproximadamente 10ms. Utilizou-se como parmetros de aquisio uma entrada mono em 16bits de resoluo e aquisio a 48KHz para amostrar intervalos de 100ms plotados em um grfico com escala vertical de 5 ms por diviso, a escala vertical foi mantida para todos os grficos, contudo o software utilizado no lhe atribui nenhuma unidade.

111

Fig. 6.3 Comparao entre fonemas a, e, i, o, u, respectivamente de cima para baixo. possvel observar que a componente peridica possui uma forma de onda associada a cada fonema, de modo a apresentar um nmero maior de bordas de subida para o fonema a (aproximadamente 4 bordas), se comparado ao fonema i (2 bordas), como ilustrado na figura 6.4.

Tenso (V)

Evento de Borda de subida Histerese para detectar bordas de subida Tempo (5ms/div)

2,3 2,1

Fig. 6.4 Aquisio das bordas de subida, para os fonemas a e i.

112

O reconhecimento de que cada fonema possui um nmero caracterstico de bordas de subida, permitiu desenvolver um algoritmo que amostra o nmero de bordas de subida para cada intervalo de 100ms (amostragens de 10ms representam apenas um ciclo) e obtm uma freqncia instantnea. Para uma amostragem adequada do nmero de bordas de subida, antes de adquirir novas palavras, o usurio deve solicitar ao microcontrolador um ajuste de offset no amplificador em local fechado com o mnimo de fontes sonoras possvel. Este ajuste de offset permite que a posio central do sinal (offset) esteja em torno de 2,2 volts, pois a borda de subida utilizada sensvel a uma elevao de tenso de 2,1v para 2,3 volts, considerando uma histerese nesta posio central. Para o ajuste de offset o microcontrolador utiliza-se da entrada analgica, que recebe o som amplificado, retira uma mdia entre as amostras e, deste modo, possvel aumentar ou reduzir o perodo de trabalho da sada PWM. A sada do PWM, por sua vez, convertida para um sinal de tenso contnuo, de 0 a 5v e aplicado entrada inversora de um amplificador operacional. Desta forma, mantendo o ganho de amplificao, o aumento do ciclo de trabalho da sada PWM reduzir a tenso na sada do amplificador. Assim caso no haja fonte sonora, e a mdia obtida na tenso de sada do amplificador esteja acima de 2,3 volts, o microcontrolador ajustar automaticamente um ciclo de trabalho maior na sada PWM para ajustar o offset. Aps a fase de ajuste do PWM, inicia-se uma fase de treinamento. Nesta fase, cada comando (som ou palavra) deve ser vocalizado dez vezes para se obter uma representao nica para o mesmo (obtida pela sua curva de freqncias). Esta representao em curva de freqncias permite associar cada comando a uma funo de movimento (frente, trs, esquerda, direita ou parar), permitindo interpretar cada palavra ou som vocalizado e responder com um comando. Considerando que cada palavra vocalizada, ou som emitido pelo usurio, possui uma seqncia nica de freqncias instantneas, o firmware possui uma pequena biblioteca de palavras. Esta biblioteca de palavras permite analisar a palavra vocalizada pela sua curva de freqncias ao avaliar o nmero de bordas de subida, representadas por uma tenso de 2,1 volts para 2,3 volts, em 8 intervalos de 100 ms cada.

113

A biblioteca que relaciona as curvas de freqncia de cada palavra ou som vocalizado foi levantada pela mdia das suas curvas de freqncias. Desta forma, para cada palavra ou som novo realizada uma amostragem na fase de treinamento de 10 curvas das quais obtm-se uma curva mdia, como ilustrado na figura 6.5:

Frente
20 18 16 14
20 25 30

Testando
30 25

Esquerda

20

12 10 8 6 4
5 5 10 10 15 15

2 0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9

Direita
30 25 20
20 35 30 25

Trs
30 25 20 15
15

Liga

15 10
10

10 5 0
1 2 3 4 5 6 7 8 9

5 0 1 2 3 4 5 6 7 8 9

5 0

Desliga
30 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9

Comparando curvas de freqncias


30 25 20 15 10 Tr a s 5 0 1 2 3 4 5 6 7 8 9 Liga D esl i g a Fr e n t e Te st a nd o Esq u er d a D ir ei t a

Fig. 6.5 - Curvas de freqncia para diferentes palavras. Legenda: - Eixo Y: Bordas de subida, Eixo X: nmero da amostragem - Linha indicada por quadrados: Mdia

114

O levantamento destas curvas amostradas permitiu gerar uma curva de freqncias mdia para cada palavra ou som vocalizado. No sistema implementado utilizaram-se as sete curvas de freqncia ilustradas na figura 6.3 para constituir uma biblioteca de palavras adequada ao usurio. A cada incio de vocalizao, representado pela segunda borda de subida do sinal amplificado, inicia-se uma amostragem em tempo real da curva de freqncias vocalizada pelo usurio. Esta amostragem armazenada para posterior comparao com a biblioteca de curvas de freqncias j conhecidas. A comparao da curva amostrada realizada somando-se, em mdulo, as diferenas de sua freqncia com os respectivos intervalos de tempo de cada uma das curvas de freqncia da biblioteca. Como exemplo, a figura 6.6 ilustra uma situao de comparao em que a amostra apresenta casamento com a palavra frente.

25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 Amostra Frente Esquerda

Fig. 6.6 - Comparando uma amostragem com duas curvas de freqncias da biblioteca. As aquisises realizadas em intervalos de 100 milisegundos para a obteno das curvas de freqncia demonstram que, para uma mesma palavra, observam-se desvios inferiores a 15 bordas de subida entre as curvas vocalizadas e a curva mdia de freqncias que a representa, como demonstrado nas tabelas do apndice II. Em outras palavras possvel definir como casamento quando a palavra vocalizada acompanha a curva mdia (representao da palavra) em desvios inferiores a 15 unidades. necessrio observar que, para manter uma consistncia entre as leituras, aps o levantamento da mdia para as curvas freqncias, os valores de amplificao e de perodo de trabalho do PWM no devem ser alterados.

115

Por meio da comparao destes desvios instantneos de freqncia possvel obter o desvio entre a curva de freqncia amostrada e as curvas de freqncia da biblioteca, resultando em trs situaes: - Desvio maior que 15: Os testes realizados demonstram que apenas desvios iguais ou menores que 15 correspondem a um casamento com uma palavra da biblioteca. Caso este desvio seja maior que 15, a palavra ser descartada. - Desvio igual ou menor que 15 em uma palavra da biblioteca apenas: representa um casamento com uma palavra e esta assumida como o comando desejado. - Desvio igual ou menor que 15 em mais de uma palavra da biblioteca: neste caso o comando ser associado a palavra com menor desvio. O algoritmo utilizado apresenta como vantagem uma simplicidade que o permite ser programado em um microcontrolador (PIC16F877), que possui caractersticas muito limitadas em termos de memria e capacidade de processamento, se comparado a um microcomputador. Como exemplo a tabela 6.1 ilustra um microcomputador pessoal de porte mdio comparado com um microcontrolador PIC 16F877 de 40 pinos.

Tabela 6.1 - Comparao entre recursos de microcontrolador e computador (fontes: Microchip, 2007; e software CPU-Z, 2007). Microcontrolador Microcomputador PIC16F877 pessoal* Memria de programa 8K Linhas de cdigo 100 Gbytes RAM 368 Bytes 516M Bytes Freqncia do processador 20 MHz 2000 MHz Barramento do processador 8 bits 32 ou 64 bits * Valores aproximados para uma configurao de mdio porte Caracterstica

116

Esta nova arquitetura para reconhecimento de voz requer o uso do microcomputador em apenas duas situaes: - Durante a fase da gravao do programao do microcontrolador 1, que ocorre uma nica vez, durante a construo da interface; - Ao inserir ou alterar uma curva de freqncia associada a um comando em EEPROM, que dispensa a programao do software presente no microcontrolador 1. Neste caso o computador opera como interface para a troca de dados na porta serial, permitindo o uso de qualquer software capaz de realizar comunicao pela porta serial. A utilizao do computador externo apenas em fases em que no necessrio o controle da cadeira de rodas permitiu considerar esta Segunda arquitetura como embarcada, associando uma significativa reduo de custos e maior mobilidade. 6.2. Filtragem de Joystick por Fuzzy Usurios com doenas como a esclerose mltipla e a LER (leso por esforo repetitivo), podem apresentar limitaes nos membros superiores como mos trmulas ou movimentos involuntrios, como descrito por Keates et al. (1999) na figura 2.4, que representa a resposta de um usurio com contraes involuntrias na mo. Estas limitaes podem incapacitar o uso de interfaces contnuas, como joysticks ou o movimento do mouse de um computador. Caso um usurio que apresente este distrbio utilize uma cadeira de rodas eltrica convencional, controlada por joystick, esta se comportar de forma indesejada, ainda que se acompanhe em tempo real os movimentos solicitados pelo usurio.

117

A abordagem inicial considerou uma implementao direta de lgica fuzzy, recebendo os valores do joystick e interpretando-se em cinco situes de posio para cada eixo: 0-10%, 2030%, 40-60%, 70-80%, 90-100%, como ilustrado na figura 6.7.

Pertinncia em Fuzzy (%) 100 0 10 20 30 40 50 60 70 80 90 100

Deslocamento (%)

Fig. 6.7 Aplicao direta de lgica fuzzy para um eixo do joystick. Contudo, as simulaes realizadas em Labview demonstram que, para fontes de ruidos superiores a amplitudes de 20%, a sada em fuzzy incerta a respeito de qual a posio desejada pelo usurio. Esta incerteza ocorre como resultado de uma sada fuzzy que acompanha em tempo real a entrada do usurio: necessrio avaliar mais pontos em um determinado intervalo de tempo por meio de uma amostragem de valores em funo do tempo. Desta forma, prope-se um algoritmo de filtragem por fuzzy em dois estgios: atribuio grau de pertinncia e lgica crisp. O primeiro estgio parte do princpio que a mo trmula oscila em torno da posio desejada, observado tambm por Keates et al. (1999), formulou-se a hiptese de que os movimentos indesejados so mais rpidos se comparados aos movimentos que definem o comando desejado. Em outras palavras, os movimentos indesejados situam-se em faixas de freqncia mais elevadas que o deslocamento para a posio desejada. Por este motivo, o algoritmo inicia com um filtro do tipo passa-baixa digital, obtido pela mdia dos valores amostrados diretamente no joystick. Observa-se que esta opo de filtro tambm sugerida por Keates et al. (1999). necessrio observar que, a medida em que o nmero de amostragens aumenta, permite-se uma maior disperso de valores na entrada e menores variaes na sada, relacionando-se a graus de pertinncia menores. Assim, como demonstrado na equao 6.1, determina-se que o grau de

118

pertinncia da filtragem fuzzy o inverso do nmero de amostras: para uma amostragem por perodo de tempo (A = 1), a sada ser igual a entrada (Pertinncia = 100%). De forma semelhante, para uma amostragem de 10 valores (A = 10), a entrada permitir valores com maior disperso agrupados em torno de sua mdia na sada (pertinncia = 10%).

Pertinncia = 100

1 A

Eq. 6.1

A utilizao do grau de pertinncia fuzzy com a filtragem passa baixa digital permite utilizar um algoritmo suficientemente simples, e posterior emprego em microcontroladores destinados a eletrnica embarcada. Deste modo, o filtro passa baixa elimina os picos e vales que se dispersam da posio desejada pelo usurio, permitindo obter um sinal com menores disperses da posio desejada. Para o emprego deste filtro passa baixa, ajustado pela pertinncia fuzzy, deve ser observada a relao entre oscilao tolervel e tempo de resposta, semelhante a abordagem de Adachi et al. (1998) para a obteno do posicionamento da cabea. Caso seja utilizada uma grande amostragem por intervalo de tempo, o sinal possuir menores variaes em torno da posio desejada. Ou seja, uma estabilidade maior ao custo de um perodo de resposta maior. A utilizao de maiores amostragens por intervalo de tempo pode ser empreguada caso o usurio no necessite de uma resposta rpida ou possua maiores dificuldades em manter-se na posio desejada. A recproca tambm verdadeira: caso haja uma pequena amostragem por intervalo de tempo (grau de pertinncia alto), este sinal de sada apresentar um tempo de resposta menor ao custo de maiores oscilaes em torno da posio desejada. Em testes realizados, utilizando apenas este filtro passa-baixa, observou-se que as oscilaes em torno do ponto desejado no podem ser eliminadas por completo. Deste modo, no segundo estgio utilizou-se lgica crisp na forma de uma deadzone com uma posio central mvel e amplitude ajustvel. Um procedimento semelhante tambm empregado em joysticks

119

para jogos, contudo no variando a posio central, mas permitindo apenas um ajuste de amplitude. No procedimento empregado, a posio central desta deadzone altera-se a cada instante em que o sinal de sada do filtro passa-baixa ultrapassa os extremos de sua amplitude, comportandose como uma histerese. Este acompanhamento da mdia, que obtida pelo filtro passa baixa, por meio do valor intermedirio entre os limites superior e inferior permite obter a posio desejada pelo usurio. Para a calibrar a amplitude desta deadzone deve ser observada a relao entre oscilao aceitvel e sensibilidade: grandes amplitudes para a deadzone reduzem praticamente toda a oscilao ao custo de uma insensibilidade quase total aos movimentos do usurio. De forma recproca, amplitudes pequenas permitem uma grande sensibilidade, mas no so capazes de filtrar as oscilaes no eliminadas por meio do filtro passa baixa. Esta combinao de filtro passa baixa e lgica crisp foi simulada em Labview (ver apndice III) demonstrando ser confivel quando os valores de nmero de amostragens (para o filtro passa-baixa), e de amplitude para deadzone so ajustados s caractersticas do usurio simulado. Nestes experimentos simulou-se um joystick para obter a posio desejada em funo do tempo, adicionou-se sinais de rudo e filtrou-se o sinal pelo mtodo descrito. Os resultados obtidos so descritos em mais detalhes no tpico resultados e discusses. Na figura 6.8 possvel observar a simulao de uma entrada tipo rampa (linha roxa), na qual se adiciona um erro aleatrio de +4 a 4 unidades (linha amarela) e a mdia resultante (linha azul claro). Em funo da mdia (linha azul claro), o centro da deadzone mvel (limitada pelas linhas verde e vermelha) resulta na sada (linha azul escuro), que coincide com a entrada do usurio de forma a filtrar os rudos inseridos.

120

Fig. 6.8 - Software para obteno da posio desejada pelo usurio. Para o desenvolvimento deste algoritmo procurou-se utilizar recursos de processamento que possibilitem a sua implementao futura em eletrnica embarcada, por intermdio de microcontroladores. Esta eletrnica embarcada permitir adaptar joysticks de cadeiras de rodas para usurios que possuem contraes involuntrias nas mos, bem como demais aplicaes que relacionem este tipo de usurio e interfaces de caractersticas contnua como alavancas ou volantes.

121

6.3.

Implementao do HaWCoS em Microcontroladores PIC As arquiteturas de interface HaWCoS, desenvolvidas por Felzer e Freisleben (2002)

permitem que usurios realizem interface com computadores ou cadeiras de rodas por meio de uma nica entrada, como ilustrado na figura 6.9.

Interface por Computador Laptop

Usurio

Sensor Piezoeltrico

Condicionamento de sinal

Controle da Cadeira de Rodas

Interface por Microcontrolador e display LCD

Microcontrolador e display LCD

Fig. 6.9 - Arquiteturas do Sistema HaWCoS (fonte: Felzer e Freisleben, 2002). Esta tcnica pode ser implementada por meio de duas arquiteturas: utilizando um computador ou por meio de microcontrolador e display de LCD. Ambas as arquiteturas j se encontram implementadas para controle de uma cadeira de rodas eltrica e testadas por Torsten Felzer que um dos desenvolvedores desta interface. Observando a necessidade de viabilizar o acesso desta interface para usurios com menor poder aquisitivo, optou-se por desenvolver um novo prottipo desta interface para um kit de motorizao de baixo custo. Este novo prottipo de interface foi desenvolvido em parceria com o pesquisador Torsten Felzer, de modo a combinar os conceitos j utilizados na interface HaWCoS com os necessrios ao kit de motorizao. Desta forma foi possvel observar trs pontos a serem adaptados para o kit de motorizao: controle de motores, diversidade de comandos (e custo associado a respectivas funes), e protocolo de controle.

122

O kit de motorizao possui um controle discreto de motores, ou seja, ligar ou desligar e sentido de rotao sem permitir o uso de velocidades intermedirias. Este controle permite uma significativa reduo de custos associados a interface e drivers utilizados. Diversamente, o sistema HaWCoS permite um controle contnuo de velocidades medida em que acelera os motores de modo progressivo para a direo selecionada, permitindo uma movimentao suave. Outro ponto a ser observado que a interface HaWCoS possui uma grande diversidade de funes, alm do controle de movimentos de uma cadeira de rodas, como utilizar aplicativos de um laptop (caso este esteja presente), definir curva de acelerao e ligar faris auxiliares. No kit de motorizao estas funes no esto presentes, o que permite delimitar apenas o controle de movimentos da cadeira como funo. Esta reduo de comandos permite simplificar a interface com o usurio ao utilizar um painel de 14 LEDs, associado diretamente a um microcontrolador de baixo custo, como o PIC 16F877. necessrio ressaltar que estas simplificaes, embora permitam reduzir o custo da interface, tambm eliminam diversas funes presentes no sistema HaWCoS. O terceiro ponto a se adaptar associa-se ao protocolo de interface utilizado, pois o sistema HaWCoS possui uma interface desenvolvida para as caractersticas da cadeira de rodas utilizada, como tipo de joystick e nveis de tenso. O protocolo utilizado no kit de permite alternar entre o sistema HaWCoS desenvolvido e um joystick j utilizado no kit de motorizao.

123

Estes trs requisitos permitiram delinear uma interface que mantm o conceito utilizado pelo sistema HaWCoS, contudo controlando discretamente os motores, utilizando um display de 14 LEDs e um protocolo dedicado ao padro utilizado no kit de motorizao. A figura 6.10 representa a arquitetura desenvolvida com base no sistema HaWCoS e mais detalhes sobre a programao do microcontrolador esto presentes nos apndice IV e apndice VI.

Display de LEDS Sensor Piezoeltrico Condicionamento de sinal

Usurio

Microcontrolador

Controle da Cadeira de Rodas

Fig. 6.10 - Arquitetura utilizada para interface Desta forma possvel detalhar esta interface em trs sub-sistemas: condicionamento de sinal, processamento (microcontrolador) e interface de sada (display de LEDs). 6.3.1. Condicionamento de sinal

Para a interao com a interface HaWCoS, o usurio utiliza como interface de entrada o sensor piezoelctrico. Este dispositivo, ilustrado na figura 6.11, normalmente utilizado como fonte sonora ao ser estimulado por uma fonte de tenso eltrica alterna (AC), permitindo seu uso para toque de celulares, alarmes e brinquedos.

Fig. 6.11 - Piezoeltrico (fonte: International Components Coorporation, 2007).

124

Assim, a tenso eltrica AC convertida em ondas sonoras por meio das contraes e dilataes do piezoelctrico, de forma anloga caso este seja submetido a uma compresso ou dilatao, o mesmo retorna uma tenso eltrica. Esta tenso eltrica proporcional a suas caractersticas construtivas e a compresso ou dilatao aplicada. Desta forma, realizaram-se testes ao comprimir manualmente piezoelctricos e obter diretamente a sua tenso em um osciloscpio. Os resultados demonstraram pulsos de tenses entre 200mV e 2V, significativamente acima das tenses presentes em tcnicas EMG e EOG, como no projeto EagleEyes apresentado por Gips (1998) com tenses em torno de 100 microvolts. Considerando que as tenses do piezoelctrico permitiram uma relao de sinal e rudo que dispensa a necessidade de filtros, implementou-se o piezoelctrico por meio de uma ponte H. Esta ponte H, por sua vez, associada a um amplificador operacional em configurao de ganho infinito. Implementou-se esta configurao de ganho infinito pois reconhecido que amplificadores operacionais reais no apresentam ganho infinito, mas uma condio de ganho mximo, que permite ajustar a sensibilidade nos resistores da ponte H. Desta forma, os pulsos de tenso amostrados no piezoelctrico so amplificados para valores entre 0 e 5 volts. Esta amplificao permite a amostragem do sinal por meio de bordas de subida (2 a 2,5 volts) em um microcontrolador PIC 16F877A, responsvel pelo processamento e controle. Observa-se que, caso o usurio possua dificuldades em se adaptar a este tipo de sensor piezoelctrico, pode ser utilizado outro tipo de sensor. O nico requisito necessrio a sada em borda de subida de 2 a 2,5 volts a cada interao do usurio, mantendo os sistemas de interface e controle descritos a seguir. 6.3.2. Processamento e Controle

O segundo sub-sistema implementado em um microcontrolador PIC 16F877A e possui quatro finalidades: receber os dados da interface de entrada, process-los, exibi-los na interface de sada e controlar os drivers.

125

A recepo dos dados do usurio ocorre por meio de bordas de subida obtidas aps a amplificao do sinal do piezoelctrico, resultando em um clique. Caso sejam detectadas duas bordas de subida, em um curto intervalo de tempo, reconhecido como duplo clique. Esta forma de interpretao (um ou dois cliques), em funo do intervalo de tempo entre interaes, derivada do sistema HaWCoS de Felzer e Freisleben (2002). A interpretao de um ou dois cliques permite controlar e configurar todo o funcionamento da interface por meio de uma nica entrada associada ao piezoelctrico. Desta forma, tambm possvel selecionar entre dois mtodos de movimentao: com pausas e sem pausas. Com pausas: os comandos de direo se mantm, de modo a serem alternados a cada evento de um clique. Um evento de dois cliques retorna ao modo de configurao. Neste modo simplificado, aps cada evento de um clique, o movimento da cadeira de rodas interrompido, e retorna aps um perodo pr-definido de 1 a 2 segundos. Este perodo permite que o usurio escolha a direo de movimento com a cadeira imobilizada Sem pausas: apresenta duas diferenas ao modo anterior: no apresenta pausas entre os movimentos, e permite alterar a disposio dos comandos de movimento. Este modo sem pausas se assemelha ao mtodo de movimentao HaWCoS de Felzer e Freisleben (2002), no qual no h pausas quando se alterna entre as direes de movimento. Ainda que o microcontrolador utilizado possua duas sadas PWM, capazes de controlar a velocidade de modo independente para cada um dos dois motores, o driver implementado no prottipo no permite este controle de velocidade. Desta forma, no sero implementadas as funes de acelerao, presentes no sistema HaWCoS de Felzer e Freisleben (2002). Assim, o controle dos motores se resume a cinco pinos, quatro de controle de movimentos e um referencial, permitindo utilizar o mesmo padro de joysticks Atari e Master System. O layout de disposio dos controles frente, trs, esquerda e direita pode ser alterado na movimentao sem pausas, permitindo alternar entre quatro disposies pr-definidas semelhantes ao sistema HaWCoS de Felzer e Freisleben (2002). Para o modo de configurao, e nos dois modos de controle, necessrio um retorno para que o usurio acompanhe como esta

126

interao ocorre. Este retorno exibido por meio de uma interface de sada na forma de um painel de 14 LEDs multiplexados e controlados pelo microcontrolador. 6.3.3. Interface de Sada e Controle de Movimentos

A interface de sada, representada na figura 6.12, responsvel por demonstrar em tempo real ao usurio como a interface est operando e em qual modo o usurio se situa (configurao, movimento com pausa ou movimento sem pausa).

Modo de configurao: Seleciona tipo de movimentao Seleo de Movimento Seleciona Lay-out de comandos de movimento

Tipo de movimentao: - On: Modo com pausa - Off: Modo sem pausa

Controle de movimentao

Seleo de direo de movimentos (apenas no modo com pausa)

Fig. 6.12 - Interface de sada. Seguindo o conceito da interface HaWCoS de Felzer e Freisleben (2002), toda a seleo de comandos realizada por meio de comandos de um ou dois cliques. Deste modo, manteve-se como referncia o mtodo de navegao interface HaWCoS e retiraram-se os comandos no implementados no kit de motorizao, como a acelerao, controle de velocidade mxima e ligar faris. Outras funes como perodo mximo entre dois cliques e tempo de espera para acionar movimento (modo com pausa) so definidas em tempo de programao do microcontrolador. Deste modo, evita-se que o usurio altere configuraes que lhe impeam de utilizar a interface de modo adequado. Esta iniciativa, de retirar comandos desnecessrios ao kit de motorizao e eliminar o acesso a configuraes que possam prejudicar o sistema, facilita a operao e a aumenta a robustez da interface.

127

Desta forma, com um nmero reduzido de comandos, definiu-se um padro para a navegao em funo de um ou dois cliques, como ilustrado na figura 6.13:

Cicla On/Off

Um Clique

Duplo Clique

Fig. 6.13 - Navegao na interface por cliques. Este padro de um ou dois cliques utiliza: dois cliques para alternar entre o modo de configurao (esquerda, com LEDs amarelos) e a configurao selecionada (direita, com LEDs vermelhos); e um clique dentro de cada configurao para a seleo. Desta forma, possvel manter a consistncia: para sair das caixas demarcadas com duas linhas, ver figura 6.12 e figura 6.13, so utilizados dois cliques; e para ciclar entre suas opes por meio de um clique. Como exemplo, para movimentar a cadeira, quando o sistema ligado apenas o primeiro LED amarelo (posio superior) e o LED vermelho central (controle de movimentao) encontram-se acesos: o usurio encontra-se no modo de configurao. Aps um clique, este primeiro LED se apaga e o segundo LED amarelo se acende. Quando o usurio realiza dois cliques, a interface responde piscando todos os LEDs acesos e inicia o modo de controle de movimentos. Neste modo, quando realiza-se o primeiro clique selecionado o movimento para frente e a cada clique alterna-se a direo de movimentos: frente, direita, trs, esquerda e frente novamente. O movimento da cadeira inicia-se aps selecionar uma direo por um intervalo de tempo, pr-definido como 1 segundo. Quando o usurio deseja parar a movimentao, este

128

realiza dois cliques e retorna-se ao modo de configurao, indicado por um piscar de todos os LEDs. Retornando ao modo de configurao, possvel ciclar entre as opes a cada clique, que alternam entre os LEDs amarelos do superior ao inferior. Quando o terceiro LED encontra-se selecionado (aceso) possvel realizar um duplo clique para alterar o layout de controle. No modo de seleo de layout, de forma semelhante ao modo de movimentao, possvel alternar entre as opes a cada clique e selecionar a disposio dos comandos frente, trs, esquerda e direita presentes no modo de controle de movimentao. A escolha de layout permite, por exemplo, otimizar a movimentao para frente (eliminando a direo trs) e desta forma reduzir o nmero de interaes do usurio. Observa-se tambm uma quinta opo: retorno, nesta opo mantm-se o layout anteriormente selecionado. Para confirmar a seleo de um determinado layout realiza-se duplo clique no layout selecionado, retornando-se ao modo de configurao. Considerando que este processo de seleo de opes pode dificultar o uso desta interface para usurios iniciantes, duas opes de interface simplificada so propostas. Em ambas as solues no se utiliza a seleo de movimentos com ou sem pausas, define-se como default a utilizao da movimentao com pausas. Assim o primeiro modelo de interface simplificada consiste em utilizar apenas o controle de movimentao, sem permitir alteraes de layout, como ilustrado na figura 6.14. Nesta soluo o comando de duplo clique para a movimentao e os comandos de clique simples alternam a direo de movimentos.

Frente Esquerda Parar Direita Trs

Um Clique Duplo Clique

Fig. 6.14 - Interface simplificada modelo 1.

129

Reconhecendo a necessidade em otimizar o controle para determinadas situaes prope-se um segundo modelo para uma interface simplificada, acrescentando a seleo de layout na interface anterior. Assim a segundo interface simplificada uma altenativa intermediria entre a proposta na figura 6.14 (apenas movimentao) e a proposta nas figuras 6.12 e 6.13 (movimentao e seleo de layout). Este segundo modelo de interface, ilustrado na figura 6.15, acrescenta um layout com as direes de movimento padro e elimina a seleo de movimentao com ou sem pausas, ilustrada na figura 6.12.

Movimentao

Parada

Um Clique

Duplo Clique

Fig. 6.15 - Interface simplificada modelo 2. Desta forma, o layout padro utilizado o primeiro, que permite movimentar-se para na sequncia frente, direita, trs, esquerda e frente novamente. Caso o usurio deseje alternar o layout, a movimentao deve ser parada com duplo clique e a opo de selecionar layout iniciana. Aps confirmar o layout desejado retorna-se ao modo de movimentao. 6.4. Integrao entre Interfaces e Sistemas Auxiliares Segundo a proposta de Yanco (1998b), o desenvolvimento de prottipos para interfaces e sistemas de auxlio navegao seguido da sua modularizao. Este tpico descreve um protocolo para modularizar interfaces, e sistemas auxiliares de navegao, em um kit de motorizao de cadeira de rodas. Este kit de motorizao foi desenvolvido pelo Laboratrio de Projeto Mecnico da Unicamp e descrito por Alvarenga (2006), integrante da equipe de desenvolvimento deste kit de motorizao.
130

Contudo, em casos de limitaes severas, como usurios que apresentam movimentos involuntrios nas mos, necessrio utilizar outro tipo de interface, como voz ou contraes musculares. Em casos mais severos, em funo das caractersticas da interface ou do usurio, pode ainda ser necessria a adio de um sistema de auxlio navegao. Este sistema de auxlio navegao tem por objetivo suprir as necessidades ainda presentes aps a utilizao de uma determinada interface, como detectar obstculos e evitar colises. Seguindo a relao usurio e tarefa, delimitou-se dois tipos de interface a serem utilizadas: HaWCoS embarcado em microcontrolador e joystick; uma funo evitar colises por sonar para auxlio a navegao e levantaram-se as caractersticas de entrada do driver de controle para os motores. Observou-se que neste driver de controle h um par de entradas para cada motor. Nestes pares utilizam-se comandos discretos (0V ou 24V) para representar os sentidos de rotao, como ilustrado na tabela 6.2:

Tabela 6.2 - Lgica de controle para o driver. Movimento Parado Movimento Horrio Movimento Anti-horrio Parado Entrada A (V) 0v 0v 24v 24v Entrada B (V) 0v 24v 0v 24v

Observando que o microcontrolador e o sonar utilizam em suas valores entre 0V e 5V, tambm compatveis ao joystick j presente, foi necessrio desenvolver um mdulo adicional para adaptar-se os nveis de tenso (MAANT). O desenvolvimento deste mdulo ocorreu por intermdio da abordagem usurio e tarefa, na qual foi possvel localizar as interfaces (joystick e sistema HaWCoS embarcado em microcontrolador), sistemas de auxlio a navegao (sonar), driver de controle (tarefa) e o fluxo de dados entre estas (setas).

131

Foi possvel relacionar como fluxo de dados trs comandos de movimento por driver, pois h duas direes de movimento e o comando parar. Combinando os dois drivers, observam-se 6 comandos necessrios para a interface com a cadeira de rodas e mais dois fios para a alimentao dos sistemas envolvidos. Deste modo, a tcnica M3S, apresentada por Nelisse (1998), demonstra ser possvel modularizar e integrar estes componentes por meio de um protocolo de comunicao serial, gerenciado por uma central de controle e configurao. Assim, a meta de integrar e modularizar os sistemas de interface, auxlio a navegao e drivers para motores atendida pelo protocolo M3S. Contudo necessrio um controlador central, e que todos os dispositivos envolvidos possuam capacidade de realizar uma comunicao serial. Deste modo, observou-se que para a implementao de um protocolo de comunicao serial e controlador central, necessrio o emprego de unidades de processamento (microcontroladores ou microcomputadores) em cada mdulo. Considerando que o sistema a ser controlado demanda apenas quatro direes ou comandos, optou-se por utilizar um protocolo simplificado de comunicao, ao evitar a comunicao serial, mas mantendo a modularidade. Observando que o nmero de comandos distintos so 6, uma alternativa que se demonstrou vivel em relao interface serial a comunicao paralela entre os mdulos. Neste caso, associa-se uma via de comunicao para cada tipo de informao, resultando tambm em 6 vias. Foi possvel reduzir o nmero de vias 6 para 4, ao observar que o comando parar ocorre na ausncia dos dois comandos de movimentarse, como demonstrado na tabela 6.2.

132

Desta forma, foi possvel delimitar comunicao com o driver por meio de quatro linhas de comunicao (para a movimentao) e mais duas para alimentao e referencial de fonte de energia, como ilustrado na figura 6.16. necessrio observar que os pinos de 1 a 4, relacionados a movimentao, j esto representando os contatos do joystick.

Pinagem: 1-Diagonal superior e direita (FE) 2-Diagonal inferior e esquerda (TD) 3-Diagonal superior e esquerda (FD) 4-Diagonal inferior e direita (TE) 5- +24V DC 6-Comando adicional 1 7-Indicador adicional 1 8- 0V (Neutro) 9-Comando adicional 2

Fig. 6.16 - Configurao de pinos no protocolo utilizado. Por meio desta padronizao das entradas do driver, que semelhante a utilizada em joysticks Master System, foi possvel construir um MAANT (mdulo adicional para adaptar de nveis de tenso). O MAANT reconhece 0V como nvel lgico 0, e permite receber tenses entre 5 a 24 volts para nvel lgico 1 (equivalente a 24V para o driver). Assim, mantm-se a mesma configurao de pinos apresentada na figura 6.16 para o mdulo seguinte e permite-se controlar os movimentos da cadeira de rodas ao combinar os comandos de direo utilizados, como ilustrado na tabela 6.3.

133

Tabela 6.3 - Relao entre comandos de direo e movimentos Cdigos de movimentos (figura 6.16) FE 5 a 24V 5 a 24V 0V 0V 0V 0V 0V 5 a 24V FD 0V 5 a 24v 5 a 24V 5 a 24V 0V 0V 0V 0V TE 0V 0V 0V 5 a 24V 5 a 24V 5 a 24V 0V 0V TD 0V 0V 0V 0V 0V 5 a 24V 5 a 24V 5 a 24V Direo Avano direita Frente Avano esquerda Rotao anti-horria sobre eixo Recuo direita Trs Recuo esquerda Rotao horria sobre eixo

O par de fios associados alimentao diretamente conectado s baterias como uma fonte de 24 volts. Caso estejam presentes circuitos integrados, como microcontroladores, possvel utilizar reguladores de tenso LM7805 associados a capacitores para obter uma fonte de 5 volts sem quedas, como ilustrado na figura 6.17.

Fonte 7 a 35 volts
C1 0.33uF

U1 78L05
IN OUT COM

Sada 5 Volts regulado


C2 0.1uF

Fig. 6.17 - Regulador de tenso (fonte: STMicroelectronics, 2007). Aps padronizar os nveis de entrada do driver por meio do MAANT, e o protocolo demonstrado na figura 6.16, foi necessrio integrar as duas interfaces e o sistema de navegao no mesmo protocolo. Uma abordagem tradicional sugere um sistema de processamento cartesiano, como observado por Gomi e Griffith (1998) e implementado por Madarasz et al. (1986). Nesta abordagem cartesiana, necessria a presena de uma unidade central, responsvel

134

por processar a informao proveniente dos sensores e interfaces com o usurio, e agregando uma maior complexidade ao sistema. Procurou-se ento descentralizar o processamento, seguindo o conceito de uma arquitetura subsumption, para permitir que cada mdulo seja inserido ou retirado sem a necessidade de reprogramao do sistema pelo usurio. Desta forma, o conceito da modularidade presente nas arquiteturas comportamental de Gomi e Griffith (1998), e subsumption de Brooks (1986), permite um processamento descentralizado e paralelo entre os mdulos de interface e auxlio navegao. Este conceito de integrao presente nas arquiteturas comportamental e subsumption dispensa a necessidade de uma central de controle e configurao, presente na tcnica M3S. Seguindo este conceito de atribuir comportamentos para cada mdulo foi possvel organizalos em uma hierarquia de controle, como ilustrado no diagrama da figura 6.18.

Interface HaWCoS 3

Joystick

Sistema de Auxlio por Sonar 1

Driver

Maior Hierarquia

Fig. 6.18 - Exemplo de integrao hierrquica entre mdulos. Assim foi possvel atribuir comportamentos para cada elemento da mdulo: - Interface HaWCoS e Joystick: recebem dados do usurio e controlam os quatro comandos de direo; - Sistema de Auxlio por Sonar: quando detecta obstculos desabilita determinadas direes de movimento; - Driver: recebe informaes dos elementos anteriores e controla os motores;

135

Observa-se que o sistema de auxlio navegao por sonar, que recebe informaes das interfaces, sobrepe-se a comandos de hierarquias anteriores quando ocorre um evento de deteco de objeto. Nestes eventos o mdulo associado ao sonar realiza seu comportamento de inibir movimentos na direo do obstculo detectado. Desta forma, a arquitetura representada na figura 6.14 demonstra como os mdulos so organizados na arquitetura utilizada:

Modulos Auxiliares Ultrassom Interfaces de Entrada Joystick

Filtragem e Amplificao

Connectores DB9

Alta Hierarquia

Drivers

Eletrodos Sip and Puff

Fig. 6.19 - Arquitetura modular utilizada. Nesta arquitetura foi possvel manter o protocolo de interface paralela, apresentada na figura 6.12, ao incorporar os circuitos de filtragem e amplificao as suas respectivas interfaces e sistemas de auxlio navegao. Para isto, o detector de sonar (ou ultrassom) possui todo o processamento e condicionamento de sinal necessrios embutidos em seu mdulo. De forma anloga, a interface HaWCoS embutida em microcontrolador tambm possui todo o hardware necessrio contido em seu mdulo. Esta modularizao permite retornar para este protocolo subsumption apenas o seu comportamento: receber dados do usurio e controlar direes.

136

Captulo 7 Resultados e Discusses

Este tpico realiza uma reviso a respeito de experimentos realizados com os sistemas desenvolvidos, apresentando os resultados positivos e algumas dificuldades encontradas. 7.1. Reconhecimento de Voz Os resultados obtidos com o software comercial de reconhecimento de voz demonstraram ser possvel o controle de uma cadeira de rodas por voz, alm de outras alternativas, como a automao residencial. Contudo esta arquitetura pode ser inadequada para a implementao em cadeiras de rodas, devido ao seu consumo energtico, dimenses e custos de hardware. Uma segunda alternativa de implementao em microcontrolador permitiu uma significativa reduo em seu consumo energtico, dimenses e custos de hardware. Deste modo a utilizao do computador externo ocorre apenas em fases em que no necessrio o controle da cadeira de rodas, permitindo considerar esta segunda arquitetura como embarcada, e associando uma significativa reduo de custos e maior mobilidade.

137

A estimativa de custos, levantada em lojas de eletrnica em setembro de 2007, para os principais componentes desta segunda arquitetura apresentada na tabela 7.1:

Tabela 7.1 - Estimativa de custos da segunda arquitetura Componente Microcontrolador 1 (PIC 16F877A) Componentes para mdulo de interface serial Placa para microcontrolador Amplificador para microfone Microfone tipo IBM PC Caixas e conectores Custo total Preo (R$) 17,00 20,00 20,00 10,00 25,00 15,00 107,00

Observa-se que esta estimativa no considera o microcontrolador 2, que tambm est presente na primeira arquitetura, que utiliza reconhecimento de voz, pois o objetivo comparar os preos de ambas as arquiteturas. Desta forma possvel observar uma significante diferena entre custos: - Primeira arquitetura: custo estimado em R$ 2050,00: software de reconhecimento de voz (aproximadamente R$ 350) e um computador laptop (aproximadamente R$1700,00); - Segunda arquitetura: custo estimado para componentes em R$ 107,00, desprezando-se a mo de obra.

138

Contudo, dada a simplicidade do algoritmo de reconhecimento de voz implementado em microcontrolador, h uma maior dificuldade no reconhecimento palavras ou sons vocalizados, especialmente quando a pronuncia do usurio demanda um tempo maior que o correspondente na biblioteca. Em outras palavras, pronunciar rapidamente gera um mau casamento entre a curva de freqncia amostrada e a correspondente na biblioteca, pronunciada em velocidade normal. De forma anloga, a pronuncia em um perodo menor que o da biblioteca tambm dificulta a identificao do comando solicitado. Assim, observa-se que h uma necessidade em escolher qual arquitetura melhor se adapta para cada sistema embarcado: as redues em custo e em dimenso de um microcontrolador, ou a grande biblioteca e maior confiabilidade presentes no reconhecimento de voz de um computador. 7.2. Filtragem de Joystick por Fuzzy Para obteno dos resultados modelou-se um usurio, em LabView, por meio de uma simulao de um joystick de um eixo. Esta simulao de joystick demonstra a posio desejada na qual adiciona-se o rudo (fontes senoidal ou randmica) de amplitude regulvel. A figura 7.1 ilustra estas duas fontes de rudo (amarelo) adicionadas ao sinal de entrada desejado (roxo) com uma amplitude, de pico a pico, de 5 unidades.

Senoidal

Randmico

Fig. 7.1 - Fontes de rudo senoidal (1Hz) e randmico adicionada a uma entrada.

139

As escalas de tempo do grfico (0,1 segundo/diviso) e a taxa de amostragem do sinal de entrada (10Hz) foram mantidas em todos os testes realizados. Este sinal amostrado a 10Hz (100ms entre cada aquisio) para posterior filtragem por meio do filtro passa baixa e fuzzy j descritos. Para observar a estabilidade e tempo de resposta, avaliaram-se os regimes estacionrio (mantm-se o valor da entrada) e transiente (entrada degrau de 8 unidades), ambos considerando a adio de rudo. Deste modo, foi possvel obter o comportamento para as entradas senoidal e randmica, bem como posteriormente alterar dois parmetros: nmero de amostras para o filtro passa baixa (mantendo a taxa de amostragem em 10Hz) e a amplitude para o filtro fuzzy. Testes realizados demonstraram que, para uma mesma freqncia de amostragem, o aumento no nmero de amostras resulta em um tempo maior de acomodao de forma proporcional. Desta forma, em uma entrada degrau de 8 unidades sem a adio de distrbios, para cada 10 amostras a acomodao demanda 1 segundo: 20 amostras eqivalem a 2 segundos e 50 amostras a 5 segundos. Um exemplo da obteno deste tempo de resposta pode ser observado na figura 7.2, que simula uma entrada degrau sem rudo (neste caso a legenda sinal com erro eqivale a entrada).

Fig. 7.2 - Acomodao de 4 segundos para 40 amostras.

140

Os testes com uma fonte de rudo senoidal visam representar um movimento oscilatrio em torno de um ponto. Foi possvel observar que, quando o perodo de amostragem do filtro passa baixa igual ao perodo de um ciclo completo da entrada senoidal, possvel eliminar esta fonte de distrbio ao custo de um atraso de resposta. Como exemplos, mantendo a freqncia de amostragem em 10Hz, para um rudo senoidal de 1Hz (perodo de 1 segundo/ciclo) so necessrias 10 amostras a cada 0,1 segundo (perodo de 1 segundo/ciclo). Da mesma forma e para 0,5Hz (perodo de 2 segundo/ciclo), possvel utilizar 20 amostras a cada 0,1 segundos (perodo de 2 segundo/ciclo). Esta relao permite reduzir o nmero necessrio de amostragens para a obteno de uma maior velocidade de resposta, como ilustrado na figura 7.3, ilustrando um rudo de 1Hz e amplitude 5 unidades, filtrado por 10 amostras no filtro passa baixa.

Fig. 7.3 - Supresso do rudo senoidal por filtragem. Observa-se que amostragens mltiplas de uma determinada freqncia apresentam o mesmo efeito. Desta forma, para uma entrada de 2Hz, taxas de amostragens de 2Hz, 4Hz, 6Hz e 8Hz tambm eliminaro esta fonte de rudo. Estas taxas mltiplas para amostragem podem ser utilizadas quando um ciclo do sinal de entrada resulta em amostragens inferiores a 5. Desta forma, utiliza-se um mltiplo de amostragem do sinal de entrada igual ou superior a 5, evitando problemas relacionados a baixas amostragens. Desta forma observou-se que, quando a freqncia

141

de oscilao conhecida, no necessrio o filtro fuzzy (relacionado a incerteza), pois a sua amplitude pode ser definida como zero. Ao submeter estes mesmos parmetros de entrada e filtragem a um degrau de 8 unidades observa-se um delay de aproximadamente 0,5 segundos entre o sinal aplicado sem rudo e a mdia obtida. Este delay de 0,5 segundos pode ser observado na figura 7.4 e est diretamente relacionado ao nmero de amostragens. Nesta figura as linhas leves representam 0,1 segundos e linhas grossas representam 0,5 segundos, mantendo a mesma escala dos grficos anteriores.

Fig. 7.4 - Resposta em degrau para rudo senoidal de 1Hz. Aps os testes para distrbios senoidais, realizaram-se os testes para uma entrada somada a um rudo randmico. necessrio observar que no mais possvel definir o nmero de amostras em funo da freqncia do rudo pois, posto que este randmico, no possui uma ou mais freqncias equivalentes definidas. Neste caso necessrio combinar os valores de nmero de amostragens (filtro passa baixa), com a amplitude da incerteza (filtro fuzzy) para um tratamento adequado. Estes parmetros so definidos em funo do tempo de resposta e da amplitude do sinal resultante aps a filtragem passa baixa. Desta forma, adicionou-se um rudo randmico de amplitude mxima 5 unidades, de pico a pico, ao sinal de entrada desejada. O nmero de amostragens do filtro passa baixa, que se relaciona se relaciona ao tempo de resposta, foi mantido em 10 amostragens posto que na
142

filtragem anterior foi possvel obter uma resposta satisfatria de 0,9 segundo para 8 unidades em entrada degrau. A demonstrao de uma entrada degrau de 8 unidades nestes parmetros observada na figura 7.5:

Fig. 7.5 - Filtragem passa baixa de um rudo randmico. Posteriormente a esta filtragem passa baixa, utilizou-se o filtro fuzzy com amplitude de 2 unidades, como demonstrado na figura 7.6.

Fig. 7.6 - Filtragem fuzzy.

143

Na com parao entre as figuras 7.5 e 7.6 necessrio ressaltar que a curva mdia representa o mesmo intervalo de tempo em ambos os casos. Desta forma, possvel relacionar o sinal de entrada (magenta), a soma de um rudo (amarelo), a filtragem passa baixa (azul claro), e a filtragem fuzzy com seus limites superior (vermelho), inferior (verde) e valor central (azul escuro). Observa-se que a sada representada pelo valor central do filtro fuzzy (azul escuro). Uma representao destas curvas neste mesmo perodo de tempo demonstrada na figura 7.7:

Fig. 7.7 - Curvas relacionadas a filtragem. Inicialmente as curvas de entrada (magenta) e sada (azul escuro) so coincidentes. Aps o degrau h um transiente de 1 segundo para a resposta do filtro passa baixa, seguido de 2,5 segundos para uma acomodao final relacionada ao filtro fuzzy. Esta segunda acomodao, relacionada ao filtro fuzzy no pode ser definida como uma constante de tempo, posto que no dependente apenas de valores previsveis, como a amplitude fuzzy (definida pelo usurio). O tempo gasto para a acomodao fuzzy tambm dependente da curva resultante do filtro passa baixa (sua amplitude) e da incerteza do valor de entrada.

144

Os testes para a implementaa desta interface em joysticks reais observaram uma no linearidades e fenmenos de interferncias cruzadas entre seus eixos, como ilustrado na figura 7.8:

Joystick 1
250
200

Joystick 2

180

200

160

140

150

120

100

100

80

60

50

40

20

0 1 14 27 40 53 66 79 92 105 118 131 144 157 170 183 196 209 222 235 248 261 274 287 300 313 326 339 352 365 378 391

0 1 27 53 79 105 131 157 183 209 235 261 287 313 339 365 391 417 443 469 495 521 547 573 599 625 651 677 703 729 755 781 807

Fig. 7.8 - Testes com dois joysticks reais. Legenda: Azul: eixo x Magenta: Eixo y Nestes testes no se utilizou nenhum processo de filtragem e moveu-se um eixo do joystick por vez, de uma posio extrema outra, enquanto os dados so amostrados pelo microcontrolador em tempo real, e enviados pela porta serial do computador para plotagem dos grficos. Em ambos os casos (testes dos dois joysticks) observou-se interferncias entre os eixos, principalmente nas posies de deslocamento mximo. Desta forma, na presente data deste trabalho, procura-se reconhecer e isolar as fontes destas interferncias. Outra opo pode ser avaliar outros tipos de sensores para a leitura dos eixos de joystick, como encoders; ou alterar o circuito eltrico que obtm a leitura dos potencimetros.

145

7.3.

Implementao do HaWCoS em Microcontroladores PIC Os experimentos realizados com esta interface j demonstraram ser possvel controlar um

kit de motorizao, sem a necessidade de alteraes em hardware ou firmware. Para os testes, interpretou-se como duplo clique a ocorrncia de dois cliques no intervalo de 0,8 segundo. No movimento com pausas utilizou-se uma espera de 2 segundos antes de realizar o ltimo movimento selecionado. Observou-se que o tempo entre dois cliques (0,8 segundo) difere em funo do usurio, de modo que testes preliminares demonstraram que alguns usurios demandam um tempo maior para realizar o duplo clique. Para a otimizao destes tempos (espera para movimentos e duplo clique), pode ser possvel utilizar a tcnica de modelamento dos tempos de resposta MHP, proposta por Keates et al. (1999) e Card et al. (1983). As colaboraes com o pesquisador Torsten Felzer demonstraram que a tcnica de controle com pausas evita alterar o layout de comandos, embora possa resultar em um tempo de espera indesejado entre selecionar uma direo e movimentar-se. Desta forma, ambas as implementaes (com ou sem pausas) esto presentes e podem ser selecionadas pelo usurio quando necessrio. 7.4. Integrao entre Interfaces e Sistemas Auxiliares Para a validao da integrao hierrquica de interfaces, testaram-se dois prottipos funcionais: um em escala reduzida e um segundo por meio do kit de motorizao. O prottipo em escala reduzida, tambm utilizado para simular os movimentos na interface de reconhecimento de voz, permitiu avaliar a confiabilidade de uma integrao subsumption por hierarquia. Neste prottipo toda a lgica foi programada em um nico microcontrolador, de modo que se associa um conjunto de sub-rotinas a cada hardware externo (interface ou sensor).

146

Assim, a retirada ou insero de um mdulo externo consiste em habilitar ou desabilitar uma determinada sub-rotina e atribuir um comportamento e uma hierarquia correspondentes. Observou-se uma grande facilidade para a programao e integrao de novos mdulos, contudo nesta implementao a confiabilidade deste sistema de controle diretamente relacionada aos mdulos de maior hierarquia. Nos testes realizados com o sensor de sonar, reconhecido como uma alta hierarquia, observou-se um grande nmero de falsos positivos (detectar objetos inexistentes) quando fontes externas de som, quando os motores ou rels so acionados. Estes falsos positivos podem interromper a movimentao por curtos intervalos de tempo, ou nos piores casos, impossibilitar a movimentao. Deste modo, observou-se a necessidade de utilizar uma outra tcnica para deteco de obstculos, ou acrescentar um mdulo comportamental para negar a deteco de objetos em situaes de falsos positivos. Os testes realizados com o kit de motorizao permitiram avaliar os aspectos modulares desta arquitetura subsumption integrada por hierarquia. Nestes testes utilizaram-se os mdulos de HaWCoS embarcado, joystick, sonar e adaptador de nvel de tenso, ilustrados na figura 7.9.

Fig. 7.9 - Mdulos utilizados no kit de motorizao.

147

A insero ou retirada de mdulos no necessita a reprogramao de uma central ou de nenhum outro sistema envolvido, e a conectividade entre estes elementos demonstrada na figura 7.10, Para favorecer a compreenso destes mdulos, possvel observar a disposio dos circuitos no apndice V.

Joystick

Interface HaWCoS

Mdulo Sonar

Mdulo MAANT

Conector para drivers do kit de motorizao

Fig. 7.10 - Conectividade entre mdulos. Os testes de conectividade relacionaram 5 opes: Joystick Joystick HaWCoS Joystick Driver: Configurao original do kit de motorizao MAANT* MAANT* Driver: Para testar MAANT Driver: Para usurios com limitaes nas mos MAANT* Driver: Para usurios com dificuldade Driver: Para usurios com dificuldade em

Sonar (para trs)

em manobrar HaWCoS manobrar Obs: * Mdulo Adicional para Adaptar de Nveis de Tenso Hierarquia menor h um objeto detectado.
148

Sonar (para trs) MAANT*

Hierarquia maior

A interveno do mdulo sonar ocorre durante todo o intervalo de tempo em que

Os testes demonstraram ser possvel alternar entre um joystick e uma interface HaWCoS sem a necessidade de mudana nos circuitos de driver, e mantendo a consistncia nos comandos (no altera-se a direo de movimentos). Tambm foi possvel testar a insero de um sonar em uma hierarquia superior a da interface, e observar a capacidade de desabilitar direes de movimento quando objetos so detectados.

149

Captulo 8 Concluses e Planos Futuros

O sistema de reconhecimento de voz por microcontrolador utilizado j permite a vocalizao de comandos por meio de palavras ou sons, contudo ainda no possui uma boa margem de acerto. Implementaes futuras devem estudar mtodos mais sofisticados para a anlise do sinal de voz, respeitando as limitaes do microcontrolador, para aumentar o ndice de acerto. Aps a identificao de solues para os problemas relacionados a no linearidade e interferncias cruzadas nos eixos do joystick, ser possvel implementar o algoritmo para filtragem de movimentos involuntrios em joysticks (descrito nos tpicos 6.2 e 7.2) por meio de eletrnica embarcada em microcontroladores. Os testes realizados com o sistema HaWCoS desenvolvido em microcontroladores PIC, j demonstram ser possvel controlar um pequeno prottipo e um kit de motorizao de uma cadeira de rodas por meio de sensores piezoelctricos. As pesquisas futuras podem abordar os tempos de resposta dos usurios, permitindo definir melhor o perodo para dupla contrao e para a espera antes de se movimentar. Estes perodos se associam diretamente as capacidades motora, cognitiva e de percepo de cada usurio.

150

A tcnica de integrao modular implementada no kit de motorizao demonstrou-se amigvel, pois no necessrio reprogramar nenhum dos mdulos em sua insero ou retirada. Contudo foi observado que, para uma integrao subsumption por hierarquia, fundamental que as hierarquias superiores possuam alta confiabilidade, garantindo a estabilidade do sistema como um todo. Abordando o sistema de integrao desenvolvido como uma arquitetura subsumption, observa-se que os nveis de maior autonomia, seguindo a classificao de Rasmussen (1983), esto associados ao usurio. Pesquisas futuras nesta integrao entre mdulos devero incluir comportamentos relacionados a fugir de obstculos, alm do comportamentos j existente de evitar coliso. Estes mdulos comportamentais permitiro camadas mais elevadas de autonomia para o sistema de auxlio a navegao. O desenvolvimento de novas solues em interfaces, sistemas de apoio e a sua integrao modular permitiro um ganho significativo para a mobilidade e independncia de portadores de necessidades especiais. Estes ganhos tambm afetam de forma indireta as pessoas com quem estes portadores de necessidades especiais convivem, garantindo um melhor convvio social e qualidade de vida.

151

Captulo 9 Bibliografia
Abellard, A., Khelifa, M. M. B., A Petri Net Modelling of a Neural Human Machine Interface, IEEE International Conference on Industrial Technology, pp. 949 - 954, 2004. Adachi, Y., Kuno, Y., Shimada, N., Shirai, Y., Intelligent Wheelchair Using Visual Information on Human Faces, Canada, Proceedings of IEEE/RSJ, 1998. Agostini, Y., Bourhis, G., Human-oriented architecture for an intelligent powered wheelchair, Vienna, Austria, IFAC Worhhop DARS95, Sept. 19-20, 1995, pp. 127-132. Alhmana, J., Modelisation par Rseaux de Petri Flux de Donnes. Application la synthse de Ioprateur de Riccati rapide, Universite de Marseille Tese, 1983, 111p. Tese (Doutorado). Alvarenga, Flvia Bonilha, Desenvolvimento de Sistemas de Motorizao Alternativa para Cadeira de Rodas Convencionais, UNICAMP Universidade Estadual de Campinas, 2002, Tese (Mestrado). Alvarenga, Flvia Bonilha, Uma Abordagem Metodolgica para o Projeto de Produtos Inclusivos, UNICAMP Universidade Estadual de Campinas, 2006, Tese (Doutorado). Aubrey, E., The Lost History Of The Wheelchair, on-line, http://www.63s.org, acesso em 6 julho 2007. Becker, Marcelo, Estudo sobre robs de locomoo: formas construtivas, dirigibilidade e controle, UNICAMP Universidade Estadual de Campinas, 1997, Tese (Mestrado). Becker, Marcelo, Aplicao de tecnologias assistivas e tnicas de Controle em Cadeiras de Rodas Inteligentes, UNICAMP Universidade Estadual de Campinas, 2000, Tese (Doutorado). Becker, M., Dantas, C. M., Macedo, W. P., Obstacle Avoidance Procedure for Mobile Robots, Proceedings of Cobem 2005, pp. 250 - 257, 2005.

152

Bilmes, J. A., Li, X., Malkin, J., Kilanski, K., Wright, R., Kirchhoff, K., Subramanya, A., Harada, S., Landay, J. A., Dowden, P., Chizeck, H., The Vocal Joystick Demo at UIST05: A Voice-Based Human-Computer Interface, National Science Foundation, Grant No. IIS0326382, 2006. Blessing, L.T.M., Chakrabarti, A., Wallace, K.M., A Design Research Methodology, Prague, Czech Republic, Proceedings of the International Conference on Engineering Design (ICED), 1995, pg. 502-507. Bourhis, G., Agostini, Y., Man-machine Cooperation for the Control of an Intelligent Powered Wheelchair, Journal of Intelligent and Robotic Systems, pp. 269 - 287, 1998a. Bourhis, G., Agostini, Y., The Vahm Robotized Wheelchair: System Architecture and HumanMachine Interaction, Journal of Intelligent and Robotic Systems, pp. 39 50, 1998b. Braitenberg, V., Vehicles: experiments in synthetic psychology. MIT Press, Cambridge, MA. 1984. Britannica Concise, Photograph: Genghis, on line, http://concise.britannica.com/ebc/art56152/Genghis-the-robot-Genghis-was-built-at-MIT-in-the, Acesso em 12 jan. 2008. Brooks, R. A., A robust layered control system for a mobile robot. IEEE Journal of Robotics and Automation, RA-2, 1986. Buhler, C., Robotics for Rehabilitation - a European Perspective, Bath, UK, Proceedings of the International Conference on Rehabilitation Robotics (ICORR) 97, 1997, pp. 5-11. Card, S. K., Moran, T. P., Newell A., The Psychology of Human-Computer Interaction, Lawrence Erlbaum Associates, 1983. Chapin, J. K., Moxon, K. A., Markowitz, R. S., Nicolelis, M. A. L., Real-time control of a robot arm using simultaneously recorded neurons in the motor cortex, Nature America, Articles vol. 2 n7, pp. 664 - 670, 25 maio 1999. CPU-Z, Software para diagnstico de hardware, on line: www.cpuz.com. Acesso em jun. 2007 Cunningham, S., Medical "Sip and Puff" Device, catlogo on-line parallax, disponvel em http://www.parallax.com/html_pages/resources/custapps/app_medical_sip_puff_device.asp. Acesso 23 jan. 2007. De Mauro, C., Gori, M., Maggini, M., Martinelli., E., A voice device with an application-adapted protocol for microsoft windows, Firenze, Italy, Proceedings IEEE Int. Conf. on Multimedia Comp. and Systems, 1999, volume II, pp. 1015 - 1016. Dix, A. J., Finlay, J. E., Abowd, G. D., Russel, B., Human-Computer Interaction, Prentice Hall Europe, 1998.

153

Engelbart, D., Did you Konw?, MIT, on-line, disponvel http://web.mit.edu/invent/www/ima/engelbart_draw.html. Acesso em 7 jan. 2007.

em

Felzer, T., Freisleben, B., HaWCoS: The "Hands-free" Wheelchair Control System, Edinburgh, Scotland, Assets 2002, July 8-10. Felzer, T., Nordmann, R., Alternative Wheelchair Control, Darmstadt University of Technology, Germany, 2007. Fiorioni, P., Shiller, Z., Motion Planning in Dynamic Environments using the Relative Velocity Paradigm, Proceedings of the 1993 IEEE International Conference on Robotics & Automation, Atlanta, 1993. Gasson, M., Hutt, B., Goodhew, I., Kyberd, P., Warwick, K., Bidirectional Human Machine Interface Via Direct Neural Connection, Berlim, Alemanha, Proceddings of IEEE, 2002. Gips, J., On Building Intelligence into EagleEyes, Computer Science Department Boston College Chestnut Hill, pp. 50 - 58, 1998. Gips, J., Olivieri, P., EagleEyes: An Eye Control System for Persons with Disabilities, The Eleventh International Conference on Technology and Persons with Disabilities, Los Angeles, California, Maro 1996. Gomi, T., Griffith, A., Developing Intelligent Wheelchairs for the Handicapped, Assistive Technology and AI, LNAI 1458, pp. 150-178, 1998. Graham, E. D., MacKenzie, C. L., Physical Versus Virtual Pointing, Vancouver, Canada, Proceedings of CHI 96, 1996, pp. 292-299. Graham-Rowe, D., Half fish, half robot, New Scientist, 10 Junho 2000. Harter, M. R., Excitability and Cortical Scanning: A Review of two Hypotheses of Central Intermittency in Perception, Psychological Bulletin, 68, pp. 47-58, 1967. Harvey, I., Evolutionary robotics and SAGA: the case for hill crawling and tournament selection. C. Langton, Artificial Life 3 Proceedings, ed., Santa Fe Institute Studies in the Sciences of Complexity, Proc. Vol XVI, 1992, pp. 299-326. Holland, J. M., Designing Autonomous Mobile Robots, Newnes, 2004. Igarashi, T., Hughes, J. F., Voice as sound: Using nonverbal voice input for interactive control. ACM UIST 2001, nov. 2001. International Component Corporation, Linha "Intervox", catlogo http://www.icc107.com/inter_productover.cfm, Acesso em 22 out 2007. on-line

154

Jacob, R.J.K., The Use of Eye Movements in Human-Computer Interaction Techniques:What You Look at Is What You Get. ACM Transactions on Information, pp. 152-169, 1991. Jcobo, Justo Emilio Alvarez, Desenvolvimento de um Rob Autnomo Mvel Verstil utilizando Arquitetura Subsumption, UNICAMP Universidade Estadual de Campinas, 2001, 121p. Tese (Mestrado). James, Information About Deafblindness - Refreshable http://www.deafblind.com/display.html. Acesso 23 out. 2007. Braille Displays, on-line

Karshmer, A.I., Interdisciplinary Efforts to Facilitate the Production of Tools to Support the Disabled and Elderly in the Information Society, San Francisco, USA, Proceedings of HCI International, 1997, pp. 409-412. Keates, S., Clarkson, P. J., Robinson, P., Developing a Methodology for the Design of Accessible Interfaces, University of Cambridge, mai. 1999. Kennedy, P. R., Bakay, R. A. E., Moore, M. M., Adams, K. Goldwaithe, J., Direct Control of a Computer from the Human Central Nervous System, Proceedings of IEEE, VOL. 8, NO. 2, Junho 2000, pp. 198-202. Kirkup, L., Searle, A., Craig, A., Mclsaac, P., Moses, P., EEG-Based system for rapid on-off switching without prior learning, Medical & Biological Engineering & Computing, 35, 504509, 1997. Laurel, B., The Art of Human Computer Interface Design, Addison-Wesley Publishing Company, 1994. Law, C. K. H., Leung, M. Y. Y., Xu, Y., Tso, S. K., A cap as interface for wheelchair control, IEEE/RSJ Out. 2002, pp. 1439 1444, on-line, disponvel em http://ieeexplore.ieee.org/iel5/8071/22356/01043957.pdf. Acesso 15 Abr. 2007. LC Technologies, Eyegaze Analysis System, on-line, disponvel em http://www.interactiveinds.de/de/eye_tracker/eyegaze_system_allgemein.htm. Acesso em 23 jan. 2007. Lombardi Junior, Arley de Barros, Desenvolvimento e Modelagem de uma Cadeira de Rodas Servo-Assistida para Crianas, UNICAMP Universidade Estadual de Campinas, 2002, Tese (Mestrado). Madarasz, R. L., Heiny, L. C., Cromp, R. F., Mazur, N. M., The Design of an Autonomous Vehicle for the Disabled, IEEE Journal of Robotics and Automation, pp. 117-127, Set. 1986. Maes, P., Brooks, R. A., Learning to Coordinate Behaviors, National Conference on Artificial Intelligence, 1990. Mahadevan, S., Connell, J., Automatic Programming of Behavior-based Robots using Reinforcement Learning, Procedings of AAAI-91, 1991.
155

Mahoney, R., Robotic Products for Rehabilitation: Status and Strategy, Bath, UK, Proceedings of ICORR 97, 1997, pp. 12-22. Microchip, Data Sheet do microcontrolador PIC16F877, on line www.microchip.com. Acesso em jun. 2007. Microsoft, Types of Assistive Technology Products, http://www.microsoft.com/enable/at/types.aspx. Acesso em 23 jan. 2007. on-line

Min, J. W., Kyoobin, L., Lim, S. C., Kwon, D. S., Human-friendly Interfaces of Wheelchair Robotic System for Handicapped Persons, IEEE/RSJ, Out. 2002, pp. 1505 1510. Nicolelis, M. A. L., Actions from thoughts, Nature, vol. 409, pp. 403 - 407, 2001 Olwal, A., Feiner, S. Interaction techniques using prosodic features of speech and audio localization. New York, USA, IUI '05: Proc. 10th Int. Conf. on Intelligent User Interfaces, 2005, pp. 284 a 286. Poole, A., Ball, L. J., Eye Tracking in Human-Computer Interaction and Usability Research: Current Status and Future Prospects, Psychology Department, Lancaster University, UK, online, disponvel em http://www.alexpoole.info/academic/Poole&Ball%20EyeTracking.pdf. Acesso em 16 jan. 2007. Prassler, E., Scholz, J., Fiorini, P., MAid: A Robotic Wheelchair Roaming in a Railway Station, Parte do projeto INSERVUM, 1999. Prassler, E., Scholz, J., Strobel, M., MAid: Mobility Assistance for Elderly and Disabled People, IEEE, 1998. Preece, J., Rogers, Y., Sharp, H., Interaction Design: Beyond Human-Computer Interaction, Wiley, 2002. Rasmussen, J., Skills, rules and knowledge; signals, signs and symbols, and other distinctions in human performance models, IEEE Transactions on Systems, Man and Cybernetics, 1983, pp. 257 266. Ross, D., Personal freedom: a wearable interactive universal access device, Proceedings of the RESNA 96 Annual Conference, Salt Lake City, Utah, junho de 1996, pp. 450-452. Ross, D. A., Sanford, J. A., Wearable Computer as a Remote Interface for People with Disabilities, IEEE 1997. Shaw, R., Crisman, E., Loomis, A., Laszewski, Z., The eye wink control interface: Using the Computer to Provide the Severely Disabled with Increased Flexibility and Comfort, IEEE, 1990, pp. 105 111.

156

Siegwart, R., Nourbakhsh, I. R., Introduction to Autonomous Mobile Robots, Bradford Book, 2004. Simon, H. A., Sciences of the Artificial. Cambridge, MA: M.I.T., 1969. Simpson, R. C., Levine, S. P., Bell, D. A., Jaros, L. A., Koren, Y., Borenstein, J., NavChair: An Assistive Wheelchair Navigation System with Automatic Adaptation, Assistive Technology and AI, LNAI 1458, pp. 235-255, 1998. Speropoulos, C. A., Townson, A. F., Assistive Technology Assessments in a Tertiary-care Rehabilitation Facility, BC Medical Journal, Volume 43, Number 2, pp. 82-85, maro 2001. STMicroelectronics, Data sheet do LM7805, on line, http://www.st.com. Acesso em jul. 2007. Talwar, S. K., Xu S., Hawley, E. S., Weiss, S. A., Moxon, K. A., Chapin, J. K., Rat Navigation Guided by Remote Control, Nature, vol. 417, pp. 37-38, 2 maio 2002. Taylor, P. B., Nguyen, H. T., Performance of a Head-Movement Interface for Wheelchair Control, IEEE EMBS, pp. 1590 1593, Set. 2003. Tellex, S., Relational Interface for a Voice Controlled Wheelchair, on-line, http://ocw.mit.edu/NR/rdonlyres/Media-Arts-and-Sciences/MAS-965Spring-2005/2801B076BCAF-4BDC-8722-F020DA6D8683/0/tellexfinalproj.pdf Acesso em 30 jan. 2007. University of Pittsburgh, Wheeling in the New Millennium: The history of the wheelchair and the driving forces in wheelchair design today, Department of Rehabilitation Science and Technology, 2002, on-line, http://www.wheelchairnet.org/WCN_WCU/SlideLectures/Sawatzky/WC_history.html, Acesso 6 Julho 2007. USP, Implante Coclear, on-line http://www.otorrinousp.org.br/imageBank/seminarios/seminario_1.pdf. Acesso em 23 out. 2007. Wolpaw, J. R., McFarland, D. J., Neat, G. W. & Forneris, C. A., Electroencephalography,. Europhysiol., vol. 78, pp.252-259 1991. Yanco, H. A. , Wheelesley: A Robotic Wheelchair System: Indoor Navigation and User Interface, Assistive Technology and AI, pp. 256 - 268, 1998a, on-line http://www.cs.uml.edu/~holly/papers/ai-at-yanco.pdf. Yanco, H. A., Integrating Robotic Research: A Survey of Robotic Wheelchair Development, California, AAAI Spring Symposium on Integraing Robotic Research, 1998b. Yanco, H. A., Gips, J., Preliminary Investigation of a Semi-Autonomous Robotic Wheelchair Directed Through Electrodes, Proceedings of the Rehabilition Engineering Society of North America Annual Conference, Jun. 1997, pp. 414 416.
157

Apndice I Histrico de Cadeiras de Rodas

A cadeira de rodas um sistema de mobilidade para usurios sentados em caso de dificuldades ou incapacidade para locomover-se. Esta mobilidade pode ser realizada de modo manual ou por intermdio de diversas formas de locomoo automatizada. Segundo Aubrey (2007), seu surgimento provm da diversidade de aplicaes da roda como o seu emprego para transporte de objetos em (4000 A.C.) e em carruagens (1300 A.C.), segundo Wikipedia (2007). As primeiras documentaes de equipamentos com caractersticas semelhantes a uma cadeira de rodas datam de 530 a.C. em um vaso Grego, e em 525 d.C. em uma gravura chinesa. Estes equipamentos tratam-se de uma maca com rodas para crianas (gregos) e uma cadeira com rodas para carregada por servos (chineses) como ilustrado na figura I.1:

158

Fig. I.1 - Maca grega e cadeira com rodas chinesa (fonte: University of Pittsburgh, 2002). Segundo Aubrey (2007), outro invento mais sofisticado era utilizado pelo rei espanhol Philip em 1595. Esta cadeira possua rodas e ajustes de altura, sendo carregada pelos seus servos da para realizar caminhos domsticos e percorrer os jardins do palcio, como ilustrado na figura I.2:

Fig. I.2 - Cadeira de rodas utilizada pelo rei Philip II (fonte: University of Pittsburgh, 2002).

159

Segundo Aubrey (2007), o primeiro invento movido pela fora do usurio documentado de 1665 e possui como inventor um relojoeiro alemo, Stephan Farfler aos 22 anos de idade. Este invento assemelha-se muito a uma bicicleta movida pela mo, no qual um par de manivelas move a roda dianteira, tambm utilizada para a direo, como ilustrado na figura I.3:

Fig. I.3 - Cadeira de Stephan Farfler (fonte: University of Pittsburgh, 2002). Em 1783, John Dawson tambm conhecido como o construtor de cadeiras de rodas (Wheelchair Maker), inventou um equipamento com ajustes para pernas e costas. Esta cadeira de rodas movida ao puxar de rodas pelo usurio e dominou o mercado at o sculo 19, como ilustrado na figura I.4:

Fig. I.4 - Cadeira de John Dawson (fonte: University of Pittsburgh, 2002).

160

Segundo Aubrey (2007), possuindo um maior foco no conforto do usurio, desenvolveu-se a cadeira seating wheelchair no sculo 18. Este modelo permite ajustes de inclinao e se parece com uma cadeira residencial de luxo, mas com duas grandes rodas de madeira, como ilustrado na figura I.5:

Fig. I.5 - Cadeira modelo seating wheelchair (fonte: University of Pittsburgh, 2002). Um outro modelo, referenciado University of Pittsburgh (2002) ilustrado na figura I.6, como cadeira leve utiliza bambu indiano na sua construo, pesando entre 22,68 kg e 26,31 kg.

Fig. I.6 - Cadeira com foco em reduo de peso (fonte: University of Pittsburgh, 2002).

161

Segundo University of Pittsburgh (2006), em 1932 Herbert Everest (um engenheiro de minas deficiente) e Harold Jennings (engenheiro mecnico), desenvolveram uma cadeira de rodas dobrvel. Esta cadeira, ilustrada na figura I.7, permitiu a fundao da companhia Everest & Jennings ou E&J, tambm responsvel pela criao da primeira cadeira de roda motorizada.

Fig. I.7 - Cadeira de Everest & Jennings (fonte: University of Pittsburgh, 2002). Em 1934, Samuel Duke desenvolveu o segundo modelo dobrvel de cadeira de rodas. Nos anos seguintes at os dias atuais novas melhorias foram realizadas, permitindo um maior conforto, capacidades de dobrar, maiores velocidades, otimizaes na suspenso e aparncia.

162

Apndice II Tabelas com o levantamento das curvas de freqncia utilizadas

possvel observar os valores amostrados no processo de treinamento da bibliotaca de palavras nas tabelas a seguir. Desta forma, obtm-se a mdia de bordas de subida em cada coluna para a curva representativa. Por meio da mdia de bordas de subida possvel obter o desvio de cada amostra ao subtrair-se o nmero de subdas da amostra em relao curva representativa. necessrio observar que os desvios apresentados nestas tabelas representam uma curva inteira e no uma comparao entre os ntervalos, esta segunda realizada para teste de casamento.

Tabela II.1 Amostragem da palavra Frente


Frente Amostra 1 Amostra 2 Amostra 3 Amostra 4 Amostra 5 Amostra 6 Amostra 7 Amostra 8 Amostra 9 Amostra 10 Amostra 11 Amostra 12 Amostra 13 Amostra 14 Mdia Testando Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas 19 16 12 18 16 16 16 15 14 12 12 15 14 18 15,21429 19 14 16 16 14 17 14 12 12 15 12 15 13 12 14,35714 4 5 7 4 4 4 4 7 3 5 5 2 6 7 4,785714 9 12 11 10 8 9 7 10 11 11 12 13 13 10 10,42857 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0,142857 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Desvio 51 6,0714286 47 2,0714286 46 1,0714286 48 3,0714286 42 -2,9285714 46 1,0714286 41 -3,9285714 44 -0,9285714 40 -4,9285714 43 -1,9285714 41 -3,9285714 45 0,0714286 46 1,0714286 49 4,0714286 44,92857 Desvio

Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas

163

Tabela II.2 Amostragem da palavra Testando


Testando Amostra 1 Amostra 2 Amostra 3 Amostra 4 Amostra 5 Amostra 6 Amostra 7 Amostra 8 Amostra 9 Amostra 10 Amostra 11 Amostra 12 Amostra 13 Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas 20 19 25 20 21 28 22 22 19 21 24 19 22 4 6 8 2 7 4 4 3 4 5 3 2 6 9 16 11 12 10 12 11 11 8 11 9 11 11 11 11 10 10 12 13 10 11 10 10 11 11 11 13 12 11 15 12 15 12 12 12 13 11 11 14 9 8 9 10 7 10 11 13 13 11 14 14 12 0 0 0 1 0 0 0 1 4 0 3 2 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Desvio 66 -6,3846154 72 -0,3846154 74 1,6153846 70 -2,3846154 69 -3,3846154 82 9,6153846 70 -2,3846154 73 0,6153846 70 -2,3846154 71 -1,3846154 75 2,6153846 70 -2,3846154 79 6,6153846

Tabela II.3 Amostragem da palavra Esquerda


Esquerda Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas Amostra 1 Amostra 2 Amostra 3 Amostra 4 Amostra 5 Amostra 6 Amostra 7 Amostra 8 Amostra 9 Amostra 10 Amostra 11 Amostra 12 Amostra 13 Amostra 14 Mdia 22 21 13 23 25 26 25 23 25 22 21 25 22 21 22,42857 14 15 17 11 15 4 16 12 1 1 2 14 10 2 9,571429 11 13 10 11 10 10 10 10 10 11 17 11 10 10 11 12 13 11 12 11 12 11 11 10 11 10 12 12 10 11,28571 7 4 11 5 6 12 4 5 12 12 11 7 4 11 7,928571 0 0 0 0 0 7 0 0 7 2 7 0 0 4 1,928571 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Desvio 66 1,8571429 66 1,8571429 62 -2,1428571 62 -2,1428571 67 2,8571429 71 6,8571429 66 1,8571429 61 -3,1428571 65 0,8571429 59 -5,1428571 68 3,8571429 69 4,8571429 58 -6,1428571 58 -6,1428571 64,14286

164

Tabela II.4 Amostragem da palavra Direita


Direita Amostra 1 Amostra 2 Amostra 3 Amostra 4 Amostra 5 Amostra 6 Amostra 7 Amostra 8 Amostra 9 Amostra 10 Amostra 11 Amostra 12 Amostra 13 Amostra 14 Amostra 15 Amostra 16 Amostra 17 Mdia Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas 21 16 17 21 19 20 13 18 17 13 16 15 13 14 13 13 19 16,35294 16 18 24 23 21 19 24 21 23 23 24 23 22 23 24 26 26 22,35294 10 12 11 12 12 17 19 22 21 17 26 14 13 19 13 15 19 16 8 10 8 10 10 8 10 9 10 10 15 10 11 10 10 10 10 9,941176 4 11 2 1 9 4 4 7 1 6 9 1 5 4 1 3 4 4,470588 0 0 1 1 0 0 9 0 1 2 0 7 10 10 4 1 0 2,705882 0 0 0 0 0 0 2 0 0 0 0 0 0 0 1 0 0 0,176471 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 59 67 63 68 71 68 81 77 73 71 90 70 74 80 66 68 78 72 Desvio -13 -5 -9 -4 -1 -4 9 5 1 -1 18 -2 2 8 -6 -4 6

Tabela II.5 Amostragem da palavra Trs


Tras Amostra 1 Amostra 2 Amostra 3 Amostra 4 Amostra 5 Amostra 6 Amostra 7 Amostra 8 Amostra 9 Amostra 10 Amostra 11 Amostra 12 Amostra 13 Amostra 14 Mdia Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas 23 20 17 22 17 20 20 20 25 24 22 19 22 19 20,71429 26 33 32 27 32 26 19 28 23 26 25 25 24 28 26,71429 7 5 5 4 7 4 4 1 6 6 5 6 7 7 5,285714 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Desvio 56 3,2857143 58 5,2857143 54 1,2857143 53 0,2857143 56 3,2857143 50 -2,7142857 43 -9,7142857 49 -3,7142857 54 1,2857143 56 3,2857143 52 -0,7142857 50 -2,7142857 53 0,2857143 54 1,2857143 52,71429

165

Tabela II.6 Amostragem da palavra Liga


Liga Amostra 1 Amostra 2 Amostra 3 Amostra 4 Amostra 5 Amostra 6 Amostra 7 Amostra 8 Amostra 9 Amostra 10 Amostra 11 Amostra 12 Amostra 13 Mdia Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas 16 16 17 17 21 19 23 23 20 18 18 23 19 19,23077 24 26 25 25 23 21 15 21 25 25 24 20 24 22,92308 15 13 14 15 16 8 8 13 16 18 17 11 16 13,84615 4 0 0 3 0 0 0 0 0 5 1 0 1 1,076923 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Desvio 59 1,9230769 55 -2,0769231 56 -1,0769231 60 2,9230769 60 2,9230769 48 -9,0769231 46 -11,076923 57 -0,0769231 61 3,9230769 66 8,9230769 60 2,9230769 54 -3,0769231 60 2,9230769 57,07692

Tabela II.7 Amostragem da palavra Desliga


Desliga Amostra 1 Amostra 2 Amostra 3 Amostra 4 Amostra 5 Amostra 6 Amostra 7 Amostra 8 Amostra 9 Amostra 10 Amostra 11 Amostra 12 Amostra 13 Amostra 14 Amostra 15 Mdia Intervalo 1 Intervalo 2 Intervalo 3 Intervalo 4 Intervalo 5 Intervalo 6 Intervalo 7 Intervalo 8 Intervalo 9 Subidas 24 24 23 19 22 19 23 21 24 22 22 21 22 23 21 22 14 19 19 22 18 22 15 19 16 16 17 21 17 16 8 17,26667 14 16 14 7 12 9 10 11 15 10 11 13 16 13 17 12,53333 21 17 18 14 15 12 17 12 12 18 14 12 17 19 18 15,73333 18 18 15 17 14 10 14 12 11 12 11 12 13 13 12 13,46667 8 5 1 6 11 6 5 4 0 2 7 3 2 0 2 4,133333 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Desvio 99 13,866667 99 13,866667 90 4,8666667 85 -0,1333333 92 6,8666667 78 -7,1333333 84 -1,1333333 79 -6,1333333 78 -7,1333333 80 -5,1333333 82 -3,1333333 82 -3,1333333 87 1,8666667 84 -1,1333333 78 -7,1333333 85,13333

166

30 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 Frente Testando Esquerda Direita Tras Liga Desliga

Fig. II.1 Comparao entre curvas mdias obtidas

167

Apndice III Software Labview

A figura III.1 descreve-se o cdigo fonte do software utilizado na programao do filtro para o joystick:

Fig. III.1 Software em Labview

168

Apndice IV Programao do PIC 16F877A


Para a programao do microcontrolador PIC16F877A utilizaram-se quatro softwares: Microchip MPLAB: para gerar o cdigo fonte (www.microchip.com) Compilador CCS instalado no MPLAB: para gerao dos arquivos hexadecimais (www.ccsinfo.com) Programador IC-Prog verso c: para leitura dos arquivos hexadecimais e gravao no microcontrolador, permitindo utilizar a placa construda durante este projeto de mestrado (www.ic-prog.com) Circuito integrado MAX RS-232: para realizar Debug pela porta serial do microcontrolador, junto ao software Sion (includo com o IC-Prog), que acompanha o IC-Prog. Mais detalhes sobre o MAX RS-232 podem ser encontrados no site: (www.maxim-ic.com) Desta forma seguem os anexos com os circuitos para confeco da placa programadora (Taiti Serial Programmer, utilizar com pino MCLR invertido, no IC-Prog) e da placa do microcontrolador. Aps estes circuito so apresentados em mais detalhes nas figuras D.1, D.2, D.3 e D.4 os mdulos construdos para testar o protocolo de integrao desenvolvido.

169

Fig. IV.1 Pinagens de microcontroladores da famlia 16F (www.ic-prog.com)

170

Fig. IV.2 Placa de testes para programas (www.ic-prog.com)

171

Fig. IV.3 Fonte de alimentao (www.ic-prog.com)

172

Fig. IV.4 Progranador (www.ic-prog.com)

173

Apndice V Circuitos Envolvidos na Interface Modular

Para facilitar a compreeso, os mdulos desenvolvidos so apresentados neste apndice sem a caixa externa, demonstrando sucintamente a disposio dos seus componentes

Fig. V.1 Amplificador Piezoelctrico

Fig. V.2 Ajuste de Nveis de Tenso para o driver (MAANT)

174

Inibidor

Sonar

Fig. V.3 Inibidor paraadicionar mdulo de Sonar

Fig. V.4 Aplicao do microcontrolador 16F877A na Interface HaWCoS

175

Apndice VI Algoritmo do Firmware Utilizado na Interface HaWCoS


Para facilitar a compreenso, descreve-se sucintamente o algoritmo utilizado (*): Subrotinas que ocorrem em paralelo s rotinas seguintes, por meio de interrupes de Timer 0

Menu_P_1 - Entrada

Espera clique Um clique Menu_P_1 - Sada

Dois cliques

Piscar uma vez*

Alterna modos: Com pausa Sem pausa Atribui direes na matriz de movimentos

Piscar duas vezes*

Fig. VI.1 Subrotinas do menu 1

176

Incio: Carrega configurao do microcontrolador Habilita interrupes: Inicia subrotina de varrimento do display Piscar duas vezes* Espera clique Um clique Espera clique Um clique Testa modo Sem pausas Espera clique Um clique Dois cliques Chama menu_P_1

Piscar uma vez*

Piscar duas vezes* Dois cliques Chama menu_P_2

Piscar uma vez*

Piscar duas vezes* Chama menu_P_3

Dois cliques Piscar uma vez*

Fig. VI.2 Rorina principal, responsvel por organizar menus

177

Menu_P_2 - Entrada

Inicia Parado

Espera clique Um clique

Dois cliques

Menu_P_2 - Sada

Chama subrotina de espera e atribuio de movimento para direo 0*

Espera clique Um clique

Dois cliques

Menu_P_2 - Sada

Chama subrotina de espera e atribuio de movimento para direo 1*

Espera clique Um clique

Dois cliques

Menu_P_2 - Sada

Chama subrotina de espera e atribuio de movimento para direo 2*

Espera clique Um clique

Dois cliques

Menu_P_2 - Sada

Chama subrotina de espera e atribuio de movimento para direo 3*

Fig. VI.3 Subrotinas do menu 2

178

Menu_P_3 - Entrada

Espera clique Um clique Espera clique Um clique Espera clique Um clique Espera clique Um clique Espera clique

Dois cliques

Atribui layout 1 para a matriz direes

Menu_P_2 - Sada

Dois cliques

Atribui layout 2 para a matriz direes

Menu_P_2 - Sada

Dois cliques

Atribui layout 3 para a matriz direes

Menu_P_2 - Sada

Dois cliques

Atribui layout 4 para a matriz direes

Menu_P_2 - Sada

Dois cliques

Mantm layout da matriz direes

Menu_P_2 - Sada

Fig. VI.4 Subrotinas do menu 3

179

Ocorrncia de borda de subida* - Entrada

Desabilita interrupes por borda de subida

Evita ocorrncia de duplo clique indevido

Aguarda tempo por interrupes* Espera contador Fim da espera Espera perodo de duplo clique

Habilita interrupes por borda de subida

Espera contador

Aguarda tempo por interrupes*

Borda de subida

Clique igual 2

Clique igual 1

Ocorrncia de borda de subida* - Sada

Fig. VI.5 Subrotinas para obter interaes do usurio por interrupo

180

Subrotina de atribuio de movimentos - Entrada

Espera contador* Fim da espera Carrega direo recebida (0 a 4) Compara com a matriz de layout

Subrotina de atribuio de movimentos - Sada

Fig. VI.6 Atribuio de movimentos

181

Você também pode gostar