sensor infravermelho de olhos para … · 2.3 sistemas de comunicação sem fios ... 3.2.5...

49
CÉSAR HENRIQUE SALUSTIANO TOMBA SENSOR INFRAVERMELHO DE OLHOS PARA CERATÔMETRO EM LÂMPADA DE FENDA COM TRANSMISSÃO VIA BLUETOOTH Trabalho de Conclusão de Curso apresentado à Escola de Engenharia de São Carlos, da Universidade de São Paulo Curso de Engenharia de Computação com ênfase em Sistemas Embarcados ORIENTADORA: Profa. Dra. Liliane Ventura São Carlos 2008

Upload: duongque

Post on 31-Mar-2018

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

CÉSAR HENRIQUE SALUSTIANO TOMBA

SENSOR INFRAVERMELHO DE OLHOS PARA CERATÔMETRO EM LÂMPADA DE

FENDA COM TRANSMISSÃO VIA BLUETOOTH

Trabalho de Conclusão de Curso apresentado à Escola de Engenharia de São Carlos, da Universidade

de São Paulo

Curso de Engenharia de Computação com ênfase em Sistemas Embarcados

ORIENTADORA: Profa. Dra. Liliane Ventura

São Carlos

2008

Page 2: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

1

Sumário

1. Introdução .................................................................................................................................................. 8

1.1 Sistema de Ceratometria em Lâmpada de Fenda ............................................................................... 8

1.2 Escolha da tecnologia adequada ao Projeto ....................................................................................... 9

1.3 Organização do Projeto ................................................................................................................... 11

2. Fundamentos Teóricos ............................................................................................................................. 12

2.1 Diodos.............................................................................................................................................. 12

2.2 Posicionamento do Sensor ............................................................................................................... 13

2.3 Sistemas de Comunicação Sem Fios (Wireless) .............................................................................. 15

2.3.1 Wi-fi (IEEE 802.11) ..................................................................................................................... 16

2.3.2 Bluetooth (IEEE 802.15.1) .......................................................................................................... 17

2.3.3 ZigBee (IEEE 802.15.4) ............................................................................................................... 20

3. Materiais e Métodos ................................................................................................................................. 22

3.1 Transmissão Wireless ...................................................................................................................... 22

3.2 Kit de Desenvolvimento Bluetooth .................................................................................................. 23

3.2.1. O Processador Rabbit 3000 ......................................................................................................... 25

3.2.2. Aprendizado do kit....................................................................................................................... 26

3.2.3. Desenvolvimento de um adaptador e conexão ao Kit .................................................................. 26

3.2.4 Desenvolvimento do Software Embarcado ...................................................................................... 28

3.2.5 Desenvolvimento do Software em JAVA .................................................................................... 28

3.2.6 Desenvolvimento do Software em Delphi ....................................................................................... 28

4 Testes e Resultados .................................................................................................................................. 30

4.1 Teste de Interferência no Sensor com fio e com comunicação por porta paralela .......................... 30

4.2 Teste na Comunicação da Porta Paralela ......................................................................................... 32

4.3 Teste com o Software do Ceratômetro ............................................................................................ 33

4.4 Teste do Circuito com o Kit da Rabbit ............................................................................................ 34

4.5 Teste de Comunicação do Kit com o Dongle .................................................................................. 35

4.6 Teste com os Softwares Desenvolvido ............................................................................................ 35

4.7 Teste com o minicomputador OQO ................................................................................................. 36

5 Discussões e Conclusões .......................................................................................................................... 37

6 Agradecimentos ........................................................................................................................................ 38

7 Anexos ...................................................................................................................................................... 39

7.1 Programa embarcado no kit ............................................................................................................. 39

7.2 Programa em Java que lê a porta serial ........................................................................................... 41

7.3 Programa em Delphi que lê a porta serial ........................................................................................ 42

8 Referências Bibliográficas ....................................................................................................................... 46

Page 3: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

2

Índice de Figuras

Figura 1.1: Foto do Sistema de ceratômetria em Lâmpada de Fenda, vista frontal. .......................................... 9

Figura 1.2: Vista lateral com o paciente. ........................................................................................................... 9

Figura 1.3: Vista frontal do sensor desenvolvido, ........................................................................................... 10

Figura 1.4: Vista posterior do sensor, com os anteparos reflexivo e fosco à frente. ....................................... 10

Figura 1.5: Esquema do circuito para determinação do olho medido (direito ou esquerdo) ........................... 10

Figura 2.1: Circuito genérico. .......................................................................................................................... 12

Figura 2.2: Fotodiodos infravermelho. ............................................................................................................ 13

Figura 2.3: Sistema por Barreira...................................................................................................................... 14

Figura 2.4: Sistema por Difusão. ..................................................................................................................... 14

Figura 2.5: Sistema por Reflexão. ................................................................................................................... 14

Figura 2.6: Adaptador USB-Bluetooth (Dongle). Fonte: www.encore-usa.com ............................................. 18

Figura 2.7: A interconexão de piconets forma uma scatternet[20]. ................................................................. 19

Figura 3.1: Desenho esquemático do invólucro que abriga os diodos............................................................. 22

Figura 3.2: RabbitCoreModule RCM3660, da Rabbit Semiconductor®, ....................................................... 24

Figura 3.3: Detalhe do módulo Bluetooth EmbeddedBlue 506, da A7Engineering [19]. ............................... 24

Figura 3.4: O kit com os componentes desconectados. ................................................................................... 25

Figura 3.5: O kit com todos os componentes conectados ao protoboard. ....................................................... 25

Figura 3.6: Hyper Terminal do Windows conectado ao kit ............................................................................. 26

Figura 3.7: Níveis lógicos das portas de entrada. ............................................................................................ 27

Figura 3.8: Adaptador desenvolvido, fazendo a conexão com o kit. ............................................................... 27

Figura 3.9: Visual do programa em Delphi ..................................................................................................... 29

Figura 4.1: Esquemático do teste realizado. .................................................................................................... 30

Figura 4.2: Tela do programa mostrando a entrada D4 em nível alto. ............................................................ 32

Figura 4.3: Tela do programa mostrando a entrada D4 em nível baixo. ......................................................... 33

Figura 4.4: O programa do ceratômetro detectando o olho direito. ................................................................. 33

Figura 4.5: O programa do ceratômetro detectando o olho esquerdo. ............................................................. 34

Figura 4.6: LED indicando a comunicação ok com o Kit ................................................................................ 34

Figura 4.7: Tela do Hyper Terminal do Windows com os dados transmitidos ............................................... 35

Figura 4.8: Minicomputador da Oqo utilizado no experimento. Fonte: www.oqo.com .................................. 36

Page 4: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

3

Índice de Tabelas

Tabela 2.1: Potência e Raio de Alcance de acordo com sua classe [18]. ........................................................ 18

Tabela 2.2: Frequência de Operação e Taxa de Transferência. ....................................................................... 21

Tabela 3.1: Tabela comparativa entre os padrões estudados. .......................................................................... 23

Tabela 4.1: Tensão averiguada no primeiro teste, ........................................................................................... 31

Tabela 4.2: Tensão averiguada no segundo teste,............................................................................................ 31

Page 5: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

4

Lista de Abreviaturas e Siglas

A2DP Advanced Audio Distribution Profile

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

EDR Enhanced Data Rate

EESC Escola de Engenharia de São Carlos

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

FH-CDMA Frequency Hopping - Code-Division Multiple Access

FTP File Transfer Profile

IEEE Institute of Electrical and Eletronics Engineers

ISM Industrial, Scientific and Medical

LAN Local Area Network

LCD Liquid Crystal Display

LED Light Emitting Diode

LIO Laboratório de Instrumentação Oftálmica

MAC Media Access Control

Mbps Mega Bits Per Second

MIMO Multiple Input, Multiple Output

PAN Personal Area Network

PC Personal Computer

PDA Personal Digital Assistant

PSK Phase Shift Keying

QAM Quadrature Amplitude Modulation

SEL Departamento de Engenharia Elétrica

SIG Bluetooth Special Interest Group

SPP Serial Port Profile

UART Universal Assynchronous Receiver Transmitter

USB Universal Serial Bus

USP Universidade de São Paulo

WAN Wide Area Network

WECA Wireless Ethernet Compatibility Alliance

Wi-fi Wireless Fidelity

WLAN Wireless Local Area Network

WMAN Wireless Metropolitan Area Network

WPAN Wireless Personal Area Network

WWAN Wireless Wide Area Network

Page 6: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

5

Lista de Símbolos

Ω Ohm

A Ampere

B Byte

b bit

bps bits per second

G Giga

Hz Hertz

k kilo

M Mega

m mili

V Volts

W Watt

Page 7: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

6

Resumo: Este trabalho relata o desenvolvimento de um sensor de identificação de olhos (olho direito ou

esquerdo) para ser utilizado no Ceratômetro adaptado para Lâmpada de Fenda, desenvolvido no Laboratório

de Instrumentação Oftálmica – EESC/USP. O sensor consiste de um LED emissor infravermelho que atinge

a base do sistema mecânico móvel da Lâmpada de Fenda, em que sua base é metade opaca e metade

reflexiva. O circuito eletrônico foi construído de maneira a detectar a onda infravermelha refletida e então

obter a posição do ceratômetro, indicando assim qual o olho que está sendo examinado. O sistema tem sido

eficiente em indicar o olho examinado, mesmo com a presença de luz no ambiente do exame. O circuito

filtra a interferência do ambiente, sendo necessárias tensões ≥ 4,5V para se detectar a onda precisamente.

Com o objetivo de eliminar os fios para torná-lo um protótipo de uso clínico, foi feito um estudo para

substituir a interface de comunicação com fios paralela utilizada. A tecnologia escolhida foi a Bluetooth por

ser a mais indicada para esta finalidade.

Com a utilização de um kit (RCM3360) foi possível atingir o objetivo de comunicação da forma

“sem fio” do sensor, porém o programa desenvolvido ainda não foi integrado no software do ceratômetro, ou

seja, foi possível fazer a comunicação Bluetooth do sensor através do kit didático e fazer uma rotina em

Delphi para ser posteriormente implementada no software do ceratômetro.

