96
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO ESTAÇÃO DE MEDIÇÃO METEOROLOGICA COM ARDUINO por Anderson Ricardo Bagnara Itajaí (SC), novembro de 2013

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

Embed Size (px)

Citation preview

Page 1: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

UNIVERSIDADE DO VALE DO ITAJAÍ

CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

ESTAÇÃO DE MEDIÇÃO METEOROLOGICA COM ARDUINO

por

Anderson Ricardo Bagnara

Itajaí (SC), novembro de 2013

Page 2: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

UNIVERSIDADE DO VALE DO ITAJAÍ

CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

ESTAÇÃO DE MEDIÇÃO METEOROLOGICA COM ARDUINO

Área de Sistemas Embarcados

por

Anderson Ricardo Bagnara

Relatório apresentado à Banca Examinadora do

Trabalho Técnico-científico de Conclusão do

Curso de Ciência da Computação para análise e

aprovação.

Orientador: Adhemar Maria Do Valle Filho, Dr.

Itajaí (SC), novembro de 2013

Page 3: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

Dedico à minha família e a minha namorada. Eles sem sombras de dúvidas são figuras

fundamentais na minha vida.

Page 4: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

AGRADECIMENTOS

A Deus, pelo dom da vida, pois sem ele nada seria possível.

Aos meus pais Aldoir e Adíles, pela educação, zelo, amor e confiança depositado em

mim. Este apoio fui fundamental para superar todos os momentos de dificuldades.

Ao meu irmão pela atenção e ideias prestadas durante todo o desenvolvimento do

trabalho possibilitando soluções mais rápidas a alguns problemas encontrados.

A minha companheira Ariane, que sempre esteve ao meu lado prestando incentivo,

amor, carinho e paciência possibilitando minha concentração no trabalho durante todo este

período de dedicação aos meus estudos.

Ao professor Adhemar, orientador deste trabalho, que prestou todo o apoio necessário

para o bom desenvolvimento buscando prontamente por soluções para cada problema

identificado, além de também colaborar com incentivos e confiança na foi depositada em

mim.

A banca avaliadora, que além de oferecer oportunidades de melhoria para o trabalho

apresentou interesse e incentivo durante todo o desenvolvimento.

Aos membros do laboratório de climatologia da Univali, por fornecer dados climáticos

de determinados períodos para que pudessem ser comparados com os dados resultantes da

solução proposta.

Ao professor Paulo Valim, por prestar apoio fornecendo de forma de empréstimo o

dispositivo de controle de tempo para integrar ao projeto e possibilitando a continuidade do

trabalho na fase de desenvolvimento.

A todos os demais que colaboraram de forma direta ou indiretamente, desde o

desenvolvimento do material teórico a instalação e testes da solução desenvolvida.

A todos, o meu muito obrigado.

Page 5: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

O futuro pertence àqueles que acreditam na beleza de seus sonhos.

[Elleanor Roosevelt].

Page 6: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

RESUMO

BAGNARA, Anderson Ricardo.Estação de medição meteorológica com Arduino. Itajaí,

2013. 97 folhas. Trabalho Técnico-científico de Conclusão de Curso (Graduação em Ciência

da Computação) – Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale

do Itajaí, Itajaí, 2013.

Os avanços da tecnologia permitem à sociedade usufruir de facilidades para melhorar o

conforto e qualidade de vida. Esta evolução vem sendo cobiçada desde os tempos mais

remotos, sempre buscando soluções que possam automatizar atividades corriqueiras. Desta

forma o homem tenta aproximar ao seu cotidiano todos os recursos e facilidades que possam

lhe trazer benefícios como, por exemplo, a possibilidade de monitorar as condições

climáticas. Esta possibilidade lhe proporciona conhecer melhor as condições do tempo e então

tirar proveito deste conhecimento para, por exemplo, escolher a data apropriada para plantar

uma lavoura ou até mesmo se precaver ao sair de casa para não ser surpreendido pelas ações

da natureza. Para que isso seja possível é necessário medir os dados climáticos através de uma

estação de coleta. Estas estações estão atualmente passando por um processo de modernização

com a evolução da tecnologia. Este trabalho fez a integração de vários dispositivos que

compõe uma estação meteorológica, coletou estas informações e enviou via rede os dados

para análise e consulta. Com este projeto é possível disponibilizar informações climáticas

referentes ao local em que a estação foi instalada para que a comunidade deste local possa ter

acesso a estas informações.

Palavras-chave: Arduino. Automação. Sensores.

Page 7: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

ABSTRACT

Advances in technology allow people to take advantage of innovations to improve the comfort

and quality of life. This evolution has been coveted since ancient times, always searching for

solutions that can automate routine activities. Thus the man tries to approach your daily

routine will all the resources and facilities that can bring benefits such as the ability to

monitor weather conditions. This option gives you better know the conditions of time and then

take advantage of this knowledge, for example, choose the appropriate time to plant a crop or

even avoid leaving home not to be surprised by the actions of nature. To make this possible

you need to measure the climatic data through a collection station. These stations are

currently undergoing a process of modernization with the evolution of technology. This work

integrated various devices that make up a weather station and collected this information and

sent via network data for analysis and consultation. This project could provide climate

information relating to where the station was installed so that the people of this site may have

access to this information.

Keywords: Arduino. Automation. Sensors.

Page 8: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

LISTA DE FIGURAS

FIGURA 1. ARDUINO UNO ........................................................................................... 26

FIGURA 2. ARDUINO MEGA1280 ................................................................................ 27 FIGURA 3. VISÃO FRONTAL ETHERNET SHIELD ................................................... 31

FIGURA 4. VISÃO GERAL DA IDE DE DESENVOLVIMENTO. ................................ 32 FIGURA 5. ANEMÔMETROS ROTACIONAIS: (A) FORMADO POR HÉLICES; (B)

FORMADO POR CONCHAS. ............................................................................................ 36 FIGURA 6. ANEMÔMETRO TUBO DE PRESSÃO OU TUBO DE PITOT. ................. 36

FIGURA 7. ANEMÔMETRO DE DEFLEXÃO. ............................................................. 37 FIGURA 8. ANEMÔMETRO TERMOELÉTRICO......................................................... 38 FIGURA 9. ANEMÔMETRO LASER DOPPLER. .......................................................... 38

FIGURA 10. ANEMÔMETRO ULTRASSÔNICO. ......................................................... 39 FIGURA 11. CATA-VENTO. ........................................................................................... 40

FIGURA 12. PLUVIÔMETRO VILLE DE PARIS. ......................................................... 40 FIGURA 13. DIAGRAMA DE BLOCOS DO FUNCIONAMENTO DA ESTAÇÃO

METEOROLÓGICA ........................................................................................................... 43 FIGURA 14. COMPARAÇÃO DOS VALORES DE TEMPERATURA DO AR

REGISTRADOS PELAS DUAS ESTAÇÕES ANALISADAS PELO AUTOR. .................. 45 FIGURA 15. COMPARAÇÃO DOS VALORES DE UMIDADE RELATIVA DO AR

REGISTRADOS PELAS DUAS ESTAÇÕES ANALISADAS PELO AUTOR. .................. 46 FIGURA 16. COMPARAÇÃO DOS VALORES DE VELOCIDADE DO VENTO

REGISTRADOS PELAS DUAS ESTAÇÕES ANALISADAS PELO AUTOR. .................. 47 FIGURA 17. COMPARAÇÃO DOS VALORES DE PRECIPITAÇÃO REGISTRADOS

PELAS DUAS ESTAÇÕES ANALISADAS PELO AUTOR. .............................................. 48 FIGURA 18. VISÃO GERAL DO SISTEMA. .................................................................. 49

FIGURA 19. DIAGRAMA DO SISTEMA. ...................................................................... 51 FIGURA 20. DIAGRAMA DE COMUNICAÇÃO ENTRE ARDUINO E SENSORES. .. 52

FIGURA 21. CAIXA HERMÉTICA ................................................................................ 53 FIGURA 22. CONJUNTO SENSORES E SUPORTE DE FIXAÇÃO............................. 54

FIGURA 23. DIAGRAMA DE CASOS DE USO. ............................................................ 56 FIGURA 24. DIAGRAMA DE ATIVIDADES. ................................................................ 57

FIGURA 25. REPRESENTAÇÃO CIRCUITO ELETRÔNICO DO CATA-VENTO ...... 59 FIGURA 26. FOTO POSICIONAMENTO DA TUBULAÇÃO SOBRE O RIO. ............. 61

FIGURA 27. SENSOR ULTRASSÔNICO FIXADO: (A) LADO EXTERNO; (B) LADO

INTERNO. 62

FIGURA 28. FOTO POSICIONAMENTO SENSOR ULTRASSÔNICO. ....................... 62 FIGURA 29. FOTO RÉGUA DE MEDIÇÃO TIPO TÁBUA DE MARÉ. ....................... 63

FIGURA 30. SENSOR DE TEMPERATURA POSICIONADO. ..................................... 64 FIGURA 31. FOTO POSICIONAMENTO DE SENSORES CATA VENTO,

ANEMÔMETRO E PLUVIÔMETRO: (A) EXIBIÇÃO SENSORES; (B) EXIBIÇÃO

GERAL. 65

FIGURA 32. INTERIOR DA CAIXA DE COMANDO. ................................................... 67 FIGURA 33. SENSOR ULTRASSÔNICO HC-SR04. ...................................................... 69

FIGURA 34. ESTRUTURA DE ARQUIVOS GERADOS................................................ 74 FIGURA 35. ARQUIVOS INTERFACE WEB NO CARTÃO DE MEMÓRIA. .............. 75

FIGURA 36. INTERFACE WEB CONSULTA DE DADOS. .......................................... 75 FIGURA 37. COMPARATIVO DE TEMPERATURA. ................................................... 76

FIGURA 38. COMPARATIVA VELOCIDADE DO VENTO. ......................................... 77

Page 9: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

FIGURA 39. COMPARATIVO PRECIPITAÇÃO DE CHUVA. ..................................... 78

FIGURA 40. COMPARATIVO PRECIPITAÇÃO DE CHUVA. ..................................... 79 FIGURA 41. RESULTADOS NÍVEL DO RIO ITAJAÍ-AÇÚ. ......................................... 79

FIGURA 42. RESULTADOS NÍVEL DO RIO ITAJAÍ-AÇÚ. ......................................... 80

Page 10: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

LISTA DE QUADROS

Quadro 1. Especificação do hardware do Arduino UNO .................................................. 27

Quadro 2. Especificação do hardware do Arduino MEGA1280 ....................................... 28 Quadro 3. Exemplo de código-fonte ................................................................................ 33

Quadro 4. Principais componentes da linguagem de desenvolvimento ............................. 33 Quadro 5. Direção do vento e valores correspondentes .................................................... 59

Quadro 6. Código-fonte: função coleta nível do rio ......................................................... 69 Quadro 7. Código-fonte: função coleta temperatura ......................................................... 70

Quadro 8. Código-fonte: função coleta velocidade do vento ............................................ 70 Quadro 9. Código-fonte: função coleta direção do vento ................................................. 71 Quadro 10. Código-fonte: função coleta precipitação ........................................................ 72

Quadro 11. Código-fonte: função armazenamento de dados coletados ............................... 73 Quadro 12. Estrutura arquivo XML resultante ................................................................... 74

Quadro 13. Direção do vento dia 19/11/2013..................................................................... 78 Quadro 14. Código fonte do software desenvolvido .......................................................... 87

Quadro 15. Código fonte da interface do usuário ............................................................... 93 Quadro 16. Código fonte da aplicação Arduino ................................................................. 97

Page 11: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

LISTA DE ABREVIATURAS E SIGLAS

API Application Programming Interface

CPU Central Processing Unit

EEPROM Electrically-Erasable Programmable Read-Only Memory

IDE Integrated Development Environment

IMP Instituto de Meteorologia de Portugual

kHz Kilohertz

PWM Pulse Width Modulation

SRAM Static Random Access Memory

TTC Trabalho Técnico-científico de Conclusão de Curso

UM Universidade do Minho

UNIVALI Universidade do Vale do Itajaí

USB Universal Serial Bus

RTC Real Time Clock

XML Extensible Marckup Language

Page 12: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

SUMÁRIO

1 INTRODUÇÃO ............................................................................................................. 15 1.1 PROBLEMATIZAÇÃO................................................................................................. 16 1.1.1 Formulação do Problema ......................................................................................... 16

1.1.2 Solução Proposta ...................................................................................................... 18 1.2 OBJETIVOS ................................................................................................................ 18

1.2.1 Objetivo Geral .......................................................................................................... 18 1.2.2 Objetivos Específicos ................................................................................................ 18

1.3 METODOLOGIA ......................................................................................................... 19 1.4 ESTRUTURA DO TRABALHO .................................................................................... 20

2 FUNDAMENTAÇÃO TEÓRICA .................................................................................. 22 2.1 AUTOMAÇÃO ............................................................................................................. 22

2.2 METEOROLOGIA ....................................................................................................... 23 2.3 MICROCONTROLADOR ............................................................................................ 25

2.4 ARDUINO ................................................................................................................... 25 2.4.1 Hardware Arduino .................................................................................................... 27

2.4.2 Acessórios ................................................................................................................ 29 2.4.3 Software de Desenvolvimento ................................................................................... 31

2.5 SENSORES .................................................................................................................. 34 2.5.1 Anemômetro ............................................................................................................. 35

2.5.2 Cata-vento ................................................................................................................ 39 2.5.3 Pluviômetro .............................................................................................................. 40

2.5.4 Ultrassônico ............................................................................................................. 41 2.5.5 Temperatura (LM35) ................................................................................................ 41

2.6 PESQUISA DE TRABALHOS SIMILARES .................................................................. 42 2.6.1 Montagem de uma Estação Meteorologica para Estudos de Transdutores ................ 42

2.6.2 Influência da localização, nas medições efetuadas por uma estação meteorológica, no

Campus de Gualtar .............................................................................................................. 43

2.6.3 Sistema embarcado para aquisição de dados agrometeorológicos ............................ 48

3 DESENVOLVIMENTO ................................................................................................ 51 3.1 MODELAGEM DO PROJETO .................................................................................... 51

3.1.1 Hardware ................................................................................................................. 51 3.1.2 Montagem física dos equipamentos ........................................................................... 52

3.1.3 Software ................................................................................................................... 55 3.2 MONTAGEM DO HARDWARE ................................................................................... 60

3.2.1 Montagem e posicionamento do hardware ................................................................ 60 3.2.2 Sensor de nível do rio ............................................................................................... 61

3.2.3 Sensor de temperatura .............................................................................................. 64 3.2.4 Sensor de vento e precipitação .................................................................................. 64

3.2.5 Central de comando .................................................................................................. 66 3.3 IMPLEMENTAÇÃO DO SOFTWARE ......................................................................... 67

3.3.1 Coleta de informações .............................................................................................. 67 3.3.2 Armazenamento dos dados coletados ........................................................................ 72 3.3.3 Interface de visualização de informações .................................................................. 74

3.4 AVALIAÇÃO DE RESULTADOS ................................................................................. 76

Page 13: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

3.4.1 Temperatura ............................................................................................................. 76

3.4.2 Velocidade do vento .................................................................................................. 77 3.4.3 Direção do vento ...................................................................................................... 77

3.4.4 Precipitação de chuva .............................................................................................. 78 3.4.5 Nível do rio Itajaí-Açú .............................................................................................. 79

4 CONCLUSÕES ............................................................................................................. 81 4.1 TRABALHOS FUTUROS ............................................................................................. 82

REFERÊNCIAS ................................................................................................................. 84

APÊNDICE A. CÓDIGO FONTE DO SOFTWARE .......................................................... 87

APÊNDICE B. CÓDIGO FONTE INTERFACE DO USUÁRIO ...................................... 93

APÊNDICE C. ESPECIFICAÇÃO ARQUIVO XML ......................................................... 97

Page 14: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

15

1 INTRODUÇÃO

Os avanços da tecnologia permitem à sociedade usufruir de facilidades para melhorar

o conforto e qualidade de vida. Esta por sua vez tem buscado se adaptar as mudanças que vem

ocorrendo procurando soluções que possam automatizar atividades corriqueiras,

possibilitando então a economia de recursos de suma importância como, por exemplo, o

tempo.

Desta forma o uso de equipamentos para substituir pessoas em diversas áreas da

produção vem sendo bem aceito, uma vez que estes também podem ser melhoradas para

aumentar a produtividade e minimizar os desperdícios de matéria prima.

Baseando-se nesta linha de pensamento o ser humano tem trabalhado constantemente

desde os tempos mais remotos para atingir este objetivo, fazendo com que as ferramentas e

utensílios o substituam em seu trabalho braçal (ROSÁRIO, 2009). Todo este processo

alimenta a evolução da automação que vem conquistado espaço nos últimos tempos.

Apesar de a automação ser considerada um desenvolvimento emergente nos tempos

