estaçªo meteorológica com comunicaçªo por sms · relative humidity, pressure, temperature,...

86
Centro UniversitÆrio Positivo - UnicenP Nœcleo de CiŒncias Exatas e Tecnolgicas NCET Engenharia da Computaªo Shimene Priscilla Gomes Estaªo Meteorolgica com Comunicaªo por SMS Curitiba 2004

Upload: vohanh

Post on 30-Nov-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

Centro Universitário Positivo - UnicenP Núcleo de Ciências Exatas e Tecnológicas � NCET

Engenharia da Computação Shimene Priscilla Gomes

Estação Meteorológica com Comunicação por SMS

Curitiba 2004

Page 2: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

Centro Universitário Positivo - UnicenP Núcleo de Ciências Exatas e Tecnológicas � NCET

Engenharia da Computação Shimene Priscilla Gomes

Estação Meteorológica com Comunicação por SMS Monografia apresentada à disciplina de

Projeto Final, como requisito parcial à conclusão do Curso de Engenharia da Computação. Orientador: Prof. Marcelo Mikosz Gonçalves

Curitiba 2004

Page 3: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

TERMO DE APROVAÇÃO

Shimene Priscilla Gomes

Estação Meteorológica com Comunicação por SMS Monografia aprovada como requisito parcial à conclusão do curso de Engenharia da Computação do Centro Universitário Positivo, pela seguinte banca examinadora:

Prof. Marcelo Mikosz (Orientador) Prof. Laerte Cleto Prof. Edson Pedro Ferlin

Curitiba, 01 de Janeiro de 2003

Page 4: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

AGRADECIMENTOS

Primeiramente agradeço a Deus por ter me dado a vida, e por ter superado cada

desafio durante esses 5 anos.

Dedico essa vitória aos meus pais, que sempre me deram forças para continuar

trilhando o caminho que escolhi.

Mãe, muito obrigada pelo carinho, dedicação e principalmente pelas palavras

doces nos momentos difíceis, que me deram coragem para não desistir. Obrigada

pelas noites de sono que perdeu trabalhando em busca de proporcionar-nos uma

educação melhor e uma vida mais confortável, é com certeza conseguiu, essa

conquista é sua!

Pai, obrigada por todo amor, carinho e principalmente pelas palavras certas nas

horas certas, palavras duras, porém muitas vezes me fizeram refletir e mudar a direção

do meu caminho. Agradeço por sua luta, onde sempre procurou superar os desafios de

cabeça erguida, enfim sua presença sempre forte, foi um espelho de honestidade,

integridade e honra para nós, tenho muito orgulho de ser sua filha!

Shaia, obrigada pela irmã dedicada, pelas vibrações positivas e por muitas

vezes me dar seu colo nos momentos de angústia. Simba, obrigada por ficar ao meu

lado até altas horas, eu sei que você não fala, porém nunca me senti sozinha!

Fernando, meu amor, agradeço por todo seu carinho e compreensão devido a

minha ausência, e pelas palavras de incentivo.

Dedico a conclusão deste projeto em especial a um grande amigo Vilson

Rodrigo Mognon (Engenheiro Eletrônico e Mestre em Engenharia Elétrica), que me

ajudou a desenvolvê-lo e a implementá-lo, você é o meu grande mestre.

Agradeço ao pai-orientador Marcelo Mikosz pela dedicação e atenção, e ao meu

grande amigo Leonardo Saba pela presença alegre, e descontraída.

Page 5: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

SUMÁRIO

1. Introdução....................................................................................................................5 2. Revisão da Literatura...................................................................................................7

2.1. A Estação Meteorológica por Comunicação Móvel ............................................7 2.1.1. Módulos da Estação Meteorológica .................................................................8 2.2. Fundamentação Teórica da Estação Meteorológica ..........................................9

3. Objetivo, Materiais e Métodos ...................................................................................13 3.1. Funções do Sistema ...............................................................................................13

3.1.1. Aquisição de dados e Endereçamento dos Sensores ....................................13 3.1.1.1. Endereçamento dos Sensores ............................................................15 3.1.1.2. Protocolo de Comunicação e Codificação dos Dados........................20 3.1.1.3.Temporização da Aquisição .................................................................21 3.1.1.4. O Microcontrolador ATmega161 .........................................................23

3.1.1.4.1. Funções Básicas do Microcontrolador ATMEGA161 ...............25 3.1.2. Os Sensores Meteorológicos .........................................................................27 3.1.2.1.O Pluviômetro (Sensor de Índice de Precipitação Pluvial) ..........................27 3.1.2.2.O Barômetro (Sensor de Pressão) ...............................................................30 3.1.2.3.Sensor de Temperatura ...............................................................................32

3.1.2.3.1Descrição do Sensor de Temperatura Tmp100..........................33 3.1.2.3.2.Registrador de Temperatura .....................................................33

3.1.2.4.Sensor de Umidade Relativa........................................................................34 3.1.2.5.Sensor de Velocidade e Direção do Vento...................................................36 3.1.3. Módulo de Transmissão e Recebimento de SMS .........................................39

3.1.3.1. Fluxograma para Envio e Recebimento de Mensagens SMS por Comandos AT .......................................................................................40

3.1.3.2.Modem GSM WaveCom...............................................................................44 3.1.3.2.1.Funcionalidades RF (Radiofreqüência) .....................................45 3.1.3.2.2.Firmware ...................................................................................45 3.1.3.2.3.Interfaces ..................................................................................46

3.1.3.3.Comandos OpenAT......................................................................................46 3.1.4. Software de Gerenciamento dos Dados Atualização dos dados....................50

3.1.4.1.Ambiente de Desenvolvimento.............................................................50 3.1.4.2. Implementação do Software de Gerenciamento .................................50

3.1.4.2.1. Diagrama de Caso de Uso .......................................................51 3.1.4.2.2. Roteiros....................................................................................51 3.1.4.2.3. Diagrama de Classes ...............................................................53 3.1.4.2.4. Diagrama de Classes de Negócios ..........................................54 3.1.4.2.5. Diagrama de Colaboração .......................................................56

3.4.1.3. Interface com Usuário � Módulo Adicional ..........................................62 3.1.4.4. Linguagem de Programação ...............................................................64

4. Resultados e Discussão ............................................................................................66 4.1.Aquisição dos dados e Endereçamento dos sensores ............................................66 5. Conclusões................................................................................................................69 6. Referências Bibliográficas .........................................................................................70 7. Anexo 1 - Cronograma Projeto Final .........................................................................71 8 . Anexo 2 - Descrição detalhada dos Comandos AT .................................................73

Page 6: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

LISTA DE FIGURAS Figura 1. Diagrama de Blocos básico dos Módulos Integrados do Sistema. ...................9 Figura 2. Diagrama em Blocos da Estação Meteorológica. ...........................................10 Figura 3. Diagrama de blocos da Estação COLPAM 50................................................11 Figura 4. Estrutura Metálica da Estação Colpam 50. ....................................................12 Figura 5. Estação Meteorológia Wireless Ws-2010.......................................................12 Figura 6 . Estados dos sensores gerenciados pelo microcontrolador. ..........................14 Figura 7 . Representação do Endereçamento dos Pinos e o Endereço Escravo no TMP100. ........................................................................................................................15 Figura 8. Diagrama de Tempo para Configuração do TMP100. ....................................16 Figura 9. Byte de Registro e Configuração do Formato do Registrador. .......................16 Figura 10. Diagrama de Tempo para Leitura da Temperatura do TMP100. ..................17 Figura 11. Estrutura Hierárquica do Protocolo de Comunicação 1-Wire .......................19 Figura 12. Representação da Memória ROM ................................................................19 Figura 13 . Representação do Protocolo de Comunicação. ..........................................20 Figura 14 . Diagrama em Blocos da Arquitetura do Microcontrolador ATmega161.......24 Figura 15. Diagrama Esquemático do circuito da Estação Meteorológica.....................26 Figura 16. Estrutura Mecanica do Pluviômetro..............................................................28 Figura 17. Diagrama esquemático do Sensor de Índice de Precipitação Pluvial ...........30 Figura 18. Configuração da rede 1-Wire........................................................................31 Figura 19. Diagrama esquemática do Barômetro (Sensor de Pressão) ........................31 Figura 20. Diagrama em blocos do Sensor de Temperatura Tmp100. ..........................32 Figura 21. Diagrama Esquemático do Sensor de Temperatura TMP100. .....................33 Figura 22. Byte 1 do Registrador de Temperatura ........................................................33 Figura 23. Byte 2 do Registrador de Temperatura. .......................................................33 Figura 24 . Formatação de Dados da Temperatura.......................................................34 Figura 25. Ilustração do Sensor de Umidade Relativa HIH-3610. .................................34 Figura 26. Tensão de saída versus temperatura em 0º C, 25ºC e 85ºC........................35 Figura 27. Diagrama Esquemática do Sensor de Umidade Relativa. ............................36 Figura 28.Ilustração do Sensor de Velocidade e Direção do Vento .............................38 Figura 29. Diagrama Esquemático do Sensor de Velocidade e Direção do Vento........38 Figura 30. Diagrama em Blocos da Transmissão SMS. ...............................................39 Figura 31. Cartão PCMCIA GTran Wireless ..................................................................43 Figura 32. Modem DTSS-800(Tecnologia CDMA 1xRTT).............................................44 Figura 33. Arquitetura funcional interna do Módulo WaveCom .....................................46 Figura 34. Módulo do Modem Wavecom .......................................................................48 Figura 35. Foto do Módulo do Modem Wavecom. .........................................................49 Figura 36. Tela de Configura Tempo de Aquisição. ......................................................56 Figura 37. Tela de Aquisição. ........................................................................................58 Figura 38. Tela de Cadastro de Funcionários................................................................60 Figura 39. Diagrama em blocos do armazenamento das informações, conversão dos dados e o recurso adicional (trigger). ............................................................................63 Figura 40. Website DavisNet, as informações são atualizadas em tempo real .............64

Page 7: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

LISTA DE SIGLAS

1xRTT - 1xRadio Transmission Technology

APIs - Application Programming Interfaces

CMOS � Metal Oxide Semiconductor

CRC - Check Redundancy Cyclic

GPRS - General Packet Radio Service

I2C - Interface Compability � 2 Wire

POO - Programação Orientada a Objetos

RAM � Read Access Memory

ROM � Read Only Memory

RH � Relative Humidity

SMS - Short Message Service

SPI � Serial Program Interface

Page 8: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

RESUMO A Meteorologia é um fator determinante para todos, principalmente para pessoas

que necessitam destas informações para executar suas atividades, como por exemplo,

esportistas e agricultores. Portanto, a Estação Meteorológica com Comunicação por

SMS, tem como principal objetivo realizar a aquisição de dados climáticos que são

gerados por sinais inerentes ao meio, para tanto utiliza-se sensores especiais: índice

de precipitação pluvial, umidade relativa, pressão, temperatura, direção e velocidade do

vento; os dados aquisicionados são transmitidos em uma mensagem SMS, atualizando

em tempo real as informações referentes às condições climáticas em um Website.

Page 9: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

ABSTRACT

The Meteorology is a decisive factor for all, mainly for people that need these

information to execute their activities, for example, sportsmen and farmers. Therefore,

the Meteorological Station with Communication for SMS, has as main objective to

accomplish the acquisition of climatic data that they are generated by inherent signs to

the environment for so much is used sensor special: index of pluvial precipitation,

relative humidity, pressure, temperature, wind direction and speed; the data are

transmitted in a message SMS, updating in real time the information regarding the

climatic conditions in a Website.

Page 10: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

5

1. INTRODUÇÃO

Há vários séculos, o homem se mantém preocupado em adquirir informações

sobre as condições climáticas. Atualmente, com advento da tecnologia dos sistemas de

comunicação, essas informações tornaram-se mais acessíveis, sendo um fator

determinante para pessoas que dependem dela para executar suas atividades.

A Estação Meteorológica tem com objetivo realizar aquisição de dados referente

a condições climáticas através de sensores especiais, e interpretá-los, para gerar

estatísticas das condições de uma certa região, e disponibilizar estas informações ao

cliente. É importante ressaltar que não se trata de um equipamento capaz de comparar

dados e realizar previsão do tempo, e sim informar ao usuário sobre as condições em

um período que pode ser estabelecido pelo mesmo. Os sensores a serem utilizados

para aquisicionar estes dados são relativos à temperatura, índice de precipitação

pluvial, sensores de umidade relativa, direção e velocidade do vento, e pressão. O

projeto da Estação Meteorológica por Comunicação Móvel aplica-se principalmente a

esportistas, agricultores, centros meteorológicos; os quais dependem de fatores como

as condições climáticas para praticar esportes, analisar qual o melhor período para o

plantio e realizar a monitoração de uma determinada região, respectivamente. As

consultas a estas informações podem ser efetuadas através de um sistema de

gerenciamento ou em um website, que são atualizadas através de mensagens

instantâneas (SMS).

Atualmente, as estações meteorológicas que são instaladas em campo são

alimentadas por energia solar, e as informações são coletadas localmente, através de

um cartão de memória, ou transmitidas via radiofreqüência. A transmissão via

aparelhos de comunicação móvel oferece uma inovação, e agrega muitos benefícios

como a segurança de informações, a velocidade e praticidade da consulta via Internet

ou via celular.

As principais metas a serem alcançadas ao longo do projeto são a aquisição dos

dados gerados pelos sensores relativos a condições climáticas; o tratamento e a

interpretação desses dados, a fim de gerarem estatísticas, as quais podem ser

consultadas, utilizando os parâmetros, como por exemplo, um dado período, ou um

range de temperatura. Contudo, a transmissão via comunicação móvel por mensagens

instantâneas é um grande desafio, porque trata-se da transmissão e recepção de

Page 11: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

6

dados serialmente através de um modem, e para tanto faz-se necessário a

implementação de um protocolo de comunicação para a codificação destes dados.

Page 12: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

7

2. REVISÃO DA LITERATURA

2.1. A Estação Meteorológica por Comunicação Móvel

A Estação Meteorológica por Comunicação Móvel utiliza sensores especiais,

cujo principio básico é adquirir sinais analógicos inerentes ao meio e convertê-los

digitalmente, a fim de gerar informações. No mercado há diversos sensores

utilizados, porém foram estudados os principais e mais usuais para a composição

de uma estação, são eles:

