ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 ....

62
CENTRO UNIVERSITÁRIO POSITIVO NÚCLEO DE CIÊNCIAS EXATAS E TECNOLÓGICAS ENGENHARIA DA COMPUTAÇÃO ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE PROFUNDIDADE Eduardo Bittencourt Robin Monografia apresentada à disciplina de Projeto Final como requisito parcial à conclusão do Curso de Engenharia da Computação, orientada pelo Prof. Alessandro Zimmer. UNICENP/NCET Curitiba

Transcript of ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 ....

Page 1: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

CENTRO UNIVERSITÁRIO POSITIVO

NÚCLEO DE CIÊNCIAS EXATAS E TECNOLÓGICAS

ENGENHARIA DA COMPUTAÇÃO

ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE

PROFUNDIDADE

Eduardo Bittencourt Robin

Monografia apresentada à disciplina de Projeto Final como requisito parcial à conclusão

do Curso de Engenharia da Computação, orientada pelo Prof. Alessandro Zimmer.

UNICENP/NCET

Curitiba

Page 2: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

2

2007

TERMO DE APROVAÇÃO

Eduardo Bittencourt Robin

Ecobatimetro – Sistema para medição de profundidade.

Monografia aprovada como requisito parcial à conclusão do curso de Engenharia da Computação

do Centro Universitário Positivo, pela seguinte banca examinadora:

Prof. Alessandro Zimmer (orientador)

Prof. Marcelo Mikosz Gonçalves

Prof. Adriana Cursino Thomé

Curitiba, 5 de Novembro de 2007.

Page 3: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

3

AGRADECIMENTOS

Primeiramente agradeço a Deus por ter me dado à oportunidade de cursar uma faculdade e

chegar até onde eu cheguei.

Agradeço a meu professor orientador Alessandro Zimmer que me ajudou e me deu todo o apoio

necessário durante o desenvolvimento deste projeto.

A meus pais por terem se esforçado para que eu tenha as oportunidades que eles não tiveram.

A todos os meus familiares que me deram força e apoio.

A minha noiva que me agüentou por todo este período de dificuldades.

E a todos os professores da Engenharia da computação pelos conhecimentos compartilhados.

Page 4: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

4

RESUMO

Este projeto visa desenvolver um sistema completo para medições de profundidade, com uma

maior precisão facilitando assim a fase do desenho técnico ou realizar a verificação da

profundidade de um canal em um porto, por exemplo.

A idéia é que o profissional da área utilize o equipamento traçando todo o trajeto andando de

uma extremidade até a outra. No caso deste projeto o hardware será apresentado em uma

maquete retangular que simulará o ambiente com desníveis (retangular e sem a presença de

água), os sensores ultrasonicos serão movidos através de 2 eixos (x,y), que se moverão através

de toda a área retangular utilizando motores de passo. O movimento será dado através de duas

rotas pré-definias via software em que o usuário inicia o processo utilizando a rota que mais lhe

agrada.

Poderá também ser configurado via software a precisão na qual o sistema irá executar as

medidas, na precisão mais baixa está disponível a opção de gravar os pontos da medição na

memória no hardware.

Terminada a medição, ou quando uma medição salva é aberta, será disponibilizada ao usuário do

software a opção de representação dos pontos medidos em um gráfico em 3D.

Palavras chave:

Ultrasom, microcontrolador, batimetria

Page 5: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

5

Ecobatimetro - A kind of deep measurer

ABSTRACT

This project has the objective to develop a complete system for depth measurements, with a great

precision thus facilitating the technician drawing of this phase or making the verification in a sea

port depth for example.

The ideia will be the professional of this area uses the equipment for tracing the entire dimension

around the area, as some lines.

In the case of this project the hardware will be presented in a rectangular mockup that will

simulate the environment of a lake without the water, the ultrasonic sensors will be moved

through 2 axles (x, y), that they will move through all the rectangular area using the step motors.

The movement will be given through two daily routes before defined by the software where the

user initiates the process using the route that more pleases to it.

All the measured points will be stored in an external memory to the microcontroller and if case

the system will be connected witch the microcomputer, it will be shown in real time the graph of

the measurement current.

Finished the measurement, it´ll be resulted the points measured in a 3D grafh the representation

option to software user.

Key words:

Ultrasonic, microcontroler

Page 6: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

6

SUMÁRIO

LISTA DE FIGURAS

LISTA DE TABELAS

LISTA DE SIGLAS

LISTA DE SÍMBOLOS

Pág.

CAPÍTULO 1 - INTRODUÇÃO...............................................................................................13

CAPÍTULO 2 – FUNDAMENTAÇÃO TEÓRICA...................................................................15

2.1-Microcontrolador.............................................................................................................15

2.1.1-Unidade de Memória .................................................................................................15 2.1.2-Unidade Central de Processamento............................................................................16 2.1.3-Barramento................................................................................................................17 2.1.4-Unidade de Entrada e Saída .......................................................................................18 2.1.5-Microcontrolador PIC................................................................................................19

2.2-Memória..........................................................................................................................20

2.2.1 – Memória Rom.........................................................................................................20 2.2.2 - Memória utilizada no projeto. ..................................................................................21

2.3-Filtros..............................................................................................................................22

2.4-Transdutores....................................................................................................................23

2.5-Sensores ..........................................................................................................................23

2.5.1 - Sensores de Ultra-som:............................................................................................23

CAPÍTULO 3 – ESPECIFICAÇÃO DO PROJETO..................................................................26

3.1 – Especificação de hardware ............................................................................................26

3.2 – Especificação de Software.............................................................................................29

CAPÍTULO 4 – DESENVOLVIMENTO E IMPLEMENTAÇÃO............................................31

4.1 – Testes ...........................................................................................................................31

4.1.1 – Teste dos sensores...................................................................................................31 4.1.2 – Teste de comunicação serial e Unidade de controle.................................................31 4.1.3 – Teste da fonte de alimentação .................................................................................33

4.2 Projeto do Hardware ........................................................................................................33

4.2.1 Fonte de alimentação. ................................................................................................34 4.2.2 Drivers de Potencia....................................................................................................34 4.2.3 Unidade de Controle ..................................................................................................35 4.2.4 Kit Sonar ...................................................................................................................36

4.3 Projeto do Software .........................................................................................................37

Page 7: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

7