atuais, teve sua origem com técnicas mecânicas substituindo o homem em trabalhos laborais

nos setores de tecelagem e impressão antes da Revolução Industrial, conforme (TURNER,

2004).

A partir da década de 1970, com a evolução da tecnologia, o desenvolvimento da

automação agregou valor a inúmeras outras áreas, automatizando diversas atividades

anteriormente realizadas de forma manual. Em busca de qualidade de vida aproveitando a esta

evolução, diversos dispositivos e processos estão sendo modernizados, tomando como um

exemplo, a automatização do monitoramento do clima. Conforme Paiva há mais de dois

milênios que o homem tem buscado desenvolver-se nesta área (PAIVA, 2010).

O autor relata que atualmente a aplicação da meteorologia é bastante ampla, pois

diversos fatores dependem dela como, por exemplo, a agricultura, a política energética,

estratégias militares, a construção civil, e principalmente o cotidiano das pessoas que

dependente de uma boa condição climática para exercer seu trabalho.

Para efetuar a coleta destes dados meteorológicos em um determinado local é comum

o uso de uma estação de coleta onde estão reunidos todos os dispositivos responsáveis por

Page 15: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

16

identificar ou medir os dados (PAIVA, 2010). Apesar de estas coletas serem realizadas com

maior frequência, o numero de equipamentos automatizados ainda pode ser considerado

baixo, sendo necessário efetuar a coleta das informações de forma manual e presencial.

Com a evolução da tecnologia os equipamentos estão sendo modernizados e a

possibilidade de automatização está aumentando, porém os equipamentos desenvolvidos

especificamente para esta finalidade ainda apresentam custos elevados dificultando um pouco

o uso dos mesmos.

Em busca de um novo desafio e avaliando as tecnologias que estavam surgindo no

mercado este trabalho propôs o desenvolvimento de uma estação de medição informatizada e

automatizada para coleta de dados meteorológicos utilizando equipamentos com custos mais

acessíveis.

1.1 PROBLEMATIZAÇÃO

Nesta sessão é apresentada a formulação do problema e a solução proposta para

solucioná-lo.

1.1.1 Formulação do Problema

A coleta de dados meteorológicos tem se tornado cada vez mais comum, porém

poucas estações de medição atualmente possuem conexão de dados instantânea dificultando a

disseminação das informações coletadas devido à necessidade de coleta de dados manual.

Esta prática de coleta de dados atualmente ainda é realizada manualmente em diversos locais

tornando-a tolerante a falhas e gerando trabalho extra aos responsáveis pelas coletas.

Com o processo de informatização e evolução dos computadores os equipamentos

estão sendo modernizados e a possibilidade de automatização destas estações está

aumentando, porém os custos dos equipamentos desenvolvidos especificamente para este fim

ainda são elevados, tornando-os pouco acessíveis.

A importância de medir ou coletar as informações climáticas de um determinado local

pode influenciar diretamente no comportamento da sociedade envolvida com este

Page 16: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

17

determinado local, pois conhecendo os eventos e ocorrências climáticas esta região poderia

melhorar seu cotidiano.

Considerando a região do Vale do Itajaí uma região propícia a eventos naturais

perigosos como enchentes e alagamentos por enxurradas, a possibilidade de coletar dados

meteorológicos facilita o acompanhamento da evolução das condições climáticas do local e

sendo possível evitar possíveis danos ou perdas consideráveis para a população.

Com a possibilidade de explorar um pouco a área de meteorologia e principalmente a

chance de obter conhecimento mais aprofundado sobre uma nova tecnologia, foi identificada

a oportunidade de desenvolver um projeto acadêmico onde permitiu apresentar uma solução

que efetua coleta de informações climáticas utilizando como base a plataforma de

prototipagem eletrônica Arduino.

Com este projeto foi possível realizar a conexão de sensores capazes de efetuar a

leitura das informações do ambiente á plataforma Arduino e desenvolver o software

responsável pelo gerenciamento dos mesmos. Como solução resultante este trabalho gerou

uma versão experimental que foi instalada na empresa Portonave S/A, empresa esta

responsável pela gestão do terminal portuário de Navegantes.

Os dados provenientes desta solução experimental podem ser utilizados para qualquer

fim de interesse corporativo ou comunitário permitindo á empresa divulgá-los a comunidade

ou fazer uso internamente. Apesar disso o principal objeto da coleta destes dados neste

ambiente, foi para que estes sirvam como ferramenta de tomada de decisão em situações onde

atualmente encontram-se dúvidas com relação às condições climáticas, que geram

insegurança á operação de equipamentos portuários.

Esta solução é de grande importância no ambiente operacional do terminal, pois as

soluções atualmente utilizadas não são automatizadas e demanda de coleta manual e

presencial dificultando assim, o acompanhamento destes dados e em situações extremas até

aumentando o risco da operação do terminal.

Page 17: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

18

1.1.2 Solução Proposta

A solução proposta neste projeto consiste em uma central de para coleta de dados

meteorológicos através da plataforma Arduino, capaz de capturar os dados climáticos do

ambiente e disponibilizar as informações para consulta via rede de dados local.

1.2 OBJETIVOS

Nesta sessão seguem apresentados os objetivos geral e específicos que este projeto

focou em alcançar.

1.2.1 Objetivo Geral

Este trabalho tem por objetivo desenvolver uma estação de medição de dados

climáticos fazendo uso da plataforma Arduino para captar as seguintes informações:

temperatura no solo, velocidade e direção do vento, quantidade de chuva e nível da água do

rio Itajaí-Açu. Estas informações serão coletadas e disponibilizadas para consulta através de

conexão de rede local.

1.2.2 Objetivos Específicos

Os objetivos específicos deste projeto são:

Estudar o funcionamento da plataforma Arduino, acessórios e sensores;

Pesquisar e analisar soluções similares;

Elaborar a especificação e modelagem da solução proposta;

Implementar a solução proposta incluindo software e hardware;

Testar e avaliar o desenvolvimento;

Documentar o trabalho desenvolvido através de relatório final e artigo científico.

Page 18: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

19

1.3 METODOLOGIA

O desenvolvimento do trabalho foi divido em três grandes etapas nas quais consistem

em: (1) Fundamentação Teórica, (2) Desenvolvimento e (3) Documentação.

Em atendimento a todas as etapas foram elaboradas pesquisas em bibliografias como

artigos, trabalhos científicos, livros das áreas de interesse e internet, considerando sempre a

procedência e relevância das informações encontradas. O objetivo destas pesquisas foi buscar

embasamento teórico para garantir a qualidade e confiabilidade das informações apresentadas

no trabalho.

A etapa de fundamentação teórica foi realizada através do estudo e aquisição do

conhecimento na área de interesse, a fim de garantir a possibilidade de desenvolvimento do

trabalho.

Esta etapa foi dividida em duas grandes atividades, nas quais foram mapeadas como

peças chaves para a elaboração dos demais itens do projeto.

A primeira atividade consistiu em estudar e compreender o funcionamento da

plataforma Arduino, acessórios e dispositivos sensores. Esta possibilitou conhecer melhor as

características de cada dispositivo envolvido, possibilitando planejar melhor a forma de uso

de cada um deles de acordo com o objetivo do projeto.

Esta atividade iniciou-se com um estudo sobre a plataforma Arduino, identificando

suas características lógicas e físicas, permitindo um melhor entendimento sobre a mesma e

esclarecendo dúvidas.

Em seguida foram estudados os principais acessórios compatíveis com esta

plataforma, onde foi possível afirmar a possibilidade de uso do acessório de comunicação de

rede.

Por ultimo, foi realizado o estudo sobre os dispositivos sensores, onde proporcionou a

identificação de dados técnicos de cada dispositivo utilizado no projeto. Com o conhecimento

destes dados foi possível elaborar a terceira etapa do projeto correspondendo à modelagem da

solução proposta.

A segunda atividade consistiu em pesquisar e analisar soluções similares a este

projeto. Esta agregou valor ao trabalho sendo possível avaliar a solução aplicada para cada

Page 19: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

20

trabalho similar encontrado e também comprovar que o objetivo deste projeto seria possível

ser alcançado por ser compatível com as soluções similares apresentadas.

Na etapa de desenvolvimento foi efetivada a solução proposta incluindo hardware e

software. Como principal atividade desta etapa foi o desenvolvimento do código fonte do

sistema, no qual foi realizado através da interface de desenvolvimento da plataforma Arduino

utilizando linguagem C para o código principal e HTML para a interface web a ser

disponibilizados os dados resultantes.

Esta atividade resultou em um documento chamado de sketch onde é salvo todo o

código fonte produzido. Estas linhas de código produzidas são responsáveis pelo sistema

central da solução proposta, onde é efetuada a leitura de cada sensor, interpretação dos dados

lidos, produção dos dados resultantes, gravação dos dados resultantes em cartão de memória e

disponibilização para consulta em tempo real através da placa de ethernet conectada ao

Arduino. Ao terminar o desenvolvimento do código fonte o mesmo foi gravado na plataforma

Arduino através da mesma interface de desenvolvimento.

Dando sequencia as atividades, foi elaborada a montagem dos hardwares conectando

ao Arduino os dispositivos envolvidos (fonte de alimentação, sensores, placa ethernet,

dispositivo RTC (Real Time Clock) e o cartão de memória). Durante esta atividade também

foi realizado os ajustes necessários para cada sensor, com a finalidade de garantir que os

mesmos possam coletar os dados de forma correta.

Para a etapa de documentação foram elaborados os registros referentes a todas as

informações produzidas durante o projeto, contendo desde a pesquisa científica,

contextualização da proposta (definição do problema e apresentação da solução), aquisição do

conhecimento necessário, a modelagem e o desenvolvimento do projeto.

1.4 ESTRUTURA DO TRABALHO

Este documento está estruturado em quatro capítulos e para melhor compreensão

foram segregados em introdução, fundamentação teórica, desenvolvimento e conclusão.

O Capítulo 1, Introdução, oferece uma visão geral do trabalho, a descrição do

problema, uma solução proposta e uma breve descrição dos objetivos do projeto.

Page 20: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

21

No Capítulo 2, Fundamentação Teórica, proporcionou um estudo sucinto sobre os

principais temas abordados, relacionando conceitos sobre automação, meteorologia,

microcontroladores, plataforma de prototipagem eletrônica Arduino e dispositivos sensores.

Nesse capítulo, também foi elaborado uma descrição da pesquisa de trabalhos similares para

melhor entendimento dos objetivos gerais.

O Capítulo 3 apresenta o projeto detalhado que foi desenvolvido, incluindo o

detalhamento da implementação.

Concluindo, no Capítulo 4, a Conclusão, onde são abordados os resultados obtidos,

uma avaliação sucinta da metodologia empregada e uma descrição de problemas encontrados.

Page 21: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

22

2 FUNDAMENTAÇÃO TEÓRICA

Este capítulo propõe os seguintes temas: (i) conceitos sobre automação; (ii) conceitos

sobre meteorologia; (iii) conceitos sobre microcontroladores; (iv) conceitos sobre a

plataforma de prototipagem eletrônica Arduino e acessórios disponíveis para a mesma; (v)

conceitos sobre os dispositivos sensores que fizeram parte do projeto; e (vi) descrição da

pesquisa realizada sobre trabalhos similares.

2.1 AUTOMAÇÃO

Os avanços da tecnologia permitem à sociedade usufruir de facilidades para melhorar

o conforto e qualidade de vida. Esta evolução vem sendo cobiçada cada vez mais buscando

soluções que possam automatizar atividades corriqueiras. Conforme Rosário (2009), o homem

almeja este objetivo desde os tempos mais remotos fazendo com que ferramentas e utensílios

o substituam em seu trabalho. Este processo dá origem ao termo automação, que além de ser

muito utilizado nos tempos atuais vem ganhando forças e crescendo cada vez mais.

Embora seja comum considerar a automação um desenvolvimento contemporâneo, o

uso de técnicas mecânicas para auxiliar ou substituir o homem em trabalhos laborais já ocorre

há um longo período. Os setores que mais fizeram uso de automação com métodos mecânicos

foram os de tecelagem e impressão muito antes da Revolução Industrial. Um exemplo muito

claro foram os moinhos de vento que utilizavam a energia do vento para transformar em força

mecânica e moer ou triturar o trigo (TURNER, 2004).

Desde então o termo automação vem evoluindo até que os primeiros sistemas

automatizados surgiram na década de 1970 desenvolvidos exclusivamente para aplicações

industriais. A partir deste momento a automação industrial passou a se desenvolver melhor

surgindo soluções comerciais como sistemas prediais automatizados, focados em atender

necessidades específicas como serviços de telecomunicações, sistemas de condicionamento de

ar, segurança patrimonial e controle de acessos (PINHEIRO, 2004).

Além destas áreas a automação agregou valores a inúmeras outras, devido ao

desenvolvimento da tecnologia que se tornou uma grande alavanca de evoluções

proporcionando ao homem oportunidades de investimentos que privilegiam a inovação

Page 22: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

23

ocasionando uma revisão nos aspectos de vida a uma velocidade muito grande (ROSÁRIO,

2009).

Focando nestes benefícios que a tecnologia pode proporcionar, o homem busca

aproximar ao seu cotidiano todos os recursos e facilidades possíveis, para lhe gerar conforto e

qualidade de vida.

Pode-se utilizar como exemplo de automação o monitoramento de condições

climáticas a fim de utilizar esta informação para prever as condições do clima no dia seguinte

ou até mesmo evitar acidentes e possíveis danos que possam ser causados por uma ação da

natureza.

2.2 METEOROLOGIA

Há mais de dois milênios que o homem tem buscado desenvolver-se na área de

meteorologia, conseguindo progressão significativa apenas a partir do século XVII com o

surgimento das redes de intercambio de dados meteorológicos. Mais tarde a internet

revolucionou a comunicação de dados e possibilitou maior precisão nas informações coletadas

(PAIVA, 2010).

Há cerca de 340 anos A.C. a meteorologia foi tratada por Aristóteles com conceitos

filosóficos, pois naquele tempo qualquer partícula vinda da atmosfera era denominada de

meteoro. E esta definição dada por ele foi respeitada por aproximadamente dois mil anos por

reunir todos os conhecimentos da atmosfera da época (BINDI, 2013).

Na idade média as ciências físicas contribuíram significativamente para a

meteorologia com a invenção de equipamentos de medição das condições atmosféricas. A

primeira invenção foi o equipamento denominado de higrômetro criado por Nicholas Cusa em

1450 com o objetivo de compreender a água em seu estado gasoso. Mais tarde surgiram o

cata-vento em 1500 e o termômetro em 1593, criados por Leonardo Da Vinci e Galileu

respectivamente (BINDI, 2013).

Com o passar do tempo estes foram aprimorados e um grande passo na história da

meteorologia já havia sido dado, porém os dados coletados ainda não eram disseminados por

não haver redes de comunicação para envio dos mesmos. Esta situação mudou a partir de

Page 23: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

24

1843 com o surgimento do telégrafo. As informações atmosféricas coletas eram enviadas para

meteorologistas de diversos locais, podendo assim criar um mapa de condições climáticas

facilitando a observação dos padrões dos ventos de superfície e de tempestades. Na época

tinha-se como principal objetivo auxiliar embarcações próximas e distantes da costa terrestre

com informações que poderiam evitar naufrágios ocasionados por tempestades até então não

previstas (BINDI, 2013).

Até estas datas as observações meteorológicas não eram realizadas no Brasil,

iniciando-se somente no ano de 1886, a partir da iniciativa de uma equipe de voluntários

formada por médicos, engenheiros e oficiais no Observatório do Rio de Janeiro, um dos mais

importantes institutos de pesquisas do país na época. Apesar de esta rede ambicionar cobrir

todo o território nacional não oferecia defesa adicional ao país por ser formada por

voluntários e não prever a utilização de um meio de comunicação para coletar dados das

estações. Mas apesar disso havia a possibilidade de se realizar previsão do tempo com uma

melhoria em longo prazo (BARBOZA, 2006).

Ainda durante este mesmo ano fora apresentado um projeto á Assembleia Legislativa

do país para a criação de uma rede de estação de coleta de dados meteorológicos, no qual

cobriria todo o território nacional e faria uso dos telégrafos para a comunicação entre as

mesmas, mas infelizmente o projeto foi considerado muito caro e rejeitado. Desta forma o

Brasil permaneceu coletando os dados sem uma rede de estações até que no ano de 1917 o

Observatório do Rio de Janeiro foi consolidado e uma rede de meteorologia telegráfica foi

atribuída á instituição. Com isso os estudos sobre a trajetória das tempestades se tornaram

mais frequentes podendo entender melhor e também fazer previsões (BARBOZA, 2006).

Atualmente o foco do estudo da meteorologia é a investigação dos fenômenos

observáveis relacionados com a atmosfera como a temperatura, a pressão atmosférica e a