• Pluviômetro: mede o índice de precipitação pluvial, através de um equipamento

capaz mesurar a quantidade de chuva em período selecionado;

• Anemômetro: consiste em equipamento capaz de apresentar a direção e

velocidade do vento, por exemplo, se está para o Norte, Sul, Leste, Oeste,

Centro-Oeste, Nordeste, Noroeste e Sudoeste;

• Sensor de Umidade: mensura qual é umidade relativa do ar;

• Sensor de Temperatura: mensura qual é a temperatura climática;

• Barômetro: mensura qual é a pressão do ar;

Os sensores selecionados para a composição, foram os sensores de

temperatura, o anemômetro e pluviômetro, porém é possível ser expandido para os

sensores listados acima.

A aquisição dos dados é realizada de acordo com um temporizador, o qual

recebe dados de cada um dos sensores em intervalos de tempo estipulados através

do microcontrolador, estes são armazenados em memória para posterior

transmissão. Embora estes sejam representados binariamente, é necessário

realizar uma conversão desses dados recebidos para visualização no display, isto é,

transformá-los em medidas relativas a temperatura, umidade, quantidade de chuva,

pressão, direção e velocidade do vento.

Contudo, é necessária a codificação destes dados binários de acordo com a

resolução pertinente a cada sensor, para posteriormente realizar a transmissão

serial através do microcontrolador para um aparelho de celular, este por sua vez,

cria uma mensagem instantânea (SMS), onde está encapsulado o pacote referente

às informações de cada sensor. O modem receptor, realiza o desencapsulamento

Page 13: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

8

do pacote, e a decodificação destes dados, transformando-os em medidas reais e

atualizando no software de gerenciamento, o qual poderá também enviar

mensagens SMS para o celular do cliente, de acordo com as necessidades

específicas do mesmo.

2.1. 1. Módulos da Estação Meteorológica

O projeto da Estação Meteorológica foi segmentado em quatro módulos, Aquisição

e Temporização da recepção dos dados, Encapsulamento, Transmissão SMS,

Recepção SMS e Atualização das informações, detalhadamente são:

• Módulo de Aquisição e Temporização da recepção: Os dados são

aquisicionados através de sensores relativos a cada fenômeno climático. O

microcontrolador realiza a temporização para a habilitação do barramento

efetuando a leitura dos sensores, ou seja, é pré-estabelecido um intervalo de

tempo para a coleta de dados de cada sensor, o qual pode ser previamente

configurável. Por exemplo: um segundo de intervalo para a transferência dos

dados digitais do sensor de temperatura, então no próximo intervalo fixo realiza

a leitura para o sensor de velocidade do vento, e assim sucessivamente;

• Módulo Encapsulamento: os dados recebidos referente à aquisição de cada

sensor são codificados de acordo com a resolução de cada um e armazenados

em um pacote de 140 bytes para encapsulamento em um pacote SMS, sendo

possível realizar aquisição de várias amostras. A codificação faz-se necessária

para garantir a integridade dos dados.

• Módulo de Transmissão SMS: o pacote SMS é extraído da memória após ser

realizada a codificação para o encapsulamento, totalizando 140 bytes. A

transmissão é realizada através de uma seqüência de comandos específicos,

utilizados também para habilitação do módulo, como também, para a recepção,

posteriormente estes dados são decodificados, e convertidos em informações

interpretáveis. As mensagens instantâneas são enviadas a uma velocidade de

aproximadamente 144 Kbps, porém limitada pela velocidade de transmissão

serial que tem como padrão 112,5 Kbps; uma outra limitação significativa está

no tamanho da mensagem o qual é de no máximo de 144 bytes, limitando o

número de amostras;

Page 14: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

9

• Módulo Recepção SMS e Atualização: é responsável pela extração dos dados

do SMS e pela decodificação onde é realizado a conversão destes dados

codificados em informações reais, então é efetuada a atualização em um

software de gerenciamento, propiciando a consulta, através do banco de dados.

A representação dos módulos pode ser visualizada na figura 1.

Figura 1. Diagrama de Blocos básico dos Módulos Integrados do Sistema.

É importante lembrar que como é ilustrado não há realimentação do sistema,

sendo o ponto inicial os sensores, são responsáveis pela transformação de energias

mecânicas em elétrica, e o final o cliente o qual receberá as informações referentes às

condições climáticas.

2.2. Fundamentação Teórica da Estação Meteorológica

A estação Meteorológica consiste em um equipamento capaz de aquisicionar dados

sobre as condições climáticas através de sensores especiais para tanto, serão

utilizados alguns dos existentes no mercado, são relativos à temperatura, índice de

precipitação pluvial, sensores de umidade relativa, direção e velocidade do vento, e

pressão. Muitas das estações do mercado possuem tais sensores, porém realizam a

medição e armazenamento do parâmetro ambiental em um intervalo de tempo

previamente ajustado no próprio equipamento, sendo os dados armazenados em

memória, e coletados através de um leitor de memória serial, ou transmitidos via

radiofreqüência. A energia é mantida através de um painel solar.

No mercado há vários modelos de estações meteorológicas, as mais rústicas

utilizam a transferências dos dados aquisicionados através de um simples cartão de

memória. Porém, as modernas utilizam transmissões via radiofreqüência ou até mesmo

via satélite; onde é possível obter imagens de uma determinada região, observando as

direções das correntes marítimas. É importante ressaltar, que o uso da transmissão via

Aquisição e Temporização de

recepção

Encapsulamento

Transmissão SMS

Recepção SMS e Atualização

Page 15: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

10

SMS é uma grande inovação e grande tendência, sendo as principais vantagens: a

velocidade da transmissão, a confiabilidade por uso um serviço de comunicação móvel

popular e o baixo custo; sendo possível encapsular várias amostras aquisicionadas

dentro de um único SMS.

O diagrama em blocos representado na figura 2 ilustra basicamente a

funcionalidade de cada módulos discorrido.

Figura 2. Diagrama em Blocos da Estação Meteorológica.

Devido às características peculiares de cada estação, e para critério de analise e

estudo, seguem algumas existentes no mercado.

Atmega161

Encapsulamento dos dados

Display LCD

Coleta

Software de Gerenciamento

Website

Módulo Adicional

Bateria

12V

Regulador

5V

Alimentação da Estação Meteorológica

Page 16: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

11

§ Colpam 50: Os equipamentos da série produzidos pela Elomed Indústria e

Comércio medem e armazenam parâmetros ambientais como temperatura,

molhamento foliar, umidade relativa do ar e índice de precipitação pluvial, é um

equipamento autônomo que não necessita de alimentação da rede elétrica

podendo ser utilizados em locais remotos. Após ser instalado e acionado, ele

fará a medição e armazenamento dos parâmetros ambientais em um intervalo

de tempo previamente ajustado no próprio equipamento. Os dados

armazenados ficam em uma memória, que pode ser desconectado para coleta

de dados em microcomputador. A energia elétrica necessária para o

funcionamento é obtida de um painel solar que carrega constantemente uma

bateria interna, sob o controle de um circuito de recarga. A figura 3 ilustra o

diagrama em blocos da estação meteorológica Colpam 50.

Figura 3. Diagrama de blocos da Estação COLPAM 50.

A instalação em campo consiste na montagem da estrutura metálica. O painel é

direcionado para o norte. Abaixo segue a estrutura metálica do funcionamento.

Page 17: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

12

Figura 4. Estrutura Metálica da Estação Colpam 50.

§ WS-2010 - Professional Wireless Weather Center: Estação com transmissão por

radiofreqüência em alta velocidade, inclui quatro sensores acoplados, são eles:

sensor de umidade e temperatura, pressão, velocidade e direção do vento e o

pluviômetro.O funcionamento consiste em estes quatro sensores citados acima

coletarem informações do tempo, e enviarem via radiofreqüência para a estação

central. Abaixo segue a figura 5 apresentando os sensores existentes e a

estação central.

Figura 5. Estação Meteorológica Wireless Ws-2010

Page 18: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

13

3. OBJETIVO, MATERIAIS E MÉTODOS

3.1. Funções do Sistema

As funções do sistema são a Aquisição e Endereçamento dos Sensores,

Transmissão, Recepção e Atualização dos dados.

3.1.1. Aquisição de dados e Endereçamento dos Sensores

Os sensores especiais de umidade relativa, temperatura, pluviômetro, pressão e

anemômetro, são responsáveis pela aquisição de sinais analógicos provenientes do

ambiente, porém é necessária a conversão para um sinal digital para tornar-se

possível a interpretação dos mesmos. Os sensores selecionados realizam a

conversão automaticamente.

Contudo, após a aquisição os dados, estes são convertidos para digital de

acordo com a resolução de cada sensor, para então, serem codificados e

armazenados em um pacote contendo as amostras coletadas para posterior

transmissão.

O gerenciamento das transferências destes dados é necessário, para que não

haja perda de dados, ou superposição. O microcontrolador é programado para

gerenciar a leitura de cada sensor com um intervalo de tempo estabelecido o qual

pode ser configurado, assim como a temporização que é realizada para mostrar as

medidas no display e para envio e leitura de uma short message. Quando um

determinado sensor adquirir um sinal proveniente do meio, cabe ao

microcontrolador endereçá-lo, para efetuar a leitura serial dos dados gerados,

enquanto os demais continuam em estado de espera, até que seja solicitada uma

nova amostra, então é coletada uma nova amostra do próximo sensor.

Os dois protocolos utilizados pelos sensores para o endereçamento e leitura da

memória dos mesmos, a serem explanados a seguir são: 1- Wire cujo o fabricante

é a Dallas Semicondutor e o I2C, fabricante Texas Instruments.

Deve-se enaltecer que durante o tempo de inatividade do sensor, o

microcontrolador estará perdendo amostras naquele instante, porém o tempo é tão

Page 19: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

14

irrisório e as variações climáticas não são bruscas, que não deve ser considerado.

Após a realização da aquisição, os dados são salvos em memória, por meio de um

protocolo de comunicação, que estabelece o tamanho do pacote de acordo com a

resolução de cada sensor, para futura transmissão. Na figura 6, é ilustrado

detalhadamente o estado dos sensores controlados pelo microcontrolador, como

também o endereçamento.

Figura 6 . Estados dos sensores gerenciados pelo microcontrolador.

Temporizador

Ocioso

Pluviometro

Direção e Velocidade do Vento

Temperatura

Umidade Relativa

Pressão

Ocioso

Ocioso

Ocioso

dados dos sensores

endereçamento dos sensores

RAM Armazenamento

dos dados

Protocolo 1-Wire

Protocolo I2C

ATmega161

Page 20: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

15

3.1.1.1. Endereçamento dos Sensores O endereçamento dos sensores é fundamental para o controle de aquisição dos

dados, cuja função é habilitá-los para leitura dos dados convertidos de um sinal

analógico para digital, para tanto, é necessário conhecer o protocolo desenvolvido pelo

fabricante. O microcontrolador, é responsável por endereçar cada sensor, portanto,

esta rotina foi implementada utilizando a linguagem C, que continha bibliotecas destes

protocolos o que facilitou no desenvolvimento. Os protocolos pertinentes aos sensores

são:

§ I2C (Interface Compability � 2 Wire)

Consiste em protocolo de transmissão serial, que suporta velocidades

superiores 400KHz. Seu funcionamento é da seguinte maneira, os componentes

da linha I2C, possuem 4 pinos: o SCL, o SDA, o ADD0 e o ADD1. O SCL

(Source Clock), é gerado pelo microcontrolador, conforme o sensor recebe o

sinal de clock, realiza a conversão do sinal analógico para digital, transferindo

estes dados para o pino SDA (Source Data) que está conectado ao

microcontrolador, sendo assim o mesmo realiza a recepção destes dados e

armazena em memória. O dispositivo utiliza duas linhas para a transmissão

serial.

O ADD0 e o ADD1 são responsáveis pelo endereçamento escravo do

barramento serial que compreende 7 bits, este endereçamento é configurado no

próprio hardware, que pode ser realizado da seguinte forma: conectando os

pinos a VCC, flutuante ou terra aleatoriamente, sendo assim, é possível gerar

combinações, possibilitando a conexão de até oito dispositivos em uma rede

com dispositivos I2C. O sensor que utiliza o protocolo é o sensor de temperatura

TMP100.Na figura 7 pode-se observar, a tabela de endereçamento escravo.

Figura 7 . Representação do Endereçamento dos Pinos e o Endereço Escravo no

TMP100.

Page 21: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

16

Para realizar a configuração do TMP100 é necessário respeitar uma série

de parâmetros, acompanhando o diagrama de configuração do sensor. O clock é

gerado pelo microcontrolador, e o SDA é inicializado pelo mesmo com um pulso

de reset. Após, é escrito o endereço do Frame 1 Slave Address Byte, que foi

configurado através dos pinos ADD0 e ADD1 descrito na figura 8, o 8º bit R/W é

configurado para 0, pois está sendo realizada uma escrita no TMP100 devido à

configuração, então o mesmo retorna um ACK (acknowledge) para confirmar o

recebimento dos dados. O Frame 2 Pointer Register Byte, é representado na

figura 9, sendo selecionada a opção de configuração do Registrador. O Frame 3

e 4, são responsáveis pela configuração do formato do registrador,

representados na figura 9, onde os parâmetros referenciam-se a resolução,

configuração de alarme e outros. Portanto, para cada byte enviado do

microcontrolador ao TMP100 é enviado um ACK para o microcontrolador, para

confirmar o recebimento dos dados. Para maiores detalhes pode-se visualizar o

próprio datasheet do fabricante.

Figura 8. Diagrama de Tempo para Configuração do TMP100.

Figura 9. Byte de Registro e Configuração do Formato do Registrador.

Page 22: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

17

Para ler a temperatura gerada pelo sensor faz-se necessário seguir o

diagrama do Tempo de Leitura seqüencialmente, representado na figura 10.

Portanto, realiza-se a configuração do Slave Address Byte para escrita, isto é,

R/W em 1, o TMP100 envia um ACK e após é configurado o Pointer Register

Byte para Read Only (Somente Leitura) conforme a figura 9, porque trata-se da

leitura da temperatura. Então, segue o pulso de start gerado pelo

microcontrolador, logo após, o Pointer Register Byte é configurado para leitura,

sendo assim o bit R/W é setado para o nível lógico 0, recebendo um ACK do

Tmp100. Então, o TMP100 envia os 8 bits da parte alta da temperatura, e o