4.3.1 – Firmware ................................................................................................................37 4.3.1.1 Trechos de código do firmware............................................................................39

4.3.2 – Software .................................................................................................................44 4.3.2.1 Diagrama de Casos de Uso ..................................................................................44 4.3.2.2 Diagrama de UML...............................................................................................45 4.3.2.3 Interface ..............................................................................................................47 4.3.2.3 Trechos de código................................................................................................49

CAPÍTULO 5 – VALIDAÇÃO E RESULTADOS ...................................................................52

CAPÍTULO 6 – CONCLUSÃO................................................................................................57

CAPÍTULO 7 - REFERÊNCIAS BIBLIOGRÁFICAS .............................................................58

APÊNDICE A – CRONOGRAMA...........................................................................................60

APÊNDICE B – CUSTOS........................................................................................................61

Page 8: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

8

LISTA DE FIGURAS

Fig. 1.1 - Diagrama em Blocos do Sistema...................................................................................14

Fig. 2.1 – Funcionamento Simplificado da Memória do Microcontrolador..................................16

Fig. 2.2 - Funcionamento Simplificado do Processamento do Microcontrolador.........................16

Fig. 2.3 - Funcionamento Simplificado do Barramento do Microcontrolador.Fig........................17

Fig. 2.4 - Esquema de um Microcontrolador com os seus Elementos Básicos.............................18

Fig. 2.5 – Funcionamento de Sensores de Ultra-Som....................................................................24

Fig. 2.6 - Foto do Kit Sonar Utilizado...........................................................................................25

Fig. 3.1 - Diagrama em Blocos do Sistema...................................................................................26

Fig. 3.2 - Rotas Pré-definidas Via Software..................................................................................27

Fig 3.3 – Desenho do Protótipo.....................................................................................................28

Fig 3.4 – Diagrama de Estados do Firmware................................................................................29

Fig 3.5 – Diagrama de Blocos do Software...................................................................................30

Fig. 4.1 – Gráfico de Fesposta do Kit Sonar..................................................................................31

Fig. 4.2 – Programa para teste da serial.........................................................................................32

Fig. 4.3 – Visualização dos Dados da Serial..................................................................................32

Fig. 4.4 – Medição da fonte +12v..................................................................................................33

Fig. 4.5 – Medição da fonte +5v....................................................................................................33

Fig. 4.6 – Esquemático da Fonte 12v ............................................................................................34

Fig. 4.7 – Esquemático da Fonte 5v...............................................................................................34

Fig. 4.8 – Esquemático dos Drivers de Potência...........................................................................35

Fig. 4.9 – Esquemático da Unidade de Controle...........................................................................35

Fig. 4.10 – Esquemático da Memória............................................................................................36

Fig. 4.11 – Esquemático da Interface Serial..................................................................................36

Fig. 4.12 – Fluxograma do Firmware............................................................................................48

Fig. 4.13 – Diagrama de Casos de Uso..........................................................................................44

Fig. 4.14 – Diagrama UML da Classe Packet................................................................................45

Fig. 4.15 – Diagrama UML da Classe PortaSerial........................................................................45

Fig. 4.16 – Diagrama UML da Classe trdVaiOrigem....................................................................46

Fig. 4.17 – Diagrama UML da Classe trdColetaTotal...................................................................46

Fig. 4.18 – Diagrama UML da Classe tdrMedições......................................................................47

Fig. 4.19 – Tela Principal do EcoView..........................................................................................48

Fig. 4.20 – Tela de Configuração da Serial...................................................................................59

Fig. 5.1 – Foto do Protótipo (Vista Frontal)..................................................................................52

Fig. 5.2 – Foto do Protótipo (Vista de cima).................................................................................52

Page 9: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

9

Fig. 5.3 – Pontos Recém Medidos.................................................................................................53

Fig. 5.4 – Pontos Lidos da Memória..............................................................................................53

Fig. 5.5 – Gráfico 3D com 3200 Pontos........................................................................................54

Fig. 5.6 – Tela Principal................................................................................................................55

Fig. 5.7 – Visualização do Ruído no Gráfico................................................................................55

Page 10: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

10

LISTA DE TABELAS

Tabela 2.1 - Informações do Microcontrolador.................................................................... 20

Tabela 2.2 - Informações da Memória................................................................................. 21

Page 11: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

11

LISTA DE SIGLAS

NCET- Núcleo de Ciências Exatas e Tecnológicas

UNICENP – Centro Universitário Positivo

RAM - Random Access Memory

ROM - Read-Only Memory

CPU - Unidade Central de Processamento

TTL - Transistor-transistor logic

CMOS - Complementary metal-oxide-semiconductor

I/O - Input/Output

AD – Analógico/Digital

PROM - Programmable Read-Only Memory

EPROM - Electrically Programmable Read-Only Memory

EEPROM - Electrically Erasable Programmable Read-Only Memory

TOF - Time of flight

ECE - Escola de Engenharia

UFRGS - Universidade Federal do Rio Grande do Sul

Page 12: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

12

LISTA DE SÍMBOLOS

ΩΩΩΩ - ohm

Hz - hertz

v - volts

M - mega

K - kilo

dB - decibel

m - metro

mm - milimetro

p – pico

F - Faraday

Vp-p – volts pico a pico

Page 13: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

13

CAPÍTULO 1 - INTRODUÇÃO

A batimetria é a medição da profundidade e é expressa cartograficamente por curvas batimétricas

que unem pontos da mesma profundidade com eqüidistâncias verticais, à semelhança das curvas

de nível topográfico.

A intenção deste projeto é facilitar a visualização gráfica dos pontos medidos utilizando o

aparelho chamado ecobatimetro.

Para que as medições sejam realizadas com sucesso o ecobatimetro utiliza sensores de ultrasom,

para assim ser capaz de medir a distancia da superfície até o fundo do ambiente que está sendo

medido.

Duas grandes aplicações desse projeto são:

• Facilidade na fase do desenho técnico, pois o sistema já disponibilizará para o

profissional da área todos os pontos da medição com suas respectivas coordenadas.

• Realização da verificação da profundidade de um canal em um porto para prevenir que

um navio venha a encalhar no mesmo.

A compra ou até mesmo o aluguel de um aparelho similar a este possui um custo muito elevado,

por esse motivo foi desenvolvido este projeto que visa ser um produto com um custo inferior aos

que existem no mercado.

