Post on 18-Jun-2018
UNIVERSIDADE FEDERAL DO PARANÁ
PRÓ-REITORIA DE GRADUAÇÃO
CURSO DE ENGENHARIA ELÉTRICA
JULIANA PADILHA LEITZKE
SISTEMA EMBARCADO PARA USO EM MONITOR DE PRECIPITAÇÃO A
LASER
Curitiba
2011
JULIANA PADILHA LEITZKE
SISTEMA EMBARCADO PARA USO EM MONITOR DE PRECIPITAÇÃO A
LASER
Trabalho de conclusão de curso de
Engenharia Elétrica, Departamento de
Engenharia Elétrica, Setor de Tecnologia,
Universidade Federal do Paraná.
Orientadora: Prof. Dra. Giselle Lopes Ferrari Ronque
Curitiba
2011
JULIANA PADILHA LEITZKE
SISTEMA EMBARCADO PARA USO EM MONITOR DE PRECIPITAÇÃO A
LASER
Trabalho apresentado ao curso de Engenharia Elétrica, da Universidade
Federal do Paraná, como requisito à obtenção do título de graduação.
COMISSÃO EXAMINADORA
PROF. DRA. GISELLE LOPES FERRARI RONQUE – UFPR
PROF. DR. ALESSANDRO ZIMMER – UFPR
PROF. Ph.D. ANDRÉ AUGUSTO MARIANO – UFPR
Curitiba
2011
AGRADECIMENTOS
Agradeço a Deus pela possibilidade de desenvolver esse trabalho e pela
determinação necessária para concluir o curso de graduação. À minha família pelo
apoio durante essa etapa da minha vida. Aos professores que prestaram auxílio durante
esse desenvolvimento. Ao Instituto Tecnológico SIMEPAR e seus funcionários, por
terem possibilitado minha participação em um de seus projetos.
RESUMO
Existe a necessidade no SIMEPAR de tornar o sistema de aquisição e transmissão de
dados de monitores de precipitação a laser em um equipamento autônomo, sem a
necessidade de computadores ligados diretamente ao sensor via cabo. Por isso foi
necessária a elaboração de um firmware em Java para uso em um sistema embarcado
para coleta remota de dados de um monitor de precipitação a laser da Thies Clima
utilizando o módulo GPRS TC65 da Siemens. Também foi feito o desenvolvimento de
um software complementar para apresentação gráfica dos dados. Esse projeto irá
colaborar para pesquisas meteorológicas desenvolvidas no SIMEPAR.
Palavras-chave: sistema embarcado, Java 2 ME, GPRS.
ABSTRACT
There is a need in SIMEPAR to create a system of data acquisition and transmission of
laser monitors rainfall in a stand-alone device, without the need of computers directly
connected to the sensor cable. So it was necessary to create a Java firmware for use in
an embedded system for remote collection of data from a Thies Clima laser
precipitation monitor using Siemens TC65 GPRS module. It was also developed a
complementary software for graphical presentation of the data. This project will
contribute to weather research carried out in SIMEPAR.
Keywords: embbeded system, Java 2 ME, GPRS.
LISTA DE FIGURAS
Figura 1 - Laser do disdrômetro……………………………………………………….. 15
Figura 2 - Disdrômetro Thies Clima. ………………………………………………….16
Figura 3 - TC65. ……………………………………………………………………….17
Figura 4 - Vista frontal e posterior do terminal. ………………………………………..18
Figura 5 - Sistema completo. ………………………………………………………….22
Figura 6 - Diagrama de classes do firmware. ………………………………………….23
Figura 7 - Interfaces ……………………………………………………………………27
Figura 8 - Local da instalação. …………………………………………………………28
Figura 9 - Nivelamento do disdrômetro. ……………………………………………….28
Figura 10 - Caixa com os equipamentos de transmissão. ………………………………29
Figura 11 - Sistema instalado. …………………………………………………………29
Figura 12 - Janela inicial. ………………………………………………………………30
Figura 13 - Janela com histograma. …………………………………………………….31
Figura 14 - Janela informativa de ausência de chuva. ………………………………….31
Figura 15 - Dados estatísticos. …………………………………………………………31
Figura 16 - Tabela do banco de dados. ………………………………………………..32
Figura 17 - Fluxograma do software. ………………………………………………….35
LISTA DE TABELAS
Tabela 1 – Modos de operação….…………….………………..…………….………19
Tabela 2 – Classes de diâmetro………………..……………….…………….………31
LISTA DE SIGLAS
Capes Coordenação de Aperfeiçoamento de Pessoal de Nível Superior
DC Direct Current
DSP Digital Signal Processor
FTP File Transfer Protocol
GPRS General Packet Radio Service
GPS Global Positioning System
GSM Global System for Mobile
HTTP Hypertext Transfer Protocol
IP Internet Protocol
Laser Light Amplification by Stimulated Emission of Radiation
M2M Machine-to-Machine
SIM Subscriber Identity Module
SIMEPAR Sistema Meteorológico do Paraná
SMS Short Message Service
SMTP Simple Mail Transfer Protocol
TCP Transmission Control Protocol
TDMA Time Division Multiple Access
UDP User Datagram Protocol
WWW World Wide Web
SUMÁRIO
1 INTRODUÇÃO ................................................................................................. 12
1.1 JUSTIFICATIVA ......................................................................................... 12
1.2 OBJETIVO ................................................................................................... 13
2 FUNDAMENTAÇÃO TEÓRICA .................................................................... 15
2.1 MONITOR DE PRECIPITAÇÃO A LASER ................................................. 15
2.2 SISTEMA EMBARCADO ........................................................................... 17
2.2.1 Estudo dos Comandos Disponíveis ........................................................ 19
2.2.1.1 AT^SICS............................................................................................ 20
2.2.1.2 AT^SISS ............................................................................................ 20
2.2.1.3 AT^SISW .......................................................................................... 21
2.2.1.4 AT^SISR............................................................................................ 21
2.2.1.5 AT^SJRA ........................................................................................... 21
3 DESENVOLVIMENTO .................................................................................... 22
3.1 PROGRAMAÇÃO DO TERMINAL ............................................................ 22
3.1.1 Classe Inicial ......................................................................................... 23
3.1.2 Classe de Comunicação Serial ............................................................... 24
3.1.3 Classe Auxiliar ...................................................................................... 24
3.1.4 Classe de Tratamento de Dados ............................................................. 24
3.1.5 Classe de Comunicação FTP .................................................................. 25
3.1.6 Classe de Monitoração de Memória ....................................................... 25
3.1.7 Classe para Ajuste de Hora e Data ......................................................... 25
3.1.8 Classe de Monitoração do Sistema ......................................................... 26
3.2 INSTALAÇÃO ............................................................................................. 26
3.3 SOFTWARE................................................................................................. 30
3.3.1 Tela Inicial............................................................................................. 30
3.3.2 Banco de Dados ..................................................................................... 32
3.3.3 Histograma ............................................................................................ 32
3.3.4 Dados Estatísticos .................................................................................. 33
3.3.5 Classes ................................................................................................... 34
3.3.5.1 Classe Inicial ...................................................................................... 36
3.3.5.2 Classe de Geração de Janela ............................................................... 36
3.3.5.3 Classe de Tratamento de Dados .......................................................... 36
3.3.5.4 Classe do Banco de Dados .................................................................. 36
3.3.5.5 Classe de Geração do Gráfico ............................................................. 37
3.3.5.6 Classe de Conexão FTP ...................................................................... 37
4 RESULTADOS.................................................................................................. 38
4.1 TESTES INICIAIS ....................................................................................... 38
4.2 TESTES INTERMEDIÁRIOS ...................................................................... 38
4.3 TESTES FINAIS .......................................................................................... 39
5 CONCLUSÃO E TRABALHOS FUTUROS ................................................... 40
REFERÊNCIAS ........................................................................................................ 41
12
1 INTRODUÇÃO
O Instituto Tecnológico SIMEPAR (Sistema Meteorológico do Paraná) tem
por finalidade consolidar uma infra-estrutura física e humana para o provimento de
informações (dados e previsões) de natureza meteorológica, hidrológica e ambiental.
Além disso, vem atuando na concepção, desenvolvimento e execução de atividades
ligadas à pesquisa científica e tecnológica bem como junto à formação e capacitação de
pessoal.
Existe a necessidade no SIMEPAR de tornar o sistema de aquisição e
transmissão de dados em um equipamento autônomo, sem a necessidade de
computadores ligados diretamente ao sensor via cabo.
O SIMEPAR utiliza módulos GPRS (General Packet Radio Service) TC65 da
Siemens para a transmissão de dados de estações meteorológicas e é necessário produzir
um sistema embarcado para uso em um dos sensores, o monitor de precipitação a laser
(Light Amplification by Stimulated Emission of Radiation) , também chamado de
disdrômetro. Esse sistema embarcado deve realizar as funções de receber os dados do
disdrômetro pela porta serial, tratar os dados e enviá-los por FTP (File transfer
Protocol) para o servidor do SIMEPAR.
Será criada pelo SIMEPAR uma rede de disdrômetros pelo Estado do Paraná
para a aquisição de dados de intensidade de chuva fornecidos pelo disdrômetro, que
servirá para ajustar a refletividade do radar meteorológico em tempo real e
posteriormente para pesquisa dos dados por meteorologistas.
O disdrômetro tem uma interface serial, porém limita a distância entre ele e o
computador. Será necessário o envio de dados a uma distância maior de 300
quilômetros, dos disdrômetros ao centro de operações do SIMEPAR. Por isso optou-se
pelo GPRS, já que, onde serão instalados os disdrômetros, a cobertura celular do estado
é boa.
1.1 JUSTIFICATIVA
A informação disponibilizada, com os dados sobre as gotas de chuva, será
utilizada pelos meteorologistas do SIMEPAR para estudos e análises meteorológicas,
13
uma vez que através das medidas de diâmetro e velocidade das gotas de chuva é
possível especificar qual o tipo de chuva que está acontecendo, não somente a
quantidade de chuva, como em um pluviômetro.
Com a implementação proposta nesse projeto também é possível alocar
disdrômetros por todo o Estado do Paraná. Através desse sistema torna-se possível fazer
um ajuste da refletividade do radar meteorológico do SIMEPAR.
O radar utilizado é banda S Doppler, modelo DWSR-93S, da EEC Corporation,
já com algumas modernizações em seu hardware. Ele está localizado na parte central do
Paraná. A refletividade do radar meteorológico, medida em dBZ, indica a quantidade de
potência emitida que retorna ao radar e é representada, na imagem tratada, por uma
escala de cores. A refletividade R, medida em dBZ, indica a taxa de quantidade de
chuva T, em mm/hr, representada na equação (1).
A refletividade também pode ser obtida pela taxa de intensidade de chuva
através da equação (2).
Esses dados de refletividade obtidos através do radar são utilizados para:
- monitorar a precipitação, vento e granizo;
- estimar a intensidade de chuva; e
- previsão meteorológica em curto prazo, de no máximo três horas, usando
essas observações aliadas a imagens de satélite e outros sistemas.
1.2 OBJETIVO
O objetivo geral desse trabalho é desenvolver um sistema embarcado para ser
utilizado em monitores de precipitação a laser com a finalidade de proporcionar que um
14
sistema desses equipamentos possa ser distribuído pelo Paraná, enviando informações
de forma wireless e as disponibilizando de forma gráfica.
Os equipamentos utilizados foram disponibilizados pelo SIMEPAR, sendo a
contribuição da aluna para esse trabalho o desenvolvimento de um programa em Java 2
ME para o terminal e o desenvolvimento de um programa em Java para uso em
computador.
15
2 FUNDAMENTAÇÃO TEÓRICA
Alguns conceitos que devem ser passados são sobre os equipamentos e
plataformas utilizadas para o projeto.
2.1 MONITOR DE PRECIPITAÇÃO A LASER
O monitor de precipitação a laser, disdrômetro, serve para medir e detectar o
tipo, a intensidade e a quantidade de diferentes precipitações, como chuvisco, chuva,
granizo, neve e uma mistura de diferentes tipos de precipitação.
O disdrômetro possui um laser que é emitido em um dos lados do sensor e no
outro lado fica o receptor, um fotodiodo que mede a intensidade ótica do sinal,
transformando em um sinal elétrico. Quando uma precipitação passa pela luz, o sinal
recebido é reduzido. O diâmetro da partícula é calculado pela amplitude da redução. Já a
velocidade da partícula é obtida pela duração do sinal reduzido. Os sinais medidos são
processados por um DSP (Digital Signal Processor). O tipo de precipitação é obtido em
comparação desses dados com dados estatísticos de diâmetro e velocidade. Além disso,
ainda é verificada a temperatura para melhorar essa identificação. A Figura 1 apresenta
uma ilustração do laser emitido pelo disdrômetro, capaz de efetuar as medidas de
diversos tipos de precipitação.
Figura 1 - Laser do disdrômetro.
Fonte: Thies Clima.
16
A interface de saída do disdrômetro é uma porta RS485 full duplex com
baudrate ajustável de 1200 até 115200. Na Figura 2 é apresentada uma imagem desse
equipamento.
Figura 2 - Disdrômetro Thies Clima.
Fonte: Thies Clima.
A precisão dos mais importantes tipos de precipitação medidos por esse
equipamento são os seguintes:
- Chuva: >99% (>= 2 partículas/minuto, sem precipitação sólida).
- Granizo: >95% (>= 2 partículas/minuto).
- Neve: >99% (sem outras precipitações).
Nesse disdrômetro, os dados são memorizados por um minuto e então
transmitidos via serial. Como não existe a necessidade dos meteorologistas do
SIMEPAR de receberem todos os dados gerados, deve ser feito um tratamento de quais
os dados serão transmitidos.
17
2.2 SISTEMA EMBARCADO
Existem diversas tecnologias disponíveis para a comunicação celular, porém o
módulo utilizado nesse trabalho opera com GSM (Global System for Mobile). A
utilização desse módulo pelo SIMEPAR já foi justificada por Klinguelfus (2005). O
SIMEPAR já disponibiliza de vários terminais TC 65 Siemens comercializados pela
DuoDigit, sendo esse o motivo principal de sua utilização nesse projeto.
O terminal utilizado possui uma plataforma de desenvolvimento em Java 2
ME, uma versão do Java específica para sistemas embarcados. Ele opera GSM com
GPRS(General Packet Radio Service), podendo ser integrado em aplicações M2M
(Machine-to-Machine).
O padrão GSM possibilitou a digitalização do telefone celular e junto com o
GPRS possibilita o acesso à Internet em uma tecnologia que transporta dados por
pacotes com protocolo IP (Internet Protocol).
Figura 3 - TC65.
Fonte: DuoDigit.
Na Figura 3 acima é apresentado o terminal visto externamente. O módulo
possui um processador ARM Core, com memória RAM de 400 KB e 1.7MB de
memória flash. Suas interfaces de saída são duas portas DB9, protocolo ITU-T V.24,
chamadas ASC1 e ASC0. Sua alimentação é de 12 V DC e possui um conector para a
18
antena, assim como dois conectores para cartão SIM, um interno e outro externo. Opera
com GSM Quad-Band de 850/900/1800/1900 MHz e GPRS classe 12.
A seguir na Figura 4 é possível ver o esquema das interfaces disponíveis
externamente no terminal utilizado.
Figura 4 - Vista frontal e posterior do terminal.
1 – Conector para antena.
2 – Porta serial.
3 – Led de energizado.
4 – Led de status.
5 – Led de configuração.
6 – Cartão SIM.
7 – Botão liga/desliga/configuração.
19
8 – Alimentação.
9 – Conexão USB.
10 – Porta Serial.
Os modos de operação do terminal são apresentados na Tabela 1, seguidos de
uma breve explicação.
Tabela 1 – Modos de operação.
Desligado
O terminal fica desligado, ou seja, interfaces e software
não disponíveis.
Operação Normal GSM/GPRS Sleep É ativado o modo de baixo
consumo de energia.
GSM Idle Software ativo e terminal
pronto para enviar e
receber dados.
GSM Talk Conexão em andamento.
GPRS Idle Terminal pronto para envio
ou recepção de dados
GPRS, mas nenhuma
transmissão está ocorrendo.
GPRS Data Transferência GPRS em
andamento.
Modo Avião Todas as funções GSM/GPRS ficam indisponíveis.
2.2.1 Estudo dos Comandos Disponíveis
O módulo utilizado já possui uma plataforma com diversos comandos que
servem de auxílio para o desenvolvimento, esses comandos estão disponíveis no manual
da Siemens. Muitos deles servem de auxílio nas implementações em Java para os
serviços de Internet. Esses comandos foram testados em um Hyper Terminal no
computador, ao conectá-lo via serial.
20
Para o uso desses comandos no programa desenvolvido em Java 2 ME no
terminal, foi utilizada a classe abaixo.
protected synchronized boolean sendAT(String command,
String expect) {
try {
String response = ata.send(command + "\r");
if (response.indexOf(expect) >= 0) {
return true;
} else {
Logger.error(CLASSNAME, "Erro response sendAT:
"+command+" - "+response);
}
} catch (ATCommandFailedException e) {
Logger.error(CLASSNAME, "Erro sendAT: "+command);
return false;
}
return false;
}
2.2.1.1 AT^SICS
Através desse comando são feitas as configurações para a conexão de Internet.
São definidos os parâmetros obrigatórios de tipo de conexão, usuário, senha e endereço
de ponto de acesso, além de outros parâmetros opcionais. Após ser configurada, a
conexão é aberta com o uso do comando AT^SICO e encerrada com AT^SICC.
A seguir é apresentado um breve exemplo de como esse comando é utilizado
no Java 2 ME. Sendo apn o ponto de acesso, user o usuário e pass a senha.
sendAT("at^sics=0,conType,GPRS0", "OK");
sendAT("at^sics=0,inactTo,\"0\"", "OK");
sendAT("at^sics=0,alphabet,\"1\"", "OK");
sendAT("at^sics=0,apn,\""+apn+"\"", "OK");
sendAT("at^sics=0,user,"+user, "OK");
sendAT("at^sics=0,passwd,"+pass, "OK");
2.2.1.2 AT^SISS
Nesse comando são definidos padrões para serviços de Internet, como FTP,
HTTP e SMTP. No caso do FTP, por exemplo, é obrigatória a definição de tipo de
serviço, perfil definido de conexão de Internet a ser utilizado e endereço para o servidor
FTP. O serviço é aberto pelo uso do comando AT^SISO e fechado com AT^SISC.
21
A seguir é possível verem um exemplo simplificado como é feita a
configuração do serviço FTP com o uso desse comando no Java 2 ME.
sendAT("at^siss=1,srvType,\"Ftp\"", "OK")
sendAT("at^siss=1,alphabet,\"1\"", "OK");
sendAT("at^siss=1,conId,\"0\"", "OK");
sendAT("at^siss=1,address,\"ftpput://user:pass@endereco:por
ta/" + arquivo + ";type=i\"", "OK")
2.2.1.3 AT^SISW
É utilizado para escrita ou upload. Ele é usado após ter sido feita a conexão
com a Internet e com o serviço a ser empregado
2.2.1.4 AT^SISR
Comando utilizado para leitura de dados ou download. Também deve ser usado
após ter sido feita a conexão com a Internet e com o serviço a ser empregado.
2.2.1.5 AT^SJRA
Usado para executar aplicações Java no módulo.
22
3 DESENVOLVIMENTO
O sistema completo elaborado nesse trabalho é esquematizado na Figura 5
abaixo.
Figura 5 - Sistema completo.
3.1 PROGRAMAÇÃO DO TERMINAL
A linguagem de programação suportada pelo terminal e utilizada para esse
trabalho é a Java, uma linguagem de programação orientada a objetos da Sun
Microsystems, empresa da Oracle Corporation.
O firmware foi desenvolvido utilizando as ferramentas Java 2 ME e Netbeans,
distribuídos pela Oracle. O módulo TC65 é capaz de enviar as informações através de
porta serial RS232, SMS (Short Message Service), e também dos mais diversos serviços
na Internet, como FTP ou SMTP (Simple Mail Transfer Protocol).
A Siemens disponibiliza bibliotecas específicas para auxiliar a programação de
seu módulo TC65. Essas bibliotecas foram utilizadas, além das bibliotecas já
disponibilizadas como padrão para o Java 2 ME.
23
Na Figura 6 é apresentado um breve diagrama de classes do firmware
desenvolvido para o terminal.
Figura 6 - Diagrama de classes do firmware.
3.1.1 Classe Inicial
Essa é uma classe MIDlet e é a primeira a ser chamada na execução do
programa. Ela inicializa variáveis e outras classes que serão utilizadas. São iniciadas as
classes thread (multiprocessamento) de ajuste de hora e data, controle de memória
disponível, monitoração do sistema, comunicação FTP e comunicação serial.
Métodos:
Construtor – Inicia variáveis de configuração.
StartApp – Inicia threads:
◦ Ajuste de hora e data
◦ Controle de memória disponível
◦ Monitoração do sistema
◦ Comunicação FTP
◦ Comunicação serial
24
3.1.2 Classe de Comunicação Serial
A classe para a comunicação serial é implementada como thread. Essa classe é
a última a ser chamada pelo principal, devendo ficar em loop por todo o tempo para
captar os dados que chegarem do disdrômetro. Ela verifica se a mensagem está
completa e capta os caracteres de informações até receber o aviso de final de
mensagem, então chama a classe auxiliar, enquanto permanece verificando a chegada de
novos dados.
Métodos:
Construtor – Configura serial.
Run – Abre comunicação, fica em loop e recebe os dados, ao recebê-los aciona
classe auxiliar.
3.1.3 Classe Auxiliar
É uma classe chamada dentro da classe de comunicação serial após ter sido
recebida uma leitura completa do disdrômetro. Ela coloca os dados na fila do vetor,
notificando para a próxima classe thread, a de tratamento de dados.
Métodos:
Construtor
Leitura – Fila do vetor e notificação à classe de tratamento de dados.
3.1.4 Classe de Tratamento de Dados
É uma classe thread que faz o tratamento dos dados para envio, criando um
novo vetor. Esse vetor sincronizado chama a classe para a comunicação FTP. O módulo
só envia 1500 bytes por vez, por isso uma simplificação foi necessária após a seleção
dos dados. No tratamento são retirados os dados que não são importantes para os
meteorologistas e na simplificação são retirados caracteres desnecessários para manter a
informação, como o separador „;‟.
Métodos:
Construtor
25
Run – São retirados os dados desnecessários, assim como o separador „;‟. São
obtidos os bytes dos dados e colocados em um novo vetor. É notificada a classe para
envio FTP.
3.1.5 Classe de Comunicação FTP
Essa comunicação é feita por eventos, utilizando a classe ATEvent disponíveis
na biblioteca da Siemens. Isso deve ser utilizado, já que é necessário esperar uma
resposta nos eventos da comunicação. Aqui é feita a configuração do serviço FTP, é
definido o título do documento com base na data e na hora e é feito o envio do
documento.
Métodos:
Construtor – Configuração de conexão.
FTP – Envio FTP.
ATEvent – Recebe o evento de resposta do módulo para o envio FTP.
3.1.6 Classe de Monitoração de Memória
Nos testes iniciais foi reparado um problema de memória após cerca de meia
hora de execução do programa, que ocasionava em um travamento do sistema. Por isso
foi criada uma classe thread para monitorar e limpar a memória periodicamente.
Métodos:
Construtor
Run – Loop que libera a memória periodicamente.
3.1.7 Classe para Ajuste de Hora e Data
O SIMEPAR disponibiliza um endereço na Internet com a data e o horário
UTC (Coordinated Universal Time) em tempo real. Foi elaborada uma classe thread no
firmware, aliada a uma classe que faz a organização do formato de data e hora para
posteriormente enviar ao módulo por comandos AT.
26
A classe thread para ajuste de hora estabelece uma conexão por HTTP com o
endereço do servidor de data e hora do SIMEPAR. Após ser efetuada a leitura ele envia
o comando de ajuste para o módulo.
O módulo apresentou um problema para o ajuste de horário, pois ele não
efetuava o ajuste todas as vezes que solicitado, mesmo após ter sido enviado o comando
correto. Devido a esse defeito do módulo, é feita uma verificação da data e hora
ajustada. Caso esteja incorreta ele efetua outra tentativa daqui a um minuto. Isso é feito
três vezes até que o módulo seja reiniciado. Caso a hora seja ajustada de maneira
correta, o próximo ajuste ocorrerá em um dia.
Métodos:
Construtor
Run – Conecta HTTP com o Simepar para ler data e hora UTC. Faz o ajuste do
módulo uma vez ao dia.
3.1.8 Classe de Monitoração do Sistema
Essa classe auxilia a verificação do funcionamento do sistema. Caso ele
permaneça em uma mesma função por cinco minutos, o módulo é reiniciado. É
elaborada utilizando a classe Watchdog, que faz parte da biblioteca disponibilizada pela
Siemens.
Métodos:
Start – Inicia Watchdog e a run().
Check – Verifica estado da SerialDisdrometro e FtpDisdrometro.
Run – Reinicia a contagem de cinco minutos.
3.2 INSTALAÇÃO
O sistema foi montado na estação meteorológica do SIMEPAR do Centro
Politécnico da Universidade Federal do Paraná.
Na Figura 7 a seguir é possível ver um esquema de como foram conectados o
sensor, que é o disdrômetro, e o terminal de transmissão, módulo TC65.
27
A seguir são apresentadas algumas imagens de processo de instalação do
sistema. Na Figura 8 é possível ver o local onde foi feita a instalação, com o suporte
pronto para início da montagem.
Figura 7 - Interfaces
28
Figura 8 - Local da instalação.
Na Figura 9 é apresentado o procedimento de nivelamento do disdrômetro,
para garantir seu correto posicionamento na hora de fixá-lo ao suporte.
Figura 9 - Nivelamento do disdrômetro.
29
Na Figura 10 tem-se a caixa de plástico onde foram armazenados os
equipamentos: módulo, adaptador, conversor, fonte de alimentação e demais cabos
necessários.
Figura 10 - Caixa com os equipamentos de transmissão.
Figura 11 - Sistema instalado.
30
A Figura 11 mostra o sistema após sua instalação, com a antena posicionada do
lado de fora da caixa que abriga os demais equipamentos.
3.3 SOFTWARE
O software foi desenvolvido também em Java, com auxílio da biblioteca
JFreeChart, que serve de apoio para desenvolvimento de gráficos. Esse software
possibilita ao usuário a visualização dos dados coletados pelo disdrômetro e
armazenados no servidor.
3.3.1 Tela Inicial
A janela inicial do software apresenta um espaço para o preenchimento do
intervalo de data e hora para a visualização dos dados e é apresentada na Figura 12.
Figura 12 - Janela inicial.
Caso a opção “Gráfico” esteja selecionada e tenha sido feita a medida de chuva
naquele período, o software retornará uma janela com o histograma dos respectivos
valores de diâmetros, que pode ser visto na Figura 13.
31
Figura 13 - Janela com histograma.
Se não existir chuva no período, o programa apenas retornará uma janela com a
informação “Sem chuva”, conforme visto na Figura 14.
Figura 14 - Janela informativa de ausência de chuva.
Caso a opção “Dados Estatísticos” esteja selecionada e tenham sido efetuadas
medidas no período, será retornada a janela da Figura 14, com as informações de média
e desvio padrão no período.
Figura 15 - Dados estatísticos.
32
3.3.2 Banco de Dados
Para armazenar os dados foi utilizado um banco de dados MySQL. É feita a
verificação nesse banco para verificar se já existem os dados da data e hora fornecidas
pelo usuário. Se não existir é feita a busca no FTP e um insert no banco, se existir é
feito um select para leitura desses dados. Abaixo é vista a estrutura da tabela na Figura
16.
Figura 16 - Tabela do banco de dados.
3.3.3 Histograma
O histograma apresentado pelo programa é elaborado através da separação dos
dados por classes de diâmetro, conforme são apresentados pelo próprio disdrômetro. Na
tabela a seguir são apresentadas essas classes.
33
Tabela 2 – Classes de diâmetro.
Classe Diâmetro [mm] Classe Diâmetro [mm]
1 ≥ 0.125 12 ≥ 3.000
2 ≥ 0.250 13 ≥ 3.500
3 ≥ 0.375 14 ≥ 4.000
4 ≥ 0.500 15 ≥ 4.500
5 ≥ 0.750 16 ≥ 5.000
6 ≥ 1.000 17 ≥ 5.500
7 ≥ 1.250 18 ≥ 6.000
8 ≥ 1.500 19 ≥ 6.500
9 ≥ 1.750 20 ≥ 7.000
10 ≥ 2.000 21 ≥ 7.500
11 ≥ 2.500 22 ≥ 8.000
Fonte: Thies Clima.
3.3.4 Dados Estatísticos
A média e o desvio padrão são feitos utilizando o valor médio de cada intervalo
de classe de diâmetro apresentado na Tabela 1 para o cálculo. A média é obtida pela
Equação (3) e o desvio padrão pela Equação (4).
34
Sendo:
- a média;
- o desvio padrão;
- o índice que representa a classe de diâmetro;
- o total de pingos de chuva medidos para o diâmetro ; e
- o diâmetro médio para a classe de diâmetro .
3.3.5 Classes
O software elaborado possui cinco classes: a classe inicial, a de geração da
janela principal, a de tratamento dos dados, a que trabalha com o banco de dados, a de
geração de gráfico e a de conexão FTP. O fluxograma simplificado do software é
apresentado na Figura 17.
35
Figura 17 - Fluxograma do software.
36
3.3.5.1 Classe Inicial
Na classe inicial é aquela que inicia o programa e chama a classe de geração
da janela inicial.
3.3.5.2 Classe de Geração de Janela
É configurada e apresentada a janela inicial do programa, que tem as entradas
de dados: texto para o usuário inserir o intervalo de medidas que deseja, dois campos
para seleção das opções de geração de gráfico e de dados estatísticos e um botão para
gerar a opção selecionada.
Métodos:
- Construtor
- Janela: Configura os parâmetros a serem apresentados na janela e a apresenta
ao usuário.
3.3.5.3 Classe de Tratamento de Dados
Na classe de tratamento de dados estão os métodos para leitura dos dados
recebidos do servidor e para geração dos dados estatísticos.
Métodos:
- Construtor
- Leitura: É feita a leitura dos dados do arquivo.
- Estatística: São feitos os cálculos de média e desvio padrão.
3.3.5.4 Classe do Banco de Dados
A comunicação necessária com o banco de dados local é realizada nessa
classe, como o envio dos comandos de SELECT e INSERT.
Métodos:
- Construtor
- Select: Faz a seleção do arquivo no banco de dados.
- Insert: Insere os dados no banco de dados.
37
3.3.5.5 Classe de Geração do Gráfico
A geração do histograma é feita nessa classe com a utilização da biblioteca
JFreeChart.
Métodos:
- Construtor
- Gráfico: Gera o gráfico com os dados do diâmetro.
3.3.5.6 Classe de Conexão FTP
A conexão FTP é realizada nessa classe, fazendo o download do arquivo se
necessário.
Métodos:
- Construtor
- FTP: Abertura da conexão FTP, transferência de dados e fechamento da
conexão.
38
4 RESULTADOS
Os testes foram realizados ao longo de seu desenvolvimento. Nos itens a seguir
são apresentados os testes e os requisitos que deveriam ser atingidos para seu resultado
positivo.
4.1 TESTES INICIAIS
Estes testes foram realizados ao longo do estudo dos comandos
disponibilizados pelo módulo e também no desenvolvimento do programa a ser
utilizado no módulo TC65. Na primeira parte tinha como propósito apenas verificar o
funcionamento dos comandos AT. Depois, ao longo do desenvolvimento da
programação em Java, os testes realizados foram através da compilação do próprio
software Netbeans, apenas verificando a existência de erros.
4.2 TESTES INTERMEDIÁRIOS
Testes realizados na conexão do sistema incluindo módulo TC65 e disdrômetro
Thies Clima. Sua saída RS485 half duplex foi conectada a um adaptador RS232/RS485
da Henry e conectado à porta serial do computador. Foi configurado um Hyper
Terminal para fazer a recepção dos dados. As configurações de fábrica desse
equipamento especificam um baudrate de 9600, oito bits de dados, sem paridade e um
bit de parada. Assim foi verificado o funcionamento do disdrômetro, com a chegada de
dados a cada minuto.
Para conectá-lo ao módulo, foi necessário também colocar um adaptador que
invertesse os pinos dois e três da RS232 vinda do disdrômetro, para que os dados
transmitidos por ele fossem interpretados como dados de recepção na porta serial do
módulo.
Após a verificação do funcionamento correto, verificando trinta medições do
disdrômetro com aquelas recebidas no FTP, o disdrômetro e o módulo ficaram no
laboratório para testes por duas semanas sem serem desligados. Durante os testes foram
39
observados problemas com a memória do módulo, surgindo a necessidade da classe de
monitoração de memória.
4.3 TESTES FINAIS
Os testes finais foram realizados após a elaboração do software, sendo feito
com a integração do sistema completo. Foi feita a verificação comparando as
informações recebidas no FTP e aquelas que constam nos gráficos e estatísticas, foram
verificadas trinta medições, obtendo um resultado igual para o total de gotas de chuva
por diâmetro apresentados no gráfico e nos dados.
40
5 CONCLUSÃO E TRABALHOS FUTUROS
Os objetivos do trabalho foram atingidos, sendo elaborado o primeiro protótipo
do sistema a ser implantado pelo SIMEPAR. O trabalho da aluna foi importante para a
instituição, fazendo possível o funcionamento do terminal TC65 para uso no
disdrômetro, assim como disponibilizando um software para melhor apresentação dos
dados aos funcionários.
O sistema desenvolvido está sendo atualmente utilizado no SIMEPAR pelos
meteorologistas para realizarem estudos pertinentes dos dados coletados. Está instalado
na estação meteorológica do Centro Politécnico da Universidade Federal do Paraná e
em breve também estará também presente em outras estações.
Esse trabalho será importante para outros projetos realizados no SIMEPAR,
como o estudo dos dados meteorológicos e o estudo do ajuste da refletividade do radar
através do sistema de disdrômetros.
41
REFERÊNCIAS
DUO DIGIT; Terminal Java TC65. Disponível em:
<http://www.duodigit.com.br/downloads/catalogo-duodigit-terminal-java-
tc65/download_pt.html>. Acesso em: 24 mar. 2011.
JFREE; JFreeChart. Disponível em: <http://www.jfree.org/jfreechart>. Acesso em: 16
mai. 2011.
KLINGUELFUS, M. C.; GPRS em Redes de Coletas de Dados. 2005. Monografia de
Pós-Graduação, XI Curso de Especialização em Teleinformática e Redes de
Computadores, Universidade Tecnológica Federal do Paraná, Curitiba, 2005.
ORACLE. Oracle Software Downloads. Disponível em:
<http://www.oracle.com/technetwork/indexes/downloads/index.html>. Acesso em: 3
jan. de 2011.
SIEMENS; TC65 AT Command Set. 2006. Versão 02.000, Siemens, 2006.
SIEMENS; TC65 Terminal Siemens Cellular Engine – Hardware Interface
Description. 2006. Versão 02.000, Siemens, 2006.
SIEMENS; TC65 User’s Guide. 2005. Versão 02.000, Siemens, 2005.
SIMEPAR. Instituto Tecnológico SIMEPAR. Disponível em:
<http://www.simepar.br”>. Acesso em: 3 jan. 2011.
THIES CLIMA. Instruction for Use – Laser Precipitation Monitor, V2.1x STD,
Thies Clima, Alemanha.
THIES CLIMA. Laser Niederschlags - Monitor (Distrometer). Disponível em:
<http://www.thiesclima.com/distrometer.html>. Acesso em: 3 jan. 2011.