microcontrolador envia um ACK informando que foram recebidos, e por

conseqüência recebe os 8 bits da parte baixa, compondo assim a temperatura.

Para finalizar o microcontrolador informa que recebeu os 16 bits com um ACK e

envia um pulso de stop.

Figura 10. Diagrama de Tempo para Leitura da Temperatura do TMP100.

Page 23: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

18

§ 1 � Wire

O protocolo 1-Wire é totalmente configurável no firmware, isto é, a

programação não é realizada via hardware. O funcionamento consiste em

identificar um dispositivo que utiliza o protocolo na rede, normalmente cada

dispositivo, por exemplo, memória, contador, e conversor A/D, possuem uma

memória ROM com a seguinte estrutura:

- Family Code (código da família): compreende 8 bits e identifica qual é a

família do dispositivo existente na rede, por exemplo, memória;

- Serial Number (número serial): identifica o dispositivo na rede, todos

possuem uma memória ROM (Read Only Memory), cuja identificação é única e

compreende 48 bits;

- CRC Generator: possui um CRC (Check Redundancy Ciclic) de 8 bits, o

qual é muito importante para constatar que o valor lido, isto é, enviado pelo

sensor, é o mesmo que o valor recebido serialmente no microcontrolador, caso

esteja incorreto o barramento mestre, isto é, o microcontrolador gera um pulso

de reset e a leitura é repetida. O CRC foi utilizado durante todo o projeto para

garantir que as informações não estavam truncadas.

Portanto, cada dispositivo possui uma ROM que contém um pacote de

armazenamento de 64 bits contendo os parâmetros citados para a identificação

do dispositivo em rede, onde vários, dispositivos podem ser ligados serialmente.

Os sensores que utilizam este protocolo de comunicação são: Anemômetro,

Pluviômetro, Barômetro e o de Umidade Relativa.

O procedimento para ler os valores digitais de um dispositivo 1-Wire,

consiste em basicamente, endereçar o dispositivo, chamar as funções

intrínsecas do mesmo, por exemplo, função convert caso o dispositivo seja um

conversor digital ou simplesmente ler a memória ser for um contador; após é

necessário checar se os bits lidos estão corretos através do CRC e salvar estes

valores na memória do microcontrolador.

Os comandos para acesso a Memória ROM, são utilizados para

identificação dos dispositivos, são eles: Read ROM (permite ao microcontrolador

indentificar o Family Code, Serial Number e CRC de cada dispositivo presente

na rede), Match ROM (permite ao microcontrolador endereçar um único

dispositivo na rede), Skip ROM (o microcontrolador acessa as funções de

memória dos dispositivos sem prover o 48 bits do Serial Number), Search ROM

Page 24: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

19

(o microcontrolador é capaz de contar o número de dispositivos em uma rede).

A figura 11 representa a estrutura hierárquica do Protocolo 1-Wire.

Figura 11. Estrutura Hierárquica do Protocolo de Comunicação 1-Wire.

Para acesso a memória, onde está armazenado os dados aquisicionados

e para a conversão do sinal analógico (no caso do conversor A/D); é utilizado

comandos próprios do protocolo 1-Wire: Read Memory (leitura da memória),

Write Memory (Escrita na Memória), Convert (Conversão do sinal analógico para

digital), sendo assim, após a manipulação dos dados, estes são armazenados

na memória do microcontrolador para transmissão futura. Na figura 12, é

ilustrada a estrutura de identificação presente na memória ROM de um

dispositivo do protocolo de comunicação 1-Wire.

Figura 12. Representação da Memória ROM

Page 25: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

20

3.1.1.2. Protocolo de Comunicação e Codificação dos Dados

A codificação para uma amostra de 2 bytes, por exemplo, temperatura que

possui uma resolução de 12 bits, é realizada da seguinte maneira: soma-se os

primeiros 6 bits mais significativos com 32 em decimal, isto se faz necessário para

obter a representação do caracter em ASCII para encapsulamento do pacote no SMS,

ou seja, um caracter imprimível; o mesmo processo é realizado para a parte menos

significativa. Após desloca-se 8 bits da parte alta, somando com a parte baixa, sendo

assim, obtêm-se 2 bytes. A codificação pode ser representada abaixo.

unsigned int codifica(unsigned int dado) // codifica valor de 12 bits para

dois caracteres imprimiveis

{

char high,low;

low=(dado&0x3F)+32;

high=((dado>>6)&0x3F)+32;

return ((unsigned int)high<<8)+(low);

}

O protocolo de comunicação é de 144 bytes, pois é limitado ao tamanho de uma

short message (SMS). Portanto, para que os dados aquisicionados dos sensores sejam

encapsulados no pacote SMS, é necessário realizar a codificação (transformar os bits

de acordo com cada resolução em caracteres imprimíveis), eliminando a possibilidade

que caracteres intrínsecos da própria mensagem sejam apresentados como valores de

amostras, aumentando a segurança na transmissão. A decodificação é realizada no

receptor, ou seja, pelo software gerenciador. A figura 13 representa o Protocolo de

Comunicação.

Figura 13 . Representação do Protocolo de Comunicação.

1 Hora (1 Byte)

Minuto (1 Byte)

Temperatura (2 Bytes)

Umidade Relativa (2 Bytes)

Velocidade do Vento (2 Byte)

Precipitação (2 Bytes)

Direção do Vento

(1 Byte) 2 . . . .

11 . . . .

Cada amostra é representada por 11 bytes, sendo possível realizar 11

aquisições, totalizando 121 bytes.

Page 26: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

21

3.1.1.3. Temporização da Aquisição

O tempo de aquisição é configurado através do software gerenciador da estação

meteorológica, quando alterado é enviada uma mensagem instantânea para o

microcontrolador serialmente através do modem. O microcontrolador possui rotinas que

temporizam leitura, caso encontre uma mensagem, realiza a alteração do tempo de

aquisição das amostras.

O tempo de aquisição das amostras também é temporizado de acordo com a

configuração, assim como envio de mensagens do pacote SMS, rotinas do display e do

relógio.

As temporizações que podem ser previamente configuráveis via software de

gerenciamento são:

§ Tempo de 5 minutos: 27 segundos para cada amostra;

§ Tempo de 15 minutos: 82 segundos para cada amostra;

§ Tempo de 30 minutos: 164 segundos para cada amostra;

§ Tempo de 60 minutos: 327 segundos para cada amostra;

Os tempos de aquisição citados acima levam em consideração o número de

amostras igual a 11.

Para a implementação das rotinas de temporização, na aquisição de amostras,

leitura e envio de SMS, rotinas do display programadas no firmware, utilizaram um

fluxograma para execução seqüencial das rotinas. Abaixo segue o fluxograma das

rotinas básicas programadas no firmware. Os erros gerados pelo módulo na execução

de comandos AT, serão descritos em mais detalhes no fluxograma de envio e

recebimento de SMS.

Page 27: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

22

Fluxograma das Rotinas Básicas Programas no Firmware

N

N

Precipitação: #####.## mm

S//Seleciona o dia, ano...

//incremento data, sucessivo..

Amostra: ##

Velocidade do Vento: ###.## m/s

//enviando o pacote SMS

//Tempo de aquisição default para aquisicionar uma amostra é de 27 seg.

Se Amostras=11

Erro: Ao enviar

mensagens

Erro: Mensagem

Enviada com Sucesso

Escreve SMS( )

S

S

inicio

Estação Meterológica

delay 5 seg.

Re-inicializando

Inicializa Modem( ) Erro: ATE0

//Módulo desconectado, desligue para conectar. delay 5 seg.

Lê SMS( ) Erro:

Nenhuma Mensagem

Tempo Aquisição: ##

minutos

//Altera o tempo de aquisição, realiza verificação a cada 10 s.

Aquisições( ) //11 amostras tempo de aquisição

Temperatura : #.## ºC

Data : ##/##/## Hora: ##:##

Se pressionou b2

Se pressionou b1 N

Data : ??/##/## Hora: ##:##

Page 28: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

23

3.1.1.4. O Microcontrolador ATmega161

O microcontrolador ATmega161 será responsável pelos seguintes processos:

a) aquisição de dados através dos sensores;

b) temporização dos sensores para coletar amostras em intervalos

diferentes;

c) armazenamento destes dados em memória;

d) transmissão de dados através da interface serial que habilitará o modem

pelos comandos AT.

Portanto, a velocidade da transmissão será contada a partir do momento da

transmissão serialmente para o modem, ou seja, por mais que a velocidade de

transmissão alcance 144 Kbytes, ficará limitada às características da transmissão

serial, que por sinal é inferior. As principais características do microcontrolador

ATmega161 são:

§ Alto desempenho, Baixo consumo AVR 8 bits de resolução;

§ Arquitetura RISC

- 130 Instruções Powerfull;

- 32x8 Registradores;

- Acima de 8 MIPS Taxa de Dados de 8 MHz;

§ Programa e Memória de Dados

- 16k Bytes de Memória Flash;

- 512 Bytes EEPROM;

- 1K Byte de Memória SRAM;

§ 2 Timers/Counters de 8 bits;

§ Duas saídas Seriais Programáveis (UARTS);

§ Contador de tempo real com oscilador em separado;

§ Watchdog programável com oscilador separado;

O ATmega161 é um microcontrolador CMOS de 8-bits baseado na arquitetura

RISC AVR. As instruções são executadas em único ciclo de clock, possui uma taxa de

dados de aproximadamente 1 MIPS por MHz, permitindo a otimização do consumo de

energia versus a velocidade do processamento. Na figura 14 é apresentado o diagrama

em blocos da arquitetura do microcontrolador ATmega161.

Page 29: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

24

Figura 14 . Diagrama em Blocos da Arquitetura do Microcontrolador ATmega161.

Page 30: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

25

3.1.1.4.1. Funções Básicas do Microcontrolador ATMEGA161 O AVR core combina um grande conjunto de instruções com 32 registradores

gerais. Todos os 32 registradores são diretamente conectados a Unidade Lógica

Aritmética (ALU), permitindo dois independentes serem acessados em uma única

instrução em um ciclo de clock. Portanto, o resultado é um código mais eficiente,

alcançando velocidade na taxa de dados acima de 10 vezes mais rápidas que uma

arquitetura de um microcontrolador CISC convencional.

A descrição dos Pinos são as seguintes:

§ VCC: Alimentação Digital;

§ GND: Ground;

§ Port A (PA7..PA0): A porta A é representada por I/O 8 bits bi-direcional com

resistores internos pull-up (selecionados por cada bit). Possui buffers de saída

onde a corrente pode chegar a 20mA, podendo ser ligadas diretamente ao

display. Quando PA7 a PA0 são utilizadas com entradas então os resistores pull-

up internos são ativados. A porta A fica em estado de tri-state quando a

condição de reseta é ativa. Pode ser utilizado com multiplexador de dados

quando utilizado uma memória externa.

§ Port B, D e E (PB7..PB0): A porta B é representada por I/O 8 bits bi-direcional

com resistores internos pull-up (selecionados por cada bit). Possui buffers de

saída onde a corrente pode chegar a 20mA. Quando PB7 a PB0 são utilizadas

com entradas então os resistores pull-up internos são ativados. A porta B fica

em estado de tri-state quando a condição de reseta é ativa

§ Porta C (PC5...PC0): A porta C é representada por I/O 8 bits bi-direcional com

resistores internos pull-up (selecionados por cada bit). Possui buffers de saída

onde a corrente pode chegar a 20mA. Quando PC7 a PC0 são utilizadas com

entradas então os resistores pull-up internos são ativados. A porta C fica em

estado de tri-state quando a condição de reseta é ativa. A principal característica

é endereçar uma memória externa.

§ /RESET: Entrada de reset. Um nível baixo neste pino for maior que o tamanho

mínimo do pulso será gerado um reset, se o clock não esta rodando. Os pulso

menores são garantidos para gerar um reset.

O diagrama esquemático do microcontrolador ATmega161 é apresentado na

figura 15.

Page 31: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

26

U6

TLC0832C

65

7

23

1

D0DI

CLK

CH0CH1

CS

ISP

5V

Wavecom

12345

22pF

1,5K

10ko

hm

5V

Sensores

SW15V

ADCSerial

U4

MAX232

134526

129

1110

138

147

C1+C1-C2+C2-V+V-

R1OUTR2OUT

T1INT2IN

R1INR2IN

T1OUTT2OUT

1uF

5V

5V1,5K

Display LCD

109

12345678

11

14

1213

1516

DB3DB2

GNDVCCVORSR/WEDB0DB1

DB4

DB7

DB5DB6

LEDALEDK

100u

F

12345789

5V

22pF

10K

1uF

5V

8Mhz

SW2

10uF

5VTMP100

U11 6

52

3 4

SCL SDA

ADD0GND

ADD1 V+OutputAlert

5V

10K

1,5K5V

10K

100u

F

5V

0.1uF

1N4007

I2C

LM78051 3

2

VI VO

GN

D

32112V

5V

I2C

5V

SW3

12345

123456

Input AD0

100n

10uF

5VU1

ATMEGA161

2423

1819

1234567

9

20

101112131415

1617

403938373635343332

313029

28272625

2221

8

PC3 (A11)PC2 (A10)

XTAL2XTAL1

(OC0/TO) PB0(OC2/T1) PB1(RXD1/AIN0) PB2(TXD1/AIN1) PB3(SS) PB4(MOSI) PB5(MISO) PB6

RESET

GND

(RXD0) PD0(TXD0) PD1(INT0) PD2(INT1) PD3(TOSC1) PD4(OC1A/TOSC2) PD5

(WR) PD6(RD) PD7

VCCPA0 (AD0)PA1 (AD1)PA2 (AD2)PA3 (AD3)PA4 (AD4)PA5 (AD5)PA6 (AD6)PA7 (AD7)

PE0 (ICP/INT2)PE1 (ALE)

PE2 (OC1B)

PC7 (A15)PC6 (A14)PC5 (A13)PC4 (A12)

PC1 (A9)PC0 (A8)

(SCK) PB7

Figura 15. Diagrama Esquemático do circuito da Estação Meteorológica.

Page 32: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

27

3.1.2. Os Sensores Meteorológicos

Os Sensores Meteorológicos realizam aquisições das condições do ambiente, na

verdade atuam como transdutores pois, transformam uma energia mecânica (pressão,

velocidade) em energia elétrica. A principal característica é converter um sinal