Page 14: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

14

A figura a seguir (Figura 1.1) mostra o diagrama em blocos do sistema.

Fig. 1.1 - Diagrama em Blocos do Sistema

Page 15: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

15

CAPÍTULO 2 – FUNDAMENTAÇÃO TEÓRICA

Neste capitulo são apresentados os principais temas utilizados no projeto.

• Microcontrolador;

• Memória;

• Filtros;

• Transdutores;

• Sensores.

2.1-Microcontrolador

Os microcontroladores são diferentes dos processadores, pois integram em um único CHIP: o

processador, uma memória RAM (dados), uma memória ROM (programa) e outros recursos.

2.1.1-Unidade de Memória

A memória é a parte do microcontrolador cuja função é guardar dados.

A maneira mais fácil de explicar é descrevê-la como uma grande prateleira cheia de gavetas. Se

supusermos que marcamos as gavetas de modo a elas não se confundirem umas com as outras,

então o seu conteúdo será facilmente acessível. Basta saber a designação da gaveta e o seu

conteúdo será conhecido. (MIKROE, 2007)

Page 16: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

16

Fig. 2.1 – Funcionamento Simplificado da Memória do Microcontrolador.

FONTE: adaptada de MIKROE (2007).

2.1.2-Unidade Central de Processamento

Adicionar vários locais de memória a um bloco específico pode-se ter a capacidade de

multiplicar, dividir, subtrair e mover o seus conteúdos de um local de memória para outro. Essa

parte é chamada "central processing unit" (CPU) ou Unidade Central de Processamento. Os

locais de memória nela contidos chamam-se registros.

Fig. 2.2 - Funcionamento Simplificado do Processamento do Microcontrolador.

FONTE: adaptada de MIKROE (2007).

Page 17: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

17

Os registros são, portanto, locais de memória cujo papel é ajudar a executar várias operações

matemáticas ou quaisquer outras operações com dados, quaisquer que sejam os locais em que

estes se encontrem.

2.1.3-Barramento

Este "caminho" designa-se por "bus". Fisicamente ele corresponde a um grupo de 8, 16 ou mais

fios.

Existem dois tipos de bus: bus de dados e de endereço. O número de linhas do primeiro depende

da quantidade de memória que desejamos endereçar e o número de linhas do outro depende da

largura da palavra de dados. O primeiro bus serve para transmitir endereços do CPU para a

memória e o segundo para ligar todos os blocos dentro do microcontrolador.

Fig. 2.3 - Funcionamento Simplificado do Barramento do Microcontrolador.

FONTE: adaptada de MIKROE (2007).

Page 18: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

18

2.1.4-Unidade de Entrada e Saída

Estas localizações que acabamos de adicionar, chamam-se "portas". Existem vários tipos de

portas: de entrada, de saída e de entrada/saída. Quando trabalhamos com portas, primeiro de tudo

é necessário escolher a porta com que queremos trabalhar e, em seguida, enviar ou receber dados

para ou dessa porta.

Fig. 2.4 - Esquema de um Microcontrolador com os seus Elementos Básicos

e Ligações Internas.

FONTE: adaptada de MIKROE (2007).

Page 19: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

19

Numa aplicação real, um microcontrolador, por si só, não é suficiente. Além dele, nós

necessitamos do programa que vai ser executado e de mais alguns elementos que constituirão

uma interface lógica para outros elementos.

2.1.5-Microcontrolador PIC

O PIC é um circuito integrado produzido pela Microchip Technology Inc. , que pertence a

categoria dos microcontroladores, ou seja, um componente integrado que em um único

dispositivo contem todos os circuitos necessários para realizar um completo sistema digital

programável. O microcontrolador PIC pode ser visto externamente como um circuito integrado

TTL ou CMOS normal, mas internamente dispõe de todos os dispositivos típicos de um sistema

microprocessado, ou seja: Uma CPU (Central Processor Unit ou Unidade de Processamento

Central) e sua finalidade é interpretar as instruções de programa; Uma memória PROM

(Programmable Read Only Memory ou Memória Programável Somente para Leitura) na qual ira

memorizar de maneira permanente as instruções do programa; Uma memória RAM (Random

Access Memory ou Memória de Acesso Aleatório) utilizada para memorizar as variáveis

utilizadas pelo programa; Uma serie de portas de I/O (entrada e saída) para controlar dispositivos

externos ou receber pulsos de sensores, chaves, etc.; Uma serie de dispositivos auxiliares ao

funcionamento, ou seja, gerador de clock, bus, contador, etc. O PIC esta disponível em uma

ampla gama de modelos para melhor adaptar-se as exigências de projetos específicos,

diferenciando-se pelo numero de portas de I/O e pelo espaço disponível para código. Uma

descrição detalhada da topologia do PIC está disponível no site da Microchip, onde conseguimos

encontrar grandes e variadas quantidades de informações técnicas, software de apoio, exemplos

de aplicações e atualizações disponíveis.

Na tabela abaixo (Tabela 2.1) obtem-se as informações do PIC utilizado.

Page 20: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

20

TABELA 2.1 - Informações do Microcontrolador

Part Number PIC18F4620

Arquitetura 8Bits

Memória de programação Flash

Espaço para código 64Kbytes

EEPROM interna 1Kbyte

Ram 3968Bytes

Pinos de I/O 36

Canais de AD 13

Timers 1-8Bit e 3-16Bits

Clock máximo 40Mhz

Oscilador Interno 8Mhz

Mínima tensão de alimentação 2v

Máxima tensão de alimentação 5.5v

Invólucro 40 pinos – socket DIP

FONTE: adaptada de MICROCHIP (2007).

2.2-Memória

As memórias são as responsáveis pelo armazenamento de dados e instruções em forma de sinais

digitais em computadores. Para que o processador possa executar suas tarefas, ele busca na

memória todas as informações necessárias ao processamento.

2.2.1 – Memória Rom

ROM (“Read-Only Memory”) como o nome diz é memória somente de leitura. Portanto, só

permite leitura, ou seja, suas informações são gravadas pelo fabricante uma única vez e não

podem ser alteradas ou apagadas depois, podendo apenas ser acessadas. Ou seja, seu conteúdo é

gravado de modo permanente.

Page 21: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

21

Existem alguns tipos básicos de memória ROM:

