• Nenhum resultado encontrado

CAPITULO 3 DESENVOLVIMENTO DA REDE DE SENSORIAMENTO

3.2 C OMPONENTES DO SISTEMA

3.2.7 Software dos Dispositivos Finais

Tanto o dispositivo final 2, ligado ao PDA, quanto o dispositivo 3, foram configurado como RFD. Depois de descoberto pelo coordenador e de passar por todos os estados para ser introduzido na rede, o dispositivo fica esperando a requisição do coordenador através da MSG 1. Assim que esta mensagem é recebida pelo dispositivo, passa por todas as etapas de reconhecimento e autenticidade das camadas PHY e MAC e, a seguir, o software reconhece o comando enviado pelo coordenador e prepara a informação a ser respondida. No caso do dispositivo 2, ainda é feita a leitura do status das caixas de seleção do aplicativo do Pocket PC, através de comunicação serial. Logo após, insere estas informações nos bytes pertinentes, transmite a mensagem de resposta ao coordenador e fica esperando uma nova requisição.

A Figura 3.20 apresenta agora o fluxograma do programa dos dispositivos finais, e em seguida, a Tabela 3.3 descreve resumidamente cada etapa.

Tabela 3.3 – Descrição das etapas do software dos dispositivos finais

ETAPAS DESCRIÇÃO

1 Nesta etapa o dispositivo é inicializado.

2 O device faz uma varredura para identificar uma PAN em sua região de alcance.

3 Verifica se encontrou ou não uma PAN.

4 Se não encontrar uma PAN em um tempo determinado o software do dispositivo é finalizado.

5 Faz um pedido de associação ao coordenador da rede PAN encontrada

6 Verifica se o pedido de associação foi aceito ou não pelo coordenador da rede

7 Se o dispositivo foi aceito na rede, ele é então associado e, a partir do seu endereço longo ele recebe um endereço curto.

8 A temperatura do sensor do dispositivo é lida através do conversor A/D e guardada em um Buffer.

9

Aqui é feita a a verificação se existem mensagens provenientes do coordenador. O software só prossegue quando chegar alguma mensagem,

em caso contrário volta ao ponto 8.

10

Se o byte de comando da mensagem recebida for identificado como o comando deste dispositivo, então a mensagem é lida e armazenada em um

buffer.

11

A mensagem a ser enviada ao coordenador é preparada. Ela contem o comando do dispositivo, a temperatura do mesmo, e no caso de estar

conectado ao PDA, contem também a informação dos módulos selecionados pelo usuário para o cálculo da média.

12 Aqui é feita a transmissão do pacote de dados a todos os dispositivos. 13 Aguarda um tempo determinado para verificação do recebimento do

acknowledge.

14 Se não receber retorno de recebimento do coordenador no tempo determinado, o dispositivo é finalizado.

A*

Esta etapa, e a seguinte só existem no módulo conectado ao PDA. O

software fica em um loop esperando uma mensagem de 4 bytes

proveniente do PDA. Nesta mensagem esta contida a informação dos módulos selecionados pelo usuário para compor a média.

B* As informações das temperaturas de todos os módulos juntamente com a temperatura média são transmitidas por comunicação serial ao PDA.

A seguir será detalhada a troca de informações entre os dispositivos, descrevendo todos os pacotes de dados das mensagens transmitidas na rede.

i. Mensagem do coordenador – MSG 1.

O objetivo desta mensagem é fazer uma requisição da temperatura de um dos dispositivos finais. Quando o coordenador envia uma mensagem, ela é enviada para todos os dispositivos da rede e, através de um byte de comando desta mensagem, cada módulo identifica a necessidade de enviar uma mensagem de retorno contendo a temperatura atual dada pelo sensor de temperatura do dispositivo. A mensagem enviada pelo coordenador é composta por 4 bytes, como visto na Tabela 3.4.

Tabela 3.4 – Pacote de dados enviados pelo coordenador

Byte 1 Byte 2 Byte 3 Byte 4

Comando Temperatura Coordenador Temperatura média CRC

O primeiro byte desta mensagem identifica o dispositivo para qual a mensagem é endereçada. Isto é feito através de comandos conforme a Tabela 3.5:

Tabela 3.5 – Descrição dos comandos do byte 1

Comando Descrição

AA Mensagem destinada ao dispositivo 3

Os dois bytes seguintes são somente utilizados pelo dispositivo 2. Nestes bytes estão contidas as temperaturas atuais do sensor do coordenador e da média dos dispositivos selecionados pelo o usuário através do aplicativo do Pocket PC. O ultimo byte (CRC) é destinado a fazer o controle de erro da mensagem através de uma soma do conteúdo de todos os bytes. Quando a mensagem é recebida por um dos dispositivos, uma rotina efetua a mesma soma, e assim, os dois resultados são comparados. Se estes forem iguais, a mensagem é considerada válida, e se forem diferentes, a mensagem é descartada. Este controle de erro foi introduzido para se descartar qualquer mensagem que tenha o seu conteúdo comprometido por algum ruído que cause interferência no conteúdo da mensagem.