Palavras-chave: Sensor de olhos, lâmpada de fenda, sensor infravermelho, sem fios, Bluetooth.

Page 8: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

7

Abstract: The present work reports the development of an eye identification sensor (right or left eye) to be

implemented in a keratometer for slip lamp under development at Laboratório de Instrumentação Oftálmica

– EESC/USP. The sensor consists of a fixed infrared light emitter diode that reaches the base of the mobile

mechanic system of the slit lamp, that is halfway opaque and halfway reflective. The electronic circuit is

built in a way to detect the reflected infrared beam and provides the position of the keratometer, indicating

which eye is being examined. The system has been efficient in indicating the side of the eye to be measured

and the information about which eye is being examined has been accurate even in the presence of

environment light. So, the circuit filters these environment interference, so that it needs 4,5V or above to

detect the beam precisely. With the objective of get rid of the wires and make it a clinical prototype, a

research was made to replace the wired parallel communication interface. The chosen technology was the

Bluetooth.

With the development kit (RCM3360), was possible to reach the wireless communication objective,

but the software developed wasn’t integrated to the keratometer’s software, i.e., was possible to make the

Bluetooth communication through the development kit and make a program with Delphi to be implemented

to the keratometer’s software.

Keywords: Eye Sensor, slit lamp, infrared sensor, wireless, Bluetooth.

Page 9: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

8

1. Introdução

A tecnologia computacional está cada vez mais presente no dia-a-dia das pessoas. Cada vez mais o

ser humano se aproveita de todo o conhecimento tecnológico para proveito de si mesmo e para o bem estar

da sociedade.

A medicina é uma das áreas que vem cada vez mais aproveitar todo esse estudo para aprimorar

métodos, processos e projetos, para que o bem maior da ciência, o próprio ser humano, seja recompensado da

melhor maneira possível, seja pela rápida recuperação, como também através de um diagnóstico mais rápido

e mais preciso.

Assim, este trabalho foi motivado pela necessidade do desenvolvimento de uma comunicação para

eliminar os fios de um dispositivo que indica qual o olho que está sendo medido no projeto de ceratometria

de córnea (medidas dos raios de curvatura da região central da córnea humana) em Lâmpada de Fenda [1] [2]

desenvolvido pelo Laboratório de Instrumentação Oftálmica – EESC/USP (LIO).

1.1 Sistema de Ceratometria em Lâmpada de Fenda

O dispositivo em questão é um sensor de olhos, que mede em qual olho que está sendo feita a

ceratometria (direito ou esquerdo) e que utiliza a luz no comprimento de onda infravermelho (950nm),

indicando ao clínico, de forma automática, o olho examinado [3]. Foi desenvolvido um módulo

ceratométrico para Lâmpada de Fenda que proporciona medidas automáticas dos raios de curvatura da

córnea humana.

O sistema projeta na córnea 72 pontos de luz dispostos em um círculo preciso. O deslocamento, a

dimensão e a deformação da imagem refletida destes pontos de luz são analisados, proporcionando a

ceratometria.

Medidas no intervalo de 26,8D – 75,0D (até 48,2D de astigmatismo) podem ser obtidas e um sistema

de autocalibração foi especialmente projetado para manter o sistema calibrado.

Leds infravermelhos foram usados para detectar automaticamente o olho examinado.

Pacientes voluntários (492) foram submetidos ao sistema e os resultados mostram que nosso sistema

possui um alto fator de correlação com os ceratômetros manuais disponíveis comercialmente e com as

medidas feitas em topógrafos corneanos.

O sistema desenvolvido está 95% de acordo com o topógrafo corneano Humphrey - Atlas 995 CZM

e com o ceratômetro manual Topcon OM-4.

A precisão nominal do sistema é de 0,05mm em relação ao raio de curvatura e de 1o para o eixo

associado do astigmatismo [2].

Page 10: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

Figura 1.1: Foto do Sistema de ceratômetria em Lâmpada de

Figura

1.2 Escolha da tecnologia adequada ao Projeto

A utilização do sistema de identificação de olhos é imprescindível para o sucesso do ceratômetro

Lâmpada de Fenda, pois o usuário do aparelho não precisa se preocupar em anotar durante o exame o olho

(direito ou esquerdo) que está sendo observado, uma vez que será automaticamente feito pelo sistema de

identificação, associado ao sistema computacio

forma a inversão de medidas, que pode ocorrer no momento do exame.

Em meu trabalho prévio de iniciação científica foi desenvolvido o sensor de olhos, para ceratometria

em Lâmpadas de Fenda, que será descrito a seguir.

O princípio de funcionamento do

basicamente da operação de um LED emissor infravermelho e um fotodiodo, que respectivamente emitem e

captam os sinais enviados para um antepar

(vide Figura 1.1 e 1.2). A fita é fixada na metade do caminho lateral percorrido pela Lâmpada de fenda

tem uma base móvel e que se movimenta conforme a necessidade de examinar os olhos

forma que, quando o sinal é captado de volta, o olho medido é o esquerdo, e caso o sinal não seja captado de

: Foto do Sistema de ceratômetria em Lâmpada de Fenda, vista frontal.

Figura 1.2: Vista lateral com o paciente.

Escolha da tecnologia adequada ao Projeto

A utilização do sistema de identificação de olhos é imprescindível para o sucesso do ceratômetro

Lâmpada de Fenda, pois o usuário do aparelho não precisa se preocupar em anotar durante o exame o olho

(direito ou esquerdo) que está sendo observado, uma vez que será automaticamente feito pelo sistema de

identificação, associado ao sistema computacional do aparelho, que faz o diagnóstico. Elimina

forma a inversão de medidas, que pode ocorrer no momento do exame.

Em meu trabalho prévio de iniciação científica foi desenvolvido o sensor de olhos, para ceratometria

descrito a seguir.

O princípio de funcionamento do Sensor de olhos para o sistema de ceratometria [4],

basicamente da operação de um LED emissor infravermelho e um fotodiodo, que respectivamente emitem e

captam os sinais enviados para um anteparo (fita adesiva metálica), colocada na base da Lâmpada de fenda

). A fita é fixada na metade do caminho lateral percorrido pela Lâmpada de fenda

tem uma base móvel e que se movimenta conforme a necessidade de examinar os olhos

forma que, quando o sinal é captado de volta, o olho medido é o esquerdo, e caso o sinal não seja captado de

9

Fenda, vista frontal.

A utilização do sistema de identificação de olhos é imprescindível para o sucesso do ceratômetro em

Lâmpada de Fenda, pois o usuário do aparelho não precisa se preocupar em anotar durante o exame o olho

(direito ou esquerdo) que está sendo observado, uma vez que será automaticamente feito pelo sistema de

nal do aparelho, que faz o diagnóstico. Elimina-se desta

Em meu trabalho prévio de iniciação científica foi desenvolvido o sensor de olhos, para ceratometria

Sensor de olhos para o sistema de ceratometria [4], consiste

basicamente da operação de um LED emissor infravermelho e um fotodiodo, que respectivamente emitem e

(fita adesiva metálica), colocada na base da Lâmpada de fenda

). A fita é fixada na metade do caminho lateral percorrido pela Lâmpada de fenda - que

tem uma base móvel e que se movimenta conforme a necessidade de examinar os olhos do paciente - de

forma que, quando o sinal é captado de volta, o olho medido é o esquerdo, e caso o sinal não seja captado de

Page 11: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

10

volta – base fosca –, o olho medido é o direito, ou vice-versa. A Figura 1.3 ilustra o esquema eletrônico do

sensor de lado do olho.

Figura 1.3: Vista frontal do sensor desenvolvido,

Figura 1.4: Vista posterior do sensor, com os anteparos reflexivo e fosco à frente.

Figura 1.5: Esquema do circuito para determinação do olho medido (direito ou esquerdo)

O circuito do LED emissor infravermelho é alimentado por uma tensão de 5V, que está em série com

um resistor de 47 Ω, que serve para limitar a corrente e não queimar o LED. O circuito do receptor é mais

complexo que o circuito emissor, pois neste há o módulo de sensibilidade, que protege o circuito de

reconhecer ondas infravermelhas provenientes de outras fontes, que não a do circuito emissor. Nesse

módulo, a sensibilidade do circuito é diminuída e necessita-se de uma fonte mais intensa de ondas

Page 12: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

11

infravermelhas para ele ser acionado. O circuito possui um fotodiodo que capta as ondas infravermelhas e

conduz corrente, caso esteja captando as ondas.

Para diminuir a sensibilidade do sensor, foi utilizado um diodo Zenner, impedindo que luzes acesas

no ambiente onde se encontra o aparelho interfiram no resultado do sensor, pois este diodo polarizado

inversamente atua como um regulador de tensão, fazendo com que apenas tensões maiores que a nominal

seja mantida entre seus terminais (no caso 4,5V), eliminando possíveis ruídos de interferência, provenientes

da luz ambiente.

Os componentes utilizados neste circuito no projeto de iniciação científica foram:

LED Emissor Infravermelho: TSAL6200;

Fotodiodo (Receptor Infravermelho): BPTBPO314;

Diodo Zenner de 4,3V - 1N4371A;

Transistor NPN BC548;

Resistores: 47Ω, 3.3 KΩ e 1.0 KΩ;

Fios;

Conector DB25 – porta paralela;

1.3 Organização do Projeto

Neste projeto, apresenta-se primeiramente todo o trabalho que foi desenvolvido anteriormente no

programa de Iniciação Científica do autor, quando o mesmo desenvolveu o circuito em parceria com o

colega de curso Renato Francisco Ferreira.

Este circuito, porém, apresentava uma limitação que era o fato de possuir fios que atrapalhavam no

momento do exame oftalmológico. Desta forma refletiu-se sobre uma solução para este problema,

desenvolvendo um mecanismo de transmissão sem-fios para o computador que está equipado com o software

do equipamento médico, que num futuro próximo deve eliminar o problema anterior.

Apresentam-se primeiramente os fundamentos teóricos a serem utilizados durante toda a pesquisa e

desenvolvimento neste trabalho, inclusive os utilizados no circuito já desenvolvido.

Em seguida são apresentados todos os materiais utilizados, tanto na parte de hardware como também

na parte de software, incluindo a metodologia empregada para se construir e utilizar os dispositivos