- PROM ("Programmable Read-Only Memory"): Tem sua gravação feita por aparelhos especiais

que trabalham através de uma reação física com elementos elétricos. Os dados gravados na

memória PROM não podem ser apagados ou alterados.

- EPROM ("Electrically Programmable Read-Only Memory"): Os dados gravados na memória

EPROM pode ser apagados pelo uso de radiação ultravioleta permitindo sua reutilização.

- EEPROM ("Electrically Erasable Programmable Read-Only Memory"): Tipo similar à

EPROM. Seu conteúdo pode ser apagado aplicando-se uma voltagem específica aos pinos de

programação. Portanto, pode ter seu conteúdo modificado eletricamente, mesmo quando já

estiver funcionando num circuito eletrônico.

- FlashROM: Memória flash semelhante às EEPROMs. São mais rápidas e de menor custo. É um

tipo de chip de memória para BIOS de computador que permite que esta seja atualizada através

de softwares apropriados.

2.2.2 - Memória utilizada no projeto.

No projeto será utilizada uma memória do tipo EEPROM do fabricante Microchip com as

seguintes características:

TABELA 2.2 - Informações da Memória

Part Number 25AA640

Tensão de operação 1.8v até 5.5v

Tamanho total 8Kbytes

Tamanho da página 32 bytes

Freqüência máxima de clock 1Mhz

Ciclos de escrita (ms) 5

Numero máximo de ciclos de escrita/leitura 1.000.000

Invólucro 8 pinos socket DIP

FONTE: adaptada de MICROCHIP (2007).

Page 22: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

22

2.3-Filtros

Filtros são circuitos eletrônicos que tem como finalidade limpar sinais retirando sinais ou ruídos

indesejados no sinal recebido.

Um Filtro pode ser:

• Um circuito de dois acessos chamado de quadripolo, podendo ser linear ou não linear,

concentrado ou distribuído, passivo ou ativo, invariante ou variante no tempo, capaz de

processar sinais elétricos analógicos ou digitais.

• Qualquer quadripolo linear, concentrado e invariante no tempo, capaz de produzir uma

resposta especificada para uma dada excitação.

• Mecanismos ou dispositivos que atuam como filtro de áudio ou instrumentos que

transmitem e absorvem sons seletivamente, são denominados filtros acústicos.

• Determinados dispositivos ópticos que absorvem, em geral seletivamente, radiação

luminosa.

• Dispositivos que além de componentes passivos, contém uma ou mais fontes de tensão

ou corrente dependentes.

• Filtro Butterworth: Filtro que tem função de transferência com característica plana em

baixas freqüências, queda acentuada a partir da freqüência de corte, caindo a zero na

freqüência infinita.

• Filtro Chebyshev: Filtro que apresenta uma característica de amplitude equiondulante na

faixa de passagem.

• Filtro Passa-Alta: Filtro elétrico ou eletrônico que permite a passagem de sinais de altas

freqüências, bloqueando sinais abaixo da freqüência de corte do filtro.

• Filtro Passa-Baixas: Filtro elétrico ou eletrônico que permite a passagem de sinais de

baixas freqüências, atenuando sinais acima da freqüência de corte do filtro.

• Filtro Passa-Faixa: Filtro elétrico ou eletrônico que só permite a passagem de sinais de

freqüências compreendidas dentro de certa faixa de freqüência.

• Filtro Rejeita-Faixa: Filtro elétrico ou eletrônico que rejeita sinais numa dada faixa de

freqüências e permite a passagem de todos os demais.

Page 23: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

23

2.4-Transdutores

Segundo Seippel um transdutor é um dispositivo que converte uma forma de energia ou

quantidade física em outra. (FONSECA)

Os transdutores dividem-se em dois subconjuntos, sensores fornecem informações de entradas

em nosso sistema a partir do mundo externo e atuadores que executam ações de saída para o

mundo externo.

2.5-Sensores

Para se poder automatizar um sistema de produção é necessário coletar informações sobre o

estado dos equipamentos, das peças, etc. Esta informação deve ser fornecida de alguma maneira

para o computador digital. Para tanto duas fases são necessárias: primeiro, a coleta da

informação através de sensores que convertam a informação de estado para um sinal elétrico, e

segundo, a conversão do sinal elétrico para um sinal digital compreensível pelos programas

manipuladores da informação.

O princípio de funcionamento de um sensor é relativamente simples: o valor de estado de uma

grandeza deve ser quantificado por alguma grandeza física, intensidade de luz, calor, som ou

posição, força, pressão ou velocidade. Uma variação da grandeza física provoca no sensor uma

variação do seu sinal elétrico de saída.

2.5.1 - Sensores de Ultra-som:

Usam um emissor de ultra-som, tipicamente, um cristal piezo-elétrico, e um receptor.

Uma onda de som ultra-sônica, acima de 20 kHz é emitida e refletida por um obstáculo, através

do cálculo do tempo de ida e volta é possível determinar a presença dos obstáculos e a sua

posição. Através do diagrama abaixo, pode-se verificar o funcionamento funcionalidade de

sensores deste tipo.

Page 24: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

24

Fig. 2.5 – Funcionamento de Sensores de Ultra-Som

FONTE: adaptada de ECE-UFRGS (2007).

Torna-se evidente que o sonar funciona como um temporizador, que começa a atuar quando a

onda sonora de alta freqüência é enviada, e mantém-se ativo até o eco da onda retornar ao

transdutor.

O tempo que o sinal leva para retornar denomina-se TOF, (Time of flight); e através dele pode-se

calcular a distância de um objeto.

A distância do alvo e dada por :

(1)

Sabe-se ainda que a velocidade do som á dependente da temperatura, o que leva a estabelecer

parâmetros como a temperatura do ambiente de prova.

Page 25: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

25

Neste projeto para realizar as medições será utilizado um kit fabricado pela TATO Equipamentos

Eletrônicos (Figura 2.6), que ao ser ligado em 5v já começa a realizar medição e disponibiliza ao

usuário um pulso em nível alto cuja duração é o tempo para som ir até o obstáculo e voltar, então

é necessário dividir este tempo por dois. A figura a seguir mostra uma foto do sensor utlizado.

Fig. 2.6 - Foto do Kit Sonar Utilizado

Page 26: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

26

CAPÍTULO 3 – ESPECIFICAÇÃO DO PROJETO