umidade do ar, incluindo suas relações e mudanças com o passar do tempo. Sua aplicação é

bastante ampla por diversos fatores atualmente dependerem da meteorologia como, por

exemplo, a agricultura, a política energética, estratégias militares, a construção civil, e

principalmente o cotidiano das pessoas que precisam da previsão do tempo (PAIVA, 2010).

Estes dados são coletados de um determinado local através do uso de uma estação

meteorológica onde estão reunidos todos os sensores necessários para captar as informações

climáticas deste local (PAIVA, 2010).

Page 24: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

25

2.3 MICROCONTROLADOR

Um microcontrolador é basicamente um computador, porém diferente de um

computador de uso comum destinado a uso diversificado como, por exemplo, um computador

de mesa ou um servidor de aplicação. Um microcontrolador é um pequeno computador

destinado a uso específico sendo na maioria das vezes programados para execução de uma

determinada atividade do inicio ao fim (BRAIN, 2013).

Um microcontrolador possui basicamente a mesma arquitetura de blocos de um

computador, ou seja, possui CPU (Central Processing Unit), memória e dispositivos de

entrada e saída de informações ou dados (FERREIRA, 1998).

Atualmente a possibilidade de encontrar microcontroladores é cada vez mais comum,

pois eles passaram a integrar a maioria dos dispositivos eletrônicos que estão no cotidiano das

pessoas, inclusive controlam equipamentos que nem se pode imaginar. Os microcontroladores

estão escondidos dentro de diversos dispositivos eletrônicos, principalmente em dispositivos

que possuem interação com os usuários como, por exemplo, forno de micro-ondas,

automóveis, televisores com controle remoto, câmeras digitais, celulares, impressoras a laser,

entre inúmeros outros que podem ser citados (BRAIN, 2013).

O microcontrolador que compõe a plataforma de prototipagem eletrônica Arduino,

escolhida para o desenvolvimento deste projeto é desenvolvido pela empresa Atmel, o modelo

Atmega1280.

2.4 ARDUINO

O Arduino consiste em uma plataforma de prototipagem eletrônica open-source

baseada em hardware e software flexível, destinada á interessados em criar objetos ou

ambientes interativos (ARDUINO, 2013).

A plataforma de prototipagem eletrônica Arduino é uma pequena placa com um

circuito eletrônico que contém um microcontrolador inteiro acoplado a um chip no qual é

descrito como principal componente da placa. Para integrar a placa foram adicionados todos

os recursos necessários para que possa se comunicar com o microcontrolador e executar

perfeitamente as atividades para qual foi programada (BANZI, 2011).

Page 25: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

26

O Arduino é uma ferramenta de computação baseada em microcontrolador embarcado

capaz de proporcionar aos computadores a possibilidade de controlar o mundo físico. A

plataforma simplifica o processo de trabalhar com microcontroladores tornando uma grande

vantagem aos interessados em estudar ou desenvolver sistemas físicos. Além disso, outros

grandes fatores facilitam no momento da escolha como, por exemplo, o preço relativamente

baixo, a simplicidade e clareza no ambiente de desenvolvimento, a compatibilidade com

diversas plataformas de sistemas operacionais e principalmente por ser um hardware open

source é extensível para qualquer desenvolvedor que tenha interesse (BENTES, 2011).

O Arduino pode ser encontrado em várias versões e modelos principalmente por ser

uma plataforma de prototipagem aberta a desenvolvedores. A grande diferença entre cada

modelo está relacionada ao seu tamanho físico ou capacidade de conexões, sendo basicamente

os mesmos hardwares. A Figura 1 apresenta um dos principais e mais utilizados, dos modelos

do Arduino.

Figura 1. Arduino UNO

Fonte: Arduino (2013).

A diversidade de modelos do Arduino é devida basicamente por ser uma plataforma

aberta a desenvolvedores que podem criar ou customizar conforme de seu interesse ou

necessidade. A popularidade do Arduino tem aumentado e a evolução para novos modelos

tem ocorrido com maior frequência. Um segundo modelo muito utilizado atualmente é o

Page 26: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

27

mesmo modelo escolhido para este projeto e segue apresentado na Figura 2. Este modelo

apresenta como principais diferencias o tamanho físico, o microcontrolador e a quantidade de

portas disponíveis para conectar dispositivos.

Figura 2. Arduino MEGA1280

Fonte: Arduino (2013).

2.4.1 Hardware Arduino

Apesar do modelo Arduino UNO ser o mais utilizado atualmente suas especificações

descritas no Quadro 1 não atendem a necessidade deste projeto sendo necessário então o uso

do modelo Arduino MEGA1280 no qual segue especificação no Quadro 2.

Quadro 1. Especificação do hardware do Arduino UNO

Microcontrolador ATMEL ATmega328

Tensão de operação 5V

Tensão de entrada (recomendada) 7-12V

Tensão de entrada (limites) 6-20V

Pinos Entrada e Saída Digital 14 (6 possibilitam reprogramação para saída analógica através de modulação por pulso (PWM))

Pinos de Entrada Analógica 6

Corrente Contínua por pino de E/S5V 40 mA

Corrente Contínua por pino de 3.3V 50 mA

Memória Flash 32 Kb onde 0,5 Kb é reservado para bootloader

Memória SRAM 2 Kb

Memória EEPROM 1 Kb

Velocidade de Clock 16 MHz

Fonte: adaptado de Arduino (2013).

Page 27: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

28

Quadro 2. Especificação do hardware do Arduino MEGA1280

Microcontrolador ATMEL ATmega1280

Tensão de operação 5V

Tensão de entrada (recomendada) 7-12V

Tensão de entrada (limites) 6-20V

Pinos Entrada e Saída Digital 54 (14 possibilitam reprogramação para saída analógica através de modulação por pulso (PWM))

Pinos de Entrada Analógica 16

Corrente Contínua por pino de E/S5V 40 mA

Corrente Contínua por pino de 3.3V 50 mA

Memória Flash 128 Kb onde 4 Kb é reservado para bootloader

Memória SRAM 8 Kb

Memória EEPROM 4 Kb

Velocidade de Clock 16 MHz

Fonte: adaptado de Arduino (2013).

A principal diferença entre estes dois modelos de microcontroladores é sua capacidade

de memória Flash destinada a armazenamento e memória do tipo SRAM na qual proporciona

melhor capacidade de processamento.

2.4.1.1 Alimentação

O Arduino pode ser alimentado através de duas formas nas quais são selecionadas

automaticamente. A primeira forma é através da conexão USB ao computador e a segunda

forma é através de uma fonte de alimentação externa proveniente de bateria ou adaptador ac-

dc, ambos utilizando conexão de 2,1 milímetros com pino central positivo. As tensões de

entrada podem ser de 6 a 20 volts no caso de alimentação externa, porém o recomendado é

tensões de 7 a 12 volts para evitar instabilidade no caso de tensão baixa ou aquecimento em

caso de tensão acima do recomendado (ARDUINO, 2013).

Para garantir o bom funcionamento do Arduino é importante seguir as recomendações

do fabricante mencionadas anteriormente.

2.4.1.2 Memória

Como todo microcontrolador possui CPU, memória de acesso rápido e memória de

armazenamento o microcontrolador ATmega1280 não poderia ser diferente. O mesmo

comporta 128 Kb de memória flash onde 4 Kb deste total são utilizadas para bootloader, 8 Kb

de SRAM (StaticRandom Access Memory) e 4 Kb de memória EEPROM (Electrically-

ErasableProgrammableRead-OnlyMemory) (ARDUINO, 2013).

Page 28: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

29

O principio de uso de cada memória é o mesmo de um computador de uso comum, ou

seja, a memória flash é utilizada para armazenamento de informações, a memória SRAM é a

memória de acesso rápido utilizada para auxiliar no processamento de informações na CPU e

por ultimo a memória EEPROM é utilizada para armazenar o código fonte da aplicação

compilado em linguagem de baixo nível, para possibilitar o entendimento e execução

realizada pelo microcontrolador.

2.4.1.3 Dispositivos de Entrada e Saída

Os dispositivos de entrada e saída são a forma em que o Arduino utiliza para se

comunicar com o ambiente, ler informações e aplicar ações sobre este ambiente.

O Arduino MEGA1280 possui 54 pinos de entrada ou saída digitais (pinos 0-53) nos

quais 14 deles (pinos 2 ao 13 e 44 ao 46) são descritos como pinos PWM (Pulse Width

Modulation), onde podem ser reprogramados transformando-os em pinos de saídas

analógicas. Também possui 16 pinos de entrada analógica (pinos 0-15) que podem receber

valores analógicos e converter para um valor de 0 a 1023, como por exemplo, realizar a

leitura de tensão de um sensor (BENTES, 2011).

2.4.2 Acessórios

A plataforma de prototipagem eletrônica Arduino foi estrategicamente desenvolvida

para conexão de acessórios em formato de módulos definidos por Shields. Estes acessórios

foram criados com o objetivo de agregar mais funcionalidades ao Arduino e podem ser

encontrados com diversas tecnologias e dispositivos que agregam valor ao Arduino.

Os acessórios desenvolvidos consistem em placas de fácil uso e instalação que podem

ser conectadas a placa principal estendendo suas capacidade e funcionalidades (ARDUINO,

2013).

Os principais acessórios encontrados e desenvolvidos são os que comportam

tecnologias de uso comum em nosso cotidiano como, por exemplo, o wifi, ethernet, GPS e

bluetooth. Apesar de estas serem as mais comuns encontradas, a relação de acessórios

existentes é expressivamente grande principalmente pelo motivo da plataforma ser

desenvolvimento livre.

Page 29: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

30

Dentre os inúmeros acessórios um deles foi escolhido para integrar o hardware deste

projeto agregando uma funcionalidade ao Arduino. Este acessório é descrito como ethernet

shield, pois possibilita ao Arduino a se comunicar a rede de dados através da conexão

ethernet. Na próxima sessão serão apresentado mais detalhes deste acessório.

2.4.2.1 Ethernet Shield

Este acessório possui como principal objetivo fornecer ao Arduino a possibilidade de

se conectar a uma rede local ou de internet. Dispondo de fácil instalação o shield precisa

apenas ser conectado sobre a placa Arduino, adicionar algumas linhas ao código fonte e

conectar o cabo através do conector RJ45 (ARDUINO, 2013).

Portando um chip do fabricante Wiznet com modelo W5100 o shield oferece suporte a

rede IP utilizando tanto o protocolo TCP como UDP com até quatro conexões de socket

simultâneas. O shield possui também uma conexão para cartão de memória do tipo micro SD

que pode ser utilizado para armazenamento de informações (ARDUINO, 2013).

Esta facilidade agregada ao Arduino é de grande valia por possibilitar a ele a conexão

com uma rede de comunicação onde poderá tirar proveito para disponibilizar as informações

geradas de forma remota, ou seja, sem a necessidade de coleta manual e presencial dos dados

gerados. A partir desta possibilidade pode-se estender ainda mais as possibilidades de uso do

Arduino.

Além disso, o shield ainda conta com a possibilidade de fornecimento de PoE (Power

over Ethernet) através de sua conexão RJ45. Adicionando ao shield o módulo criado por

outros desenvolvedores, ele pode contar com o envio de tensão em corrente contínua através

do cabo de rede e os equipamentos que estiverem devidamente preparados para fazer uso

desta fonte de alimentação poderão utiliza-la dispensando a necessidade de outras fontes de

alimentação (ARDUINO, 2013).

Conforme a Figura 3 o Ethernet Shield é apresentado com seus principais

componentes: (1) conector tipo RJ45; (2) chip W5100 da fabricante WiZnet; (3) slot para

cartão de memória tipo micro SD; e (4) botão de reset (este botão está interligado ao botão da

placa Arduino, ou seja, este executa a mesma função de reset da placa principal).

Page 30: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

31

Figura 3. Visão frontal Ethernet Shield

Fonte: adaptado de Arduino (2013).

2.4.3 Software de Desenvolvimento

A IDE (Integrated Development Environment) de desenvolvimento do Arduino

consiste em um software desenvolvido na linguagem de programação processing com o

objetivo de possibilitar o desenvolvimento de sketches destinado à placa Arduino (BANZI,

2011).

A linguagem de programação processing é uma linguagem de código aberto

inicialmente desenvolvida para ensinar fundamentos de programação de computadores, porém

evoluiu para uma plataforma de desenvolvimento profissional atualmente utilizada tanto para

aprendizado como para prototipação e produção (PROCESSING.ORG, 2001).

Pelo motivo de ter sido desenvolvida para estudantes a IDE é simples e objetiva

apresentando apenas as funcionalidades necessárias para seu funcionamento, conforme

mostrada na Figura 4.

Page 31: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

32

Figura 4. Visão geral da IDE de desenvolvimento.

Fonte: adaptado de Processing.Org(2011).

Através desta IDE de desenvolvimento pode-se redigir o código fonte que será

carregado para a placa Arduino e a dará funcionalidades.

2.4.3.1 Estrutra da Linguagem de Desenvolvimento

A estrutura da linguagem de desenvolvimento é constituída de dois blocos de funções

principais que podem carregar outras funções internamente (SILVEIRA, 2012). Conforme o

autor estes blocos são constituídos na linguagem C/C++ e contém as seguintes funções:

a. void setup(): Função de preparação dos pinos do Arduino e inicialização

de valores e da porta de comunicação serial;

Page 32: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

33

b. void loop(): Esta função é a função principal onde todos os comanos e

demais funções serão executadas. Esta é executa logo em seguida da função de

preparação e permanece em execução repetitiva até que um método de parada

seja executado.

Através do Quadro 3 o autor apresenta um exemplo de código onde possui os dois

blocos principais citados.

Quadro 3. Exemplo de código-fonte

/*

Neste código a função setup() ativa a porta serial em 9600 bits/s

e a função loop() fica transmitindo a frase "Hello World!" pela

porta serial a cada 2 segundos

*/

void setup(){

Serial.begin(9600); //inicializa a porta serial

}

void loop(){

Serial.println("Hello World! "); //transmite frase

delay(2000);

}

Fonte: Silveira (2012).

A composição do código fonte pode conter variáveis, constantes, matrizes, operadores

aritméticos, operadores lógicos, funções matemáticas, funções de tempo e funções de controle

de fluxo como laços e desvios condicionais. Todas estas apresentam a sintaxe de

desenvolvimento da linguagem C/C++ facilitando o desenvolvimento (SILVEIRA, 2012).

No Quadro 4 podem ser visualizados os principais itens que compõe a sintaxe da

linguagem de desenvolvimento.

Quadro 4. Principais componentes da linguagem de desenvolvimento.

Constantes

TRUE/FALSE

HIGH/LOW

INPUT/OUTPUT

Variáveis byte/int/long/float

Matrizes int

Operadores Aritméticos Divisão/Multiplicação/Adição/Subtração

Operadores Lógicos AND(&&)/OR(||)/NOT(!)

Funções Matemáticas Random(min, max)/abs(x)/map(valor,min1,max1,min2,max2)

Funções de Tempo Delay(ms)/delayMicroseconds(us)/millis()

Funções de controle de

fluxo if/if...else/if...else...if/switch…case/while/do…while/for/operador ternário

Fonte: adaptado de Silveira (2012).

Page 33: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

34

2.5 SENSORES

O corpo humano pode ser considerado uma máquina perfeitamente projetada,

possuindo todos os mecanismos vitais e não vitais que até os dias atuais a ciência busca

estudar para melhor compreendê-lo. Através destes mecanismos o mesmo pode interagir com

o ambiente em que se situa podendo identificar características físicas dos objetos, alimentos

entre outros. Estes mecanismos capazes de captar este tipo de informações são os cinco

sentidos denominados como visão, audição, olfato, tato e paladar. No âmbito de sistemas

computacionais estes sentidos dos seres humanos são alcançados através de dispositivos

tecnológicos desenvolvidos especificamente para exercer as mesmas funções dos seres

humanos ou agregar outras. Estes dispositivos são denominados como sensores por

(FURTADO, 2002).

Os sensores são dispositivos capazes de transformar informações de grandezas físicas

de um ambiente em informações de grandezas lógicas, para que seja possível assumi-la como

uma entrada em um sistema. Desta forma este sistema apresentará uma representação fiel

através de grandezas lógicas do conhecimento sensorial deste ambiente (SUÁREZ, 2000).

Assim como em um ser humano, os sensores são de extrema importância em um

sistema computacional. É desta forma que os autores Santos, Júnior e Barbosa (2008) relatam

em seu artigo científico, onde descrevem que os sensores exercem função de extrema

importância em um sistema autônomo, pois extraem do ambiente as informações que o

sistema precisa para uma tomada de decisão a partir de uma informação já processada.

Há uma grande diversidade de sensores atualmente disponíveis no mercado, de acordo

com cada tipo de informação a ser medida ou monitorada.

Os diversos sensores podem ser de tipos visuais de brilho e cor, de tato ou de força,