empregados neste projeto.

Logo após apresentam-se os testes pertinentes ao circuito já implementado, os testes que envolvem o

kit e o módulo de comunicação Bluetooth e o computador equipado com um software que lê as informações

transmitidas pelo ar.

Por fim, são apresentadas a discussão e as conclusões deste trabalho, seguidos dos agradecimentos,

referências bibliográficas e anexos.

Page 13: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

12

2. Fundamentos Teóricos

Nesta seção serão discutidos alguns os componentes e métodos de comunicação principais abordados

nos estudos deste trabalho.

2.1 Diodos

LEDs e fotodiodos podem ser utilizados como emissores de luz e receptores de luz para formar um

sistema de sensoriamento que envolve emissão e detecção de um dado comprimento de onda da luz.

Para que o Fotodiodo (tipo especial de diodo) funcione corretamente é necessário que ele seja

polarizado reversamente, isto é, se a junção PN reversamente polarizada for iluminada - exposta à luz

incidente - o impacto de fótons sobre a junção causa a quebra de ligações covalentes e, portanto, gera pares

elétron-lacuna na camada de depleção [5]. O campo elétrico na camada de depleção atrai os elétrons livres

para o lado N e as lacunas para o lado P, levando a uma corrente reversa através da junção. Esta corrente,

conhecida por fotocorrente, é proporcional à intensidade de luz incidente, de modo que esse tipo de diodo é

utilizado para converter sinais luminosos em sinais elétricos [5]. Porém, o nível de corrente gerada pela luz

incidente sobre um fotodiodo (na faixa de 10µA) não é suficiente para que ele possa ser usado num controle

direto, sendo necessário que haja uma etapa de amplificação. Quanto mais intensa a luz, maior o número de

portadores minoritários e, portanto, maior é a corrente reversa [6] [7].

Figura 2.1: Circuito genérico.

A figura 2.1 mostra o fotodiodo reversamente polarizado num circuito genérico, onde as setas para

dentro representam a luz incidente, e a figura 2.2 dois fotodiodos de 5 mm cada, semelhantes ao utilizado

neste projeto.

Page 14: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

13

Figura 2.2: Fotodiodos infravermelho.

2.2 Posicionamento do Sensor

Diversas outras aplicações deste sensor infravermelho podem ser aproveitadas em outros aparelhos

de oftalmologia e também em inúmeras áreas da engenharia, tais como: alarmes de segurança, sensores de

presença, contadores de objetos, enfim, uma gama enorme de aplicações. Para isso, são precisos apenas

alguns ajustes na configuração e no posicionamento dos LEDs emissor e receptor conforme o projeto em que

se deseja aplicar.

Estas configurações podem ser divididas de duas formas diferentes, conforme o uso do sensor

infravermelho: os ativos e os passivos [8].

Os passivos possuem apenas receptores, ou seja, não emitem ondas infravermelhas, detectando

apenas a movimentação destes.

Os ativos possuem um emissor e receptor infravermelho, que, respectivamente, enviam e detectam

esta onda transmitida. Podem ser de três formas diferentes, na qual se pode verificar nas figuras 2.3, 2.4 e

2.5, as quais apresentam os três sistemas mais empregados na utilização de sensores infravermelhos:

sistemas por barreira, difusão e reflexão [8].

Sistema por Barreira: o emissor fica alinhado frontalmente com o receptor e a interrupção ou não

dessa irradiação de atingir o receptor, ocasionará um chaveamento eletrônico, pois não haverá o sinal

recebido pelo sistema receptor;

Page 15: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

14

Figura 2.3: Sistema por Barreira

Sistema por Difusão: o emissor e receptor estão juntos, no mesmo conjunto óptico, e os raios emitidos

refletem na superfície de um objeto e retornam ao receptor;

Figura 2.4: Sistema por Difusão.

Sistema por Reflexão: é o mesmo princípio do sistema por difusão, porém usa-se um espelho prismático à

frente do receptor.

Figura 2.5: Sistema por Reflexão.

Em nosso trabalho específico, utilizou-se o princípio do sistema por reflexão, porém, com uma

região reflexiva e outra opaca, obtendo duas informações (olho esquerdo ou olho direito) conforme o

posicionamento do aparelho de oftalmologia empregado.

Page 16: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

15

2.3 Sistemas de Comunicação Sem Fios (Wireless)

Cada vez mais presente na vida do ser humano, a comunicação wireless vem cada vez mais tomando

espaço e fazendo parte do cotidiano.

Desde o final do século XIX e início do século XX, quando Marconi [9], respectivamente, inventou e

fez a primeira transmissão de dados sem fios da história, enviando sinais telegráficos através do Oceano

Atlântico, até os dias de hoje, muito se evoluiu na transmissão da informação através do ar, como o rádio, a

televisão, o celular, entre outros. E nos dias de hoje, milhares de equipamentos possuem algum tipo de

comunicação sem fio: o portão eletrônico, o alarme do automóvel, o fone de ouvido, o notebook, o celular,

entre muitos outros.

Com o passar do tempo, percebeu-se que em alguns casos, a ampliação ou mesmo implantação de

redes com cabeamento convencional não era economicamente ou fisicamente viável. Com o avanço das

tecnologias de rede sem fio, possibilitou-se o surgimento de diversas alternativas e padrões para cada caso

em específico.

Conforme as recomendações da série IEEE 802.11, pode-se considerar a existência de quatro

grandes grupos de redes sem fios [27]:

WPAN (Wireless Personal Area Network): compreende as tecnologias de pequeno alcance (entre 10m e

100m) que são utilizadas para redes locais (ou pessoais), definidas pelo padrão IEEE 802.15, e que são

utilizadas em dispositivos móveis ou portáteis, como celulares, PDAs, entre outros;

WLAN (Wireless Local Area Network): destinada à interligação de redes locais com alcance entre 100m e

300m, utilizado para complementar ou substituir as redes LAN com cabeamento convencional (par metálico,

fibra óptica, entre outros);

WMAN (Wireless Metropolitan Area Network): compreendem as tecnologias que utilizam acesso de banda

larga para última milha para redes em áreas metropolitanas, com alcance em torno de 5 km;

WWAN (Wireless Wide Area Network): este grupo compreende as tecnologias que são voltadas para redes

de telecomunicações de longa distância, de voz e dados.

Quando falamos na comunicação de dados, os padrões de comunicação sem fios mais difundidos e

utilizados nos dias de hoje são: Wi-fi (IEEE 802.11), Bluetooth (IEEE 802.15.1) e ZigBee (IEEE 802.15.4),

que são os objetos de nosso estudo.

Page 17: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

16

2.3.1 Wi-fi (IEEE 802.11)

Com o objetivo de prover acesso em localidades onde fosse difícil – ou às vezes impossível – ou

simplesmente muito caro para implantar redes cabeadas, a IEEE norte-americana (em português, Instituto de

Engenheiros Eletricistas e Eletrônicos), decidiu por criar um padrão para comunicação de dados que

substituísse com vantagens as redes Ethernet cabeadas [9], no contexto das WLANs.

No início dos anos 90, o IEEE criou um comitê para estudar e definir o padrão de comunicação que

depois de sete anos de estudo, em 1997, foi criado o padrão IEEE 802.11, aprovando inicialmente as

variantes 802.11a e 802.11b, que, respectivamente, com taxas nominais de 54 e 11 Mbps e operando nas

faixas de 5 e 2,4 GHz, faixas estas que nos Estados Unidos eram chamadas de ISM (Industrial, Scientific and

Medical), não-licenciadas e livres, o que deixaria os fabricantes livres de pagarem impostos para utilizarem

estas faixas de operação no espectro.

Com o objetivo de garantir a interoperabilidade entre todos os dispositivos lançados no mercado,

surgiu alguns anos depois a WECA (Wireless Ethernet Compatibility Alliance), que mais tarde se chamaria

Wi-fi Alliance, órgão este que passou a certificar os equipamentos do padrão IEEE 802.11 com o selo Wi-fi

(Wireless Fidelity), que fossem compatíveis realmente com este padrão e que desta forma poderiam se

comunicar entre si, não importando de qual fabricante fosse [10].

Como dito anteriormente, o padrão IEEE 802.11 veio para substituir a rede Ethernet cabeada aonde

não era possível implementá-la, e do mesmo modo que esta última, o padrão wireless tem a mesma

funcionalidade, arquitetura e funções de uma LAN (Local Area Network), isto é, prover acesso à uma rede

local, porém através de uma comunicação sem fios designada agora de WLAN (Wireless Local Area

Network), exigindo para isso algumas implementações adicionais, como a transmissão via rádio, que

inicialmente utilizava os padrões de modulação QAM e PSK, por exemplo.

Com a necessidade de padrões que tivessem uma maior taxa de transferência que o padrão IEEE

802.11b, visto que o padrão IEEE 802.11a apesar de ter uma taxa alta de transmissão (54 Mbps), suas

interfaces eram bem mais caras que o outro padrão, e assim alguns anos depois, surgiu o padrão IEEE

802.11g, que possui taxas de até 54 Mbps e também utiliza a faixa de 2,4 GHz como o padrão IEEE 802.11b,

sendo compatíveis entre si.

Atualmente, a grande maioria das redes wireless disponíveis hoje implementam o padrão IEEE

802.11g, porém a baixa taxa de transferência (54 Mbps) em comparação com a rede cabeada Ethernet 10/100

(100 Mbps), motivou o surgimento de novas tecnologias que tivessem uma taxa de transferência maior e

também um maior alcance.

Desta forma, uma das tecnologias que surgiram dessa necessidade foi o padrão Super G, criado pela

empresa Atheros [12], e que teve como finalidade básica aumentar a taxa de transferência do padrão IEEE

802.11g, utilizando para isso dois canais de 54 Mbps cada, atingindo a taxa teórica de 108 Mbps. Apesar de

existirem diversos equipamentos de diversos fabricantes disponíveis no mercado, eles não são certificados

pela Wi-fi Alliance como Super G, pois este padrão não é certificado por este órgão, e deste modo esses

aparelhos são certificados apenas como IEEE 802.11g, garantindo a compatibilidade com este padrão.

Page 18: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

17