Neste capítulo é apresentado uma visão geral do projeto com seus principais componentes de

hardware e software.

3.1 – Especificação de hardware

Neste tópico é apresentada uma visão geral da parte de hardware do sistema que é composto por,

microcontrolador PIC18F4620, memória do tipo EEPROM, um kit sonar da TATO

Equipamentos Eletrônicos que será responsável pelas medidas do ambiente, 2 motores de passo

responsáveis pela simulação do movimento, o diagrama em blocos do sistema pode ser

visualizado abaixo (Figura 3.1).

Fig. 3.1 - Diagrama em Blocos do Sistema

O ecobatimetro tem por função realizar medições de profundidade em geral para os mais

variáveis fins, também disponibilizando através do software gráficos de perfil do ambiente

medido.

O hardware consiste basicamente na aquisição, processamento dos dados e comunicação com

um microcomputador através da porta serial utilizando RS232.

Page 27: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

27

Para a aquisição dos dados será utilizado o kit sonar da TATO Equipamentos Eletrônicos ligado

ao microcontrolador.

Nesse sistema é utilizado o microprocessador da Microchip (PIC18F4620), utilizando o kit de

gravação da Microchip ICD2, que possui o sistema de in circuit debug (debug em tempo real)

que facilitam o desenvolvimento. O PIC é programado em linguagem C através do Programa

MPLAP IDE e o compilador MCC18.

Para armazenamento dos pontos coletados será utilizando memória do tipo EEPROM da

Microchip ( 25AA640 ) externa ao PIC com o tamanho de 8Kb.

O hardware funciona da seguinte maneira: o usuário do software primeiramente manda o sensor

para a origem, após feito isso seleciona uma entre duas rotas pré-definidas mostradas na figura

abaixo (Figura 11), e clica em iniciar, feito isso o hardware irá realizar todas a medição do

perímetro sozinho, realizando uma medição com uma resolução configurável através do

software, essas resoluções são: Máxima no eixo x é de 2774dpi e mínima de 285dpi já no eixo y

a máxima é de 3439dpi e mínima de 690dpi. Enviando os dados da medição serialmente para o

software e ao mesmo tempo também irá gravar todos os pontos medidos com suas coordenadas e

profundidades em sua memória estando configurado na resolução mínima.

Fig. 3.2 - Rotas Pré-definidas Via Software

Para realizar a medida de um ponto o software realiza 8 (oito) medidas de um mesmo ponto

descartando os dois primeiros valores, o maior e o menor, com isso os outros 4 pontos restante é

tirado uma média, se não for ponto de nenhuma das extremidades o software se encarrega de

somar com os últimos 2 pontos e fazer assim uma média móvel, diminuindo assim a

possibilidade de erro.

Page 28: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

28

Para os sensores se movimentarem nos eixos X e Y serão utilizados dois motores de passo um

para cada eixo.

O protótipo é apresentado na Figura 3.3, tem o formato das arestas de um cubo de

aproximadamente 60x60x60cm (L x C x H). As arestas são de metal, e servem de fixação para o

carro que percorrerá todo o espaço. O meio utilizado é o ar, podendo assim, facilitar o

desenvolvimento e ter uma maior variedade de medidas visto que qualquer objeto pode servir de

obstáculo.

Fig 3.3 – Desenho do Protótipo.

Pelo fato de se tratar de um protótipo fica restrito que a distancia mínima para medição é de

25cm a partir de onde os sensores se encontram, tal restrição se deve ao fato de que a distancia

mínima que os sensores conseguem medir é de 20cm. Existem sensores cuja distancia mínima é

menor que 20cm porem seu custo é mais elevado.

Uma limitação física dos sensores utilizados é que a distancia máxima que eles conseguem medir

é de 2 metros.

Page 29: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

29

3.2 – Especificação de Software.

O software do projeto está dividido em duas partes: firmware e programa visualização

(EcoView). O firmware é responsável pela configuração do microcontrolador, fazendo

constantemente da distancia a deixando a pronta para ser senviada ao software quando for

solicitado, no diagrama de estados do firmware é apresentado na (Figura 3.4) podemos

vizualizar melhor como o firmware irá funcionar.

Toda a parte de código do firmware foi implementado em linguagem C utilizando os ambientes

Visual Studio 2003 e MPLAB, ambos utilizando o compilador para microprocessadores

Microchip MCC18.

O software de visualização tem como função mostrar para o usuário todas as opções de

configuração disponíveis e alem disso mostrar gráficos em 2D e 3D de uma medição, no

diagrama em blocos (Figura 3.5) podemos vizualizar melhor seu funcionamento.

Fig 3.4 – Diagrama de Estados do Firmware

Page 30: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

30

Fig 3.5 – Diagrama de Blocos do Software

Page 31: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

31

CAPÍTULO 4 – DESENVOLVIMENTO E IMPLEMENTAÇÃO

4.1 – Testes

Neste capítulo é apresentado todos os testes realizados com o sistema, divididos em alguns

itens.

4.1.1 – Teste dos sensores

Para testar o circuito dos sensores basta alimentar a placa do kit sonar com 5v e apontá-la para

um obstáculo a uma distancia de 25cm até 1.5mm e verificar com o osciloscópio, conectado ao

pino de saída, uma forma de onda como a mostrada na figura abaixo ( Figura 4.1).

Fig. 4.1 – Gráfico de Resposta do Kit Sonar

4.1.2 – Teste de comunicação serial e Unidade de controle

Para realizar o teste da unidade de controle e da comunicação serial, foi criado um firmware que

a cada 1 segundo replica um dado valor na serial, por exemplo, ao mandar o valor 0x31 na serial

através do programa criado para realizar os testes, o microprocessador fica repetindo esse valor

até que receba um novo valor, Com isso podemos concluir que alem da comunicação serial estar

funcionando o microprocessador está funcional.

A figura abaixo (Figura 4.2), mostra a tela do software criado para realizar os testes de serial.

Page 32: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

32

Fig. 4.2 – Programa para teste da serial

Para a visualização dos dados enviados e recebidos da porta serial foi utilizado o programa

AccessPort 1.31 como mostra a figura abaixo(Figura 4.3).

Fig. 4.3 – Visualização dos Dados da Serial.

Page 33: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

33

4.1.3 – Teste da fonte de alimentação

Para realizar o teste da fonte de alimentação do projeto foi utilizado um multímetro, a fonte