analógico extraído do meio para um sinal digital. Porém, são necessários alguns

cuidados:

§ condicionamento do sinal (ganho), sendo muitas vezes necessário utilizar

amplificadores de ganho elevado como o de instrumentação para análise;

§ tratamento do sinal: podem ser utilizados filtros digitais ou analógicos, que o

torna imune a ruídos que são inerentes do meio. A descrição detalhada de

cada sensor da estação meteorológica será citada abaixo, como também sua

função.

3.1.2.1.O Pluviômetro (Sensor de Índice de Precipitação Pluvial)

O pluviômetro mede índice de precipitação pluvial, ou seja, a quantidade de chuva

em determinado instante, normalmente é medido em milímetros ou polegadas através

de um dreno com tamanho aproximado de 0,2 mm ou 0,1�, onde a cada passagem de

gotas é acionado uma chave magnética incrementando o contador, e armazenando em

memória. Atualmente existe vários sensores no mercado, porém foi avaliado os

recursos adicionais apresentado pela linha 1-Wire da Dallas Semicondutor fabricante

de sensores destinados a fim meteorológicos, o pluviômetro 1-Wire Rain Gauge, utiliza

uma chip chamado DS2423 que possui 3 contadores e memória RAM, e transmissão e

recepção de dados serialmente. As principais características são:

§ Bateria de Lítio de 3V para manter o contador e a RAM;

§ Contador e Memória RAM;

§ Chave analógica magnética;

§ Ciclo de tempo 1,5 milisegundos;

§ Interface Rs-232;

O módulo contador DS2423 incluso no sensor 1-Wire Rain Gauge, possui

algumas características técnicas:

§ a contagem é realizada através de uma chave analógica;

Page 33: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

28

§ não necessita alimentação externa;

§ 32 bits de leitura de contagens;

§ Capacidade de armazenamento de 512 bytes, compondo 14 páginas;

§ Bateria de lítio;

§ Endereçamento de 64 bits;

O acionamento da chave gera um incremento de 32 bits. A memória de 512 bytes é

organizada por 16 paginas de 32 bytes.

Quatro destas páginas têm 32 bytes associado. Os contadores para página 14 e 15

são incrementados com cada fechamento da chave. Os contadores associam as

paginas 12 e 13 para salvar os incrementos tempo. Abaixo a figura 10 apresenta a

estrutura mecânica do pluviômetro.

Figura 16. Estrutura Mecânica do Pluviômetro

O padrão do mecanismo bucket para o pluviômetro para operar na rede 1-Wire,

possui o papel de gerar uma simples contagem através dos acionamentos da chave

magnética, armazenando-as no contador DS2423. Enquanto o contador funciona, há

Page 34: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

29

alimentação de cargas parasitas de CR1 BAT545 e C1, a bateria de lítio permite

manter o funcionamento para o pluviômetro em modo stand alone. A baixa energia

requer um chip que permita acima de 10 anos de sobrevida.

Quando conectado a rede 1-Wire, o circuito trabalha da seguinte maneira. Na

posição ociosa para o barramento a alimentação é de 5V, alimentada através de um

resitor pull-up equivalente de 1,5K� do barramento mestre (microcontrolador). Isto

encaminha as correntes do diodo Shottky CRS BAT545 e carrega o capacitor C1 para

aproximadamente 5V, alimentando o contador DS2423.

Sempre que inclinado o bucket é esvaziado, isto ativa a chave magnética,

causando o fechamento momentâneo e acionando a entrada do contador para o nível

lógico alto. Quando a chave abre novamente, o pull-down resistor R1 retorna a entrada

para nível lógica baixo. O contador mantém o total de transmissões do barramento de

dados mestre.

Desde que o contador DS2423 não tenha sido resetado, a configuração do

pluviômetro pode ser resetada manualmente ou via software. O contador, contudo,

pode ser resetado enquanto a alimentação é removida por um determinado instante de

tempo, então se está em off o C1e a bateria de backup deve ser adicionada. O diodo

Shottky CR1a BAT545 protege o circuito da tensão excessiva, o DS2407 contem 1K

de EPROM para armazenamento do programa especifico para o pluviômetro.

O pluviômetro é calibrado para permitir que 16 mm de gotas água escorram

lentamente através do lid over no período de 1 hora. Isto deve resultar em cada

despejamento do bucket em 50 vezes para cada leitura de 1.00 polegada de chuva.

Isto significa duas calibrações devem ser ajustadas para 0,16 mm de água causando o

despejamento da bucket. Devido à resposta do tempo em que é limpo a bucket, é

necessário calibrar a unidade rapidamente a uma taxa em que possa ler altas

precipitações pluviais.

O resistor pull-down R1 no DS2423 possui a responsabilidade de incrementar a

capacidade de rejeição a ruídos. Um canal FET pode ser conectado em série ao

resistor, com o ponto da porta A e o GND. Normalmente R1 baixa a porta e mantém o

transistor em estado de corte, mas quando inclinado bucket, a chave magnética é

fechada, elevando o transistor para a saturação.

Na figura 17 é apresentado o diagrama esquemático do sensor de precipitação

pluvial, conforme foi detalhado acima.

Page 35: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

30

DATA

CR1b BAT545CR1a BAT545

GND

3V BAT

Ch1

DS2407

U1

36

12

1Moh

m

CR2 BAT545 DS2423

U1

563

2

C10.1uF

Figura 17. Diagrama esquemático do Sensor de Índice de Precipitação Pluvial

3.1.2.2.O Barômetro (Sensor de Pressão)

Os barômetros são sensores responsáveis pela medição da pressão atmosférica,

trabalham de acordo com o princípio piezométrico, e construído com um filme resistor

depositado em um fatia de silício para formar uma ponte; conforme a pressão se altera,

a fatia será deformada e, conseqüentemente mudará a resistência do sistema. Os

principais requisitos são:

§ Medir pressão do ambiente em uma faixa de 300 à 1100 mbar;

§ Compensação de Temperatura;

§ Interface Rs-232;

§ Memória RAM(para armazenar dados da temperatura e pressão);

O sensor que mensura pressão e temperatura que possui todas os requisitos acima

é o TAI8570 da Dallas, as principais características são:

§ Mensura pressão em uma faixa de 300 à 1100 mbar;

§ 16 bits de resolução (conversão analógica para digital);

§ Sensor de Temperatura incluso;

§ Não necessita de fonte externa;

§ Tecnologia baseada em 1-Wire (conversor Ds2406);

§ Permite endereçar múltiplos sensores em uma rede;

Page 36: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

31

A possibilidade de incluir vários sensores da linha 1-Wire é um dos principais

benefícios, o que permite endereçar o sensor que deseja realizar aquisição dos dados,

outro fator importante é ausência de alimentação externa, pois é obtida diretamente da

rede 1-Wire (serialmente).

Figura 18. Configuração da rede 1-Wire A TAI8570 1-Wire é módulo inteiramente integrado que permite medir pressão

em uma rede 1-Wire. A unidade pode ser identificada e endereçada pelo DS2406 com

64 bits do número serial. O DS2406 é usado para escrever ao sensor, possui Vcc

vinculado a 5V para o PIOA (entrada A) conectado a CLK (clock), e o PIOB para a

entrada de dados do sensor MS5534A. O DS2406 é usado para ler a informação do

sensor que possui o pino de Vcc conectado ao terminal de terra, o pino PIOA para o

pino do SCLK e o PIOB para pino DOUT do sensor.

Na figura 19 é apresentado o diagrama esquemático do sensor de pressão do

módulo TAI8570 da Dallas Semicondutor.

100K

ohm

D4

D4

C10.1uF

Vcc_OWA

Y2

32KHz

TPS-77033

U1

. .

5V

OWIO

3V

100K

ohm

3V

DS2406

U1

PA

PB

I/O

DS2406

U1

PA

PB

I/O

D4

100K

ohm

D4

MS5534AU1

23

OU

T

V+V-

.

INSC

LK

3V

74HCU04

U1

.

.

.

Figura 19. Diagrama esquemática do Barômetro (Sensor de Pressão)

Módulo TAI8570

Page 37: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

32

3.1.2.3.Sensor de Temperatura

Os sensores de temperatura ou termômetros são responsáveis por mensurar a

grandeza física de calor existente em um meio. Os transdutores mais populares são os

resistivos e o termoelétrico, cujo princípio de funcionamento do resistivo é baseado na

variação de resistência de condutores elétricos com a temperatura, e o transdutor

termoelétrico apresentam uma diferença de potencial entre dois metais condutores em

função da temperatura. Os principais requisitos para sensor de temperatura são:

§ Temperatura de -20 ºC à 50 ºC;

§ Resolução abaixo de 1ºC;

§ 8 bits de resolução;

§ Interface Rs-232;

O sensor analisado que corresponde os requisitos é Tmp100 da Texas Instruments

principais características são:

§ Saída Digital: I2C Serial 2-Wire;

§ Resolução: 9 à 12 Bits, Selecionável pelo Usuário.

§ Faixa: +- 2.0ºC de -25ºC à +85ºC;

§ Alimentação: 2,7 V à 5,5 V

O diagrama em blocos do sensor de temperatura Tmp100 é apresentado através da

figura 14:

Figura 20. Diagrama em blocos do Sensor de Temperatura Tmp100.

Page 38: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

33

3.1.2.3.1.Descrição do Sensor de Temperatura Tmp100

O TMP100 são sensores de temperatura digital para gerenciamento de

temperatura e para aplicações de proteções térmicas. O TMP100 possui interface I2C e

Interface SMBus compatíveis e especificados para uma faixa de temperatura que varia

de -55ºC à +125ºC.

O TMP100 não necessita de componentes externos para operar exceto de um

resistor pull-up em SCL, SDA, e Alert, através de um bypass capacitor de 0.1µF,

conforme o diagrama na figura 15.

Input AD0

OutputAlert

I2CI2C

5V

C1

0.1uFTMP100

U1

1 6

52

3 4

SCL SDA

ADD0GND

ADD1 V+

Figura 21. Diagrama Esquemático do Sensor de Temperatura TMP100.

3.1.2.3.2.Registrador de Temperatura

O registro de temperatura do TMP100 é um registrador de 12-bits, qual

armazena a saída da mais recente conversão. Dois bytes devem ser lidos para obter

dados são descritos nas tabelas abaixo. Os primeiros 12 bits são usados para indicar a

temperatura, sendo que os bits restantes são iguais a zero. Seguindo o power-up ou

reset o registrador de temperatura lerá 0ºC até que a primeira conversão seja

completada.

Figura 22. Byte 1 do Registrador de Temperatura

Figura 23. Byte 2 do Registrador de Temperatura.

Page 39: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

34

A temperatura lida é composta de 12 bits sendo sua conversão representada

através da figura 24.

Figura 24 . Formatação de Dados da Temperatura

3.1.2.4.Sensor de Umidade Relativa

A umidade relativa do ar é totalmente dependente da temperatura no instante, e

pode ser mensurada através da diferença de temperatura entre o bulbo seco e o bulbo

úmido. Então é realizada a compensação de temperatura, onde a umidade é expressa

em porcentagem.

A saída do sensor é um sinal analógico proporcional à tensão de alimentação,

conseqüentemente para conversão da umidade relativa, utiliza-se à tensão de

alimentação e a tensão gerada pelo sensor, que pode ser demonstrada de acordo com

a fórmula da umidade relativa (RH � Relative Humidity):

TsensorRhTrueRHplyVVoutSensorRh