Enxergando esta demanda por uma maior taxa de transferência, no início de 2004 a Wi-fi Alliance

formou um novo grupo de pesquisa para desenvolver um novo padrão de comunicação que fosse ao menos

quatro vezes mais rápido que o padrão IEEE 802.11g.

Nasceu assim o padrão IEEE 802.11n [11], que teve sua primeira pré-especificação aprovada no

começo de 2006, e outras atualizações vem sendo apresentadas desde então [10]. Este novo padrão trabalha

na faixa dos 2,4 GHz e 5 GHz, e implementa uma taxa de transmissão de até 600 Mbps, usando para isso a

tecnologia MIMO (Multiple Input, Multiple Output), que transmite diversos pacotes de dados por diversas

antenas, no mesmo canal, ao mesmo tempo, recombinando todos estes pacotes no receptor, que também deve

possuir diversas antenas e suportar este padrão.

Atualmente, o órgão está certificando aparelhos deste padrão na versão 2.0 (draft 2.0), sendo que

novas versões estão em estudo e novos releases estão para acontecer, como também a versão final deste

padrão.

2.3.2 Bluetooth (IEEE 802.15.1)

O padrão IEEE 802.15.1, também conhecido como Bluetooth, é uma especificação industrial aberta

(royalty-free) que está se tornando muito popular em PANs sem fio (WPANs) de topologia ad hoc, que nada

mais é do que uma rede sem controle central e sem conexões com o restante do mundo, onde diversos

dispositivos próximos se comunicam sem a presença de um ponto de acesso centralizado [13].

É uma tecnologia utilizada para conexão e troca de informações entre dispositivos como telefones

celulares, PDAs, laptops, câmeras digitais, PCs, entre uma infinidade de outros dispositivos.

O nome Bluetooth tem origem em um rei dinamarquês chamado Harald Blåtand (Harold Bluetooth

em inglês), que unificou a Dinamarca e a Noruega no século X. Daí percebe-se a principal finalidade da

tecnologia: unificar a comunicação entre dispositivos.

O padrão Bluetooth utiliza sinais de rádio em ondas curtas e é considerado seguro e de baixo custo.

Destacam-se também sua robustez, baixa complexidade e baixo consumo de energia. A tecnologia Bluetooth

é usada na substituição de cabos para conexão entre dispositivos, como por exemplo, PCs, impressoras e

teclados. Outras aplicações possíveis podem ser o compartilhamento e sincronização de dados entre

dispositivos conectados e o acesso à Internet por meio de outros dispositivos como telefones celulares, entre

muitas outras. Seu desenvolvimento teve início em 1994 pela Ericsson, e, a partir de 1998, pelo Bluetooth

Special Interest Group (SIG), consórcio inicialmente estabelecido pela Sony, Ericsson, IBM, Intel, Toshiba e

Nokia [14]. Hoje esse consórcio inclui mais de 4000 empresas. A aceitação inicial pelo mercado foi lenta,

mas agora está começando a se tornar predominante. Os preços estão em queda e cada vez mais dispositivos

oferecem esse tipo de conexão [15].

A tecnologia Bluetooth é um padrão de transmissão via rádio especialmente desenvolvido para baixo

consumo de energia, possuindo também um microchip emissor-receptor de baixo custo [16] [17]. Os chips

Page 19: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

18

têm excelentes recursos visando economia de energia, pois há alteração de maneira automática, ao modo de

baixa, quando o volume de tráfego diminui ou pára.

Figura 2.6: Adaptador USB-Bluetooth (Dongle). Fonte: www.encore-usa.com

A maioria dos dispositivos Bluetooth se encontra na Classe 2. Alguns dispositivos, como dongles

(Figura 2.6) que podem ser adicionados a notebooks ou desktops, por exemplo, são Classe 1, e têm raio de

alcance comparável ao da rede Wi-fi (Veja a tabela 2.1).

Tabela 2.1: Potência e Raio de Alcance de acordo com sua classe [18].

Classe Potência Raio de Alcance (aprox.)

Classe 1 100 mW ≈ 100 metros

Classe 2 2,5 mW ≈ 10 metros

Classe 3 1 mW ≈ 1 metro

Na realidade, no caso do Bluetooth, curto raio de alcance é um benefício, uma vez que reduz as

chances de interferência com outros dispositivos localizados em área próxima. Bluetooth é direcionado tanto

para aplicações de dados quanto de voz, sendo capaz de penetrar objetos sólidos.

Muitas vezes o padrão Bluetooth é comparado com o Wi-fi por ambos utilizarem o meio aéreo para

transmitir os dados, e em alguns casos (como no padrão IEEE 802.11g) utilizarem a mesma banda de

2,4GHz. O contrário do Wi-fi, que foi desenvolvido para substituir os cabos de rede a fim de prover um

acesso rápido às grandes redes como a Internet e necessita de certas configurações para funcionar, o

Bluetooth foi desenvolvido para aplicações onde havia a necessidade de se eliminar os fios, utilizando-se

para isso configurações simples de modo que qualquer usuário pudesse conectar seus dispositivos sem muito

conhecimento específico.

Para que fosse possível essa fácil configuração, criaram-se os Perfis Bluetooth, para que dois

dispositivos pudessem se comunicar entre si utilizando diversos padrões de configuração, que vão desde uma

comunicação serial até a comunicação de áudio para fones de ouvido sem fio Bluetooth, por exemplo.

Hoje existem cerca de 25 perfis[14] [18], sendo que dois deles são genéricos e estão presentes em

todos os dispositivos Bluetooth: a comunicação genérica e a descoberta de serviços, que respectivamente

Page 20: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

19

fazem a comunicação efetivamente entre dois dispositivos, e disponibiliza todos os serviços suportados por

tal dispositivo, isto é, seus perfis suportados. Entre outros perfis, destacamos o de comunicação serial (SPP),

que emula uma comunicação serial entre os dispositivos [15]; o de fone de ouvido (A2DP), que permite a

comunicação de voz, por exemplo, entre um celular equipado com Bluetooth e um fone de ouvido sem fios

Bluetooth, que é cada vez mais comum nos dias de hoje; a transferência de arquivos (FTP), muito utilizada

nos dias de hoje para transferir, por exemplo, fotos e arquivos de música entre um celular com um

computador equipado com um dongle Bluetooth, ou mesmo um notebook que possua Bluetooth.

Esta grande quantidade de perfis se deve ao fato de que durante a pesquisa e definição do padrão,

diversos grupos se dividiram e concentraram seus trabalhos nas partes que mais lhes interessava, gerando

cada um deles um perfil específico, de modo que se este trabalho tivesse sido feito em conjunto, talvez a

quantidade de perfis fosse bem reduzida [15].

A arquitetura do Bluetooth consiste basicamente num sistema de rede chamado piconet, o qual é

composto por um nó mestre e até sete nós escravos adicionais, numa distância de até 10 metros (no caso da

Classe 2). Em um mesmo ambiente podemos ter diversas piconets funcionando ao mesmo tempo, e se estas

redes estiverem interligadas, teremos uma scatternet. Observe a figura 2.7:

Figura 2.7: A interconexão de piconets forma uma scatternet[20].

O Bluetooth opera na faixa ISM (Industrial, Scientific and Medical), centrada em 2,45 GHz, que era

anteriormente reservada a alguns grupos de usuários profissionais, mas que foi aberta mundialmente para uso

comercial. No Brasil, de acordo com a resolução 305 da Anatel, a faixa ISM varia de 2400 a 2483,5 MHz,

como ocorre nos Estados Unidos. Na maior parte da Europa a mesma banda também está disponível. No

Japão, a faixa varia de 2400 a 2500 MHz.

A banda dentro da faixa ISM, é aberta, isto é, livre de licenças e deste modo se faz necessário

garantir que o sinal não tenha interferências com outros sinais. Para que isso fosse possível, foi necessário

dividi-la em 79 canais de 1 MHz cada, utilizando-se para isso a tecnologia FH-CDMA , que faz com que

exista um salto de freqüência, isto é, o dispositivo mestre que estabelece a conexão muda de um canal para o

outro na velocidade de 1600 saltos por segundo, diminuindo as chances de interferência com qualquer outro

tipo de sinal na mesma faixa de freqüência.

Page 21: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

20

Falando-se em taxa de transmissão de dados, na tecnologia Bluetooth é de até 1 Mbps para as

versões 1.0 e 1.2 (na prática 721kbps) e de 3 Mbps para a versão 2.0 e 2.1 (EDR).

Assim como acontece nos dispositivos de redes Ethernet, os dispositivos Bluetooth possuem um

endereço físico ou endereço MAC de fábrica, no formato AA:BB:CC:DD:EE:FF, onde cada uma dessas

letras representa um número hexadecimal, resultando então em 6 bytes, o que dá 248 (ou

281.474.976.710.656) possíveis endereços de dispositivos. E do mesmo modo que acontecem com os

dispositivos LAN, os fabricantes adquirem da IEEE uma parcela desses endereços, que são gravados no

dispositivo no momento de sua fabricação [13], sendo que não existem dois dispositivos com o mesmo

endereço MAC, sejam eles Bluetooth ou Ethernet.

Por se tratar de um tipo de comunicação sem fios, ela está mais sujeita à espionagem e ao acesso

remoto por parte de outros dispositivos (ou pessoas) que queiram de alguma forma burlar a segurança e

conseguir algum conteúdo privativo. Deste modo, a segurança na tecnologia Bluetooth é definida por três

premissas: disponibilidade, acessibilidade e confidencialidade [19] [26].

Uma vez que é possível deixar, por exemplo, um celular equipado com Bluetooth com esta

funcionalidade desligada ou invisível, já torna o padrão seguro, pois é possível configurá-lo para estar

indisponível em alguns momentos em que não se está utilizando.

A segunda premissa diz a respeito do acesso direto entre dispositivos Bluetooth, pois para que uma

comunicação seja efetuada entre estes dispositivos, e um seja configurado como um dispositivo confiável

para o outro, se faz necessário introduzir uma chave de 4 caracteres para que esta conexão seja estabelecida

pela primeira vez, não sendo necessária mais a introdução desta chave nas comunicações posteriores. Os

dispositivos Bluetooth podem armazenar em memória até 256 outros dispositivos com este passkey para