possui dois níveis de tensão +12 e +5v.

Fig. 4.4 – Medição da fonte +12v

Fig. 4.5 – Medição da fonte +5v

4.2 Projeto do Hardware

O hardware tem a função de executar todos os comandos solicitados pelo software e foi dividido

em quatro partes para um melhor intendimento.

Page 34: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

34

4.2.1 Fonte de alimentação.

A fonte de alimentação é dividida em duas uma para gerar os 12v (Figura 4.6) para a

alimentação dos motores e uma de 5v (Figura 4.7) para o restante do circuito.

Fig. 4.6 – Esquemático da Fonte 12v

Fig. 4.7 – Esquemático da Fonte 5v

4.2.2 Drivers de Potência

Para fazer o acionamento das bobinas dos motores é necessário a utlização de um driver de

potencia como mostra a figura abaixo (Figura 4.8).

Page 35: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

35

Fig. 4.8 – Esquemático dos Drivers de Potência

4.2.3 Unidade de Controle

É na unidade de controle é a principal placa do hardware pois nela se encontra o

microprocessador (Figura 4.9), a memória (Figura 4.10) e a interface serial (Figura 4.11).

Fig. 4.9 – Esquemático da Unidade de Controle

Page 36: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

36

Fig. 4.10 – Esquemático da Memória

Fig. 4.11 – Esquemático da Interface Serial

4.2.4 Kit Sonar

É através desse módulo que as medidas são feitas pode se tratar de um módulo comprado a parte

não possuímos o esquemático.

Page 37: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

37

4.3 Projeto do Software

Neste ítem é mostrado como foi desenvolvido toda a parte relaciona aos softwares do projeto.

4.3.1 – Firmware

O firmware implementado no projeto segue a seqüência lógica mostrada fluxograma e no

diagrama de estados (Figura 4.12) e do diagrama de estados (Figura 3.4). Primeiramente é

estabelecida uma conexão serial com velocidade de 19.200bits/s com o software.

Após ser conectado com o microcomputador o hardware fica aguardando o que o software envie

os comandos a serem executados.

Page 38: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

38

Fig. 4.12 – Fluxograma do Firmware

Page 39: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

39

4.3.1.1 Trechos de código do firmware

Abaixo segue o código da interrupção do Timer1 que é onde se conta o tempo em que o sinal

demorou para ir até o obstáculo e voltar, em seguida segue o código da interrupção INT0 onde o

Timer é ligado, desligado e o tempo total é mandando para o software.

//**************************************

//* INTERRUPCAO DO TIMER1 20us*

//**************************************

// Foi este flag um dos

// causadores da interrupção?

// A interrupção ainda esta habilitada?

if ((PIR1bits.TMR1IF != 0) && (PIE1bits.TMR1IE != 0))

// Limpa o flag causador da interrupção

PIR1bits.TMR1IF = 0;

CPL_BIT_PORTB(4);

gwTimerTick = gwTimerTick + 1;

// Recarrega o timer

TIMER1_RELOAD();

//*********************************************

//* INTERRUPCAO INT0 *

//*********************************************

// Foi este flag um dos

// causadores da interrupção?

// A interrupção ainda esta habilitada?

if ((INTCONbits.INT0IF != 0) && (INTCONbits.INT0IE != 0))

if(INTCON2bits.INTEDG0 == 1)

gwTimerTick = 0;

TIMER1_START();

INTCON2bits.INTEDG0 = 0;

else

Page 40: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

40

TIMER1_STOP();

bytIgnoraInt = 0;

INTCON2bits.INTEDG0 = 1;

CLR_BIT_PORTB(5);

MandaMedida(gwTimerTick);

// Limpa o flag causador da interrupção

INTCONbits.INT0IF = 0;

Outro trecho importante do código é a interpretação e tratamento dos pacotes recebidos via

serial.

/**

* Rotina que processa do dado recebido e coloca no pacote.

*

* @author Robin.

*/

void PacoteRecebido(BYTE bytDado)

// Verifica qual o estado inicial da maquina

switch( mbytEstadoAtual )

// Caso seja WAIT_AA

case WAIT_AA:

// Verifica se o dado que chegou é 0xAA

/////////////////////////////////////////

if(bytDado==0xAA)

// É 0xAA, então indica que o proximo

//estado é WAIT_55

mbytEstadoAtual = (BYTE)WAIT_55;

// Armazena o dado recebido

PacotaoRecebido.bytIdentificador1 = 0xAA;

// Incrementa o Checksum

mbytCheckSum += bytDado;

else

// Não é 0xAA, então reseta a serial.

Page 41: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

41

ResetSerial();

break;

// Caso seja WAIT_55

case WAIT_55:

// Verifica se o dado que chegou é 0xAA

/////////////////////////////////////////

if(bytDado==0x55)

// É 0xAA, então indica que o próximo

//estado é WAIT_OPCODE

mbytEstadoAtual = (BYTE)WAIT_OPCODE;

// Armazena o dado recebido

PacotaoRecebido.bytIdentificador2 = 0x55;

// Incrementa o Checksum

mbytCheckSum += bytDado;

else

// Não é 0x55, então reseta a serial.

ResetSerial();

break;

// Caso seja WAIT_OPCODE

case WAIT_OPCODE:

//Indica que o próximo estado é WAIT_PARAM1

mbytEstadoAtual = (BYTE)WAIT_PARAM1;

// Armazena o dado recebido

PacotaoRecebido.bytOpcode = bytDado;

// Incrementa o Checksum

mbytCheckSum += bytDado;

break;

// Caso seja WAIT_PARAM1

case WAIT_PARAM1:

//Indica que o próximo estado é WAIT_PARAM2

mbytEstadoAtual = (BYTE)WAIT_PARAM2;

Page 42: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

42

// Armazena o dado recebido

PacotaoRecebido.bytParam1 = bytDado;

// Incrementa o Checksum

mbytCheckSum += bytDado;

break;

// Caso seja WAIT_PARAM2

case WAIT_PARAM2:

//Indica que o próximo estado é WAIT_PARAM3

mbytEstadoAtual = (BYTE)WAIT_PARAM3;

// Armazena o dado recebido

PacotaoRecebido.bytParam2 = bytDado;

// Incrementa o Checksum

mbytCheckSum += bytDado;

break;

// Caso seja WAIT_PARAM3