detectores de posição ou direção, velocidade, vibração, sensores acústicos, de olfato e paladar,

de medição de temperatura, e muitos outros (SUÁREZ, 2000).

Entre os diversos modelos e suas respectivas funcionalidades, os sensores escolhidos

para serem peças de suma importância neste trabalho foram os sensores anemômetro, cata-

vento, pluviômetro, ultrassônico e o sensor LM35. Os mesmo desempenharão as funções de

medir respectivamente a velocidade do vento, a direção do vento, a precipitação de chuva, o

nível do rio e a temperatura do ambiente.

Page 34: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

35

Estes sensores foram escolhidos para serem utilizados neste projeto devido à

compatibilidade com a plataforma Arduino, a simplicidade de manuseio e facilidade de

entendimento de seus mecanismos de medição, uma vez que toda informação gerada pelos

mesmos, deverá ser interpretada e formatada de forma a atender a necessidade do projeto.

A estrutura de ambos não é formada por eletrônica ativa, sendo necessário fornecer a

alimentação aos sensores para induzir os mesmos a obtenção dos resultados de acordo com o

ambiente em que estiverem inseridos (ARGENT, 2013).

2.5.1 Anemômetro

O anemômetro consiste em um equipamento capaz de medir a velocidade do vento. A

maioria deles são formados por ventoinhas passíveis a girar quando expostas ao vento

(MATTOS; MÁSCULO, 2011).

Existem vários modelos de anemômetros onde são diferentes em formatos e

principalmente no método de medição. Entre os principais modelos se podem citar os

rotacionais, os de tubo de pressão, os de deflexão, os termoelétricos e os ultrassônicos

(PINTO, 2006).

2.5.1.1 Rotacional

Este modelo de anemômetro é o mais utilizado, por ser o mais simples. Este modelo

pode ser encontrado em dois formatos, os formados por hélices ou os formados por conchas

anexas a um eixo horizontal de rotação. Ambos giram a uma velocidade correspondente a

velocidade do vento que passa por eles. Este modelo possui uma grande vantagem em relação

aos demais modelos, pois os mesmo permanecem em contato permanente com o ar,

obstruindo o fluxo de passagem para medir a velocidade do vento (PINTO, 2006).

A Figura 5 demonstra dois modelos de anemômetro rotacional.

Page 35: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

36

(a) (b)

Figura 5. Anemômetros Rotacionais: (a) Formado por hélices; (b) Formado por conchas.

Fonte: Pinto (2006).

2.5.1.2 Tubo de Pressão

Este tipo de anemômetro também conhecido como Tubo de Pitot, em homenagem ao

seu inventor Henri Pitot (1695-1771), utiliza a diferença de pressão exercida pelo movimento

da moléculas de ar em movimento, para medir a velocidade do vento.

Conforme apresentado na Figura 6, possuindo um formato de tubo com duas entradas,

é apontado diretamente para a direção do fluxo do vento, através das entradas o mesmo colhe

a pressão estática e a pressão de estagnação. Estas entradas são ligadas com um espaço

preenchido com um fluido que varia de nível em função da pressão dinâmica exercida entre as

entradas. A velocidade do vento então é calculada através da diferença do nível deste fluido

(PINTO, 2006).

Figura 6. Anemômetro Tubo de Pressão ou Tubo de Pitot.

Fonte: Pinto (2006).

Page 36: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

37

2.5.1.3 Deflexão

Este modelo for criado por Leonardo Da Vinci e foi o primeiro instrumento destinado

a medir de velocidade do vento. Formado por apenas uma chapa metálica com um lado solto e

o outro preso a um arco de sustentação, é montada sobre uma escala logarítmica conforme

mostrada na Figura 7 (PINTO, 2006).

Figura 7. Anemômetro de Deflexão.

Fonte: Pinto (2006).

Seu funcionamento é basicamente o resultado da força do vento sobre a placa metálica

onde a incide apontando na escala logarítmica a numeração correspondente à velocidade do

vento (PINTO, 2006).

2.5.1.4 Termoelétrico

Este anemômetro é o mais indicado para medir temperaturas de ambientes fechados,

pois possui uma precisão superior aos demais modelos e são capazes de medir velocidades de

ordem de 0,1 a 0,2 metros por segundo. Os mesmo são constituídos por uma haste com um fio

muito fino em sua ponta denominado de fio quente, onde ao captar o movimento do ar envia

ao conversor um sinal elétrico que o transforma em temperatura (MATTOS; MÁSCULO,

2011).

Este modelo possui vantagens como possuir maior sensibilidade para baixas

velocidades e não possuir parte móveis, facilitando o transporte e manuseio. Porém também

apresenta desvantagens como sua fragilidade e sua sensibilidade com as partículas de

poluição depositadas no fio, implicando na frequente necessidade de calibração e gerando um

aumento considerável em seu custo de manutenção (PINTO, 2006).

Page 37: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

38

A Figura 8 apresenta um anemômetro deste modelo, onde consta o equipamento que

efetua a conversão dos sinais elétricos em temperatura e a haste que comporta o fio quente

responsável em captar os movimentos das partículas do ar.

Figura 8. Anemômetro Termoelétrico.

Fonte: Mattos e Másculo (2011).

2.5.1.5 Laser Doppler

Este modelo utiliza o efeito Doppler causado pelo movimento das partículas que

atravessam as franjas formadas pelo cruzamento de dois feixes de raio laser para obter a

velocidade do vento. As partículas cruzam os feixes dos rádios laser formando um desvio de

luz o que implica em um pequeno desvio de frequência chamado de efeito Doppler. Desta

forma os dispositivos óticos conseguem captar a velocidade de movimentação destas

partículas que correspondem à velocidade do vento (PINTO, 2006).

A Figura 9 apresenta um esboço do funcionamento do anemômetro de laser Doppler.

Figura 9. Anemômetro Laser Doppler.

Fonte: Pinto (2006).

Page 38: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

39

2.5.1.6 Ultrassônico

Este modelo apresenta um funcionamento a partir do principio: o movimento das

partículas do ar em movimento afeta uma onda acústica com frequência ultrassônica. Desta

forma o equipamento é formado por um transmissor e receptor de energia sonora separados a

poucos centímetros de distância, onde o transmissor emite uma onda sonora em velocidade

ultrassônica e o tempo que esta demora em chegar ao receptor corresponde à interferência

gerada pelas partículas do ar em movimento. A partir deste tempo calcula-se a velocidade do

vento que passa entre o transmissor e receptor (PINTO, 2006).

A Figura 10 apresenta um anemômetro ultrassônico que comporta dois transmissores e

dois receptores efetuando medição da velocidade do vento.

Figura 10. Anemômetro Ultrassônico.

Fonte: Pinto (2006).

2.5.2 Cata-vento

Este dispositivo é utilizado para medir a direção do vento (BISCARO, 2007). O

equipamento é formado na maioria das vezes por uma placa fixada a uma barra giratória

horizontal que possui giro livre conforme apresentado na Figura 11. Esta placa é empurrada

pelo vento sendo forçada a apontar para a direção correspondente ao fluxo do mesmo, desta

forma se pode obter a direção do vento.

Page 39: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

40

Figura 11. Cata-vento.

Fonte: adaptado de Biscaro (2007).

2.5.3 Pluviômetro

Este dispositivo é utilizado para medir a quantidade de chuva que se abate sobre uma

determinada área. A maioria dos modelos é constituído por um recipiente onde o líquido da

chuva é coletado e armazenado durante uma rotina de coleta, geralmente em um intervalo de

24 horas com coletas manuais e presenciais (HELLER; PÁDUA, 2006).

Conforme Heller e Pádua (2006) relatam, o modelo de pluviômetro mais utilizado no

Brasil é o Ville de Paris, que possui uma área de captação de 400 cm² e é instalado geralmente

a 1,5 metros de altura do solo conforme ilustrado na Figura 12.

Figura 12. Pluviômetro Ville de Paris.

Fonte: Heller e Pádua (2006).

Este equipamento armazena a água da chuva durante um ciclo de medição podendo ser

escoada manualmente após o registro (HELLER; PÁDUA, 2006).

Page 40: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

41

Além deste modelo há outros inclusive informatizados onde as coletas podem ser

automatizadas tornando a rotina de leitura de informações e manutenção do equipamento mais

rápida, fácil e prática.

2.5.4 Ultrassônico

O sensor ultrassônico possui como princípio o fato do som viajar em velocidade

constante. Desta o funcionamento do sensor consiste em emitir uma onda sonora que ao

encontrar um objeto, é ecoada de volta ao próprio sensor que a recebe e calcula o tempo em

que a mesma demorou em retornar. E a partir deste tempo o sensor pode informar a distância

do objeto que a refletiu para obter a distância do objeto (PEREIRA, 2011).

Segundo Pereira (2011), a principal vantagem de utilizar este tipo de sensor é que o

mesmo pode ser utilizado para reconhecer objetos de diversos tipos de materiais.

2.5.5 Temperatura (LM35)

O sensor de temperatura é um sensor capaz de medir a temperatura de um determinado

local ou ambiente de acordo com o cenário em que estiver inserido.

O circuito eletrônico LM35 é um circuito integrado especialmente desenvolvido para

medir temperatura de ambientes e são disponibilizados em diversos tipos de encapsulamentos

onde o mais comum é o tipo TO-92. Este encapsulamento possui a aparência de um transistor

e apresenta ótimo custo benefício, principalmente por não afetar seu desempenho

(NATIONAL SEMICONDUCTOR, 2000).

Este circuito também foi projetado de forma a não necessitar de calibração para

fornecer exatidão nos valores apresentados. Seu funcionamento é simples e de fácil manuseio

sendo necessário apenas alimentação com tensão de 5 volts corrente contínua para que o

mesmo possa produzir resultados (NATIONAL SEMICONDUCTOR, 2000).

Este circuito fornece resultados na escala de graus célsius sendo que para cada 10

milivolts correspondem a 1°C de temperatura e pode apresentar uma variação de 1/4°C ou até

3/4°C dentro da faixa de temperatura de -55°C á 150°C (NATIONAL SEMICONDUCTOR,

2000).

Page 41: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

42

2.6 PESQUISA DE TRABALHOS SIMILARES

Como resultado da etapa de pesquisa de trabalhos similares, foram identificados e

classificados como similares os trabalhos abaixo descritos. Estes contribuíram através de suas

abordagens e formas de apresentação das soluções trazendo exemplos de implementação que

podem ser tomadas como princípios para o trabalho em questão.

2.6.1 Montagem de uma Estação Meteorologica para Estudos de

Transdutores

O trabalho consiste em uma abordagem prática da construção de uma estação

meteorológica básica e de baixo custo para o estudo de transdutores meteorológicos como

sensor de pressão atmosférica, sensor de temperatura do ar, sensor de umidade relativa do ar,

entre outros (NISHIBE; COIMBRA; JUNIOR, 2009).

O projeto aborda como objetivo a possibilidade de tornar viável uma análise climática

do local com maior detalhamento e precisão evitando as variações consideráveis entre

localidades (NISHIBE; COIMBRA; JUNIOR, 2009).

Apesar das informações meteorológicas serem de fácil acesso com a disponibilização

via internet, diversos pontos ou regiões permanecem com certa carência de informações, pois

se localizam em pontos mais afastados das cidades como, por exemplo, as fazendas. Por este

motivo as informações recebidas portam um grau de imprecisão e, apesar do projeto não focar

em previsão do tempo, ele possibilita coletar informações destas determinadas regiões

podendo colaborar ofertando como resultado um relatório das condições climáticas do local e

assim decisões a respeito podem ser tomadas (NISHIBE; COIMBRA; JUNIOR, 2009).

O projeto foi desenvolvido em hardware e software com sensores que não possuíam

eletrônica ativa necessitando apenas de alimentação para efetuar a leitura do ambiente. Uma

descrição do projeto está apresentada na Figura 13 onde demonstra a interconexão entre os

sensores responsáveis pela coleta de dados do ambiente, o Arduino no qual fará a interface de

comunicação administrando os dados lidos pelos sensores e o software que capturará as

informações do Arduino.

Page 42: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

43

Figura 13. Diagrama de Blocos do Funcionamento da Estação Meteorológica

Fonte: Nishibe, Coimbra e Junior (2009).

A linguagem de desenvolvimento escolhida para o projeto foi o JAVA por ser

multiplataforma e uma funcionalidade principal do software era mostrar os dados coletados

instantaneamente como também as informações anteriormente coletadas e salvas em um

banco de dados. E a escolha do Arduino foi devido à indisponibilidade de um produto com

um custo e dificuldade de acesso maior, então o Arduino barateou e facilitou o projeto pela

sua facilidade de manipulação e desenvolvimento.

2.6.2 Influência da localização, nas medições efetuadas por uma estação

meteorológica, no Campus de Gualtar

Este trabalho foi desenvolvido na Universidade de Minho em Portugal no mês de

setembro de 2009. Como objetivo geral do mesmo a autora avaliou a influência da localização

de duas estações meteorológicas automáticas para verificar se os dados climáticos obtidos

pelas mesmas possuem alterações influenciadas pela localização (VILARINHO, 2009).

Uma estação meteorológica deve atender a requerimentos da Organização Mundial de

Meteorologia com relação a normas de qualidade das informações geradas. Estas exigências

são impostas para garantir a integridade das informações coletadas, principalmente em

estações situadas no perímetro urbano por estarem sujeitas a alterações em suas leituras

devido à interferência de vários fenômenos resultantes das atividades humanas

(VILARINHO, 2009).

Page 43: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

44

Com aproximadamente cinco quilômetros de distância entre as duas estações

meteorológicas automáticas, sendo que uma estava em no perímetro da Universidade do

Minho (UM) a outra localizada no Instituto de Meteorologia de Portugal (IMP), cada uma das

delas estava em um ambiente diferente da outra tendo sempre dois cenários diferentes para

coleta de informações (VILARINHO, 2009).

Os dados climáticos utilizados por Vilarinho (2009) em seu trabalho consistem em

temperatura do ar, umidade relativa do ar, velocidade do vento e precipitação. Os mesmos

foram coletados durante o mês de Maio de 2009 com intervalos de uma hora entre cada coleta

realizada.

Durante o período de coleta de informações as estações apresentaram de forma global,

dados equivalentes ou com poucas variações (VILARINHO, 2009). As variações notadas

foram pequenas, porem possivelmente justificadas pela localização e exposição dos sensores

de cada estação, pois enquanto uma localizava-se em um ambiente urbano a outra se

localizava em ambiente rural.

Observando a Figura 14, o autor demonstra um gráfico referente à temperatura do ar

coletada nas estações meteorológicas do IMP e da UM mostrando dados bastante similares,

porém havendo uma pequena diferença com relação a temperaturas um pouco mais altas ou

um pouco mais baixas entre as duas estações. Diferença esta justificada pelas condições dos

ambientes em que as estações estavam situadas (VILARINHO, 2009).

Page 44: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

45

Figura 14. Comparação dos valores de temperatura do ar registrados pelas duas

estações analisadas pelo autor.

Fonte: Vilarinho (2009).

A Figura 15 apresenta a leitura referente os dados de umidade relativa do ar onde

podemos observar que os valores registrados apresentam nível de concordância nos períodos

diurnos, porem nos períodos noturnos os valores são maiores para a estação do IMP. A autora

aponta como possível motivo a intensidade do vento ser muito baixa havendo pouco

movimento na massa de ar que a envolve possibilitando que a umidade relativa diminua à

medida que a temperatura também diminui durante a noite (VILARINHO, 2009).

Page 45: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

46

Figura 15. Comparação dos valores de umidade relativa do ar registrados pelas duas

estações analisadas pelo autor.

Fonte: Vilarinho (2009).

A Figura 16 apresenta a velocidade do vento registrada nas duas estações. Os valores

observados são relativamente similares durante o período noturno apresentando velocidades

baixas e durante o período diurno apresentando crescimento similar em ambas às estações,

porém na estação do IMP a velocidade máxima registrada é superior aos registros da estação

do UM. Esta diferença nos resultados pode ser atribuída ao ambiente em que as estações estão

inseridas, pois no ambiente urbano há maior resistência para a circulação dos ventos

(VILARINHO, 2009).

Page 46: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

47

Figura 16. Comparação dos valores de velocidade do vento registrados pelas duas

estações analisadas pelo autor.

Fonte: Vilarinho (2009).

A Figura 17 apresenta a precipitação de chuva registrada nas duas estações. Os valores

coletados mostram que o nível de precipitação de ambas as áreas são similares a não ser nos

dias 11, 17 e 26 nos quais a estação da UM foi superior. Esta diferença nos registros justifica-

se pelo formato do terreno em que a estação está exposta, pois o mesmo é inclinado

dificultando o fluxo do ar, forçando-o a subir e originando precipitação mais elevada em

relação ao terreno semiplano da estação do IMP (VILARINHO, 2009).