00216,00546,1/0062,0/16,0)sup/(

−=−=

Figura 25. Ilustração do Sensor de Umidade Relativa HIH-3610.

Page 40: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

35

Os requisitos necessários para o sensor de umidade relativa são:

§ Faixa de porcentagem de umidade relativa de 5% à 100% ;

§ Tensão de Alimentação de 5V;

§ Faixa de Temperatura de -20º C à 50ºC;

§ Resolução de 1%;

O sensor de umidade que atende todos os requisitos acima e possuir uma série

de outros recursos como conversor para digital e compensação de temperatura é o

TAI8540 que possui um sensor de umidade relativa o HIH3610 e o DS2438

(compensa temperatura e converte para digital). As principais características do

sensor TAI8540 são:

§ Faixa de temperatura de-40ºC à 85ºC;

§ Resolução de conversor para digital de 16 bits;

§ Interface Rs-232;

§ Faixa de porcentagem de umidade relativa de %2 à 100% RH;

§ Tensão de Alimentação: 4 à 5,8 V;

§ Tempo de Resposta: 15 segundos cada a temperatura do ar move lentamente

par a 25ºC;

§ Linearidade: ~0,5% RH

Através das fórmulas podemos chegar à umidade relativa, onde há uma

compensação da temperatura. O gráfico na figura 26 mostra a porcentagem de

umidade relativa (RH), gerada pela tensão de saída e pela temperatura.

Figura 26. Tensão de saída versus temperatura em 0º C, 25ºC e 85ºC.

Page 41: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

36

No circuito o capacitor C1 e os diodos Schottky no CR1 forma a meia-onda

retificada que provê alimentação para ambos os sensores e para a bateria.

Esta é uma implementação discreta de cargas parasitas usadas internamente

dos dispositivos 1-Wire, que provê alimentação própria. O diodo de Shottky permanece

em série com o barramento de dados e o GND o que provê proteção ao circuito

segurando o sinal abaixo de aproximadamente 0,4V. Abaixo o barramento mestre

(microcontrolador) controla U1, o DS2438 monitora a tensão disponível para U2, o

sensor de umidade, e o próprio Vdd (pino 5). Ele então mede a saída de U2�s através

da entrada analógica pino 4. Finalmente, o DS2438 reporta a temperatura em ºC para a

conversão interna de 12 bits. O software utiliza então estes dados para computar e

amostrar graficamente a verdadeira umidade relativa. A figura 27 apresenta o diagrama

esquemático do Sensor de Umidade Relativa da linha Dallas Semicondutor.

C10.1uF

HIH-3605-A

U2

31

2

GN

DV

dd

.

DS2438

U1

18

23

888885

4

GN

DD

0

V+V-

.....V

dd

Vod

R1

100Kohm

C20.1uF

2 3

2

1

GND

CR1 BAT545

Data

Figura 27. Diagrama Esquemática do Sensor de Umidade Relativa.

3.1.2.5.Sensor de Velocidade e Direção do Vento

O sensor de velocidade do vento pode ser mensurado através do número de

rotações do rotor, ou seja, é transformado de rpm (rotações por minuto) para km/h. A

sua construção é baseada em dois imãs montados em um rotor junto ao eixo do Wind

cup�s. Os imãs operam com uma chave magnética conectada ao um contador que

provê a saída serial, os mesmos estão montados em buracos externos do rotor, onde

cada rotação provê duas contagens, o que permite contar até as velocidade mais

baixas. Os principais requisitos para o sensor de velocidade do vento são:

§ Permitir velocidades altas acima de 100 Km/h;

Contador e Memória RAM para armazenamento;

Page 42: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

37

Através dos requisitos analisados foi escolhido o modelo da linha 1-Wire da

Dallas que utiliza o contador e memória RAM de 4Kbits

O sensor de direção do vento é construído com chaves magnéticas que são

ativadas conforme a direção do vento, não necessita de energia elétricas para poderem

operar, porque não são dependentes de nenhuma taxa, podendo assim medir em

condições estáticas. O sinal não necessita ser condicionado, sendo que possui uma

alta impedância quando aberta e uma impedância desprezível quando fechada.Os

requisitos são:

§ Apresentar a orientação das direções: Norte, Sul, Leste, Oeste, Nordeste,

Sudeste, Sudoeste, Noroeste;

§ Interface Rs-232;

O sensor que atende os requisitos é da linha 1-Wire da Dallas Semicondutor, possui

um chip DS2401 para comunicação serial e um chip DS2407 (duas chaves), que

consiste em oito chaves montadas radialmente em um intervalo de 22,5º, cada chave e

conectada entre a linha de dados e o DS2401 que provê o número serial quando umas

das chaves se fecham. A chave magnética do DS2407 é fixada ao eixo do cata-vento.

Portanto, sendo o DS2401 conectado ao barramento (se DS2407 for endereçado a

chave é fechada), então o barramento mestre pode ler o número serial, isto é, este

número identifica qual chave foi fechada, ou seja, qual ponto da bússola representa.

Por motivo de confiabilidade o barramento mestre pode ler a direção do vento somente

quando o interruptor endereçado está fechado[2].O rotor é projetado de forma que o

layout possa ler a velocidade e direção do vento com é mostrada no diagrama

esquemático na figura 29.

Page 43: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

38

Figura 28.Ilustração do Sensor de Velocidade e Direção do Vento

SE

DS1820

12

D4

DS2401

12

DS2401

12

DATA

NE

C10.1uF

DS2401

12

N SW

DS2401

12

GND

DS2401

12

DS2401

12

Win Speed

W

DS9467

12

DS24011

2DS2401

12

NW

DS2423

12

Bat6

E S

Figura 29. Diagrama Esquemático do Sensor de Velocidade e Direção do Vento.

Page 44: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

39

3.1.3. Módulo de Transmissão e Recebimento de SMS

A transmissão de dados é realizada através dos dados enviados serialmente

pelo microcontrolador para o módulo SMS, a velocidade pode atingir 144 Kpbs,

utilizando a tecnologia GSM considerado segunda geração.

Ao iniciar a transmissão o microcontrolador gerenciará a separação dos pacotes

salvos em memória de acordo com as amostras coletadas em cada sensor, e habilitará

o modem através de comandos AT (Application Programming Interfaces), ou seja,

enviará comandos para habilitar as linhas de saída e entrada de dados para certas

funções como (Open/Close flow, Send/Receive Data), fornece também acesso às

funções de gestor de controle de fluxo (Flow Control Manager), que permite acesso à

interface RS232, após será enviado via interface serial um pacote com formato SMS

contendo amostras a serem transmitidas, que conterá no máximo 144 caracteres.

Contudo, quando o modem instalado ao microcomputador receber este pacote

SMS, este também estará habilitado através dos comandos AT para realizar a

recepção, ou seja, ler o SMS, então removerá do pacote encapsulado a mensagem e

armazenará em um registro de eventos, através dos comandos de recepção de dados

da interface RS232, conforme será apresentado no fluxograma. O arquivo de eventos

será utilizado para armazenar e gerenciar informações no site. O diagrama em blocos

da figura 30, apresenta a transmissão e recepção do pacote SMS.

Figura 30. Diagrama em Blocos da Transmissão SMS.

O microcontrolador será responsável por todo processo de aquisição e

transmissão de dados via interface serial e armazenamento dos dados aquisicionados

RAM

ATmega161

Codificação e

armazenamento dos dados

Habilitação por

Comandos AT

Transmissão dos Pacote SMS

Decodificação Armazenamento no

banco de dados

Page 45: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

40

em memória, isto é, os requisitos de hardware ficarão limitados às suas características.

Porém, a transmissão ao modem do pacote SMS, será limitada pela velocidade de

transmissão do pacote através do microcontrolador serialmente.

3.1.3.1. Fluxograma para Envio e Recebimento de Mensagens SMS por Comandos AT

Para o envio, recebimento de mensagens SMS e rotinas utilizadas no

microcontrolador e no software de gerenciamento houve a necessidade de criar um

fluxograma, portanto observou-se a eficácia nos resultados através dos comandos

executados.

Os comandos listados nos fluxogramas de envio e recebimento de mensagens

instantâneas, são utilizados por telefones celulares comuns, sendo assim, através dos

comandos AT é possível realizar todos serviços de telefonia móvel, tais como: envio de

SMS, chamadas, acertar data/hora, carregar créditos e outros. Os comandos AT

utilizados foram:

§ AT+ECHO: comando para realizar a habilitação do eco, na programação

foi desabilitado para evitar que a serial receba o comando novamente,

evitando �lixo� no buffer responsável por gerenciar os erros;

§ AT+CMEE: habilita resposta de erros;

§ AT+CPIN: habilita o Card Personal Identification Number (identificação do

cartão do celular);

§ AT+CNMI: utilizado para habilitar serviços padrão de telefonia;

§ AT+CSMP: é utilizado para determinar o tempo de vida de uma

mensagem;

§ AT+CMGF: configura o módulo para Modo Texto ou PDU, na

implementação foi utilizado o modo texto.

§ AT+CMGS: comando necessário para enviar a mensagem, os parâmetros

necessários são o telefone destinatário e o texto que será enviado.

§ AT+CMGR: comando que realiza a leitura do SMS, parâmetro necessário

o número da mensagem.

§ AT+CMGL: Lista as mensagens existentes no buffer, parâmetros

utilizados, exemplo, mensagens lidas, não lidas, enviadas, e etc.

Page 46: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

41

Fluxograma para Envio de Mensagens SMS por Comandos AT

ERROR

OK

AT+CPIN?

AT+ECHO=0 AT+CMEE=1

AT+CPIN=1010 +CPIN:SIMPIN

CME ERROR:16

+CME ERROR:10 SIM NÃO FOI

INSERIDO

+CPIN:READY

AT+CNMI=0,1,1,1,0

AT+CMGS= �+tel�<CR>�dado

s�<crtl-z>

+CMGS: <mr>

ERRO (CARREGAR CRÉDITOS)

AT+CSMP=17,169,0,0

AT+CMGF=1

Inicialização do Modem

ERROR

Page 47: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

42

Fluxograma para Recebimento de Mensagens SMS por Comandos AT

No Anexo 2, há detalhes dos erros gerados e comandos AT adicionais.

+CMS ERROR:322

AT+ECHO=0 AT+CMEE=1

ERROR

AT+CPIN?

OK

AT+CPIN=1010 +CPIN:SIMPIN

CME ERROR:16

+CME ERROR:10 SIM NÃO FOI

INSERIDO

+CPIN:READY

AT+CMGF=1

AT+CMGL= �REC UNREAD�

Cont_mes=0

AT+CMGR= Cont_mes

Cont_mes++

ok

Cont_mes=0

+CMS ERROR:321

AT+CMGD= Cont_mes

Page 48: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

43

A transmissão por SMS, possui velocidade alta por se tratar de comunicação

sem fio (wireless). No mercado existem duas tecnologias a GPRS (General Packet

Radio Service) utilizada nas redes GSM, que teoricamente pode ir até 128Kbps,

mas na prática a maioria dos equipamentos com suporte a GPRS alcançam

velocidades entre 30 e 50Kbps, e a 1xRTT (1xRadio Transmission Technology)

utilizadas nas redes CDMA pode alcançar velocidades de acesso de 144 a

2048Kbps, porém na prática alcança-se entre 90 e 110Kbps. Analisando a

confiabilidade é velocidade de transmissão, foram analisados aparelhos de

comunicação móvel da tecnologia 1xRTT e GPRS. Os aparelhos existentes no

mercado para tal finalidade são:

§ GTran Cartão PCMCIA, as principais características são:

� Cartão modem 1XRTT sem fio, compatível com a tecnologia CDMA -

Compatível com a maioria dos laptops e PDAs que utilizam Windows, 98 SE,

2000, ME, NT4.0 (Service Pack 5 ou superior), CE3.0, XP, Pocket PC 2002 e

HPC 2000;

� Conexão em alta velocidade transmite dados com velocidade de até

153Kbps;

� Transmissão e recepção de SMS (Short Message Service);

� Pode ser usado em aplicativos para transação em tempo real;

� Antena flexível;

Figura 31. Cartão PCMCIA GTran Wireless

§ Modelo DTSS � 800 (Fabricante Anydata), as principais características são:

• Tecnologia CDMA 2000 1xRTT;

• Interface padrão RS232;

• Transmissão de dados acima 153 Kbps;

• Controlado remotamente por comandos AT ;

• Interface LCD/Keypad;

• Suporte ao Circuito Data/Fax;

Page 49: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

44

• Construído o protocolo TCP/IP;

• Transmissão e Recepção SMS;

• Aumento da variação através da taxa de codificação (EVRC);

• Características de telemetria;

Figura 32. Modem DTSS-800(Tecnologia CDMA 1xRTT)

Dentre os dois modems wireless pesquisados, foram verificados diversos

parâmetros, principalmente a existência de uma interface RS232, e o controle por

comandos AT.

A seguir será apresentada detalhadamente a característica do modem

WaveCom que foi utilizado para a transmissão de mensagens instantâneas, devido a

facilidade do envio de mensagens em modo texto.

3.1.3.2.Modem GSM WaveCom

O modem WaveCom GSM possui dupla banda (900 MHz e 1800 MHz. Pode

funcionar em telefonia, voicemail, envia e recepciona SMS, fax grupo 3, transmissão de

dados digitais e outras funcionalidades, sem necessidade de nenhum hardware

adicional. Outras características que são importantes citar são:

• Tamanho: 58.3 x 32.2 x 6.0 mm;

• Potencia: 2 Watts EGSM seção de radio abaixo de 3.6 Volts;

• 1 Watt GSM1800/GSM1900;

• Seção digital abaixo de 2.8 Volts;

• 3V SIM Interface;

• Relógio em Tempo Real com calendário;

Page 50: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

45

• Bateria;

• Cancelamento de Eco e redução de ruído;

• Full GSM ou GSM/GPRS;

• Interface Serial;

• SIM card;

3.1.3.2.1.Funcionalidades RF (Radiofreqüência)

As funcionalidades RF compreendem a fase II EGSM900/GSM1800 ou a

recomendação GSM1900. As freqüências disponíveis são:

§ Rx (EGSM 900): 925 à 960 MHz

§ Tx (EGSM 900): 880 à 915 MHz

§ Rx (GSM 1800): 1805 à 1880 MHz

§ Tx (GSM 1800): 1710 à 1785 MHz

§ Rx (GSM 1900): 1930 à 1990 MHz

§ Tx (GMS 1900): 1850 à 1910 MHz

A RF é baseada em uma especifica dual band inclui:

§ 2 down-converters dedicados;

§ 1 FI demodulador;

§ 1 VCO;

§ Transmite loop (modulador, down mixer, fase das freqüências, comparador).

§ 2 amplificadores.

3.1.3.2.2.Firmware

WISMO Quick Q2300 series é designado para integrar internamente vários tipos

de aplicações tais como handsets ou aplicações verticais (telemetria, multimídia,

automotive).

Para handsets o firmware é customizado pela Wavecom. Para aplicações

verticais, o firmware oferece o controle do módulo através dos comandos AT.

Page 51: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

46

3.1.3.2.3.Interfaces

Segue a figura 33 que apresenta a descrição funcional interna do módulo do

modem Wavecom.

Figura 33. Arquitetura funcional interna do Módulo WaveCom

3.1.3.3.Comandos OpenAT

Para habilitação do modem envio e recebimento de mensagens instantâneas

faz-se necessário o uso do comando OpenAT, sendo possível após seguir uma

seqüência de passos que podem ser descritos e ordenadas tendo como auxílio um

fluxograma da seqüência de comandos AT. Devido o módulo WaveCom ser

programado evita o uso de microprocessador.

Page 52: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

47

A linguagem OpenAT baseia-se no conjunto de comandos AT, desenvolvido pela

Hayes para ser usado nos modems telefônicos. Para o desenvolvimento de aplicações

OpenAT é necessário utilizar a biblioteca dos comandos AT, que por sua vez é

baseado em APIs (Application Programming Interfaces) desenvolvidos pela WaveCom,

que são:

• Application Mandatory API: deve ser utilizado pela aplicação;

• AT Command API: fornece acesso às funções AT (comandos send AT,

indicações subscribe to unsolicited/intermediate).

• OS API: fornece acesso às funções do sistema operacional (temporizador de

avanço/parada, leitura/escrita de dados na memória flash, memória

Init/Release/Get, apagamento de objetos armazenados na memória Flash).

• PCM API: fornece acesso às funções do gestor de controle de fluxo (Flow

Control Manager), acesso à interface RS232 (V24) e às linhas de entrada/saída

de dados para certas funções (Open/Close flow, Send/Receive Data).

• I/O API: para o controle da ligação serie e GPIO .

• Bus API: controla os barramentos SPI e I2C.

• Standard API: põe a disposição várias funções C normalizadas.

A figura 34 ilustra a interação entre os comandos OpenAt e APIs e a aplicação do

utilizador contida no módulo WaveCom. O sistema OpenAT , também é conhecido

como Plataforma MUSE, o compilador utilizado é chamado de ARM.

O módulo WMOi3 utiliza um cartão telefônico chamado SIM, semelhante aos que se

utilizam em telefones celulares, possui um número pessoal denominado PIN (Personal

Identification Number) ativado.

Page 53: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

48

Figura 34. Módulo do Modem Wavecom

O SIM Card é introduzido no módulo. Ao ligar a tensão de alimentação, alguns

parâmetros possuem os seguintes valor pré-defindos:

§ PIN 0000

§ PIN Check off

§ Reply On

Portanto, estes valores são imediatamente modificados para evitar interferências

ao bom funcionamento da comunicação. A primeira comunicação é realizada para

alterar o novo PIN, uma vez alterado não há necessidade o fazer novamente.

Contudo, é necessário verificar o funcionamento da interface serial com o

microcontrolador. A porta série a utilizar deve ser configurada para 8,N,9600, o

programa OpenAT fica ativado no módulo quando se liga a tensão de alimentação o

modem reconhece apenas aos seguintes comandos:

§ AT+RESET: Configura o módulo com os parâmetros pré-definidos. Este

comando é utilizado caso seja esquecido o PIN definido.

§ ALT+WOPEN+2: Termina a execução do programa e coloca o modem no modo

normal. A partir deste momento, o módulo pode ser controlado por meio de

Open At application

User Embeddeed Application

Open At Library

Wavecom Core Software

User Embedded Application

Open AT APIs (Event & Functional driven)

AT Command Transportatio

n facility

OS related facility

Standard �C� library

Flow Control Management

facility

Serial I/O

Control facility

BUS

facility

Input/ output facility

Page 54: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

49

comandos AT. Este modo permite instalar o modem no Windows do PC e

estabelecer ligações com a Internet. No entanto, as ligações só são possíveis se

o modem estiver sido reprogramado com o novo firmware GPRS e o cartão SIM

alojado no módulo for compatível com o sistema GPRS.

§ ALT+WDWL: Permite carregar um programa novo no modem. O processo de

carga utiliza o protocolo X-modem, que é suportado pela maior parte dos

programas de comunicação como, por exemplo , o HyperTerminal do Windows.

Figura 35. Foto do Módulo do Modem Wavecom.

Page 55: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

50

3.1.4. Software de Gerenciamento dos Dados � Atualização dos dados

O software é responsável por apresentar os dados que foram aquisicionados

pelos sensores de índice de precipitação pluvial, pressão, umidade relativa,

temperatura, direção e velocidade do vento, de uma forma clara ao entendimento do

cliente. Para tanto, é necessário o tratamento das informações, para então realizar

estatísticas das condições climáticas.

3.1.4.1. Ambiente de Desenvolvimento

A aquisição dos dados é realizada pelos sensores pertinente a cada condição

climática, porém é importante ressaltar que estes são armazenados pelo

microcontrolador em memória e transmitidos em bits, quando chegam ao destino são

retirados do encapsulamento SMS e são armazenadas em uma base de dados, o qual

é responsável por registrar todas as informações enviadas. O projeto de

implementação deste software de gerenciamento foi realizado, utilizando a

Programação Orientada a objetos, com objetivo de otimizar o código, e preservar a

segurança e escalabilidade do código. As principais funções do software de

gerenciamento são:

§ Realizar leitura dos dados aquisicionados pela estação meteorológica;

§ Realizar a decodificação destes dados, e convertê-los em medidas reais;

§ Configurar o tempo de aquisição das amostras da estação;

3.1.4.2. Implementação do Software de Gerenciamento

O software de gerenciamento é responsável por realizar leituras em busca de

novas amostras geradas pela estação e decodificá-las, devido tratar-se de um software

de gerenciamento de informações, observou-se os benefícios como: segurança,

escalabilidade e portabilidade na implementação orientada à objetos.

Através dos diagramas da POO (Programação Orientada a Objetos), é possível

verificar esta implementação.

Page 56: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

51

3.1.4.2.1. Diagrama de Caso de Uso

3.1.4.2.2. Roteiros § Cadastra Funcionário: Nome: Cadastra Funcionário Descrição: é responsável por cadastrar o funcionário, a fim de controlar que realizar as aquisições de alterações das configurações do sistema Atores: funcionário Pré-condições:não há Pós-condições: o funcionário ficará cadastrado. Caminho Primário: o funcionário entra com os dados pessoais no sistema. Caminho Alternativo: Não há. Caminhos de Exceção: funcionário já possui cadastro.

ATUALIZA TEMPO DE AQUISIÇÃO

AQUISIÇÃO

<<usa>>

VALIDAR

AQUISIÇÃO

<<usa>>

CADASTRA FUNCIONÁRIO

BUSCAR

FUNCIONARIO

CONFIGURA

SISTEMA

Page 57: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

52

§ Atualiza Tempo de Aquisição: Nome: Atualiza Tempo de Aquisição Descrição: é responsável por realizar as alterações do tempo de aquisição das amostras

dos sensores das estação meteorológica. Atores: funcionário Pré-condições: não há. Pós-condições: será realizado a alteração do tempo de aquisição das amostras da estação

meteorológica, sendo armazenado está alteração no banco de dados para posterior consulta.

Caminho Primário: o funcionário entra com o tempo de aquisição.. Caminho Alternativo: Não há. Caminhos de Exceção: não há. § Aquisição: Nome: Aquisição Descrição: é responsável por fazer aquisição, é feita através do recebimento de short

messages (SMS) gerados pelo microcontrolador através das medidas realizadas pelos sensores.

Atores: funcionário Pré-condições: o usuário deve estar logado no sistema,. Pós-condições: os dados das aquisições ficam armazenados no banco de dados. Caminho Primário: não há. Caminho Alternativo: Não há. Caminhos de Exceção: não há. § Valida Aquisição: Nome: Valida Aquisição Descrição: é responsável realizar um filtro verificando se a mensagem recebida é uma

mensagem válida, e após realizar a conversão dos dado recebidos para uma medida real.

Atores: funcionário Pré-condições: deve ser realizado após a leitura. Pós-condições: os dados das aquisições ficam armazenados no banco de dados. Caminho Primário: não há. Caminho Alternativo: Não há. Caminhos de Exceção: Caso não seja uma mensagem válida, então é descartada. § Configura Sistema: Nome: Configura Sistema Descrição: é responsável por alterar configurações da porta de comunicação como

também do tempo de leitura de short messages. Atores: funcionário Pré-condições: não há. Pós-condições: não há. Caminho Primário: não há. Caminho Alternativo: Não há.

Page 58: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

53

Caminhos de Exceção: não há. § Busca Funcionário: Nome: Busca Funcionário Descrição: é responsável realizar a busca do funcionário que irá realizar as leituras das

amostras como também as configurações. Atores: funcionário Pré-condições: o usuário deve estar logado no sistema. Pós-condições: o nome do funcionário fica armazenado juntamente com os dados das

leituras e atualizações do tempo para posterior consulta. Caminho Primário: Não há. Caminho Alternativo: Não há. Caminhos de Exceção: o resultado da busca não é o desejado, faz-se uma nova busca.

3.1.4.2.3. Diagrama de Classes

FUNCIONÁRIO AQUISICAO

ATUALIZA TEMPO DE AQUISICAO

Page 59: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

54

3.1.4.2.4. Diagrama de Classes de Negócios

CFrmAquisição - controlador - ControlerAquisicao *

ControlerMaq + Leitura() + BuscaLeitura() + ExcluiLeitura()

CAquisicao - CodLeitura:integer - temperatura:float - vel_vento:float - dir_vento:float - umidade:float - dt_leitura:date - tempo_leitura:temp + CAquisicao() + getCampos() + Conversão() + setCampos() + Grava() + delete()

CBrokerAquisicao

+ Desmaterializa() + Materializa() + Exclui()

CFrmAtualizaTempo - controlador -ControlerAtualizaTempo *

ControlerAtualizaTempo + AtualizaTempoAq() + BuscaAtualizacao() + ExcluiAtualizacao()

CAtualizacaoTempo - CodAtualizacao:integer - dt_atualiza:date - temp_autualiza:tempo - tempo_aquisicao:tempo + CAtualizaTempo() + getCampos() + setCampos() + Grava() + delete()

CBrokerAtualizaTempo + Desmaterializa() + Materializa() + Exclui()

Page 60: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

55

CFrmCadFunc - controlador - ControlerFunc *

ControlerFunc + NovaFunc() + BuscaFunc () + ExcluiFunc ()

CFuncionario - CodFunc:integer - Nome:string - dtnasc:date - telefone:integer - funcao:string - endereco:string - dtcad:date + CFunc () + getCampos() + setCampos() + Grava() + delete()

CBrokerFunc + Desmaterializa() + Materializa() + Exclui()

Page 61: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

56

3.1.4.2.5. Diagrama de Colaboração

§ Atualiza o Tempo de Aquisição

Figura 36. Tela de Configura Tempo de Aquisição.

Page 62: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

57

§ Atualiza Tempo de Aquisição § Busca Atualização do Tempo

BrokerAtualizaTempo :CBrokerAtualizaTempo

FrmAtualizaTempo: CFrmAtualizaTempo

Controlador: CControlerAtualzaTempo

AtualizaTempo: CAtualizaTempo

1:BuscaAtualizacao()

2:Atualiza= Materializa()

3: Cmaquina()

4:setCampos()

5:getCampos()

6: delete()

FrmAtualizaTempo: CFrmAtualizaTempo

Controlador: CAtualizaTempo

1:AtualizaTempoAquisicao()

2:CAtualizaTempo()

3:setCampos()

4:Grava()

7:delete()

BrokerAtualizaTempo :CBrokerAtualizaTempo

AtualizaTempo: AtualizaTempo

6:getCampos()

5: Desmaterializa()

Page 63: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

58

§ Excluir Atualização

§ Realiza a Aquisição

Figura 37. Tela de Aquisição.

2: Exclui ()

FrmAtualizaTempo: CFrmAtualizaTempo

Controlador: CControlerAtualizaTempo

BrokerAtualizatempo: CBrokerAtualizaTempo

q1: ExcluiAtualizacao()

Page 64: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

59

§ Aquisição § Busca Aquisição

FrmAquisicao: CFrmAquisicao

Controlador: CAquisicao

1:Nova Leitura()

2:CAquisicao()

3:setCampos()

4:Grava()

7:delete()

BrokerAquisicao: CBrokerAquisicao

Aquisicao: Aquisicao

6:getCampos()

5: Desmaterializa()

BrokerAquisicao :CBrokerAquisicao

FrmAquisicao: CFrmAquisicao

Controlador: CControlerAquisicao

Aquisicao: CAquisicao

1:BuscaAtualizacao()

2:Atualiza= Materializa()

3: Cmaquina()

4:setCampos()

5:getCampos()

6: delete()

Page 65: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

60

§ Exclui Aquisicao

§ Cadastra Funcionário

Figura 38. Tela de Cadastro de Funcionários

2:Exclui()

FrmAquisicao: CFrmAquisicao Controlador: CControlerAquisicao

BrokerAquisicao: CBrokerAquisicao

1:ExcluiAquisicao ()

Page 66: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

61

§ Grava Funcionário § Exclui Funcionário

FrmCadFunc: CFrmCadFunc Controlador: CControlerFunc

BrokerFunc:CBrokerFunc Funcionário:CFunc

1:NovoFunc()

2:CFunc()

3:setCampos()

4:Grava()

7:delete()

2:Exclui()

FrmFunc: CFrmFunc Controlador: CControlerFunc

BrokerFunc:CBrokerFunc

1:ExcluiFunc()

6: getCampos()

5: Desmaterializa()

Page 67: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

62

§ Busca Funcionário

3.4.1.3. Interface com Usuário � Módulo Adicional

Contudo, para consulta aos dados é possível ser criado um Website que busca

estas informações na base de dados, e então é realizada a conversão, por exemplo,

umidade relativa estará representada em bits, portanto é convertido de binário para

decimal a fim de saber o verdadeiro valor da tensão de saída (Vout), então através da

formula do Sensor RH será calculado a porcentagem de umidade do ar.

O módulo adicional ao termino do projeto poderia ser criado com objetivo de

atender as necessidades do cliente e mantê-lo informado sobre o tempo, caso o

mesmo não possua acesso a Internet e necessite receber avisos quando um valor de

alguma condição climática exceder o valor padrão, por exemplo, quando a temperatura

ultrapassar 40 ºC o cliente receberá um SMS. Para tanto o usuário deve se cadastrar

relacionando quais informações deseja receber quando ultrapassar o valor limitado

estipulado pelo mesmo.

Este recurso é denominado de trigger (é um gatilho, que é acionado quando uma

variável alcança um valor numérico), onde para tanto é necessário um programa

adicional apenas para monitorar dados de acordo com uma base de dados dos clientes

cadastrados com suas respectivas triggers.

BrokerMaq:CBrokerMaq

FrmCadFunc: CFrmCadFunc Controlador: CControlerFunc

Maquina: CMaquina

1:BuscaFunc()

2:func= Materializa()

3: CFunc()

4:setCampos()

5:getCampos()

6: delete()

Page 68: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

63

Abaixo é ilustrado através do diagrama em bloco o armazenamento das

informações, conversão dos dados e o recurso adicional (trigger).

Figura 39. Diagrama em blocos do armazenamento das informações, conversão dos dados e o recurso adicional (trigger).

A interface com o usuário é o Website, através dele pode ser pesquisado as

informações dos parâmetros climáticos, e o cadastro das triggers. Os parâmetros

climáticos são:

§ Índice de precipitação pluvial: é mensurada a quantidade de chuva por mm até o

presente momento, ou por um tempo determinado. Por exemplo: Faz 15 dias

que o índice de precipitação pluvial é de 0,00 mm, isto é, faz 15 dias que não

chove;

§ Pressão: é mensurado através da formula da pressão onde é necessário realizar

a compensação de temperatura, por exemplo, para o usuário será apresentado

no momento a pressão do ar é de 300 mbar;

§ Temperatura: a temperatura é mensurada em centígrados, desta forma será

apresentada em ºC;

§ Velocidade e direção do vento: a velocidade é mensurada em Km/h e a direção

em Norte, Sul, Leste, Oeste, Nordeste, Noroeste, Sudeste, Sudoeste, por

exemplo, a velocidade do vento é de 60 Km/h e a direção está para o Nordeste

da região apresentada;

§ Umidade Relativa do Ar: a umidade é mensurada em porcentagem através da

formula do Sensor RH, onde é realizada a compensação da temperatura, por

exemplo, para o usuário será apresentado a porcentagem de umidade relativa

no momento é de 80%.

Armazenamento no

banco de dados

Envio de Mensagens

Instantâneas

Cadastro de triggers

Codificação e Conversão dos Dados

Atualização das triggers.

Page 69: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

64

Portanto, para as triggers é necessário que o usuário realize um cadastro no

Website discriminando a partir de qual valor deseja receber a mensagem instantânea,

por exemplo, o mesmo preencherá dados como nome, número do celular e parâmetros

das condições climáticas, para o mesmo aparecerá alguns critérios, como índice

precipitação pluvial >= ou < ou usuário selecionará o critério de igualdade e o valor,

sendo assim é possível receber as mensagens instantâneas quando o valor atender os

critérios preenchidos. A figura abaixo ilustra um Website semelhante o qual será

desenvolvido, com informações das condições climáticas em tempo real.

Figura 40. Website DavisNet, as informações são atualizadas em tempo real

3.1.4.4. Linguagem de Programação

O Website utilizará a linguagem de programação ASP ou PHP, e o Banco de

dados será MySQL.

O software de gerenciamento das trigger e envio de SMSs será programado em

C++, o qual ficará varrendo a base de dados com objetivo de encontrar triggers

relacionadas com o dado ocorrido, por exemplo, a velocidade do vento excedeu 50

Km/h, o programa gerenciador varrerá a base com o objetivo de buscar registros que

Page 70: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

65

possuam necessidade de receber tais informações, ou seja que possuam tais triggers,

encontrando será enviado automaticamente ao celular do cliente a mensagem

instantânea, indicando que a velocidade do vento no momento é de 51 Km/h.

A linguagem para a aquisição dos dados fornecidos de forma digital pelos

sensores da estação meteorológica foi feito em C++ o qual é responsável por codificar

qual sensor deseja realizar a aquisição e qual o tempo para aquisição de cada sensor,

como também armazenamento dos dados em memória e o envio dos dados

serialmente para o modem, onde é encapsulado em uma mensagem instantânea

(SMS). Chegando ao modem destinatário haverá um microcomputador que

dencapsulará a mensagem e processará os dados, conforme os passos citados acima.

Page 71: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

66

4. RESULTADOS E DISCUSSÃO

4.1. Aquisição dos dados e Endereçamento dos sensores

Os sensores utilizados na linha 1-Wire da Dallas Semicondutor

(pluviômetro, anemômetro), e o sensor de temperatura I2C da Texas

Instruments, tiveram ótimo desempenho, sendo possível ler os dados

convertidos digitalmente pelos sensores. Não foram utilizados todos o sensores,

porém é expansível para a conexão de qualquer sensor dos fabricantes citados.

Uma grande vantagem na utilização dos protocolos 1-Wire e I2C, foi à

possibilidade de identificar os dispositivos presentes na rede, e temporizar as

aquisições, o que contribuiu para a realização da opção de configuração do

tempo de aquisição das amostras. Observou-se o perfeito funcionamento dos

protocolos pertinentes aos sensores, sendo a implementação completamente

finalizada.

4.2. Transmissão e Recebimento de SMS

A transmissão do pacote gerado pela estação meteorológica contendo as

amostras, foi realizada utilizando os comandos AT disponibilizados pelo

fabricante. É importante citar, que foi necessário configurar o formato do modo

de transmissão e recebimento de SMS no módulo WaveCom, os implementados

são:

§ Modo Texto: implementa codificação em ASCII da mensagem

enviada;

§ Modo PDU: implementa a mensagem em hexadecimal, e utiliza uma

codificação separando os octetos, o qual é mais difícil ser

implementado.

Portanto, a opção escolhida foi o modo texto, o que facilitou a

implementação para envio do SMS. Nos testes realizados observou-se que

Page 72: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

67

alguns caracteres recebidos da mensagem estavam em branco, para tanto, foi

implementada uma codificação para garantir que os valores abaixo de 32 (em

decimal), pudessem ser lidos.

A codificação foi realizada para todos as amostras geradas de cada sensor,

sendo a resolução dos sensores é de 12 bits, porém foi aumentado completando

com 0s para 16 bits, isto é, 2 bytes; permitindo transformar o 1º byte para

caracter imprimível, e o mesmo processo para o 2º byte, somando ambos. Sem

dúvidas, a codificação, é de grande vantagem para o projeto, o que permitiu a

criação de um protocolo de comunicação, garantindo a integridade dos dados

lidos, e a padronização do pacote, promovendo uma vantagem na extração dos

dados. A transmissão foi realizada com sucesso, utilizando a seqüência dos

comandos AT especificados pelo fabricante, e conforme o fluxograma

desenvolvido.

O recebimento do pacote SMS foi realizado utilizando a seqüência de

comandos AT, onde também foi desenvolvido um fluxograma, sendo passado

como parâmetro o número da mensagem de leitura. Após a leitura, é realizada a

extração do pacote do SMS, para tal processo foi desenvolvido um algoritmo,

que tinha como objetivo conhecer o início e o término da mensagem, para então

tornar-se possível a decodificação. Ambos os processos foram realizados, sendo

possível converter os dados decodificados em medidas reais para análise. A

transmissão e o recebimento do pacote SMS foram concluídos completamente,

obtendo o resultado esperado.

4.3. Atualização dos Dados

O processo para a atualização de dados, foi implementado utilizando um

algoritmo, para extração do pacote SMS, sendo decodificado e convertido para

medidas reais, onde estes valores eram mostrados na tela.

Portanto, após os dados serem convertidos, estes são armazenados no

banco de dados para consulta posterior. Esta consulta pode ser realizada,

através de parâmetros como: período, range de temperatura, e outros.

O módulo de atualização dos dados foi concluído, onde todas as

informações que lidas e decodificadas, eram armazenadas no banco de dados.

Page 73: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

68

Porém, a criação de formulários de consultas avançadas e gráficos para

visualização dos dados não foram implementados.

Page 74: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

69

5. CONCLUSÕES

A estação meteorológica utilizou sensores comerciais, sendo assim, a grande

vantagem foi à utilização do protocolo proprietário, que facilitou na identificação dos

sensores presentes na rede, e na seleção dos mesmos para aquisição dos dados

inerentes ao meio. A implementação do protocolo, permitiu a realização de

temporizações nas aquisições. Portanto, foi desenvolvida a configuração do tempo de

aquisição das amostras, visando atender as necessidades do cliente.

A implementação do protocolo de comunicação da estação meteorológica, foi de

grande importância, porque possibilitou a integridade e segurança nos dados

transmitidos. Observou-se a eficiência na codificação e no encapsulamento do pacote

SMS, pois a mensagem instantânea é representada em ASCII, então a codificação é

fundamental para prover caracteres imprimíveis.

A transmissão via SMS foi implementada através de um fluxograma para

execução seqüencial dos comandos AT, como também para a recepção. Portanto,

quando estes dados são recebidos, realiza-se a decodificação, sendo estas

informações convertidas e atualizadas periodicamente no software de gerenciamento,

para consulta posterior. Para tanto, verificou-se a impossibilidade de atualizar

informações em tempo real, por se tratar de uma comunicação onde o tempo de

resposta varia consideravelmente. Porém para uma estação meteorológica, pôde

constatar que não causa nenhum impacto, devido o tempo não ser um fator

determinante. Atualmente, muitas estações existentes, realizam poucas aquisições

diárias, pois as condições climáticas não possuem variações bruscas que necessitem

instantes de tempos curtos entre uma aquisição e outra.

O algoritmo implementado para a criação do pacote SMS, permite que sejam

realizadas várias aquisições em um determinado período, encapsulando-as em uma

única mensagem. A transmissão de mensagens instantâneas possui um custo, sendo

um fator determinante para um produto. Porém, o encapsulamento de várias amostras

em uma única mensagem, o torna um sistema econômico, e por conseqüência

competitivo.

Page 75: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

70

6. REFERÊNCIAS BIBLIOGRÁFICAS

WERNECK, Marcelo M.Transdutores e Interfaces. s.ed. Rio de Janeiro,

LCT,c1996. v1.

DAN, Awtrey. The 1-Wire Weather Station, Sensors. South Beltwood Parkway,

s.ed., 1998. v15, Cap. 6, p34-40.

DAN, Awtrey .Transmitting Data and Power over a One-Wire Bus, Sensors.

South Beltwood Parkway, s.ed., 1997.v14, Cap.2, p48-51.

DAN, Awtrey . A 1-Wire Rain Gauge, Sensors, South Beltwood Parkway, s.ed.,

1999. v16, Cap.9, p56-59.

1-Wire Net Design Guide,

URL: www.dalsemi.com/TechBriefs/tb1.html.

Davis Net

URL: www.davisnet.com

Texas Instruments

URL: www.ti.com/tmp100.pdf

Atmel Microcontrollers

URL: www.atmel.com

Page 76: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

71

7. ANEXO 1 - CRONOGRAMA PROJETO FINAL Id Nome_da_tarefa Duração Início Término 1 Definição do Tema 5 dias Seg 8/3/04 Sex 12/3/04 2 Especificação do Projeto 7 dias Seg 8/3/04 Ter 16/3/04 3 Pesquisa sobre os Sensores utilizados e Materiais 11 dias Qua 10/3/04 Qua 24/3/04 4 Entrega da especificação técnica 9,88 dias Seg 15/3/04 Sex 26/3/04 5 Confecção ou Compra do Sensores 25 dias Sex 12/3/04 Qui 15/4/04

6 Análise do Setor de Comercialização da Estação Meteorológica 31,88 dias Seg 15/3/04 Dom 25/4/04

7 Nicho de Mercado 21 dias Ter 30/3/04 Dom 25/4/04 8 Análise Mercado Fornecedor 11,88 dias Qui 15/4/04 Qua 28/4/04

9 Entrega do projeto (monografia) e do resumo e abstract do artigo para congresso 36 dias Seg 15/3/04 Qui 29/4/04

10 Entrega do Artigo 28,88 dias Qui 25/3/04 Sex 30/4/04 11 Revisão Bibliográfica 153 dias Seg 8/3/04 Qua 29/9/04 12 Pesquisa sobre Aquisição de Dados 21,88 dias Qui 25/3/04 Qui 22/4/04

13 Implementação da Aquisição de dados e programa Controlador 23 dias Qua 14/4/04 Qua 12/5/04

14 União do Módulos e testes da aquisição 15 dias Seg 3/5/04 Qui 20/5/04 15 Pesquisar Instrumentos de Pesquisa 6 dias Dom 25/4/04 Seg 3/5/04 16 Pesquisa Mercadológica 21 dias Seg 3/5/04 Sex 28/5/04 17 Resultado da Pesquisa 11 dias Seg 31/5/04 Seg 14/6/04

18 Pesquisa sobre Comunicação Móvel Envio e Recebimento de mensagens 74,88 dias Seg 15/3/04 Ter 22/6/04

19 Implementação da Comunicação RS-232 30,88 dias Seg 17/5/04 Seg 28/6/04

20 Implementação do envio de mensagens interface atmega161(Rs-232 para celular) 24,88 dias Seg 31/5/04 Sex 2/7/04

21 Implementação do recebimento de mensagens SMS para um aparelho de comunicação Móvel. 29 dias Seg 31/5/04 Qui 8/7/04

22 Testes de Comunicação da transmissão e recepção de mensagens SMS 21,88 dias Qui 8/7/04 Sex 6/8/04

23 Entrega da pré-implementação física do projeto 60,88 dias Seg 17/5/04 Seg 9/8/04 24 Armazenamento dos dados e interpretação 43,88 dias Seg 5/7/04 Qua 1/9/04 25 Gerar estatísticas das Condições climáticas 12 dias Qua 4/8/04 Qua 18/8/04 26 Criação de um Website para apresentar estatísticas 12 dias Qua 4/8/04 Qua 18/8/04 27 Definição dos Custos Fixos 10 dias Dom 15/8/04 Sex 27/8/04 28 Definição dos Custos Variáveis 15,88 dias Seg 30/8/04 Sex 17/9/04 29 Fluxo de Caixa 8,88 dias Seg 13/9/04 Qui 23/9/04 30 Avaliação da Viabilidade Econômica 11,88 dias Seg 13/9/04 Ter 28/9/04 31 Entrega dos Manuais do Usuário e Técnico 21 dias Sáb 4/9/04 Seg 4/10/04

Page 77: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

72

32 Qualidade do Produto Final 11,88 dias Sex 1/10/04 Sex 15/10/04 33 Entrega da Monografia 26,13 dias Seg 4/10/04 Seg 8/11/04 34 Defesa formal do projeto 22 dias Sex 22/10/04 Seg 22/11/04

35 Entrega no protocolo de toda a documentação do projeto 12,88 dias Qui 25/11/04 Seg 13/12/04

Page 78: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

73

8 . ANEXO 2 - DESCRIÇÃO DETALHADA DOS COMANDOS AT

O algoritmo para envio de uma mensagem SMS inicia habilitando o comando

AT+ECHO=0 que é responsável por desabilitar o eco, que faz necessário para evitar

que a serial receba o comando novamente, evitando �lixo� no buffer responsável por

gerenciar os erros existentes, quando há mensagem de erro possivelmente a

comunicação não está acessível. Outro comando necessário é habilitar para que

receba mensagem de erro através do comando AT+CMEE=1.

O próximo passo é verificar se o PIN (Personal Internet Number) está habilitado

através do seguinte comando AT+CPIN?, caso seja positivo responderá

+CPIN:READY, caso contrário o será habilitado o PIN através do comando

AT+CPIN=1010.

Após responder que PIN está ready, é necessário verificar se o modem está

pronto para receber mensagens da rede.

O comando para verificar se o serviço está habilitado é o seguinte:

AT+CNMI= <modo>, <mt>, <bm>, <ds>,<bfr>

§ <modo>: controle de processamento dos resultados de códigos não solicitados.

0 Buffer dos resultados códigos não solicitados no TA. Se TA possui resultado do

código do buffer cheio, as indicações do buffer podem ser armazenadas no mesmo algum outro lugar ou a mais antiga indicação pode ser descartada e substituída com uma nova indicação.

1 Descarta a indicação e rejeita nova mensagem recebida não solicitada do resultado dos códigos quanto TA-TE link é reservado. Outra mensagem encaminhada diretamente para TE.

2 Buffer dos resultados dos códigos não solicitados no TA quando TA -TE link é reservado e mantidos para TE depois de reservados. Outro modo é enviá-los diretamente para TE.

3 Encaminha os resultados dos códigos não solicitados diretamente para TE. TA-TE link especificado na banda usada para armazenar resultados dos códigos de dados quanto TA está on-line para o modo de dados.

§ <mt>: seta o resultado dos códigos indicando roteamento para SMS-delivers.

0 Não há indicação de roteamento de SMS-Delivers. 1 SMS-Delivers são roteadas usando códigos não solicitados. 2 SMS-Delivers (exceto as classes 2 mensagens) são roteadas usando códigos

não solicitados: +CMT: [<alpha>,] <length> <CR> <LF> <pdu> (Modo PDU)

Page 79: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

74

ou +CMT: <oa>,[<alpha>,] <scts> [,<tooa>, <fo>, <pid>, <dcs>, <sca>, <tosca>, <length>] <CR><LF><data> (Modo Texto)

3 Classe 3 SMS-Delivers são roteadas diretamente usando código em <mt>=2; Mensagens de outras classes resultam em indicações <mt>=1

§ <bm>: seta a regra para armazenar o recebimento de CBMs (Cell Broadcast

Message) onde o tipo depende do esquema de código, a mudança de valor de

Select CBM Types é realizada pelo comando (+CSCB comando) e <bm>.

0 Não há indicações de CBM são roteadas para o TE. 2 Nova CBM são roteadas diretamente para TE usando resultado de códigos não

solicitados. +CBM: <length><CR><LF><pdu> ou +CBM: <sn>,<mid>,<dcs>,<page>, (Modo Texto) <CR><LF><dados>

§ <ds> para SMS-Status-Reports

0 Não há roteamento SMS-Status-Report 1 SMS-Status-Reports são roteados usando códigos não solicitados:

+CDS: <length><CR><LF>,<pdu> (PDU modo) ou +CDS: <fo>,<mr>,[<ra>],[<tora>],<scts>,<dt>,<st> (Modo Texto)

§ <bfr> buffer

0 TA buffer de resultado de códigos não solicitados são definidos com este

comando é mantido para TE quando <modo> 1..3 é setado (a resposta de Ok deve ser apresentada antes que o comando atualize o código).

1 TA buffer de resultado de códigos não solicitados são definidos com este comando é limpo quando <modo> 1..3 é setado.

Abaixo segue alguns exemplos de habilitações dos serviços de rede:

Aplicação GSM: AT+CNMI=0,1,0,0,0 Comando:<mt>=1

GSM para aplicação: OK

GSM para aplicação: +CMTI: "SM", 1 Resposta:< Message received

Aplicação GSM: AT+CNMI=0,2,0,0,0 Comando:<mt>=2

GSM para aplicação: OK

GSM para aplicação: +CMT:"123456","98/10/01,12:30:00+00", 129, 4,

Page 80: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

75

32, 240, "15379", 129,5<CR><LF>Received Message

Resposta: Message received

Aplicação GSM: AT+CNMI=0,0,0,1,0 <ds>=1

GSM para aplicação: OK

Aplicação GSM: AT+CMGS="+33146290800"<CR> Message to send <ctrl-Z>

Resposta: Send a message in text mode

GSM para aplicação: +CMGS: 7 OK

Resposta: Successful transmission

GSM para aplicação: +CDS: 2, 116,

"+33146290800",145,"98/10/01,12:30:07+04","98/10/01 12:30:08+04", 0

Resposta: Message was delivered correctly

A configuração do modem por padrão para o comando AT+CNMI é (0,0,0,0,0) é

necessário alterar para AT+CNMI (0,1,1,1,0), que significa modo=0 descarta a nova

mensagem recebida não solicitada, e encaminha a nova mensagem para TE o mt =1 é

responsável por setar o resultado dos códigos indicados para SMS-Delivers, então

SMS-Delivers são roteadas usando código não solicitados, o ds =1 habilita Relatório de

Status da mensagem SMS, o bfr=0 mantém o resultado de códigos não solicitados

para o TE. O próximo passo é setar os parâmetros do Modo Texto, através do

comando AT+CSMP, este comando deve ser usado para selecionar o valor para o

<vp>, <pid>, e <dcs>. A aplicação é realizada através do seguintes comandos:

Sintaxe do comando: AT+CSMP=<fo>,<vp>,<pid>,<dcs>

§ <fo> o byte é composto de seis diferentes campos:

RP: Reply Path, não usado em modo texto.

UDHI: User Data Header Information, b6 = 1 se iniciando do User Data field

contem um cabeçalho em adição para o short message. Esta não é suportada

no comando +CSMP, mas pode ser usada em modo PDU (+CMGS).

SRR: Status Report Request, b5=1 se um status report é retornado. Este modo é

suportado.

VPF: Validity Period Format

Page 81: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

76

b4=0 e b3=0 -> <vp> campo não está presente.

b4=1 e b3=0 -> <vp> campo não está presente no formato apresentado.

Outros formatos não são suportados.

RD: Reject Duplicates, b2=1 para instruir o SC para rejeitar um SMS-SUBMIT

para um SM ainda seguro no SC quais tem o mesmo <mr> e o mesmo <da>

com um previamente submetido SM do mesmo <ao>.

MTI: Messate Type Indicator

b1=0 e b0=0 -> SMS-Deliver (na direção SC para MS).

B1=0 e b0=0 -> SMS-Submit (na direção MS para SC).

No modo Texto <vp> é somente no �relativo� formato. O valor padrão 167 (24

horas). Isto significa que um octeto pode ser descrito em diferentes valores.

Valor de VP Valor de Período Válido 0 à 143 (VP + 1) x 5 minutos (acima de 12

hours) 144 à 167 12 horas + ( (VP - 143) x 30 minutos ) 168 à 196 (VP - 166) x 1 dia 197 à 255 (VP - 192) x 1 semana

§ <pid> é usado para indicar o maior camada do protocolo sendo usada ou

indicada interworking com um certo tipo de dispositivo de telematica. Por

exemplo: 0x22 é para um grupo de 3 telefaxes. 0x24 para voz por telefone. 0x25

é para ERMES.

§ <dcs> é usado para determinar o caminho da informação está

codificada.Alfabeto UCS2 e texto comprimido não é suportado. Somente GSM

por padrão de alfabeto de 8 bit de dados são suportados.

Aplicação para GSM: AT+CSMP? Resposta:current values

GSM para Aplicação: +CSMP: 0,0,0,0 OK

Resposta: no validity period <dcs>= PCCP437 alphabet (8 bits -> 7 bits )

Aplicação para GSM: AT+CSMP=16,23,64,244

Resposta: <vp> = 23 (2 hours, relative format)

<dcs> = GSM 8 bits alphabet

GSM para Aplicação: OK command correct

Page 82: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

77

Após setar os parâmetros corretos para o modo texto, esta configurado para

poder escrever e enviar uma mensagem SMS corretamente.

O comando é o seguinte:

Sintaxe do comando para enviar uma mensagem em modo texto:

AT+CMGS = <da>,[,<toda>] <CR>

Texto é escrito <ctrl-Z/ESC>

Sintaxe do comando para enviar uma mensagem em modo PDU:

AT+CMGS = <length><CR>

PDU é inserido <ctrl-Z/ESC>

O campo de <address> do terminal de rede que indica para quem a mensagem

foi enviado. Para enviar a mensagem, simplesmente utliza-se o caracter <ctrl-Z> (ASCII

26). O texto pode ser contido existindo todos os caracteres exceto <ctrl-Z> e <ESC>

(ASCII27. Este comando é abortado usadno <ESC> quando digitado o texto. No modo

PDU, somente caracteres em hexadecimal são usados (�0�...�9�,�A�...�F�).

Conforme o exemplo abaixo:

Aplicação para GSM: AT+CMGS="+33146290800"<CR> Please Call me soon,

Fred.<ctrl-Z>

Resposta: Send a message in text mode

GSM para Aplicação: +CMGS: <mr> OK

Resposta: Successful transmission

Aplicação para GSM: AT+CMGS=<length><CR> <pdu><ctrl-Z>

Resposta: Send a message in PDU mode

GSM para Aplicação: +CMGS: <mr> OK

Resposta: Successful transmission

A mensagem referenciada <mr> quais são retornadas para aplicação é alocada

no módulo GSM. Este número iniciado com 0 é incrementado de um para cada

mensagem de saída. (casos de sucesso e falha), este é um ciclo de um byte (0

seguindo até 255). Nota: Os números não são armazenados como também as

mensagens.

Neste passo do algoritmo quando é apresentada a mensagem de erro significa

que possivelmente é necessário adicionar créditos no modem, outra mensagem

Page 83: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

78

possível é +CMGS: <mr> , em <mr> é indicado o incremento de mensagem lida após é

possível verificar a lista de mensagens enviadas.

O algoritmo para recebimento de mensagens segue o mesmo padrão para

envio, a seqüência inicia-se pela a desabilitando o eco através do comando

AT+ECHO=0, após é verificado se o CPIN foi habilitado através do comando

AT+CPIN?, caso não esteja habilitado é necessário sendo o comando AT+CPIN =

1010, quando estiver ativo, o próximo passo é habilitar o modo texto pelo comando

AT+CMGF=1, então verifica-se se os serviços de rede necessários estão habilitados

através do comando AT+CNMI=0,1,1,1,0 conforme verificado os parâmetros

anteriormente. É importante para receber mensagem verificar os parâmetros do modo

texto, já descritos.

Após habilitados os comandos necessários, a próxima parte e verificar os

comandos de recebimento de mensagens, são os descritos abaixo.

O comando +CMGL é responsável por listar as mensagens existentes no buffer,

permite a aplicação ler as mensagens armazenadas, onde é possível indicar quais

mensagens deseja-se ler.

Sintaxe do Comando: AT+CMGL = <stat>

Sintaxe do Comando em Modo Texto:

+CMGL: <index>, <stat>, <da/oa>[,<alpha>],[<scts>,<tooa/toda>,

<length>], <CR> <LF> <data>.

Sintaxe do Comando para o Modo PDU:

+CMGL: <index>, <stat>, [<alpha>],<length> <CR> <LF> <pdu>.

<stat> valores possiveis (status da mensagem em memoria):

Modo PDU

Modo Texto

0 �REC UNREAD� (recebe mensagens não lidas) 1 �REC READ� (recebe mensagens anteriormente já lidas). 2 �STO UNSENT� (armazena mensagens não lidas). 3 �STO SENT�(armazena as mensagens enviadas). 4 �ALL� (lista todas as mensagens existentes).

Aplicação para GSM: AT+CMGL=�REC UNREAD�

Resposta: List unread messages in text mode

Page 84: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

79

GSM para Aplicação: +CMGL: 1, "REC UNREAD", "0146290800", <CR><LF> Unread

Message! +CMGL: 3, "REC UNREAD", "46290800", <CR><LF> Another Unread

Message! OK

Resposta: 2 messages are unread, these messages will then have their status changed

to �REC READ�.

Aplicação para GSM: AT+CMGL=�REC READ�

Resposta: List read messages in text mode

GSM para Aplicação: +CMGL: 2, "REC READ", "0146290800", <CR><LF>

Keep cool OK

Aplicação para GSM: AT+CMGL="STO SENT"

Resposta: read stored and sent messages

GSM para Aplicação: +CMS ERROR: 322

Resposta: No message found

Ao listar as mensagens não lidas conforme descrito no fluxograma pelo

comando AT+CMGL = � REC UNREAD�, faz-se necessário indexar as mensagens lidas

para indentificar a ordem em que os dados foram recebidos, para tanto utiliza-se o

comando AT+CMGR = <index>, conforme apresentado a sintaxe e os parâmetros

abaixo.

O comando +CMGR é necessário para ler mensagens armazenadas.

Sintaxe do Comando: AT+CMGR = <index>

Sintaxe do Comando para o Modo Texto:

+CMGR:<stat>,<oa>,[<alpha>,] <scts> [,<tooa>,<fo>,

<pid>,<dcs>,<sca>,<tosca>,<length>] <CR><LF> <data>

Sintaxe do Comando para o Modo PDU:

+CMGR: <stat>, [<alpha>] ,<length> <CR><LF> <pdu>

A mensagem lida com o status �REC UNREAD� será atualizada em memória

com o status �REC READ� quando a mesma já tenha sido lida.

Abaixo segues alguns exemplos:

GSM para Aplicação: +CMTI: "SM",1

Resposta: New message received

Aplicação para GSM: AT+CMGR=1

Resposta: read the message

Page 85: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

80

GSM para Aplicação:+CMGR: "REC UNREAD", "0146290800","98/10/01,18:22:11+00"

, <CR><LF>

ABCdefGHI OK

Aplicação para GSM: AT+CMGR=1

Resposta: read again the message

GSM para Aplicação: +CMGR: "REC READ", "0146290800","98/10/01,18:22:11+00",

<CR><LF>

ABCdefGHI OK

Resposta: message is read now

Aplicação para GSM: AT+CMGR=2

Resposta Read a bad index

GSM para Aplicação: +CMS ERROR: 321

Resposta: error: invalid index

Aplicação para GSM: AT+CMGF=0 ;+CMGR=1 in PDU mode

GSM para Aplicação: +CMGR: 2,,<length> <CR><LF> <pdu> OK

Resposta: Message is stored but unsent, no <alpha> field

O comando para listar mensagens é utilizado indexando a mensagens que se

deseja ler, após ter lido a mensagem o algoritmo deleta a mesma para evitar que o

buffer encha e bloqueio o recebimento de mensagens SMS, para tanto se faz

necessário utilizar o comando AT+CMGD= <index>.

O comando AT+CMGD permite deletar mensagens após terem as lido,

ordenadamente conforme o armazenamento das mesmas. Abaixo segue alguns

exemplos:

GSM para Aplicação: +CMTI: "SM",3

Resposta: New message received

Aplicação para GSM: AT+CMGR=3

Resposta: Read it

GSM para Aplicação: +CMGR: "REC UNREAD",

"0146290800",,"98/10/01,18:19:20+00" <CR><LF> Received Message! OK

Page 86: Estaçªo Meteorológica com Comunicaçªo por SMS · relative humidity, pressure, temperature, wind direction and speed; the data are transmitted in a message SMS, updating in real

81

Resposta: Unread message received from 0146290800 on the 01/10/1998 at 18H 19m

20s

Aplicação para GSM: AT+CMGD=3

Resposta: Delete it

GSM para Aplicação: OK

Resposta: Message deleted