case WAIT_PARAM3:

//Indica que o próximo estado é WAIT_PARAM4

mbytEstadoAtual = (BYTE)WAIT_PARAM4;

// Armazena o dado recebido

PacotaoRecebido.bytParam3 = bytDado;

// Incrementa o Checksum

mbytCheckSum += bytDado;

break;

// Caso seja WAIT_PARAM4

case WAIT_PARAM4:

//Indica que o próximo estado é WAIT_CHECKSUM

mbytEstadoAtual = (BYTE)WAIT_CHECKSUM;

// Armazena o dado recebido

PacotaoRecebido.bytParam4 = bytDado;

// Incrementa o Checksum

mbytCheckSum += bytDado;

break;

// Caso seja WAIT_CHECKSUM

case WAIT_CHECKSUM:

Page 43: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

43

// Verifica se o dado recebido como checksum

// é igual ao calculado.

//////////////////////////////////////////////

if(bytDado == mbytCheckSum)

// É igual, muda o estado para WAIT_AA

mbytEstadoAtual = (BYTE)WAIT_AA;

// Armazena o dado recebido

PacotaoRecebido.bytChecksum = bytDado;

// Zera o checksum

mbytCheckSum = 0;

// MANDA O DADO PARA TRATRAMENTO

TrataPacotao();

else

//O checksum não bateu.

/////////////////////////

// Reseta a serial

ResetSerial();

//Envia resposta dizendo que não

//validou o pacote

SendPacket(RESP_NOK,NULL,0x00);

break;

// Caso qualquer outro dado

default:

// Erro, então reseta a serial.

ResetSerial();

Page 44: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

44

4.3.2 – Software

Nesse sistema a linguagem de programação escolhida é a linguagem C++ utilizando os softwares

Borland C++ Builder 6.0, devido as sua grande eficiência, praticidade e funcionalidade.

Também foi escolhido o Gnuplot que foi usado devido ao fato da possibilidade de criação do

desenho do ambiente medido em 3D, pelo fato de sua linguagem ser simples e eficaz alem de

não exigir muito do microcomputador..

A lógica usada do software é mostrada nos diagramas mostrados a seguir.

4.3.2.1 Diagrama de Casos de Uso

O diagrama de casos de uso (Figura 4.13) descreve a funcionalidade proposta do sistema.

Fig. 4.13 – Diagrama de Casos de Uso

Page 45: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

45

4.3.2.2 Diagrama de UML

Diagramas UML (Figura 4.14, Figura 4.15, Figura 4.16, Figura 4.17, Figura 4.18) mostram a

estrutura das principais classes do software.

Fig. 4.14 – Diagrama UML da Classe Packet

Fig. 4.15 – Diagrama UML da Classe PortaSerial

Page 46: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

46

Fig. 4.16 – Diagrama UML da Classe trdVaiOrigem

Fig. 4.17 – Diagrama UML da Classe trdColetaTotal

Page 47: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

47

Fig. 4.18 – Diagrama UML da Classe tdrMedições

4.3.2.3 Interface

A Figura 4.19 mostra a tela principal do EcoView, é nela onde todas as configurações e ações

do usuário serão feitas.

Page 48: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

48

Fig. 4.19 – Tela Principal do EcoView

A Figura 4.20, mostra a tela de configuração da serial onde o usuário pode escolher dois modos,

o automático onde o próprio software varre todas as portas seriais em busca do hardware ou no

modo manual onde o usuário seleciona a porta serial manualmente para detecção do hardware.

Page 49: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

49

Fig. 4.20 – Tela de Configuração da Serial

4.3.2.3 Trechos de código

Um trecho importante do código utilizado no software é onde ele pega o vetor com as medidas

de certo ponto e calcula sua média como podemos visualizar a seguir.

void trdMedicao::CalcMedia(void)

try

double MaiorPonto = 0;

int MaiorPontoIndex = 0;

double MenorPonto = 99999;

int MenorPontoIndex = 0;

double MediaMedidas = 0;

Page 50: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

50

for(int Cont = 0; Cont <6; Cont++)

if(Distancia[Cont]>MaiorPonto)

MaiorPonto = Distancia[Cont];

MaiorPontoIndex = Cont;

if(Distancia[Cont]<MenorPonto)

MenorPonto = Distancia[Cont];

MenorPontoIndex = Cont;

for(int Cont = 0; Cont <6; Cont++)

if((Cont!=MaiorPontoIndex)&&(Cont!=MenorPontoIndex))

MediaMedidas += Distancia[Cont];

if((this->Umtimos2Pontos[0]!= 0) && (this->Umtimos2Pontos[1]!= 0))

MediaMedidas += (this->Umtimos2Pontos[0]*(-1));

MediaMedidas += (this->Umtimos2Pontos[1]*(-1));

MediaMedidas = MediaMedidas/6;

else

MediaMedidas = MediaMedidas/4;

this->Umtimos2Pontos[0] = this->Umtimos2Pontos[1];

this->Umtimos2Pontos[1] = MediaMedidas*(-1);

this->Profundidade = MediaMedidas*(-1);

catch(Exception *ex)

ShowMessage(ex->Message);

Page 51: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

51

Outro trecho interessante é o código utilizado pelo GnuPlot para gerar os gráficos em 3D:

# Visualização de Pontos no espaço 3D

#

# Eduardo Robin - Eng da Computação.

#

# PF - 2007 - Ecobatimetro.

#

# Aplicativo: Visualisação da area medida.

#

reset

set grid

set xtics 5

set ytics 5

set ztics 10

set title "Superfície medida com o EcoView"

set xlabel "X"

set ylabel "Y"

set zlabel "Z(m)"

set hidden3d

set view 40,30,1,1

set data style points

set dgrid3d 30,30,2

splot '3d.dat' using ($1):($2):($3) t"" with lines 5

pause -1 "Fechar?"

#

Page 52: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

52

CAPÍTULO 5 – VALIDAÇÃO E RESULTADOS

Apesar da forma artesanal de como foi feito o protótipo e a pouca sensibilidade dos sensores de

ultrasom, os resultados foram bastante satisfatórios na Figura 5.1 vemos uma foto do protótipo

vista de frente e na Figura 5.2 uma foto do protótipo vista de cima.

Fig. 5.1 – Foto do Protótipo (Vista Frontal)