Page 47: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

48

Figura 17. Comparação dos valores de precipitação registrados pelas duas estações

analisadas pelo autor.

Fonte: Vilarinho (2009).

O autor conclui seu trabalho relatando que as informações coletadas por ambas as

estações de medição são fiéis e apesar de existir uma boa relação nos resultados há fatores que

diferenciam os mesmos de forma acentuada, porem estas diferenças eram esperadas uma vez

que as estações estavam distanciadas aproximadamente cinco quilômetros e em ambientes

distintos.

2.6.3 Sistema embarcado para aquisição de dados agrometeorológicos

Este trabalho foi desenvolvido com o objetivo de auxiliar os pequenos produtores de

uva, membros de uma cooperativa vinícola da cidade de Marialva, no estado do Paraná. Foi

desenvolvido pela equipe um sistema com microestações meteorológicas onde foram

instaladas em campo para coletar dados meteorológicos importantes para o cultivo da uva no

local (SABO, et al., 2010).

Conforme citam os autores o projeto foi incentivado por órgãos governamentais com a

finalidade de apoiar inicialmente os produtores de uva com a agricultura familiar, porém

posteriormente poderia ser utilizando para outras finalidades na área agrícola. O projeto

engloba a coleta e fornecimento dos dados meteorológicos aos agricultores para que possam

Page 48: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

49

analisar e planejar o manejo e cultivo adequado da uva evitando possíveis problemas

derivados das condições climáticas do local (SABO, et al., 2010).

O sistema consistia em um conjunto de estações interligadas formando uma rede de

comunicação sem fio onde estas estações efetuam a leitura de dados climáticos através dos

sensores e periodicamente enviam as informações coletadas a uma unidade de controle

denominada de gerenciador de rede. Por sua vez o gerenciador de rede é responsável de

enviar os dados recebidos via internet para um banco de dados do sistema onde estarão

reunidos os dados de todas as estações (SABO, et al., 2010).

As informações coletas e armazenadas no banco de dados seriam acessadas por um

sistema web a disposição dos agricultores através de tabelas e gráficos. Os autores também

informam que o sistema deveria funcionar sem a interferência humana, ter baixo custo de

produção e manutenção visando atender as necessidades dos pequenos produtores que não

possui conhecimento na área (SABO, et al., 2010).

Na Figura 18 está representado um esboço do projeto conforme os autores o

descrevem, ou seja, um banco de dados para armazenamento das informações meteorológicas

coletadas, o gerenciador de rede realizando a comunicação com o banco de dados através da

internet para enviar os dados recebidos das estações e o usuário acessando as informações

também através da internet.

Figura 18. Visão geral do sistema.

Fonte: Sabo, et al., (2010).

Page 49: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

50

A estação é constituída pela plataforma Arduino onde foram conectados os

dispositivos como o relógio, o cartão de memória, o dispositivo de comunicação sem fio com

protocolo ZigBee e os sensores de captura de informações climáticas. A programação do

sistema foi gerada em linguagem de programação C e compilada através da ferramenta de

desenvolvimento da plataforma Arduino (SABO, et al., 2010).

O gerenciador de rede que faz a coleta das informações nas estações através de rede

sem fio foi desenvolvido em linguagem de programação Java e é executado em um

computador comum com a interface de comunicação sem fio utilizadas nas estações (SABO,

et al., 2010).

Com relação ao servidor web que possui uma função muito importante para o sistema,

foi desenvolvido em linguagem de programação PHP e possibilita ao usuário visualizar

tabelas e gráficos de forma simples e objetiva facilitando o uso, sendo que o publico alvo do

projeto foram agricultores com limitações de conhecimento na área. Aproveitando a

facilidade de integração com esta linguagem de programação escolhida e a popularidade o

banco de dados escolhido para o sistema foi o MYSQL (SABO, et al., 2010).

Page 50: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

51

3 DESENVOLVIMENTO

A solução proposta neste projeto consiste no desenvolvimento de uma estação de

coleta de dados meteorológicos de pequeno porte, utilizando como base a plataforma de

prototipagem eletrônica Arduino.

3.1 MODELAGEM DO PROJETO

A base de todo o projeto consiste na plataforma de prototipagem eletrônica Arduino

no qual comporta além da conexão com todos os sensores, o algoritmo gravado internamente

que fez o controle de todos os dispositivos envolvidos e também é responsável em

disponibilizar para consulta as informações geradas.

3.1.1 Hardware

Todos os componentes envolvidos no projeto necessitam ser conectados ao Arduino.

Desta forma segue modelo de representação na Figura 19, onde a plataforma Arduino como

peça base recebe alimentação de uma fonte externa com 9,0 volts, a conexão com todos os

dispositivos sensores, a conexão com o dispositivo RTC (Real Time Clock) e o acessório

ethernet, que por sua vez aloca um cartão de memória.

Figura 19. Diagrama do sistema.

Page 51: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

52

Todos os dispositivos sensores utilizados não possuem eletrônica ativa, desta forma

apenas operam como atuadores reagindo de acordo com as condições em que são submetidos.

A partir deste princípio é necessário fornecer aos sensores alimentação para que os mesmos

possam produzir valores e disponibilizar ao Arduino conforme apresentado na Figura 20.

Figura 20. Diagrama de comunicação entre Arduino e Sensores.

Apesar de todos os sensores precisarem do mesmo tipo de alimentação (5 volts DC),

cada um possui uma forma de comunicação e envio de informações, sendo necessária uma

conexão exclusiva no Arduino para cada dispositivo. Em atendimento a este requisito as

portas do Arduino utilizadas para conectar os sensores foram as portas de alimentação 5,0

volts e portas de comunicação tanto analógicas como digitais, sendo as de alimentação para

fornecer energia aos sensores e as de comunicação para recebimento das informações geradas

pelos mesmos.

3.1.2 Montagem física dos equipamentos

A montagem dos equipamentos envolvidos neste projeto foi planejada com o objetivo

de garantir a proteção dos mesmos e acomodá-los da melhor forma possível facilitando o

acesso como a manutenção caso necessário.

Page 52: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

53

Como infraestrutura mínima do local de instalação o projeto tem como requisitos a

existência de uma tomada de energia elétrica 220 volts e uma conexão de rede de dados, além

de ser um ambiente aberto para circulação do vento a fim de não interferir nas correntes de

vento podendo assim efetuar a medição de forma coerente. Também é de suma importância

que o local de instalação seja próximo à margem do rio devido à necessidade de instalação do

sensor ultrassônico, que precisa estar posicionado sobre o espelho d’água e principalmente

por ser conectado á placa Arduino através de cabo.

Para acondicionar a placa Arduino e os dispositivos nela conectados (acessório

ethernet, dispositivo RTC e protoboard) foi projetado o uso de uma caixa apropriada para

instalação de equipamentos eletrônicos na qual há proteção contra infiltração de líquidos, que

possam danificar os equipamentos e possui suporte adequado para fixação dos mesmos em

seu interior. Na Figura 21 segue uma ilustração da caixa utilizada no projeto.

Figura 21. Caixa Hermética

Fonte: Atenario (2013). (ANTENARIO, 2013)

Esta caixa possibilita a passagem de cabos através de sua parte inferior com

dispositivos apropriados para efetuar a vedação.

Page 53: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

54

Juntamente com os sensores pluviômetro, anemômetro e cata-vento, foi fornecido um

suporte de fixação onde também foi utilizado para fixação da caixa hermética favorecendo a

conexão dos sensores ao Arduino e mantendo-a em uma boa posição facilitando o acesso. A

Figura 22 apresenta os sensores pluviômetro, anemômetro e cata-vento montados no suporte

fornecido pelo fabricante dos mesmos.

Figura 22. Conjunto sensores e suporte de fixação.

Fonte: Argent (2013).

Com relação aos sensores de temperatura e nível do rio os mesmos possuem maior

sensibilidade que os demais, desta forma estes precisam de maior proteção que os demais.

Para o sensor de temperatura o mesmo foi fixado através de um furo transpassaste na

parede lateral da caixa hermética, pois deve permanecer em contato com o ambiente externo

da caixa para que seu desempenho não seja afetado devido o ambiente interno da caixa ser

fechado.

Com relação ao sensor de nível do rio, este ficou posicionado sobre a água em uma

altura correspondente ao alcance do mesmo e, para garantir que não seja afetado pela chuva

ou umidade, o mesmo será instalado dentro de uma tubulação de tipo plástico de

aproximadamente 100 milímetros de espessura. Esta tubulação deve conter no mínimo oito

metros de comprimento, pois alem de fornecer proteção ao sensor o mesmo também auxilia

com a função de quebrar as ondas que possam existir na superfície do rio, assim a leitura se

torna mais precisa.

Page 54: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

55

3.1.3 Software

O software desenvolvido consiste em um algoritmo compilado e gravado na

plataforma Arduino. Desenvolvido através da própria interface de desenvolvimento do

Arduino tendo como linguagem de programação o C/C++ em conjunto com a linguagem

HTML. Nele foram desenvolvidas funcionalidades para efetuar a coleta e tratamento de

informações provenientes dos sensores, gravação destas informações em cartão de memória,

criado um servidor web e uma página web para divulgação dos dados climáticos coletados.

Após realizar este processo de tratamento das informações, estas são gravadas em um

cartão de memória em que está conectado ao acessório ethernet shield. Estas são gravadas e

mantidas temporariamente neste local que serve de armazenamento e fonte para consulta para

alimentar a interface de visualização dos dados climáticos. Com o objetivo de manter a

disponibilidade desta fonte de armazenamento (cartão de memória) os dados armazenados

serão removidos após um determinado período de tempo que será definido de acordo com a

quantidade de informações que serão geradas pelo sistema, porém é mantido um histórico

mínimo de dados equivalentes a uma semana de registros.

Com relação ao servidor web, o mesmo se faz necessário para que seja possível

apresentar ao usuário uma interface web para visualização das informações geradas pelo

sistema. Este servidor foi desenvolvido sobre a própria plataforma Arduino em conjunto com

o acessório ethernet shield e permanece em execução recebendo e respondendo requisições no

protocolo HTTP. A disponibilização deste servidor ocorre através do auxilio de uma

biblioteca que disponibiliza as funcionalidades nativas do servidor, desta forma é possível

programar a plataforma Arduino para que execute as atividades desejadas quando receber

alguma requisição.

A interface de visualização dos dados produzidos será uma página web desenvolvida

em linguagem HTML que apresenta ao usuário os dados climáticos do dia corrente e um

histórico das dez ultimas coletas realizadas. Devido esta interface ser desenvolvida sobre a

plataforma Arduino, a mesma foi construída com o máximo de simplicidade para não afetar o

desempenho da plataforma, porém mantém a objetividade e clareza nas informações

apresentadas.

Para melhor entendimento do projeto a Figura 23 apresenta o diagrama de casos de

uso definindo como os três atores a estação realizando as atividades de coleta, tratamento e

Page 55: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

56

gravação de dados coletados, o servidor web aguardando requisição HTTP e o usuário

acessando a página web e requisitando informações ao servidor.

Figura 23. Diagrama de casos de uso.

Na Figura 24 é possível visualizar o diagrama de atividades onde são apresentadas as

principais atividades a serem executadas pelo software desenvolvido.

Page 56: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

57

Figura 24. Diagrama de atividades.

3.1.3.1 Requisitos Funcionais

Para melhor entendimento estes são os requisitos funcionais para o software a ser

desenvolvido:

Coletar dados provenientes dos sensores;

Tratar dados coletados para obter as informações climáticas;

Remover registros antigos do cartão de memória;

Gravar dados coletados no cartão de memória;

Disponibilizar informações para consulta através de página web.

Page 57: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

58

3.1.3.2 Coleta e tratamento dos dados

A coleta de dados é realizada pelo Arduino respeitando as características de cada um

dos sensores. Os dados são lidos pelo Arduino, interpretados e convertidos em dados

mensuráveis para posterior registro e disponibilização.

O funcionamento dos sensores responsáveis pela identificação da precipitação de

chuva, velocidade e direção do vento (pluviômetro, anemômetro e cata-vento) é de fácil

entendimento, porém o cata-vento comporta um mecanismo de detecção mais complexo que

os demais. Os sensores anemômetro e pluviômetro possuem apenas um mecanismo que

aciona uma chave eletrônica a cada ciclo de medição emitindo um pulso elétrico na porta de

saída (ARGENT, 2013).

O anemômetro atinge uma velocidade de 2,4 km/h ao completar cada ciclo em um

intervalo de tempo de um segundo e com relação ao pluviômetro o mesmo completa um ciclo

a cada 0,2794 milímetros de chuva coletada acionando a chave eletrônica e esvaziando o

recipiente de coleta (ARGENT, 2013).

Desta forma foi utilizado o Arduino para ler os sensores monitorando a frequência em

que ocorre cada ciclo e a partir de então é possível obter o resultado calculando as

informações com ajuda de formula matemática relativamente simples.

Já com relação ao cata-vento, o mesmo utiliza um método de obtenção de resultados

que necessita de oito chaves eletrônicas. Estas estão estrategicamente posicionadas em torno

de um eixo vertical e são acionadas à medida que o cata-vento se move sobre este eixo. Para

efetuar o acionamento destas chaves eletrônicas o cata-vento faz uso de um dispositivo de

acionamento que possibilita a geração de até 8 diferentes combinações eletrônicas como

resultado (ARGENT, 2013). A representação das chaves eletrônicas do cata-vento pode ser

visualizada na Figura 25 onde demonstra o circuito eletrônico de conexão do cata-vento.

Page 58: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

59

Figura 25. Representação circuito eletrônico do cata-vento

Fonte: Argent (2013).

Para cada contato da chave eletrônica do cata-vento há um dispositivo eletrônico

chamado de resistor que desempenha a função de reter parte da corrente elétrica que passa por

ele. Ao medir a corrente elétrica que está sendo filtrada é possível identificar o grau de

resistência entre os contatos acionados que corresponderá com a direção em que o sensor

estiver apontando. Desta forma é possível identificar a direção do vento fornecida pelo sensor.

No Quadro 5 é possível visualizar as direções do vento que o sensor pode informar através

dos valores correspondentes que são fornecidos ao Arduino.

Quadro 5. Direção do vento e valores correspondentes Direção do vento Valor Correspondente

E 26

SE 45

S 77

NE 118

SW 161

N 196

NW 220

W 256

Para melhor entendimento pode-se tomar como exemplo, a primeira linha do Quadro 5

onde ao efetuar uma leitura do sensor o Arduino recebe o valor 26 que corresponde à direção

leste (E).

O mecanismo do cata-vento possui um funcionamento mais complexo devido à

necessidade de apresentar a exata direção do vento, diferente dos sensores anemômetro e

pluviômetro que registrando apenas cada ciclo de medida pode-se obter o resultado esperado.

Page 59: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

60

Para efetuar a leitura da temperatura do ambiente em que esta inserida a estação

proposta, foi utilizado um sensor composto de um circuito integrado chamado LM35 no qual

foi desenvolvido especificamente para medir temperaturas de ambientes.

Além de este sensor ser de fácil manuseio e entendimento, o mesmo é ideal para medir

temperatura de ambientes que não necessitam de exatidão nos resultados. Seu funcionamento

é simples, pois ao fornecer uma tensão de 5,0 volts em seu pino de entrada o mesmo emite

através do seu pino de saída informações que corresponde à temperatura medida. Esta

informação de saída será no formato de miliampéres, ou seja, caso a saída corresponder a 225

mAh a temperatura medida pelo sensor será de 22,5°C (GUIMARÃES, 2011).

Este sensor foi conectado ao Arduino através de uma porta de alimentação para

fornecer a tensão de 5,0 volts para o mesmo e também através de uma porta analógica de

leitura e escrita para que seja possível coletar os resultados fornecidos.

O sensor escolhido para desempenhar a função de verificar o nível do rio é o sensor de

ondas ultrassônicas. Este sensor tem um alcance aproximado de dois centímetros a sete

metros de distância, tornando este o intervalo de medição para o projeto.

O funcionamento deste sensor consiste na emissão de energia através de ondas

ultrassônicas normalmente com frequências de 20 a 200 kHz (Quilohertz) onde ao baterem

nos obstáculos são refletidas em direção do sensor onde efetua a leitura deste reflexo para

poder identificar a distancia do objeto em sua direção (SANTOS, JÚNIOR e BARBOSA,

2008). Tratando-se de uma medição do nível da água do rio a superfície reflexiva será a

superfície do rio.

A forma de conexão deste sensor com o Arduino é através da porta de alimentação 5,0

volts e uma porta analógica de entrada e saída para efetuar a leitura dos dados através dos

pinos de saída de informações do sensor.

3.2 MONTAGEM DO HARDWARE

3.2.1 Montagem e posicionamento do hardware

Cada sensor envolvido no projeto passou por um processo de montagem e