assim fazer este handshake de forma automática.

Uma vez estabelecida a “confiança” entre os dispositivos, todos os dados enviados via Bluetooth

entre eles precisa ser enviado de modo que nenhum outro dispositivo consiga captar estes sinais e recuperá-

los. Assim, o Bluetooth se utiliza da criptografia de dados para que estas hipóteses não venham a ocorrer [17]

[19].

Devido ao seu curto alcance, baixo consumo de energia e baixa taxa de transferência, a tecnologia

Bluetooth é utilizada mais especificamente em dispositivos móveis onde a velocidade de transferência das

informações não é um fator crítico, sendo utilizada especificamente para eliminar os cabos ou fios de

conexão entre alguns dispositivos, com o propósito de melhorar e facilitar a comunicação entre os mesmos

[20].

2.3.3 ZigBee (IEEE 802.15.4)

O padrão ZigBee é um padrão de comunicação sem fios que surgiu no ano de 2004, tendo por

características básicas prover uma rede de curto alcance com uma boa relação custo benefício [21], tendo

ênfase em aplicações de baixo custo que demandam um baixo consumo de energia [22].

Page 22: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

21

Este padrão foi inicialmente desenvolvido como uma alternativa de comunicação de redes que não

necessitassem de soluções mais complexas para o seu controle [20], reduzindo os custos de aquisição,

instalação, manutenção e mão de obra, deste modo suprindo as necessidades da indústria no que se diz a

respeito de sensoriamento e automação, porém com o tempo, aplicações domésticas e médicas também

foram sendo desenvolvidas utilizando este padrão.

A ZigBee Alliance [23] é o órgão composto por mais de 50 empresas que, em conjunto com o IEEE,

desenvolvem e aprimoram o padrão ZigBee, contribuindo para o seu aprimoramento.

Da mesma forma que o padrão Bluetooth, o padrão ZigBee também opera na faixa ISM, que não

necessita de licença para o seu funcionamento, obtendo taxas de transferência conforme sua freqüência de

operação (ver Tabela 2.2)

Tabela 2.2: Frequência de Operação e Taxa de Transferência.

Frequência (MHz) Taxa de Transferência (kbps)

2400 (Global) 250

915 (América) 40

868 (Europa) 20

Apesar de possuir uma baixa taxa de transferência (máximo de 250kbps), o padrão ZigBee possui

diversas vantagens, como:

• Baixo consumo de energia;

• Interfaces de baixo custo;

• Possui um protocolo de simples implementação, podendo utilizar microprocessadores de baixo

custo;

• Configuração de rede flexível: Estrela, Árvore ou Malha;

• Hardware compacto;

• Alcance de 100m em ambiente aberto e de até 30m em ambiente fechado;

• Protocolo simples, com nível apropriado de segurança.

Page 23: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

22

3. Materiais e Métodos

No projeto do sensor, feito na iniciação científica, foram utilizados um LED, no comprimento de

onda do infravermelho (950nm) como emissor – TSAL6200, 5mm - e um fotodiodo – BPTBPO314, 5mm -,

como receptor.

O sensor infravermelho de detecção de olho desenvolvido consistiu basicamente de um LED emissor

infravermelho e um fotodiodo, que respectivamente emitem e captam os sinais enviados para um anteparo

(fita adesiva metálica), colocada na base de uma Lâmpada de Fenda [3], como comentado anteriormente. A

Lâmpada de Fenda é um microscópio ocular, onde o sistema de ceratometria foi desenvolvido [2].

Como pôde ser observado na figura 1.1, foi confeccionada uma cápsula em acrílico transparente para

abrigar os diodos. As dimensões do invólucro estão apresentadas na figura 3.1.

Figura 3.1: Desenho esquemático do invólucro que abriga os diodos.

3.1 Transmissão Wireless

Posteriormente, percebeu-se que a quantidade de fios presente no equipamento atrapalhava a rotina

clínica, o que levou a se encontrar alternativas do tipo de comunicação sem fios.

Foi necessário fazer um estudo detalhado de cada um dos padrões existentes - Wi-fi, ZigBee e

Bluetooth - para que escolher a tecnologia mais adequada ao projeto.

Primeiramente excluímos a possibilidade de utilizar o padrão Wi-fi pelo fato desta tecnologia ser

empregada mais precisamente em substituição à rede Ethernet, sendo mais indicada para altas taxas de

transmissão de dados (máxima de 54 Mbps no padrão 802.11g e até 600 Mbps no padrão 802.11n), maior

alcance (de 30 a 100m no padrão 802.11g e chegando até aproximadamente 300m no padrão 802.11n)

possuindo também um alto gasto de energia, o que não atende às nossas especificações (veja tabela 3.1).

Page 24: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

23

Tabela 3.1: Tabela comparativa entre os padrões estudados.

Wi-fi Bluetooth ZigBee

Aplicações Redes

Corporativas

Conectividade

Social

Redes de

Sensoriamento

sem fio

Alcance até 300m até 10m até 100m

Taxa de

Transferência até 600Mbps até 1Mbps até 250kbps

Consumo de

Energia Alto Médio Baixo

Posteriormente excluímos também a possibilidade de se utilizar o padrão ZigBee, principalmente

pelo fato de que praticamente não existem computadores, notebooks e minicomputadores que possuam esta

tecnologia embutida, e também é muito difícil encontrar adaptadores ZigBee-USB que pudessem ser

utilizados para fazer a comunicação entre o sistema e um computador. Além disso, como já estava certa a

utilização do minicomputador da OQO para a aquisição dos dados através do software desenvolvido [2],

ficaria desconfortável e por vezes perigoso utilizar um adaptador ZigBee-USB acoplado a este

minicomputador, excluindo-se definitivamente esta opção.

Optou-se então pelo padrão Bluetooth, visto que se trata de uma tecnologia moderna, mais indicada

para sistemas de transmissão de dados ponto a ponto, que possui uma taxa razoável de transmissão, baixo

consumo, e, além disso, o laboratório de Sistemas Embarcados do curso de Engenharia de Computação da

Escola de Engenharia de São Carlos possui um kit de desenvolvimento Bluetooth [24], o que é mais um fator

favorável na adoção desta tecnologia, pois tornará muito mais fácil o aprendizado e implementação desta

tecnologia em nosso projeto.

Aliado a estes fatores, o minicomputador da OQO em que está instalado o software desenvolvido no

LIO [2], possui um adaptador Bluetooth embarcado, constituindo mais um ponto favorável à escolha desta

tecnologia para nosso projeto. Caso o computador não tivesse Bluetooth embarcado, seria fácil obter um

adaptador USB-Bluetooth (dongle, figura 2.6), o que não acontece no caso do adaptador para ZigBee.

3.2 Kit de Desenvolvimento Bluetooth

Foi utilizado neste trabalho, o kit de desenvolvimento da Rabbit Semiconductor®, o RCM3360

(Figura 3.3), que possui o microprocessador Rabbit 3000 incorporado, que contém muitas ferramentas de

desenvolvimento por software e hardware [25]. Esse processador tem freqüência de trabalho de 44 MHz,

Ethernet 10/100Base-T, 512K de memória Flash, 512K de memória SRAM de execução de programas,

Page 25: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

24

512K de memória SRAM de dados, 50 bits de entrada e saída compartilhados por seis portas de entrada [25].

Além disso, suporta cartões de memória XD para expansão.

É por uma destas portas de entrada que está conectada a saída do circuito do sensor infravermelho,

que envia o sinal detectado para o microprocessador.

Figura 3.2: RabbitCoreModule RCM3660, da Rabbit Semiconductor®,

equipado com o microprocessador Rabbit 3000 [25].

Esse kit de desenvolvimento suporta diversos módulos de expansão, como por exemplo, módulos

Wi-fi e ZigBee, mas neste trabalho foi utilizado o módulo Bluetooth da A7Engineering, o EmbeddedBlue 506

(Figura 3.4) disponível no Laboratório de Sistemas Embarcados no Campus 2, que uma vez conectado ao kit,

faz a comunicação através da interface UART [19].

Figura 3.3: Detalhe do módulo Bluetooth EmbeddedBlue 506, da A7Engineering [19].

Na figura 3.5 observa-se os diversos componentes do kit de desenvolvimento (desde acima à

esquerda, em sentido horário): o teclado com LEDs e LCD, o protoboard, o módulo EB506, o módulo

RCM3360 e adaptador. Já na figura 3.6, verifica-se todos os módulos conectados entre si e com o

protoboard.

Page 26: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

25

Figura 3.4: O kit com os componentes desconectados.

Figura 3.5: O kit com todos os componentes conectados ao protoboard.

3.2.1. O Processador Rabbit 3000

O processador que equipa este kit de desenvolvimento, é o processador de 8 bits Rabbit 3000,

produzido pela Rabbit Semiconductor, subsidiária da Z-World, pioneira na fabricação de sistemas

embarcados.

Este processador é derivado do Zilog Z80, utilizado tanto em sistemas embarcados como também em

PCs e vídeo-games, que começou a ser comercializado no final da década de 70. Porém, apesar de ser

baseado neste antigo processador, o Rabbit 3000 não é compatível no que se diz respeito à parte de

Page 27: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

26

programação, pois diversas instruções foram removidas e outras adicionadas, com o objetivo de aumentar o

desempenho do mesmo.

3.2.2. Aprendizado do kit

Antes de implementar qualquer programa para o circuito desenvolvido para porta paralela, foi

necessário fazer um estudo aprofundado do kit, primeiramente sem o módulo Bluetooth e depois utilizando

este módulo para estudo. Para isso, foi imprescindível a utilização dos manuais que acompanham o kit e o

módulo Bluetooth [19] [25].

Para que fosse possível conhecer todas estas funcionalidades, foi necessário um breve estudo sobre a

linguagem utilizada pelo processador do kit, o Dynamic C, muito parecida com a linguagem C padrão, mas

que possui suas particularidades para o ambiente de sistemas embarcados, como por exemplo, a não

utilização de arquivos header (como é padrão na linguagem C), utilizando arquivos de biblioteca [24].

Após os testes com o kit, acoplou-se a este o dispositivo Bluetooth

Para se ter uma idéia de como é a interface do kit, a figura 3.7 ilustra a janela do Hyper Terminal do