Fig. 5.2 – Foto do Protótipo (Vista de cima)

Page 53: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

53

O sistema mostrou-se também muito estável quanto a gravação dos dados na memória a pequena

diferença que se encontra entre um dado recém medido e o mesmo gravado na memória se da ao

fato de que quem manda gravar o dado na memória é o software depois da média e como no

firmware não se trabalha com números reais, após o calculo da média o numero é novamente

convertido a tempo para ai ser gravado, podemos ver essa pequena diferença nas figuras

abaixo(Figura 5.3 e Figura 5.4).

Fig. 5.3 – Pontos Recém Medidos

Fig. 5.4 – Pontos Lidos da Memória

A criação de gráficos em 3D utilizando o software GnuPlot se mostrou muito confiável pois

alem de fácil de trabalhar é extremamente rápida ao gerar gráficos com muitos pontos como

podemos ver na figura abaixo (Figura 5.5) possui 3200 pontos e demorou menos de 1s para ser

gerado.

Page 54: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

54

Fig. 5.5 – Gráfico 3D com 3200 Pontos

A interface do software EcoView acabou ficando bem fácil e amigável com o usuário final, e

cumpri seu objetivo principal que é auxiliar na visualização gráfica da área medida com mostra a

figura abaixo (Figura 5.6).

Page 55: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

55

Fig. 5.6 – Tela Principal

Após realizar algumas medições com o sistema ele se mostrou pouco instável ao chegar nas

bordas da área delimitada pelo protótipo gerando nessas áreas muito ruído e utilizando o kit do

sonar não é possível elimina-los pois não se tem controle algum sobre o sinal. Na figura abaixo

(Figura 5.7) podemos verificar esses ruídos.

Fig. 5.7 – Visualização do Ruído no Gráfico

Page 56: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

56

Um grande desafio realizado na criação deste projeto foi a utilização de uma memória EEPROM

com comunicação SPI visto que não chegamos a trabalhar com essa arquitetura no decorrer do

curso.

Page 57: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

57

CAPÍTULO 6 – CONCLUSÃO

O sistema como um todo se mostrou muito eficiente e cumpriu tudo o que foi proposto, a

montagem e instalação ficaram muito acessíveis a um usuário com pouca habilidade em frente a

um computador.

A utilização do software ficou muito amigável e acaba gerando pouco processamento do

computador não deixando ele lento enquanto o software é executado.

O sistema não foi testado em um ambiente com a presença de água pelo fato dos sensores

utilizados não serem capas de medir na água.

Infelizmente as medições executadas com o sistema continham alguns ruídos pelo fato do kit

sonar não ser de muita precisão, uma solução para esse problema seria a implementação de um

kit sonar com sensores de ultrasom mais sensíveis e com uma precisão maior.

Outro tópico a ser tratado em trabalhos futuros é criação de uma interface que exporte arquivos

para o AutoCad para que os pontos sejam exportados diretamente para ele facilitando a fase do

desenho.

Por final conclui-se que ao longo do ano na pesquisa e implementação deste projeto, foi

utilizando varias técnicas aprendidas no decorrer do curso como, por exemplo, a criação de

fluxogramas, diagramas em bloco, algoritmos, programações em C, C++ e muitas outras mas a

principal e que acaba sendo mais usada é a saber correr atrás para descobrir novos recursos e

métodos para melhorar o que se está fazendo.

Page 58: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

58

CAPÍTULO 7 - REFERÊNCIAS BIBLIOGRÁFICAS

Memória EEPRON 25AA640. Disponível em

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocNa

me=en010848. Acesso em: Abril 2007.

Microcontrolador PIC18F4620. Disponível em

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocNa

me=en010304. Acesso em: Abril 2007.

Introdução aos Microcontroladores. Disponível em

http://www.mikroe.com/pt/product/books/picbook/capitulo1.htm. Acesso em: Junho 2007

Sensores Ultrasônicos. Disponível em

http://search.murata.co.jp/Ceramy/CatsearchAction.do?LBCD=L0560&sCategory=secondary&s

Lang=en&UBNM=Sensors&UBCD=U0110. Acesso em: Abril 2007.

Sensores de UltraSom. Disponível em

http://www.ece.ufrgs.br/~fetter/robnav/sensor.html.Acesso em: Junho 2007

Sensores, Transdutores e Detectores. Disponível em

http://www2.dem.inpe.br/ijar/SenTrand3.doc. Acesso em: Abril 2007.

Ultrassonic Range Finder. Disponivel em

http://www.web-ee.com/Schematics/Ultrasonic%20Range%20Finder/Ultrasonic.htm. Acesso

em: Junho 2007.

Introdução aos microcontroladores PIC. Disponivel em

http://paginas.terra.com.br/educacao/mdmau/Microcontrolador%20PIC16F84.pdf. Acesso em:

Abril 2007.

Page 59: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

59

Sonar, medindo distancia com o Basic Step. Disponivel em

http://www.tato.ind.br/files/sonar.pdf. Acesso em: Novembro 2007.

Documentação sobre Gnuplot. Disponivel em http://www.gnuplot.info/documentation.html.

Acesso em: Novembro 2007.

Page 60: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

60

APÊNDICE A – CRONOGRAMA

Page 61: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

61

APÊNDICE B – CUSTOS

Componente Valor Unitário Quantidade Valor Total

Placa padrão para corroer 10x30cm R$ 2,50 01 R$ 2,50

Microprocessador PIC18F4620 R$ 35,80 01 R$ 35,80

Kit Sonar R$ 64,00 01 R$ 20,00

Trafo 12+12 R$ 18,50 01 R$ 18,50

Componentes diversos R$ 25,00 01 R$ 25,00

Mecânica R$ 70,00 01 R$ 50,00

Compilador MCC18 R$ 990,00 01 R$ 990,00

Borland C++ Builder R$ 1.600,00 01 R$ 1.600,00

ICD2-BR R$ 250,00 01 R$ 250,00

Hora de trabalho R$ 10,00 650 R$ 6.500,00

TOTAL R$ 9.535,80

Page 62: ECOBATIMETRO – SISTEMA PARA MEDIÇÃO DE … · Tabela 2.2 - Informações da Memória.....21 . 11 LISTA DE SIGLAS NCET- Núcleo de Ciências Exatas e Tecnológicas UNICENP –

62

APÊNDICE C – ARTIGO