posicionamento realizado com atenção a fim de capturar a informação desejada sem sofrer

interferências.

Page 60: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

61

3.2.2 Sensor de nível do rio

Este sensor responsável em verificar o nível do rio, demandou de uma atenção em

especial, pois o mesmo foi posicionado de forma suspensa sobre o espelho d’água do rio. Para

tornar isso possível o sensor foi instalado em uma tubulação do tipo PVC com 100 milímetros

de diâmetro e aproximadamente oito metros de comprimento.

Esta tubulação foi fixada na margem do rio Itajaí Açu, posicionada sobre a água de

forma que ao subir e descer o nível do rio a água infiltra pela parte inferior da tubulação e

pode ser percebida pelo sensor que efetua a leitura no interior desta tubulação. O uso desta

tubulação facilita a fixação do sensor, além de proteger contra possíveis interferências nas

leituras, ocasionadas por sujeiras que possam estar sobre a água e ondas formadas pelo

movimento da água do rio. Através da Figura 26 pode-se visualizar o posicionamento da

tubulação.

Figura 26. Foto posicionamento da tubulação sobre o rio.

Para efetuar a instalação do sensor na tubulação mencionada, o mesmo foi fixado

sobre uma tampa do mesmo material e diâmetro da tubulação. Fixar o sensor nesta tampa foi

uma estratégia para proteger a parte eletrônica do sensor da umidade e também posiciona-lo

em direção a superfície do rio exposta na parte interna da tubulação. Na Figura 27 segue

apresenta imagens do sensor fixado na tampa.

Page 61: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

62

(a) (b)

Figura 27. Sensor ultrassônico fixado: (a) Lado externo; (b) Lado interno.

A tampa foi perfurada estrategicamente com a finalidade de somente efetuar a

passagem dos dispositivos de transmissão e recepção. O objetivo de passar apenas os

transmissores, foi devido ao ganho de proteção com relação à placa de circuito eletrônico,

pois desta forma apenas estas peças são submetidas ao ambiente com maior concentração de

umidade gerada pela água do rio. Na Figura 28 segue o sensor devidamente posicionado.

Figura 28. Foto posicionamento sensor ultrassônico.

Para finalizar a instalação o sensor foi conectado ao Arduino através de um cabo com

quatro vias e aplicada uma proteção para não molhar em caso de chuva. O Cabo que foi

Page 62: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

63

conectado ao sensor fornece alimentação e possibilita que o Arduino execute os comandos de

acionamento para efetuar a leitura.

Devido à leitura apresentar o valor correspondente à distância até a superfície da água,

este valor não corresponde ao nível do rio, então é necessário realizar uma pequena calibração

dos valores através de um breve cálculo. Os valores que foram utilizados neste cálculo são o

valor fornecido pelo sensor e no mesmo instante o nível do rio coletado através de uma tábua

de maré que está instalada neste mesmo local, conforme apresentado na Figura 29.

Figura 29. Foto régua de medição tipo tábua de maré.

Efetuando esta calibração o sensor fornece o valor correspondente à distância até a

superfície da água que por sua vez pode ser utilizada para efetuar o calculo e obter o correto

nível do rio.

Page 63: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

64

3.2.3 Sensor de temperatura

Este sensor apresentou montagem mais simples, por não necessitar de instalação

distante da placa Arduino. Desta forma o sensor foi conectado ao Arduino e posicionado na

parte inferior da caixa de passagem hermética.

Para fixar foi utilizado um dispositivo de passagem e vedação de cabos onde o sensor

foi posicionado e prensado com o auxilio da borracha de vedação evitando assim possível

infiltração que poderia danificar o mesmo.

A forma em que o sensor foi posicionado possibilita a coleta da temperatura do

ambiente externo não sendo afetado pelo possível aquecimento interno da caixa hermética. A

Figura 30 apresenta a caixa hermética com o sensor posicionado de acordo com a descrição

acima.

Figura 30. Sensor de temperatura posicionado.

3.2.4 Sensor de vento e precipitação

Os sensores de vento e chuva foram montados e fixados em uma haste de sustentação

metálica com aproximadamente dois metros de tamanho, onde também facilitou a instalação

da caixa hermética e o posicionamento dos sensores de acordo com a necessidade de cada um.

Esta haste teve como requisito de fixação dois critérios que influenciam diretamente

nos resultados dos sensores pluviômetro e cata vento, caso não estejam em conformidade.

Estes critérios são: firmeza e alinhamento vertical.

Page 64: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

65

1. Firmeza: É necessário para que não interfira na medição do sensor de chuva, uma

vez que o pluviômetro realiza a medição com base em uma pequena amostra de

liquido coletado, ou seja, caso a haste não possuir firmeza a amostra coletada não

será do tamanho adequado gerando resultado duvidoso e incorreto;

2. Alinhamento vertical: O alinhamento vertical da haste pode influenciar

diretamente na identificação da direção do vento, pois caso esteja incorreto induz o

deslocamento das pás do cata vento para uma direção errada quando o vento

estiver fraco.

Estes requisitos foram devidamente atendidos durante a instalação utilizando

ferramenta de alinhamento ou nivelador utilizado no ramo de construção civil e tomando os

devidos cuidados durante a fixação da haste utilizando materiais como parafusos e presilhas

de pressão. O resultado pode ser visualizado na Figura 31.

(a) (b)

Figura 31. Foto posicionamento de sensores cata vento, anemômetro e pluviômetro: (a) Exibição

sensores; (b) Exibição geral.

O cata vento demandou de outro requisito durante a instalação onde também reflete

sobre o resultado em que o mesmo fornecerá.

Page 65: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

66

Esta necessidade diz respeito às direções do vento, pois como a função deste sensor é

exatamente apresentar esta informação ele precisa estar corretamente posicionado, ou seja,

com os pontos cardeais corretamente posicionados. Para resolver este item durante a

instalação foi utilizado um aparelho GPS (Global Positioning System) da marca Garmin,

modelo Map 76csx.

O sensor de velocidade do vento conhecido como anemômetro não apresentou

necessidades específicas durante a montagem tornando a montagem deste mais simples que os

demais.

3.2.5 Central de comando

A montagem da central de comandos na qual comporta a placa Arduino, seus

acessórios, uma protoboard e as conexões com os sensores foram realizados em uma caixa

hermética devidamente preparada para ambiente externo, ou seja, podendo estar exposta ás

diversas condições climáticas.

A placa Arduino foi fixada na caixa e sobre ela foram adicionadas as placas ethernet

shield, com o cartão de memória, o dispositivo RTC e a placa onde foram efetuadas as

conexões com os sensores, a protoboard. Na parte inferior da caixa foi efetuada a passagem

dos cabos de alimentação, rede de comunicação TCP/IP e os cabos de conexão com os

sensores. A central de comando pode ser visualizada na Figura 33 para melhor entendimento.

Page 66: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

67

Figura 32. Interior da caixa de comando.

Esta caixa foi fixada na estrutura montada para os sensores de vento e chuva

facilitando a conexão entre os sensores como também a fonte de alimentação e o ponto de

rede de dados que também ficaram próximos ao local.

3.3 IMPLEMENTAÇÃO DO SOFTWARE

Conforme projetado o desenvolvimento do software foi realizado através da interface

IDE da própria plataforma Arduino utilizando a linguagem de programação da mesma.

3.3.1 Coleta de informações

Ao ser ligada a estação executa uma verificação da conexão com o cartão de memória

e inicializa o servidor web disponibilizando a interface de visualização dos dados coletados

para que o usuário já possa acessá-la mesmo se não houver dados a serem mostrados. Em

Page 67: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

68

seguida a mesma aguarda pela coleta agendada e assim que o tempo de espera se esgota a

coleta é iniciada.

O procedimento de coleta desenvolvido efetua a coleta das informações seguindo a

seguinte ordem:

1. Nível do rio;

2. Temperatura;

3. Velocidade do vento;

4. Direção do vento;

5. Precipitação.

Cada etapa citada possui um procedimento de coleta envolvendo o respectivo sensor.

Ao capturar a informação a mesma é devidamente tratada para transforma-la em informação

válida para armazena-la no cartão de memória através de um arquivo em formato XML

(Extensible Markup Language) ao término das cinco etapas citadas. A especificação do

arquivo gerado segue apresentada no Apêndice C deste documento.

3.3.1.1 Nível do rio

A coleta do nível do rio ocorre primeiramente com o auxílio de uma função

pertencente à biblioteca necessária para utilizar o sensor ultrassônico. Esta biblioteca é

intitulada como “Ultrassonic.h” e possui uma função que retorna o valor correspondente a

distância dos objetos em frente ao sensor.

Ao chamar a função “ultrassonic.Ranging()” a mesma gera um comando enviando

ondas ultrassônicas através do dispositivo transmissor e efetua a leitura do dispositivo

receptor onde calcula a distância do objeto com base nos reflexos da onda emitida. Segue na

Figura 33 o sensor ultrassônico destacando o dispositivo transmissor e receptor representados

pelas letras “T” e “R” para melhor entendimento.

Page 68: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

69

Figura 33. Sensor ultrassônico HC-SR04.

A variável utilizada “nivelRio” é do tipo byte e armazena o valor retornado pela

função na qual se passa por parâmetro as siglas “CM” para informar que o retorno deverá ser

em grandeza de centímetros.

O valor retornado corresponde à distância entre o sensor e a superfície da água do rio,

então é necessário executar um cálculo para chegar ao valor correto do nível do rio, pois o

valor que deve ser mostrado é a distância entre a água e um ponto específico denominado em

estado zero da maré. Este cálculo é realizado utilizando o valor retornado pela função e o

valor coletado no momento de calibração do sensor. No Quadro 6 segue apresentado o trecho

de código-fonte referente a esta função de cálculo do nível do rio.

Quadro 6. Código-fonte: função coleta nível do rio

nivelRio = ultrasonic.Ranging(CM);

nivelRio = valorCalibraRio - nivelRio;

3.3.1.2 Temperatura

A coleta da temperatura do ambiente efetuada através do sensor LM35 é efetuada

através de uma conexão do sensor na porta numero um das portas analógicas da plataforma

Arduino. Para este sensor é utilizado uma porta analógica por ser necessário apanhar o retorno

do mesmo que é equivalente a um valor analógico. Para coleta esta informação foi

desenvolvida uma função na qual está apresentada no Quadro 7.

Page 69: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

70

Quadro 7. Código-fonte: função coleta temperatura

byte capturaTemperatura(){

int tempST = 0;

for (byte i = 0; i <= 7; i++){

tempST=tempST+(5.0*analogRead(PIN_SENSOR_TEMP)*100.0)/1024.0;

delay(1000);

}

return (tempST/8.0);

}

Esta função realiza a coleta de uma amostra de oito temperaturas com um intervalo de

um segundo a cada coleta, totalizando em um tempo total de oito segundos. A partir desta

amostra uma média aritmética é realizada obtendo o valor mais preciso e este é apresentado

como resultado.

3.3.1.3 Velocidade do vento

A coleta da velocidade do vento é realizada no Arduino através da porta digital

número dois na qual está preparada para uso da função de interrupção. Esta função incrementa

uma variável a cada vez que o sensor aciona um contato eletrônico em seu interior. Esta

variável armazena a contagem de acionamentos efetuados durante o tempo em que a estação

esta aguardando a próxima leitura.

Durante a coleta esta variável contendo o numero de acionamentos efetuados é

utilizada em um cálculo para identificar o valor correto da velocidade do vento. Além do

valor mencionado anteriormente também são utilizados neste cálculo o valor correspondente

ao intervalo entre as leituras transformado em grandeza de segundos. Segue no Quadro 8 a

função executada para coleta da velocidade do vento.

Quadro 8. Código-fonte: função coleta velocidade do vento

float calcVelocidadeVento() {

float resultado = 2.4011;

resultado *= contadorAnemometro;

resultado /= (INTERVALO_LEITURAS/1000);

contadorAnemometro = 0;

return (resultado);

}

Conforme apresentado acima o valor de 2,4011 é equivalente á velocidade em

quilômetros por hora caso cada ciclo de acionamento ocorrer em um tempo de um segundo.

Este valor é multiplicado pelo numero de acionamento e dividido pelo intervalo de tempo

Page 70: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

71

entre as coletas, transformado em grandeza de segundos. Desta forma o valor resultante será

equivalente à velocidade do vento.

3.3.1.4 Direção do vento

A coleta da direção do vento é realizada também através da porta analógica, de forma

parecida com a coleta de temperatura. A porta utilizada no Arduino para coletar a direção do

vento é a numero dois. Através desta porta é possível efetuar a leitura dos valores fornecidos

pelo sensor e trabalhar sobre eles para identificar a direção em que o vento está soprando.

O código-fonte desenvolvido faz uso de uma constante onde é definido o numero de

possíveis direções para o vento, um vetor estabelecendo os possíveis valores resultantes ao

efetuar a leitura do sensor e um vetor com as direções do vento de acordo para cada valor

encontrado no vetor de direções. Para melhor entendimento segue o trecho de código no

Quadro 9.

Quadro 9. Código-fonte: função coleta direção do vento

//Definição de variáveis

#define NUM_DIRECOES_VENTO 8

unsigned long vetorDirecoes[NUM_DIRECOES_VENTO] =

{26,45,77,118,161,196,220,256};

char *strVals[NUM_DIRECOES_VENTO] =

{"O","NO","N","SO","NE","S","SE","L"};

//função calcula direção do vento.

byte calcDirecaoVento() {

int val;

byte x, reading;

val = analogRead(PIN_CATAVENTO);

val>>=2;

reading = val;

for (x=0; x<NUM_DIRECOES_VENTO; x++) {

if (vetorDirecoes[x] >= reading)

break;

}

x = (x % 8);

return x;

}

Page 71: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

72

3.3.1.5 Precipitação

Este valor é coletado de forma semelhante ao valor da velocidade do vento, porém

apresenta um cálculo matemático mais simples.

A coleta é realizada após o término da coleta da velocidade do vento e utiliza a função

apresentada no Quadro 10.

Quadro 10. Código-fonte: função coleta precipitação

float calcVelocidadeVento() {

float resultado = 2.4011;

resultado *= contadorAnemometro;

resultado /= (INTERVALO_LEITURAS/1000);

contadorAnemometro = 0;

return (resultado);

}

O cálculo efetuado apenas multiplica a quantidade de chuva que é coletada a cada

acionamento pelo numero de acionamentos efetuados durante o intervalo de tempo em que a

coleta aguarda para ser executada. Desta forma o valor resultante é a quantidade de chuva que

caiu durante o intervalo de tempo entre as coletas.

3.3.2 Armazenamento dos dados coletados

Após concluir o procedimento de coleta das informações provenientes dos sensores,

estas precisam ser armazenadas de forma que possam ser consultadas durante um determinado

tempo após a coleta. Para atender esta necessidade foi desenvolvido um algoritmo para

montar e escrever as informações em um arquivo no formato XML no qual é gravado no

cartão de memória conectado ao acessório ethernet shield.

Neste arquivo gerado são gravadas as seguintes informações:

1. Data e hora da coleta;

2. Temperatura;

3. Velocidade do vento;

4. Direção do vento;

5. Precipitação.

Para melhor entendimento segue apresentado no Quadro 11 o algoritmo desenvolvido.

Page 72: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

73

Quadro 11. Código-fonte: função armazenamento de dados coletados

//Definição de variáveis:

Byte arquivoAtual = 0;

//função geraXML e grava no cartão de memória

void geraXML(byte temperatura, float rio, float ventoVel, byte

ventoDir, float preciptacao){

Time tempo = rtc.time();

char bufDataHora[50];

String nomeArquivoTemp = "";

char nomeArq[8];

nomeArquivoTemp = (String)arquivoAtual;

nomeArquivoTemp += ".xml";

nomeArquivoTemp.toCharArray(nomeArq, 8);

snprintf(bufDataHora, sizeof(bufDataHora), "%04d.%02d.%02d-

%02d:%02d", tempo.yr, tempo.mon, tempo.date, tempo.hr,

tempo.min);

if ((SD.exists(nomeArq))) {

SD.remove(nomeArq);

}

if (!(SD.exists(nomeArq))) {

arquivo = SD.open(nomeArq, FILE_WRITE);

if(arquivo){

arquivo.print("<registro><titulo>");

arquivo.print(bufDataHora);

arquivo.print("</titulo><temp>");

arquivo.print(temperatura);

arquivo.print("</temp><ventovel>");

arquivo.print(ventoVel);

arquivo.print("</ventovel><ventodir>");

arquivo.print(strVals[ventoDir]);

arquivo.print("</ventodir><prec>");

arquivo.print(preciptacao);

arquivo.print("</prec><rio>");

arquivo.print(rio);

arquivo.print("</rio></registro>");

arquivo.close();

}

}

if(arquivoAtual==10){

arquivoAtual=0;

}

else{

arquivoAtual++;

}

}