Windows conectado ao kit.

Figura 3.6: Hyper Terminal do Windows conectado ao kit

3.2.3. Desenvolvimento de um adaptador e conexão ao Kit

Page 28: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

27

Para que fosse possível utilizar no kit da Rabbit, o sistema sensor já desenvolvido e funcionando no

aparelho de oftalmologia, confeccionou-se um pequeno adaptador com um conector paralelo fêmea, que

possui diversos fios conectados aos pontos chave do conector paralelo anteriormente desenvolvido.

Uma vez o adaptador conectado ao circuito, conectou-se este ao kit de desenvolvimento através das

quatro portas de entrada digitais IN0 a IN3, que são protegidas para valores entre -36V e +36V, suportando

picos de ±40V.

A região lógica desta porta de entrada pode ser conferida na figura 3.8, sendo que valores abaixo de 0.9V

são considerados de nível lógico “0” e valores acima de 2.3V são considerados de nível lógico “1”.

Figura 3.7: Níveis lógicos das portas de entrada.

Na figura abaixo verifica-se o adaptador conectando o circuito ao kit, como também o próprio sensor em

funcionamento.

Figura 3.8: Adaptador desenvolvido, fazendo a conexão com o kit.

Page 29: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

28

3.2.4 Desenvolvimento do Software Embarcado

Como pode-se verificar nos Anexos (7.1), desenvolveu-se um software na linguagem Dynamic C,

“EyeDetector_Bluetooth.c”, para enviar via Bluetooth, os dados recebidos do sensor através da porta de

entrada do kit.

Neste programa, além de enviar efetivamente os dados via Bluetooth, optou-se por também utilizar-se de

algumas ferramentas para teste dos dados vindos do sensor, a fim de ter certeza que o kit de desenvolvimento

estaria recebendo as informações. Então deste modo, no mesmo programa, optou-se por acrescentar algumas

linhas de código, que utilizam os LEDs do kit, como também o visor de LCD, para corroborar se os dados da

aquisição estavam corretos. Assim, estas linhas de código, documentadas no anexo, acendem ou apagam um

dos diversos LEDs disponíveis no kit, como também imprime na tela de LCD a informação de qual olho está

sendo detectado no momento do exame oftalmológico.

No restante do programa observa-se as diversas funções utilizadas através das bibliotecas daquele

processador e módulo Bluetooth para realizar o envio das informações pertinentes, como também toda a

estrutura de repetição para que o programa fique indefinidamente enviando os dados até que o mesmo seja

encerrado.

O endereço MAC do dispositivo a ser conectado é passado como referência na função “serFputs”, na

qual faz a conexão com o dispositivo especificado, de modo que se faz necessário mudar este endereço

quando se for conectar a outro dispositivo, como por exemplo, mudando o endereço do dongle para o

endereço do dispositivo Bluetooth embarcado no minicomputador da Oqo.

3.2.5 Desenvolvimento do Software em JAVA

Para que fosse possível ler os dados que chegam através da porta serial (COM7), foi necessário

desenvolver um software para ler estes dados que são recebidos pelo dongle Bluetooth através da porta serial

COM7 (padrão do dongle utilizado). A linguagem Java foi a escolhida para este desenvolvimento.

O programa, denominado “ReceiveSerialComm.java”, faz uma leitura dos dados recebidos pela

porta serial COM7, mostrando os valores recebidos na tela, de forma que os valores recebidos condizem com

os enviados pelo kit de desenvolvimento.

O código deste software encontra-se nos Anexos (7.2).

3.2.6 Desenvolvimento do Software em Delphi

Para este trabalho, não era suficiente desenvolver um programa em JAVA para a leitura dos dados da

porta serial. Era necessário que fosse desenvolvido um programa na linguagem Delphi, pois o Software

Page 30: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

29

principal do aparelho oftalmológico, ao qual o sensor faz parte, foi desenvolvido nesta linguagem, para que

no futuro possa ser implementado no ceratômetro em lâmpada de fenda, para se identificar o olho examinado

de forma online.

Neste programa em Delphi, “SerialTeste.pas”, fez-se uma simples conexão na porta serial COM7 e

leram-se os dados que chegam através desta porta, mostrando num “Form” qual o olho está sendo examinado

conforme a entrada obtida na leitura desta porta serial. O resultado é visto na figura 3.10 , no qual é a

indicação do olho esquerdo.

Figura 3.9: Visual do programa em Delphi

Page 31: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

30

4 Testes e Resultados

4.1 Teste de Interferência no Sensor com fio e com comunicação por porta paralela

Várias medidas foram realizadas com o circuito, acoplando-se externamente uma fonte de luz,

emitindo difusamente sobre a parte reflexiva e opaca da base da lâmpada de fenda.

Primeiramente verificamos que uma fonte de luz diretamente incidente ao sensor causará problemas,

por menor que seja a potência dessa fonte, porém isso seria quase impossível num consultório comum, onde

geralmente as lâmpadas de iluminação do ambiente se encontram no teto do mesmo. E o próprio

Ceratômetro, que se encontra na frente do sensor, impede uma incidência direta de luz (ver a Figura 1.2).

Posteriormente foram feitos dois testes com uma matriz de nove lâmpadas incandescentes de 60W

cada, posicionada no teto, a 2,5m da base do Ceratômetro, onde se encontra o sensor de olhos.

Primeiramente essa matriz foi posicionada a 1 m em relação à normal que passa pelo sensor (Figura 4.1).

Figura 4.1: Esquemático do teste realizado.

Nesse primeiro teste, acendeu-se uma das nove lâmpadas e mediu-se a tensão que o fotodiodo

receptor infravermelho deixou passar no circuito. Em seguida foi acesa a segunda lâmpada e mediu-se

novamente a tensão, continuando até a nona lâmpada. Os resultados foram colocados na Tabela 4.1.

Page 32: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

31

Tabela 4.1: Tensão averiguada no primeiro teste,

com a fonte de luz a 1m do eixo vertical ao sensor.

Nº de Lâmpadas Potência (W) Tensão (V)

1 60 0,69

2 120 0,75

3 180 0,89

4 240 0,94

5 300 1,03

6 360 1,11

7 420 1,25

8 480 1,31

9 540 1,42

O segundo teste procedeu-se do mesmo modo, com a fonte de luz localizada a 2,5 m da base da

Lâmpada de Fenda, porém na própria normal ao sensor (Figura 4.1). O procedimento adotado foi o mesmo, e

os resultados se encontram na Tabela 4.2.

A comunicação do circuito do sensor foi feita com o microcomputador, através da porta paralela,

onde se utilizou um conector DB25, que como o próprio nome diz, possui 25 pinos, os quais 8 são utilizados

para saída de dados, outros 5 para entrada de dados, outros 4 para controle e os restantes são de aterramento.

A porta paralela dos microcomputadores funciona em nível TTL, onde 0V corresponde ao nível baixo e 5V

corresponde ao nível alto, justamente os dois possíveis valores dos sinais de saída deste projeto. Neste

projeto precisou-se utilizar apenas um dos pinos como entrada (no caso o pino 5) para poder enviar o sinal

que foi detectado pelo circuito (0V ou 5V) para o microcomputador.

Tabela 4.2: Tensão averiguada no segundo teste,

com o sensor a 2,5m da base da Lâmpada de Fenda.

Nº de Lâmpadas Potência (W) Tensão (V)

1 60 0,51

2 120 0,59

3 180 0,68

4 240 0,75

5 300 0,84

6 360 0,92

7 420 1,01

8 480 1,09

9 540 1,25

Page 33: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

32

4.2 Teste na Comunicação da Porta Paralela

Após os testes com o circuito, foi feito um teste para verificar se a comunicação com o computador

através da porta paralela estava dentro do esperado, isto é, se os níveis lógicos da saída, obtidos nos testes

com o circuito, estavam realmente sendo transmitidos através porta paralela do microcomputador, que era o

sistema anteriormente utilizado antes de ser implementado o sistema sem fios.

Para realizar este teste, fez-se o uso de um software gratuito chamado “Porta Paralela 1.0”, que faz a

leitura da porta paralela do computador. Como podemos ver através das figuras abaixo, a comunicação do

sensor com o computador ocorreu normalmente, isto é, o sinal do circuito (alto ou baixo, 0V ou 5V) foi

transmitido com sucesso pela porta paralela e chegou perfeitamente ao computador .

Figura 4.2: Tela do programa mostrando a entrada D4 em nível alto.

Na figura 4.2 podemos reparar que a entrada “D4” está marcada, indicando que o lado do olho

examinado é o direito, pois o sensor não está recebendo nenhum sinal (lógica negativa). Já na figura 4.3, o

valor “D4” está sem nenhum valor, indicando que o olho examinado é o esquerdo.

Page 34: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

33

Figura 4.3: Tela do programa mostrando a entrada D4 em nível baixo.

4.3 Teste com o Software do Ceratômetro

O último teste realizado foi para verificar se o programa do Ceratômetro adaptado para Lâmpada de

Fenda, desenvolvido no nosso laboratório [2] estava recebendo os dados do sensor, com comunicação pela

porta paralela, e funcionando como o esperado.

Figura 4.4: O programa do ceratômetro detectando o olho direito.

As figuras 4.4 e 4.5 apresentam duas telas do programa desenvolvido no Laboratório de

Instrumentação Oftálmica – EESC/USP [2] onde podemos observar as indicações dos olhos direito e

esquerdo dos pacientes submetidos ao exame clínico.

Page 35: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

34

Figura 4.5: O programa do ceratômetro detectando o olho esquerdo.

4.4 Teste do Circuito com o Kit da Rabbit

Uma vez tendo conectado os fios ao kit da Rabbit, precisou-se testar de alguma maneira se o circuito

estaria realmente funcionando como esperado. Utilizou-se uma técnica mais rápida para verificar o seu

funcionamento: foi tirada uma foto através de um celular (ou qualquer câmera do tipo CCD ou CMOS de

segurança teria este mesmo efeito, pois posseum sensibilidade no infravermelho), o que possibilitou verificar

que o LED estava funcionando, e deste modo o circuito estava funcionando corretamente, sem precisar de