As mensagens são enviadas seguidamente alternando-se os comandos para o dispositivo 2 e 3. O intervalo de tempo de envio entre uma mensagem e outra é de 3 segundos. As temperaturas dos sensores de todos os dispositivos são armazenadas e então é feita a média dos sensores selecionados. Esta seleção é enviada ao coordenador através da mensagem de retorno do dispositivo 2, que será descrita a seguir.

ii. Mensagem do dispositivo 2 para o coordenador – MSG 2.

Assim que a mensagem do coordenador é recebida pelo dispositivo 2 e o byte de comando é reconhecido, a temperatura do dispositivo é lida. Após isto, através de comunicação serial, a seleção dos dispositivos feita pelo usuário é solicitada ao aplicativo do Pocket PC. A configuração da mensagem de retorno ao coordenador é mostrada na Tabela 3.6.

Tabela 3.6 - Pacote de dados enviado do dispositivo 2 para o coordenador

Byte 1 Byte 2 Byte 3 Byte 4

Comando Temperatura do dispositivo 2 Seleção de temperaturas CRC

No primeiro byte é devolvido o mesmo comando recebido para o coordenador e no byte seguinte, é enviada a temperatura do sensor do dispositivo. Já no byte 3 é enviado um código equivalente aos dispositivos selecionados pelo usuário no Pocket PC para compor a média. Este código pode ser visto na Tabela 3.7.

Tabela 3. 7 – Códigos de seleção de dispositivos

Código (Hexadecimal) Descrição

0x00 O valor da média será igual ao valor apenas do

dispositivo 3

0x01 O valor da média será igual ao valor apenas do

dispositivo 2

0x02 O valor da média será igual à soma das temperaturas

dos dispositivos 2 e 3 dividido por dois

0x03 O valor da média será igual ao valor apenas do

coordenador

0x04 O valor da média será igual à soma das temperaturas do

dispositivo 3 e o coordenador dividido por dois

0x05 O valor da média será igual à soma das temperaturas do

dispositivo 2 e o coordenador dividido por dois

0x06

O valor da média será igual à soma das temperaturas do dispositivo 2, do dispositivo 3 e do coordenador dividido

O byte de controle de erro segue o mesmo padrão da mensagem enviada pelo coordenador.

iii. Mensagem do dispositivo 3 para o coordenador - MSG 3.

A mensagem de retorno do dispositivo 3 para o coordenador é mostrada na Tabela 3.8.

Tabela 3.8 - Pacote de dados enviado do dispositivo 3 para o coordenador

Byte 1 Byte 2 Byte 3 Byte 4

Comando

Temperatura do dispositivo 3

Byte não utilizado CRC

Nesta mensagem, da mesma maneira que a mensagem do dispositivo 2, o primeiro byte é destinado a devolver o comando enviado pelo coordenador. No segundo byte, é enviada a temperatura lida do dispositivo. O byte 3 não é utilizado e foi criado como um byte auxiliar pensando em possíveis ampliações do sistema. Da mesma maneira como feito para as outras mensagens, o controle de erro é feito através do byte 4.

Já a comunicação entre o dispositivo final e o Pocket PC é estabelecida pelo protocolo RS-232. Nesta comunicação existem também duas mensagens, uma enviada pelo dispositivo para o Pocket PC (MSG 4) e a outra mensagem do Pocket PC para o dispositivo final (MSG 5). No software aplicativo do Pocket PC, que será detalhado no item 3.2.8, existe uma tela com quatro indicações de temperatura: a temperatura do coordenador, a temperatura do dispositivo 2, a temperatura do dispositivo 3 e a temperatura média calculada pelo coordenador. Estas informações são recebidas pelo

Pocket PC através da comunicação serial. No software existem também três caixas de seleção onde é possível selecionar as temperaturas que farão parte da média.

O pacote de dados desta comunicação também é composto por quatro bytes, como especificado a seguir.

iv. Mensagem do dispositivo final para o Pocket PC – MSG 4.

Esta mensagem é composta por quatro temperaturas, que são as temperaturas do coordenador, do dispositivo 2, do dispositivo 3 e a média, seguido de um byte destinado a fazer a verificação de erro (CRC), como pode ser visto na Tabela 3.9.

Tabela 3.9 - Pacote de dados enviado do dispositivo 2 para o Pocket PC

Byte 1 Byte 2 Byte 3 Byte 4 Byte 5

Temperatura do Coordenador Temperatura do Dispositivo 2 Temperatura do Dispositivo 3 Média Opção de CRC

v. Mensagem do Pocket PC para o dispositivo final – MSG 5.

Já nesta mensagem a seleção das temperaturas selecionadas pelo usuário são enviadas para o dispositivo 2 nos mesmos formatos da mensagem 3. Esta mensagem é composta apenas por este byte como mostrado na Tabela 3.10 e um byte onde pode ser implementado um controle de erro.

Tabela 3.10 - Pacote de dados enviado do Pocket PC para o dispositivo 2

Byte 1 CRC

Seleção de Temperaturas

Opção de CRC

Documentos relacionados