Durante a montagem do arquivo a ser gravado o algoritmo define o nome do arquivo e

verifica se já existe um arquivo com o nome definido. Se já existe um arquivo com o mesmo

nome este é apagado para que o novo arquivo seja gravado. Após esta verificação o arquivo

começa a ser montado de forma que o mesmo permaneça com a estrutura descrita no Quadro

12.

Page 73: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

74

Quadro 12. Estrutura arquivo XML resultante

<registro>

<titulo>DATA E HORA</titulo>

<temp>TEMPERATURA</temp>

<ventovel>VELOCIDADE DO VENTO</ventovel>

<ventodir>DIRECAO DO VENTO</ventodir>

<prec>PRECIPITACAO</prec>

<rio>NIVEL DO RIO</rio>

</registro>

O arquivo gerado permanece armazenado durante dez leituras e na décima primeira

leitura o arquivo mais velho será apagado para que seja armazenado um arquivo novo. Estes

arquivos são mantidos salvos para que seja possível mostrar um histórico das ultimas dez

leituras efetuadas. Na Figura 34 segue representação da forma que os arquivos permanecerão

no interior do cartão de memória após serem gravados.

Figura 34. Estrutura de arquivos gerados.

Posteriormente estes arquivos serão carregados na interface de visualização das coletas

para que o usuário possa ter acesso ás informações capturadas nas ultimas coletas.

3.3.3 Interface de visualização de informações

A interface de visualização das informações coletas foi desenvolvida com o objetivo

de apresentar ao usuário de forma simples e objetiva os dados coletados pela central. Além

disso, esta interface ainda tem que respeitar limitações de desempenho da plataforma Arduino

tornando obrigatório o quesito simplicidade.

Page 74: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

75

O desenvolvimento foi realizado com através da linguagem HTML que além de ser

simples pode ser facilmente interpretada pelo Arduino facilitando no momento de carregar os

dados das coletas realizadas e disponibilizá-lo para consulta.

O código-fonte da interface foi dividido em três partes onde duas delas foram

separadas em arquivos gravados no cartão de memória e a terceira foi inserida junto ao código

fonte da aplicação na plataforma Arduino.

As partes gravadas no cartão de memória são carregadas pelo Arduino quando a

visualização da interface é requisitada através do navegador de internet e a terceira parte da

interface complementa as outras duas partes já carregadas com as informações referentes aos

dados climáticos coletados.

Durante a disponibilização dos dados da terceira parte da interface, o Arduino efetua

uma busca pelos arquivos armazenados no cartão de memória coletando as informações de

cada arquivo e carregando-as na interface. Desta forma a interface é carregada juntamente

com os dados climáticos a serem exibidos. Através da Figura 35 é possível visualizar os

arquivos da interface web armazenados no cartão de memória.

Figura 35. Arquivos interface web no cartão de memória.

Após concluir a montagem da interface web a mesma será apresentada ao usuário

conforme exibida na Figura 36.

Figura 36. Interface web consulta de dados.

Page 75: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

76

3.4 AVALIAÇÃO DE RESULTADOS

Após realizar a instalação da estação de coleta a mesma permaneceu ligada durante

alguns dias com o objetivo de coletar informações climáticas do local em que foi instalada.

Através dos dados coletados foi possível analisar a solução apresentada neste trabalho,

identificar os pontos positivos e possibilidades de melhoria.

O processo de análise dos dados coletados foi realizado utilizando informações

recolhidas em determinado período através de duas estações meteorológicas distintas. Estas

apesar de estarem posicionadas geograficamente na mesma região, não estavam exatamente

no mesmo local. Os dados analisados foram gerados pela estação desenvolvida neste trabalho

e dados da Estação Meteorológica da Univali, fornecidos pelo laboratório de climatologia da

universidade.

3.4.1 Temperatura

Através da Figura 37 podem ser visualizados os valores referentes à temperatura,

coletados no dia dezoito de novembro em ambas as estações. Os valores apresentados indicam

similaridade com poucas variações entre cada coleta.

Figura 37. Comparativo de temperatura.

Page 76: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

77

3.4.2 Velocidade do vento

Com relação aos valores de velocidade do vento os resultados entre as estações

apresentam variações como podem ser observadas na Figura 38. Considerando que a

divergência dos valores pode estar relacionada à localização das estações este tipo de situação

já era esperado, pois enquanto uma estação pode receber rajadas de vento mais fortes a outra

pode não os receber.

Figura 38. Comparativa velocidade do vento.

3.4.3 Direção do vento

Com relação à direção do vento esta também demonstrou variações nos resultados

comparados, conforme pode ser visualizado através do Quadro 13. Analisando com atenção

pode-se observar dois fatores importantes que podem justificar parcialmente as variações

identificadas. O primeiro fator está relacionado à velocidade do vento, pois conforme

apresentado na Figura 38 a estação da universidade não registrou valores neste aspecto, o que

significa que os valores de direção do vento apresentado na tabela para alguns horários não

refletem com a realidade. O segundo favor é a similaridade entre as leituras da estação

desenvolvida, pois mesmo não coincidindo com os valores da estação da universidade, as

direções de vento registradas apresentam comportamento com poucas variações entre as

leituras. Isso indica que pode ter ocorrido um possível erro no posicionamento do sensor ou

então uma real diferença nos valores devido a localização das estações.

Page 77: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

78

Quadro 13. Direção do vento dia 19/11/2013 Hora Direção do vento (Estação Arduino) Direção do vento (Estação Univali)

00:00 SE S

01:00 S E

02:00 S E

03:00 S E

04:00 S E

05:00 E S

06:00 S S

07:00 NE NW

08:00 SW N

09:00 E S

10:00 S SW

11:00 S SW

12:00 E NW

13:00 E N

14:00 S N

15:00 SW N

16:00 W NE

17:00 SW NE

18:00 SW N

19:00 S N

20:00 W NE

21:00 SW NE

22:00 SW NE

23:00 SW NE

3.4.4 Precipitação de chuva

Referente aos valores de precipitação de chuva apresentados na Figura 39 e Figura 40,

pode-se observar que houve registros em ambas as estações e a maioria apresentou relação

entre as estações.

Figura 39. Comparativo precipitação de chuva.

Page 78: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

79

Para os registros em que apresentaram variações entre as estações, também pode estar

relacionada à localização das mesmas, pois pode facilmente ocorrer chuvas mais fortes em

uma determinada área do que as outras áreas que a cerca.

Figura 40. Comparativo precipitação de chuva.

3.4.5 Nível do rio Itajaí-Açú

Com relação aos dados referentes ao nível do rio, podem-se observar valores

homogêneos com exceção em algumas horas do dia, em que o valor apresentado pelo sensor

não confere com a realidade sendo muito acima do esperado conforme apresentado na Figura

41.

Figura 41. Resultados nível do rio Itajaí-açú.

Esta situação também pode ser percebida na Figura 42 onde apenas em alguns horários

os valores permanecem acima do esperado. Este comportamento indica que ocorreu um erro

na leitura do sensor, tornando os valores dos períodos citados incorretos. O erro pode ter sido

Page 79: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

80

causado por uma falha durante o processo de instalação do sensor, onde ficou com pouco

aperto na extremidade da tubulação, parte esta que permanece submersa. Devido a este

problema a tubulação sofre deslocamento de sua extremidade formando uma envergadura

causada pela pressão da água do rio, principalmente quando ocorre a passagem de

embarcações.

Figura 42. Resultados nível do rio Itajaí-açú.

Page 80: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

81

4 CONCLUSÕES

Neste trabalho o principal objetivo foi utilizar a plataforma Arduino para desenvolver

uma estação de coleta de dados climáticos, onde fosse possível coletar os dados de

temperatura, velocidade e direção do vento, precipitação de chuva e o nível do rio Itajaí-açú.

Esta necessidade surgiu durante uma discussão sobre como medir dados climáticos e ao

mesmo tempo se ter uma solução simples e objetiva no ambiente corporativo sem grandes

investimentos. O trabalho propiciou conhecer uma nova tecnologia como a plataforma de

prototipagem eletrônica Arduino, a qual já vinha oferecendo novidades no âmbito acadêmico.

Desta maneira tornou-se além de um trabalho acadêmico uma utilização na empresa

em que foi instalado. Realizar o desenvolvimento de uma solução que pudesse proporcionar

uma facilidade tanto para o ambiente corporativo como para uma comunidade. Tornou-se uma

grande motivação e estímulo a possibilidade de apresentar uma solução de interação com um

ambiente físico e o lógico, unindo o software ao hardware em um projeto de conclusão de

curso.

Buscando este objetivo o trabalho tomou fundamentos apresentando crescimento até a

etapa de desenvolvimento na qual foi possível dar formas ao que até então era apenas um

projeto. A partir deste momento surgiram algumas dúvidas e dificuldades nas quais

precisaram ser superadas para que o trabalho pudesse prosseguir. Dentre estas dificuldades

podem-se elencar as mais complexas como as seguintes:

1. Compra dos dispositivos sensores: Durante a compra dos dispositivos sensores foi

necessário efetuar a importação dos sensores de vento e chuva o que gerou um

custo alem do previsto e também o prazo de entrega do produto adquirido foi

maior do que o esperado refletindo sobre o cronograma gerando atraso.

2. Limitação de hardware na plataforma Arduino: Foi identificada uma limitação de

hardware na plataforma Arduino com relação ao tamanho de memória SRAM, na

qual o modelo UNO inicialmente adotado para o projeto não supria as

necessidades a partir do momento em que inicio o desenvolvimento dos métodos

de leitura e escrita no cartão de memória. A solução adotada para este problema foi

a troca de modelo da plataforma Arduino para o modelo Mega 1280, a qual possui

maior capacidade de memória.

Page 81: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

82

3. Necessidade de um dispositivo para controle de tempo: A partir do momento em

que iniciou a etapa de produção de leituras dos sensores identificou-se dificuldades

em trabalhar com o tempo na plataforma Arduino, sem um dispositivo de controle

de tempo. Para resolver esta necessidade foi adicionado ao projeto um dispositivo

RTC onde apesar de demandar de certo tempo para aprender a manusea-lo o

mesmo apresentou bons resultados e possibilitou o andamento da fase de

desenvolvimento.

Com relação à metodologia de desenvolvimento do projeto pode-se considerar que foi

a mais adequada possível, pois possibilitou o bom desenvolvimento do trabalho e seus

objetivos foram alcançados. Os resultados foram coletados e comparados com os dados

fornecidos pela Estação Meteorológica da Univali, os quais na grande maioria apresentaram

similaridade. Apesar disso foram identificadas algumas discrepâncias nos valores as quais

foram comentadas no item Avaliação de Resultados. Como resultado desta comparação foi

possível avaliar a solução proposta e também identificar algumas possibilidades de melhoria

que podem ser adotadas como trabalhos futuros.

4.1 TRABALHOS FUTUROS

Como possibilidade de melhorias e trabalhos futuros podem ser citados os seguintes

itens:

1. Foi identificada uma falha relacionada ao posicionamento do sensor de nível do rio

que gerou um comprometimento de uma parte pequena das leituras efetuadas. Este problema

pode ser ajustado corrigindo o posicionamento do sensor e melhorando a fixação da tubulação

em que o mesmo foi instalado. Desta forma os dados a serem coletados apresentarão maior

confiabilidade.

2. Apesar do processo de avaliação de resultados ter apresentado uma comparação

entre a estação desenvolvida e a Estação Meteorológica da Univali, estas não estavam

instaladas fisicamente no mesmo local o que ocasionou uma dificuldade no momento de

comparar os valores produzidos por ambas, pois apresentaram variações. Como sugestão de

melhoria seria efetuar a validação dos resultados ainda comparando valores com uma estação

Page 82: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

83

já instalada, porém ambas precisam estar no mesmo local podendo assim conseguir uma

afirmação mais precisa dos valores produzidos pela solução desenvolvida.

3. Desenvolver uma API (Application Programming Interface) ou um WebService que

possibilite fazer uso da plataforma Arduino apenas para coleta de dados, submetendo a tarefa

de tratamento e disponibilização dos dados coletados a outras ferramentas. Desta forma os

recursos de hardware da plataforma Arduino seriam utilizados exclusivamente para as coletas

de informações tornando esta atividade mais eficiente. Quanto ao tratamento e

disponibilização dos dados esta poderia receber maiores cuidados tendo em vista que as

limitações de hardware do Arduino não serão mais um empecilho para apresentar melhores

recursos ao usuário.

4. Adicionar dispositivos que possam agregar outras funções á estação como, por

exemplo, outros sensores e também métodos de alerta de emergências climáticas através de e-

mail ou mensagens de SMS.

Page 83: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

84

REFERÊNCIAS

ANTENARIO. Antenario, 2013. Disponivel em: <www.antenario.com.br>. Acesso em: 03

jul. 2013.

ARDUINO. Site Oficial, 2013. Disponivel em: <http://www.arduino.cc>. Acesso em: 15 mar.

2013.

ARDUINO BRASIL. Arduino Brasil, 2011. Disponivel em: <www.arduinobrasil.com>.

Acesso em: 30 mai. 2013.

ARGENT, D. S. Weather Sensor Assembly p/n 80422, 2013. Disponivel em:

<https://www.sparkfun.com/datasheets/Sensors/Weather/Weather%20Sensor%20Assembly.p

df>. Acesso em: 15 mai. 2013.

BANZI, M. Primeiros passos com o arduino. São Paulo: Novatec, 2011.

BARBOZA, C. H. Sociedade Brasileira de Meteorologia, 2006. Disponivel em:

<http://www.sbmet.org.br/userfiles/Historia_Meteorologia.pdf>. Acesso em: 01 abr. 2013.

BENTES, L. M. A. Guia do Hardware. Arduino: hardware e software open-source, 2011.

Disponivel em: <http://www.hardware.com.br/artigos/arduino>. Acesso em: 18 mar. 2013.

BINDI, L. F. Editora Librera, 2013. Disponivel em:

<http://www.libreria.com.br/artigos.asp?id_artigo=502>. Acesso em: 10 mar. 2013.

BISCARO, G. A. Meteorologia agrícola básica. Cassilândia-MS: União, 2007.

BRAIN, M. Como tudo funciona, 2013. Disponivel em:

<http://eletronicos.hsw.uol.com.br/microcontroladores.htm/printable>. Acesso em: 23 mar.

2013.

FERREIRA, J. M. M. Introdução ao projecto com sistemas digitais e microcontroladores.

Porto: FEUP (Faculdade de Engenharia da Universidade do Porto), 1998. 378 p.

FURTADO, V. Tecnologia e gestão da informação na segurança pública. Rio de Janeiro:

Garamond Ltda, 2002.

GUIMARÃES, V. G. Automação e monitoramento remoto de sistema de irrigação na

agricultura. Universidade de Brasilia. Brasilia-DF, p. 91. 2011.

HELLER, L.; PÁDUA, V. L. D. Abastecimento de água para consumo humano. Belo

Horizonte-MG: UFMG, 2006.

MATTOS, U. A. D. O.; MÁSCULO, F. S. Higiene e segurança do trabalho. Rio de Janeiro:

Elsevier, 2011.

Page 84: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

85

NATIONAL SEMICONDUCTOR. LM35 Precision centigrade temperature sensors. Texas

Instruments, 2000. Disponivel em: <http://www.ti.com/lit/ds/symlink/lm35.pdf>. Acesso

em: 30 mai. 2013.

NISHIBE, C. A.; COIMBRA, R. V. E.; JUNIOR, S. A. D. A. Montagem de uma estação

meteorológica para o estudo de transdutores. Curitiba. 2009. Disponivel em:<

http://www.pessoal.utfpr.edu.br/msergio/Monog-09-1-Estacao-meteorologica.pdf>. Acessado

em: 15 abr. 2013.

PAIVA, C. K. A. Palestrantes Especiais, 2010. Disponivel em:

<http://palestrasespeciais.blogspot.com.br/2010/12/meteorologia.html>. Acesso em: 15 mar.

2013.

PEREIRA, L. A. M. Robô autômato para monitoramento de rebanho e medição da

forragem do pasto. São Paulo-SP: Biblioteca 24 Horas, 2011.

PINHEIRO, J. M. S. Projeto de Redes. Sistemas de automação, 2004. Disponivel em:

<http://www.projetoderedes.com.br/artigos/artigo_sistemas_automacao.php>. Acesso em: 14

out. 2012.

PINTO, M. S. S. Especificações de projetos para medição de velocidade de vento

utilizando anemômetro ultrassônico com o metodo de diferença de fase. Universidade

Federal do Maranhão. São Luiz-MA, p. 70. 2006. Disponivel em:<

http://www.tedebc.ufma.br/tde_arquivos/10/TDE-2007-10-19T200254Z-

53/Publico/Mauro%20Sergio%20Silva%20Pinto.pdf>. Acessado em: 01 jun. 2013.