um multímetro para verificação. A imagem fotografada com o LED aceso pode ser vista na figura 4.6.

Figura 4.6: LED indicando a comunicação ok com o Kit

Page 36: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

35

4.5 Teste de Comunicação do Kit com o Dongle

Para testar a comunicação entre o Kit e o notebook equipado com um dongle Bluetooth, utilizou-se o

programa Hyper Terminal do Windows, que é utilizado para monitorar as portas seriais e paralela, por

exemplo.

Fazendo-se as configurações necessárias conforme o manual do kit [25], verificou-se com sucesso

que a comunicação entre os dispositivos estava sendo executada como esperado, o qual se pode comprovar

através da figura abaixo:

Figura 4.7: Tela do Hyper Terminal do Windows com os dados transmitidos

4.6 Teste com os Softwares Desenvolvido

Com os dispositivos em funcionamento, foram realizados testes com os softwares desenvolvidos em

Java e Delphi.

Primeiramente, utilizou-se o programa em Java para fazer os testes, rodando o programa no prompt

de comando a seguinte linha de comando na pasta onde se encontrava o programa:

java -classpath comm.jar;. ReceiveSerialComm

Page 37: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

36

O teste bem sucedido levou ao segundo programa, desenvolvido em Delphi, que também foi

executado com sucesso como mostra a figura 3.10.

Todos estes testes foram executados com um notebook equipado com um dongle Bluetooth, sendo

que o notebook não será utilizado para o sistema final, foi necessário executar os mesmos testes no

minicomputador da Oqo, o qual se pode conferir no próximo tópico.

4.7 Teste com o minicomputador OQO

Da mesma como procedido nos testes com o dongle Bluetooth em conjunto com o notebook,

realizou-se os mesmos testes para o minicomputador da Oqo, e da mesma forma que os anteriores, os testes

foram bem sucedidos.

Figura 4.8: Minicomputador da Oqo utilizado no experimento. Fonte: www.oqo.com

Page 38: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

37

5 Discussões e Conclusões

O Circuito foi desenvolvido e implementado no Ceratômetro em Lâmpada de Fenda desenvolvido no

LIO, como mostrado.

Como o circuito precisa de pelo menos 4,5 V para que ele funcione, e os testes indicaram um valor

de no máximo 1,42 V de ruídos externos são recebidos, concluímos então, que, praticamente nenhum tipo de

fonte de luz ambiente irá influenciar no funcionamento do sensor, a menos que haja uma fonte de luz

diretamente incidente no mesmo, que é uma situação irreal de um consultório oftalmológico padrão.

O sensor foi acoplado à base da Lâmpada de Fenda e a detecção dos olhos pode ser feita mesmo em

ambientes com luz ambiente, não havendo a necessidade de se estar realizando o exame em uma sala escura.

Desta forma, foi desenvolvido um novo e relativamente simples sensor para identificação de olho,

diferentemente dos existentes no mercado.

Com relação à parte sem fio, estudou-se a fundo o kit de desenvolvimento, verificando e utilizando

as funcionalidades do microprocessador e também do módulo Bluetooth, e implementaram-se os softwares

necessários para realizar a comunicação com um computador com o objetivo de eliminar os fios.

Depois de utilizar o kit de desenvolvimento para a implementação do circuito para estudo, mesmo

sendo um ótimo instrumento para o aprendizado, ele não é indicado para o projeto final. Assim sendo, um

projeto futuro seria a busca de um chip Bluetooth que possa ser acoplado ao circuito, permitindo assim uma

miniaturização do mesmo.

Apesar de ser transmitido apenas um bit, um fator contrário a implementação e estudo da tecnologia

ZigBee e outros dispositivos de rádio freqüência neste trabalho se deu ao fato de que a grande maioria dos

computadores disponíveis no mercado não possuem um módulo ZigBee ou de rádio freqüência embarcados e

também há grande dificuldade de se encontrar dongles ZigBee no mercado, nos fez partir para a escolha do

Bluetooth como a melhor opção para esta aplicação como um todo, pois esta tecnologia já está há mais

tempo no mercado, isto é, já está consolidada e estruturada, permitindo encontrar dispositivos muito mais

facilmente do que os da tecnologia ZigBee e de outros dispositivos de rádio freqüência.

Outro fator favorável à escolha da tecnologia Bluetooth, se deve ao fato desta tecnologia certamente

será adotada em etapas futuras do projeto, como por exemplo, eliminar os fios da câmera que atualmente

utiliza cabos com conexão USB no minicomputador da Oqo. Além disso, o Bluetooth é um excelente recurso

para transmissão de dados sem fio em aplicações na área médica, sendo amplamente utilizado para este fim.

O sensor, parte do desenvolvimento de um equipamento totalmente nacional, é de fundamental

importância para a finalização de um protótipo para uso clínico. O projeto em questão foi financiado pela

FAPESP e ficou em uso no Hospital das Clínicas de Ribeirão Preto (situado na FMRP-USP) para que a

saúde pública seja beneficiada por nossas pesquisas. Esta é uma parceria que vem ocorrendo desde 1996,

entre a Profa. Dra. Liliane Ventura e o Prof. Dr. Sidney Júlio de Faria e Sousa da FMRP.

Page 39: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

38

6 Agradecimentos

O autor gostaria de agradecer primeiramente à Deus por permitir que estudasse numa instituição

pública de alto reconhecimento nacional e internacional, com recursos tecnológicos e humanos da mais alta

qualidade disponível.

Gostaria também de agradecer a meus pais por me darem esta oportunidade de estudar nesta

universidade e me manterem financeiramente e psicologicamente em todos estes anos de estudo longe de

minha cidade.

Agradeço também ao meu primo Rogério Esteves Salustiano, Me., que auxiliou no desenvolvimento

do software em Delphi, linguagem esta não completamente dominada pelo autor deste.

Não poderia esquecer também do apoio psicológico da inseparável namorada, Patrícia Gonzales, que

também foi fundamental para a conclusão deste trabalho e de tantos outros durante estes anos, apoiando

sempre nos momentos alegres e difíceis.

Finalmente agradeço à FAPESP e ao CNPq pelo suporte financeiro à pesquisa, bem como ao

Hospital das Clínicas de Ribeirão Preto pela cooperação.

Page 40: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

39

7 Anexos

7.1 Programa embarcado no kit

/************************************************************************** EyeDetector_Bluetooth.c Este programa lê a entrada digital vinda do sensor de olhos e envia a informação através do módulo Bluetooth eb506. Trabalho de Conclusão de Curso - 2008 César Henrique Salustiano Tomba Engenharia da Computação 2003 Universidade de São Paulo Escola de Engenharia de São Carlos Departamento de Engenharia Elétrica Laboratório de Instrumentação Oftálmica **************************************************************************/ #use a7eng_eb506.lib #use rcm33xx.lib #class auto #memmap xmem #define BAUD_RATE 9600L #define DS3 3 #define DS4 4 #define ON 1 #define OFF 0 fontInfo fi6x8; void main() auto int nCounter; auto int ent0, ent1; //inicializa a placa brdInit(); //inicializa o display de LCD dispInit(); //utiliza os valores de retorno ASCII típicos keypadDef(); //configurações do display de LCD glBackLight(1); glXFontInit(&fi6x8, 6, 8, 32, 127, Font6x8); glBlankScreen(); while (1) //fica em loop serFopen(BAUD_RATE); a7_serFeb506Init();

Page 41: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

40

/* Conecta ao dispositivo Bluetooth conforme o endereço especificado abaixo Este código se refere ao Dongle Bluetooth conectado ao notebook */ serFputs("con 00:11:F6:0B:78:BF\r"); a7_serFwaitForString("ACK\r", 0); /* Espera pela conexão ser estabelecida e muda para o modo de dados É necessário um delay de 300ms para que o módulo mude para o modo de dados */ while(!BitRdPortI(PDDR, 4)); BitWrPortI(PDDR, &PDDRShadow, 1, 5); a7_pauseMs(300); // após a conexão ser estabelecida, imprime na tela para confirmação printf("Connection established\n"); //entra em loop para a leitura da entrada for(nCounter = 0; nCounter < 100; nCounter++) // lê a entrada digital e poe o valor na variável ent0 = digIn(0); /* Para confirmar o recebimento da informação vinda do sensor, algumas funções foram utilizadas para verificar esta informação. As duas funções abaixo respectivamente, acende ou apaga o led DS3

conforme a entrada ent0 e mostra no LCD qual o olho está sendo identificado */ if (ent0) ledOut(DS3, ON); glPrintf (0, 0, &fi6x8, "Olho Esquerdo"); else ledOut(DS3, OFF); glPrintf (0, 0, &fi6x8, "Olho Direito"); /* Início do envio dos dados via Bluetooth através do Módulo eb506 */ serFputs("Comunicacao Bluetooth - TCC Cesar Tomba\r"); serFputs("Entrada: "); if (ent0) serFputs("1\r"); else serFputs("0\r"); a7_pauseMs(500); // fim do for // Verifica se todas as informações foram transmitidas e volta para o modo de comando while(serFwrFree() != FOUTBUFSIZE); BitWrPortI(PDDR, &PDDRShadow, 0, 5);

Page 42: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

41

a7_serFwaitForString("\r>", 0); // Disconecta do serviço remoto e fecha a conexão serial serFputs("dis\r"); a7_serFwaitForString("\r>", 0); serFclose(); //fim do while //fim do programa **********************************************************************

7.2 Programa em Java que lê a porta serial

/* * ReceiveSerialComm.java * * Este programa lê a porta Serial COM7, utilizada pelo Dongle Bluetooth para * receber os dados via Bluetooth. * Trabalho de Conclusão de Curso - 2008 * César Henrique Salustiano Tomba * Engenharia da Computação 2003 * * Universidade de São Paulo * Escola de Engenharia de São Carlos * Departamento de Engenharia Elétrica * Laboratório de Instrumentação Oftálmica */ //importa as bibliotecas necessárias para o programa import java.io.*; import javax.comm.*; public class ReceiveSerialComm extends Object public static void main(String[] args) try /* identifica a porta serial que o programa se comunica. Neste caso utilizamos a COM7 que é a

Default para o dongle bluetooth utilizado, mas poderíamos utilizar qualquer outra, conforme a necessidade e conforme o padrão do dongle e programa utilizado */

CommPortIdentifier portId = CommPortIdentifier.getPortIdentifier("COM7"); /* Abre a conexão serial padrão */

SerialPort serialPort = (SerialPort) portId.open("GenericSerialReader", 10000); /* Define os parâmetros de comunicação, como Baud Rate = 9600, Bits = 8, Stop Bits = 1, e sem

paridade */

Page 43: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

42

serialPort.setSerialPortParams(9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); /* Utiliza a classe InputStream para a leitura das informações vindas da porta serial */ InputStream input = serialPort.getInputStream(); /* Enquanto haver algo na entrada serial, continua no loop */ while (input.available() != -1) System.out.println(((char) input.read()) +"\n"); //imprime o caracter lido na porta serial /* fecha a comunicação serial*/ serialPort.close(); // trata a exceção, caso ocorra catch (Exception e) e.printStackTrace();

7.3 Programa em Delphi que lê a porta serial

************************************************************************* SerialTeste.pas Este programa lê a porta Serial COM7, utilizada pelo Dongle Bluetooth para receber os dados via Bluetooth. É mostrado em uma janela o dado enviado via Bluetooth conforme a codificação abaixo: "0" ==> Olho Direito "1" ==> Olho Esquerdo Trabalho de Conclusão de Curso - 2008 César Henrique Salustiano Tomba Engenharia da Computação 2003 Universidade de São Paulo Escola de Engenharia de São Carlos Departamento de Engenharia Elétrica Laboratório de Instrumentação Oftálmica ************************************************************************** módulo central unit SerialTeste; define o que vai ser exportado pela init interface imports utilizados no programa uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, SerialThread, StdCtrls, ExtCtrls;

Page 44: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

43

declaração dos types utilizados no programa Type define o nome da classe e de quem ela é herdada, entre parênteses TForm1 = class(TForm) Panel1: TPanel; procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private Private declarations public Public declarations end; declaração das variáveis utilizadas no programa var Form1: TForm1; SThread: TSerialThread; implementation método utilizada para criar o Form que mostrará a mensagem que diz qual o olho está sendo examinado procedure TForm1.FormCreate(Sender: TObject); begin SThread:=TSerialThread.Create(false, Form1.Panel1 ); SThread.Resume; end; fim do método método que termina a thread do Form procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin SThread.Terminate; end; fim do método end. fim do programa ************************************************************************** SerialThread.pas Início da SerialThread, utilizada no programa. *************************************************************************** módulo central unit SerialThread; define o que vai ser exportado pela init interface imports utilizados no programa uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, IdGlobal; type define o nome da classe e de quem ela é herdada, entre parênteses

Page 45: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

44

TSerialThread = class(TThread) private tipos visto por todas as classes public panel: TPanel; constructor Create( CreateSuspended: Boolean; p: TPanel ); reintroduce; métodos vistos apenas pela própria classe ou suas classes filhas protected procedure Execute; override; procedure Resume; reintroduce; procedure Suspend; reintroduce; procedure Terminate; reintroduce; end; declaração das variáveis utilizadas no programa var rb : word; readSt : boolean; seção que declara todas as funções e procedures utilizadas em nosso programa, utilizando quando necessário o arquivo port.dll, que nada mais é do que um arquivo de implementação do windows para comunicação com as portas seriais implementation Function OPENCOM(S: PCHAR):Integer; stdcall; external 'port.dll'; Procedure CLOSECOM; stdcall; external 'port.dll'; Procedure SENDBYTE(Value: WORD); stdcall; external 'port.dll'; Function READBYTE: WORD; stdcall; external 'port.dll'; construtor que é chamado assim que um objeto da classe é instanciado constructor TSerialThread.Create( CreateSuspended: boolean; p: TPanel ); begin panel := p; inherited Create( CreateSuspended ); end; fim do construtor procedure principal do programa, onde os dados são lidos e a mensagem Olho Esquerdo ou Olho Direito é mostrada conforme a entrada lida na porta serial do programa procedure TSerialThread.Execute; begin

OpenCom( 'COM7:9600,N,8,1' ); Define os parâmetros de comunicação, como Baud Rate = 9600, Bits = 8, Stop Bits = 1, e sem paridade

permanece em loop indefinidadmente while ( true ) do begin rb := READBYTE; lê o byte da porta serial if (rb <> 65535) then begin if ((Char (rb))='1' )then se o byte lido é o número 1 , temos o Olho Esquerdo panel.Caption:= 'Olho Esquerdo' ; imprime a mensagem no painel if ((Char (rb))='0' )then se o byte lido é o número 0 , temos o Olho Direito panel.Caption:= 'Olho Direito' ; imprime a mensagem no painel Sleep(1); end; fim do if end; fim do while end; fim do método

Page 46: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

45

procedure que retoma a conexão serial procedure TSerialThread.Resume; begin OpenCom( 'COM7:9600,N,8,1' ); define os parâmetros da conexão serial end; fim do método procedure que suspende a conexão serial procedure TSerialThread.Suspend; begin CloseCom; end; fim do método procedure que termina a conexão serial procedure TSerialThread.Terminate; begin CloseCom; end; fim do método end. fim do programa

Page 47: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

46

8 Referências Bibliográficas

[1] VENTURA, L.; MESSIAS, A.M.V.; SOUSA, S. J..F, COELHO, R.; Automated Keratometry at Low

Cost, IEEE - Engineering in Medicine & Biology Magazine, V19, n.5, p. 97-103, Set/Out 2000.

[2] VENTURA, L.; RIUL, C.; SOUSA, S.J.F.;DE GROOTE, J.J.; ROSA FILHO, A.B.; OLIVEIRA,

G.C.D.; Corneal astigmatism measuring module for slit lamps – Phys. Med. Biol. 51 (2006) 1–14.

[3] TASMAN, W., LEGER, E. : “The Slit Lamp” In: Clinical Ophthalmology, Ed.: T. D. Duane,

Philadelphia: v. 1. ch. 57 New York: Lippicott-Raven Publisher, 1995.

[4] VENTURA, L.; Equipamento de medidas de raios de curvatura da córnea humana – Tese de Livre-

docência. Escola de Engenharia de São Carlos – USP, Julho de 2007.

[5] SEDRA, A. S.; SMITH, K. C.; - Microeletrônica – 4ª Edição – Pearson Makron Books - São Paulo –

2000.

[6] MALVINO, A. P.; – Eletrônica – Volume 1 – 4ª Edição - Makron Books – São Paulo - 1995

[7] MARQUES, A. E. B.; - Dispositivos Semicondutores: Diodos e Transistores – 1ª Edição – Editora Érica

- 1996

[8] THOMAZINI, D. , ALBUQUERQUE, P. U. B. de, “Sensores Industriais – Fundamentos e Aplicações”

– Editora Érica – 2005

[9] STALLINGS, W. – Wireless Communications & Networks – Second Edition - Pearson - Prentice Hall,

EUA - 2005.

[10] Wi-fi Alliance - http://www.wi-fi.org/

Acesso em agosto de 2008;

[11]IEEE 802.11n Report - http://grouper.ieee.org/groups/802/11/Reports/tgn_update.htm

Acesso em agosto de 2008

[12] Super G Wireless Networking – http://www.super-g.com/

Acesso em agosto de 2008

Page 48: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

47

[13] KUROSE, J. F; ROSS, K. W. – “Redes de Computadores e a Internet – Uma Nova Abordagem” – 2003

– Editora Addison Wesley – São Paulo.

[14] Bluetooth Special Interest Group - https://www.bluetooth.org/

Acesso em Agosto de 2008;

[15] TENEMBAUM, A. S. – “Redes de Computadores” – Editora Campus – Rio de Janeiro - 2003.

[16] MILLER, M; – Descobrindo o Bluetooth- 1ª Edição – Editora Campus – Rio de Janeiro - 2001;

[17] FRANKLIN, C., LAYTON, J. – Como Funciona o Bluetooth – acesso em outubro de 2008.

http://eletronicos.hsw.uol.com.br/bluetooth.htm

[18] Bluetooth Specification Documents –

http://www.bluetooth.com/bluetooth/Technology/Building/Specifications/

Acesso em agosto de 2008

[19]A7Engineering EmbeddedBlue 506 User´s Manual

http://www.a7eng.com/products/embeddedblue/downloads/eb506UserManual.pdf - acesso em outubro de

2008;

[20] Eletronica.org - http://www2.eletronica.org/artigos/eletronica-digital

Acesso em agosto de 2008

[21] MONSIGNORE, F. – Sensoriamento de Ambiente Utilizando o Padrão ZigBee – Dissertação de

Mestrado – Departamento de Engenharia Elétrica – Escola de Engenharia de São Carlos – Universidade de

São Paulo – São Carlos – 2007

[22] ZAMAMI, A. C. – “Especificação da Metodologia de Comunicação no Controle de um manipulador

base livre flutuante” – Relatório Final de Iniciação científica – Laboratório de Sistemas Inteligentes – LASI

– SEL – EESC – USP – outubro de 2007

[23] ZigBee Alliance - http://www.ZigBee.org/

Acesso em agosto de 2008;

[24] ASTOLFI, V. F. - Comunicação entre Sistemas Embarcados utilizando Bluetooth – Monografia de

Conclusão de Curso – ICMC – USP – São Carlos – Maio de 2007;

Page 49: SENSOR INFRAVERMELHO DE OLHOS PARA … · 2.3 Sistemas de Comunicação Sem Fios ... 3.2.5 Desenvolvimento do Software em JAVA ... 7.2 Programa em Java que lê a porta serial

48

[25] RabbitCore RCM3360/RCM3370 User's Manual

www.rabbitsemiconductor.com/documentation/docs/manuals/RCM3360/UsersManual/RC3360UM.pdf

acesso em outubro de 2008;

[26] PEIKARI, C., FOGIE, S. – Maximum Wireless Security – 2005 – SAMS – EUA.

[27] MONTEBELLER, S. J. – Estudo sobre o emprego de dispositivos sem fios – wireless na automação do

ar condicionado e de outros sistemas prediais – Dissertação de Mestrado – Escola Politécnica –

Universidade de São Paulo – São Paulo - 2006