PROCESSING.ORG. Processing.org, 2001. Disponivel em: <www.processing.org>. Acesso

em: 30 mai. 2013.

ROSÁRIO, J. M. Automação industrial. São Paulo: Baraúna, 2009.

SABO, P. H. et al. Sistema embarcado para aquisição de dados agrometeorológicos, Maringá,

p. 12, 2010. Disponivel em: <http://sbesc.lisha.ufsc.br>. Acesso em: 15 abr. 2013.

SANTOS, J. L. D.; JÚNIOR, C. L. N.; BARBOSA, L. F. W. Universidade Federal de Santa

Catariana. Laboratorio de planejamento de sistemas de energia elétrica, São José dos

Campos, 2008. Disponivel em:

<http://www.labplan.ufsc.br/congressos/CBA2008/textos/CBA_2008_Artigos/38419.pdf>.

Acesso em: 21 mai. 2013.

SILVEIRA, J. A. D. Arduino-Cartilha para Programacao em C. Revista do arduino, 2012.

Disponivel em: <www.revistadoarduino.com.br>. Acesso em: 01 jun. 2013.

SUÁREZ, L. L. Conhecimento sensorial-uma análise segundo a perspectiva da semiótica

computacional. UNICAMP-Universidade de Campinas-SP. Campinas-SP. 2000. Disponivel

em:< www.dca.fee.unicamp.br/~gudwin/ftp/publications/TeseLizet.pdf>. Acessado em: 21

mai. 2013.

Page 85: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

86

TURNER, L. W. Eletrônica aplicada. Curitiba: Hemus, 2004.

VILARINHO, S. D. F. S. Influência da localização, nas medições efectuadas po uma

estação meteorológica, no campus de Gualmar. Universidade do Minho. Braga (Portugal).

2009. Disponivel em:< http://repositorium.sdum.uminho.pt/bitstream/1822/10849/1/tese.pdf>.

Acessado em: 22 abr. 2013.

Page 86: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

87

APÊNDICE A. CÓDIGO FONTE DO SOFTWARE

Nesta sessão será apresentado o código fonte do software desenvolvido para a

plataforma Arduino através do conteúdo do Quadro 14.

Quadro 14. Código fonte do software desenvolvido

//Bibliotecas utilizadas

#include <Ultrasonic.h>

#include <SPI.h>

#include <Ethernet.h>

#include <SD.h>

#include <stdio.h>

#include <string.h>

#include <DS1302.h>

//Definiçao de constantes

#define PIN_SENSOR_TEMP 0

#define PIN_ANEMOMETRO 2

#define PIN_PLUVIOMETRO 3

#define PIN_CATAVENTO 1

#define NUM_DIRECOES_VENTO 8

#define NUM_LEITURAS 11

#define INTERVALO_LEITURAS 3600000 //(3600000= 60 min)

//Definição de variáveis

volatile int contadorAnemometro = 0; //Variavel incrementada por

interrupcao

volatile int contadorPluviometro = 0; //Variavel incrementada por

interrupcao

unsigned long proximaLeitura;//Tempo entre leituras dos sensores

unsigned long time; //Guardar tempo entre leituras.

unsigned long vetorDirecoes[NUM_DIRECOES_VENTO] = { 26, 45, 77,

118, 161, 196, 220, 256};

char *strVals[NUM_DIRECOES_VENTO] = {

"W","NW","N","SW","NE","S","SE","E"};

uint8_t CE_PIN = 5;

uint8_t IO_PIN = 6;

uint8_t SCLK_PIN = 7;

DS1302 rtc(CE_PIN, IO_PIN, SCLK_PIN);

Ultrasonic ultrasonic(8,9); //Pin8= trinPin-Pin9= echoPin

float nivelRio;

float valorCalibraRio = 4;

byte temperatura;

float velVento;

byte dirVento;

float precipitacao;

File arquivo;

byte arquivoAtual=0;

byte arquivoAnterior;

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

IPAddress ip(10,15,6,86);

EthernetServer server(80);

void setup(){

if(!SD.begin(4)){

return;

Page 87: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

88

}

Ethernet.begin(mac, ip); // inicializa conexao ethernet

server.begin(); //inicializa servidor web

pinMode(PIN_ANEMOMETRO, INPUT);

digitalWrite(PIN_ANEMOMETRO, HIGH);

digitalWrite(PIN_PLUVIOMETRO, HIGH);

attachInterrupt(0, contaAnemometro, FALLING); //metodo que aciona

a funcao atraves de interrupção

attachInterrupt(1, contaPluviometro, FALLING); //metodo que

aciona a funcao atraves de interrupção

proximaLeitura = millis() + INTERVALO_LEITURAS;

rtc.write_protect(true);

rtc.halt(false);

Time t(2013, 11, 01, 19, 44, 00, 5);

rtc.time(t);

}

//Função principal

void loop(){

time = millis();

if (time >= proximaLeitura) {

nivelRio = ultrasonic.Ranging(CM);

nivelRio = (valorCalibraRio - nivelRio);

temperatura = capturaTemperatura();

velVento = calcVelocidadeVento();

dirVento = calcDirecaoVento();

precipitacao = calculaPrecipitacao();

geraXML(temperatura,(nivelRio/100),velVento,dirVento,precipitacao);

proximaLeitura = time + INTERVALO_LEITURAS;

}

//Servidor Web aguardando por requisições

EthernetClient client = server.available();

if (client) {

boolean currentLineIsBlank = true;

while (client.connected()) {

if (client.available()) {

char c = client.read();

Serial.write(c);

if (c == '\n' && currentLineIsBlank) {

client.println("HTTP/1.1 200 OK");

client.println("Content-Type: text/html");

client.println("Connection: close");

client.println();

arquivo = SD.open("index1.htm"); //abre arquivo do SDCard

if(arquivo){

while(arquivo.available()){//carrega conteúdo arquivo

index1.htm(interface usuario)

client.write(arquivo.read());

}

arquivo.close();

}

//montagem da parte 2 da interface do usuario

byte arqExibir = arquivoAtual;

for(byte k=0; k < NUM_LEITURAS; k++){

if(arqExibir==0){

arqExibir = (NUM_LEITURAS -1);

}else{

arqExibir -= 1;

}

Page 88: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

89

String conteudo = "";

String arq = (String)arqExibir;

arq += ".xml";

char nome[8], fragmento;

boolean armazenaTitulo=false, armazenaConteudo=false;

arq.toCharArray(nome, 8);

arq = "";

client.print("<tr>"); //inicializa o bloco html ref aos

valores

if ((SD.exists(nome))) {

arquivo = SD.open(nome);

if(arquivo){

while(arquivo.available()){

fragmento = arquivo.read();

if(armazenaTitulo){

arq += fragmento;

}else{

if(armazenaConteudo && !(fragmento == 60)){

conteudo += fragmento;

}

}

if(fragmento == 60){

if(!conteudo.equals("")){

if(arq.equals("<titulo>")){

client.print("<td>");

client.print(conteudo);

client.print("</td>");

}else{

if(arq.equals("<temp>")){

client.print("<td>");

client.print(conteudo);

client.print(" °C");

client.print("</td>");

}else{

if(arq.equals("<ventovel>")){

client.print("<td>");

client.print(conteudo);

client.print(" km/h");

client.print("</td>");

}else{

if(arq.equals("<ventodir>")){

client.print("<td>");

client.print(conteudo);

client.print("</td>");

}else{

if(arq.equals("<prec>")){

client.print("<td>");

client.print(conteudo);

client.print(" mm");

client.print("</td>");

}else{

if(arq.equals("<rio>")){

client.print("<td>");

client.print(conteudo);

client.print("</td>");

}

}

}

}

}

}

Page 89: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

90

conteudo = "";

arq = "";

}

arq = "";

armazenaTitulo = true;

arq += fragmento;

armazenaConteudo = false;

}else{

if(fragmento == 62){

armazenaTitulo = false;

armazenaConteudo = true;

}

}

}

}

arquivo.close();

}else{//preenche campos caso não tenha conteudo a ser

exibido.

client.print("<td> - </td><td> - </td><td> -

</td><td> - </td><td> - </td><td> - </td>");

}

client.print("</tr>");//fecha o bloco valores cod. html

if(k==0){

arquivo = SD.open("index2.htm"); //carrega arquivo

index2.htm do SDCard(parte final interface usuário)

if(arquivo){

while(arquivo.available()){

client.write(arquivo.read());

}

arquivo.close();

}

}else{

if((NUM_LEITURAS - k)==1){

client.print("</tbody></table></div></div></body></html>");

}

}

}

break;

}

if (c == '\n') {

currentLineIsBlank = true;

}

else if (c != '\r') {

currentLineIsBlank = false;

}

}

}

delay(1);

client.flush();

client.stop();

}

}

//Funcoes de coleta

void contaAnemometro() { contadorAnemometro++; }

void contaPluviometro() { contadorPluviometro++; }

//Gera arquivo xml e grava no cartao SD.

void geraXML(byte temperatura, float rio, float ventoVel, byte

ventoDir, float preciptacao){

Page 90: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

91

Time tempo = rtc.time();

char bufDataHora[50];

String nomeArquivoTemp = "";

char nomeArq[8];

nomeArquivoTemp = (String)arquivoAtual;

nomeArquivoTemp += ".xml";

nomeArquivoTemp.toCharArray(nomeArq, 8);

snprintf(bufDataHora, sizeof(bufDataHora), "%04d.%02d.%02d-

%02d:%02d", tempo.yr, tempo.mon, tempo.date, tempo.hr, tempo.min);

if ((SD.exists(nomeArq))) {

SD.remove(nomeArq);

}

if (!(SD.exists(nomeArq))) {

arquivo = SD.open(nomeArq, FILE_WRITE);

if(arquivo){

arquivo.print("<registro><titulo>");

arquivo.print(bufDataHora);

arquivo.print("</titulo><temp>");

arquivo.print(temperatura);

arquivo.print("</temp><ventovel>");

arquivo.print(ventoVel);

arquivo.print("</ventovel><ventodir>");

arquivo.print(strVals[ventoDir]);

arquivo.print("</ventodir><prec>");

arquivo.print(preciptacao);

arquivo.print("</prec><rio>");

arquivo.print(rio);

arquivo.print("</rio></registro>");

arquivo.close();

}

}

if(arquivoAtual==0){

arquivoAnterior=10;

}

else{

arquivoAnterior = arquivoAtual;

}

if(arquivoAtual==10){

arquivoAtual=0;

}

else{

arquivoAtual++;

}

}

//Calculo da Direcao do Vento

byte calcDirecaoVento() {

int val;

byte x, reading;

val = analogRead(PIN_CATAVENTO);

val >>=2;

reading = val;

for (x=0; x<NUM_DIRECOES_VENTO; x++) {

if (vetorDirecoes[x] >= reading)

break;

}

x = (x % 8);

return x;

}

// Calculo da Velocidade do Vento(1 volta/sec = 2.40114125 kph)

Page 91: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

92

float calcVelocidadeVento() {

float resultado = 2.40114125;

resultado *= contadorAnemometro;

resultado /= (INTERVALO_LEITURAS/1000);

contadorAnemometro = 0;

return (resultado);

}

// Calculo da preciptação (1 acionamento = 0.2794 mm)

float calculaPrecipitacao() {

float resultado = 0.2794;

resultado *= contadorPluviometro;

contadorPluviometro = 0;

return (resultado);

}

//Coletando valores de temperatura.

byte capturaTemperatura(){

int tempST = 0;

for (byte i = 0; i <= 7; i++){ // apanha 8 valores de amostra

tempST = tempST + (5.0 * analogRead(PIN_SENSOR_TEMP) *

100.0)/1024.0;

delay(1000);

}

return (tempST/8.0); //melhor precisao

}

Page 92: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

93

APÊNDICE B. CÓDIGO FONTE INTERFACE DO USUÁRIO

Nesta sessão será apresentado o código fonte da interface de visualização de dados

coletados desenvolvida para que o usuário pudesse visualizar os dados resultantes das ultimas

coletas realizadas. O código apresentado no Quadro 15 apresenta valores fictícios na área de

definição da tabela, porém estes valores são devidamente preenchidos pelo Arduino durante a

exibição desta interface.

Quadro 15. Código fonte da interface do usuário

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html;

charset=utf-8" />

<title> Coleta de dados meteorol&oacutegicos </title>

<style>

body {

margin:0%;

padding:0%;

font-family:"Trebuchet

MS",Arial,Helvetica,sans-serif;

color:#666;

}

#painelPrincipal {

width:100%;

height:auto;

margin:0%;

}

#painelTopo {

padding:20px 0px;

margin:0% 15% 0% 15%;

text-align:center;

background-color:#87C8FC;

}

#painelConteudoAtual {

margin:7% 15% 0% 15%;

font-size:14px;

background-color:#87C8FC;

}

#painelConteudoAnterior {

margin:0.5% 15% 0% 15%;

font-size:14px;

background-color:#BBDFFD;

Page 93: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

94

}

.painelConteudo {

width:70%;

height:auto;

border-width:1px;

border-style:solid;

border-color:#87C8FC;

border-radius:2px;

}

.tabelaDados {

width:100%;

height:auto;

text-align:center;

border-collapse:collapse;

}

.tabelaDados th {

width:150px;

height:auto;

padding:0px;

font-weight:bold;

}

.tabelaDados td {

width:150px;

height:auto;

padding:1px 0px;

}

#leiturasAnteriores.tabelaDados tbody

tr:hover {

background-color:#87C8FC;

}

</style>

</head>

<body>

<div id="painelPrincipal">

<div id="painelTopo" class="painelConteudo">

<h1>

ESTAÇÃO DE COLETA DE DADOS

METEOROL&Oacute;GICOS

</h1>

</div>

<div id="painelConteudoAtual" class="painelConteudo">

<table id="leiturasAtuais"

class="tabelaDados">

<thead>

<tr>

<th title="Temperatura do ambiente">

Temperatura </th>

<th> Velocidade do vento</th>

<th> Direção do vento </th>

Page 94: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

95

<th> Nivel do rio </th>

<th> Precipitação </th>

</tr>

</thead>

<tbody>

<tr>

<td> 0 </td>

<td> 0 </td>

<td> 0 </td>

<td> 0 </td>

<td> 0 </td>

</tr>

</tbody>

</table>

</div>

<div id="painelConteudoAnterior"

class="painelConteudo">

<table id="leiturasAnteriores"

class="tabelaDados">

<tbody>

<tr>

<td> 1 </td>

<td> 1 </td>

<td> 1 </td>

<td> 1 </td>

<td> 1 </td>

</tr>

<tr>

<td> 2 </td>

<td> 2 </td>

<td> 2 </td>

<td> 2 </td>

<td> 2 </td>

</tr>

<tr>

<td> 3 </td>

<td> 3 </td>

<td> 3 </td>

<td> 3 </td>

<td> 3 </td>

</tr>

<tr>

<td> 4 </td>

<td> 4 </td>

<td> 4 </td>

<td> 4 </td>

<td> 4 </td>

</tr>

<tr>

<td> 5 </td>

<td> 5 </td>

<td> 5 </td>

<td> 5 </td>

<td> 5 </td>

</tr>

<tr>

<td> 6 </td>

<td> 6 </td>

<td> 6 </td>

<td> 6 </td>

Page 95: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

96

<td> 6 </td>

</tr>

<tr>

<td> 7 </td>

<td> 7 </td>

<td> 7 </td>

<td> 7 </td>

<td> 7 </td>

</tr>

<tr>

<td> 8 </td>

<td> 8 </td>

<td> 8 </td>

<td> 8 </td>

<td> 8 </td>

</tr>

<tr>

<td> 9 </td>

<td> 9 </td>

<td> 9 </td>

<td> 9 </td>

<td> 9 </td>

</tr>

<tr>

<td> 10 </td>

<td> 10 </td>

<td> 10 </td>

<td> 10 </td>

<td> 10 </td>

</tr>

</tbody>

</table>

</div>

</div>

</body>

</html>

Page 96: UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Anderson Ricardo Bagnara.pdf · da Computação) – Centro de Ciências Tecnológicas da Terra e do

97

APÊNDICE C. ESPECIFICAÇÃO ARQUIVO XML

O arquivo foi criado com o objetivo de armazenar os dados referentes às coletas

realizadas pela estação de coleta e poder recuperar esta informação em um segundo momento

para que o usuário possa visualiza-la através da interface web desenvolvida. Desta forma

seguem apresentados no Quadro 16 os dados que devem ser armazenados e seus respectivos

locais de armazenamento.

Quadro 16. Especificação arquivo XML

<registro>//estrutura principal

<titulo>

//data e hora da coleta

</titulo>

<temp>

//valor temperatura

</temp>

<ventovel>

//valor velocidade do vento

</ventovel>

<ventodir>

//valor direção do vento

</ventodir>

<prec>

//valor precipitação

</prec>

<rio>

//valor nível do rio

</rio>

</registro>