• Nenhum resultado encontrado

3.2 PROPOSTA DE UM NOVO PROTOCOLO MESH

4.2.1 PROTOCOLO SMART BEE

4.2.1.2 CENÁRIOS

4.2.1.2.1 CENÁRIO 1: SINGLE HOP

Fonte: o autor, 2013.

Neste cenário, todos os módulos possuem um enlace físico e lógico com o GATEWAY e com os outros elementos da rede. Teríamos todos como PAI corrente o GATEWAY pois seria o enlace que apresentaria o menor NÚMERO DE HOPS e, como PAI’s alternativos os outros ordenados de acordo com a intensidade de sinal que cada módulo receber o frame de ST do outro módulo remoto.

Após o estabelecimento da rede foi possível verificar a TABELA DE ROTEAMENTO de cada módulo para verificar se ficou conforme esperado.

 Módulo Filho 1 (0013A20040A62E95)

Fonte: o autor, 2013.

Tipo: FILHO Serial:0013A20040 7288

Tipo: GATEWAY Serial:0013A2004028C1

Tipo: FILHO Serial:0013A20040 2E95 Tipo: FILHO

Serial:0013A200402129

Figura 215 – Tabela de Roteamento – 0013A20040A62E95 Figura 214 – Cenário Single-Hop

 Módulo Filho 2 (0013A200409C2921)

Fonte: o autor, 2013.

 Módulo Filho 3 (0013A20040A07288)

Fonte: o autor, 2013.

Foi possível observar que o módulo GATEWAY foi selecionado como PAI corrente em ambas as tabelas de roteamento e os outros módulos ficaram como PAI’s alternativos, ordenados conforme a intensidade de sinal recebida do módulo remoto.

Desta maneira ao enviar dados para o Gateway, foi possível observa-los sendo recebidos pelo mesmo, conforme a figura abaixo:

Fonte: o autor, 2013.

Figura 216 - Tabela de Roteamento – 0013A200409C2921

Figura 217 - Tabela de Roteamento – 0013A20040A07288

Figura 218 – Mensagens chegando no módulo PAI

Nesta figura é possível observar a mensagem enviada por cada módulo além de quem as enviou e quantos saltos foram necessários para que a informação chegasse até o GATEWAY.

4.2.1.2.2 CENÁRIO 1: MULTI-HOP (CADEIA)

Fonte: o autor, 2013.

Neste cenário somente 1 o modulo 0013A20040A62E95 (Filho 1) conseguiu obter como PAI corrente o módulo GATEWAY, uma vez que o módulo 0013A200409C2921 (Filho 2) só conseguiu obter como PAI corrente o modulo Filho 1 e finalmente o módulo 0013A20040A07288 (Filho 3) conseguiu obter como PAI corrente o módulo Filho 2.

Após o estabelecimento da rede foi possível verificar a TABELA DE ROTEAMENTO de cada módulo para verificar se ficou conforme esperado

 Módulo Filho 1 (0013A20040A62E95)

Fonte: o autor, 2013.

Figura 220 – Tabela de Roteamento Filho 1 Figura 219 – Cenário Mult-Hop (Cadeia)

Tipo: FILHO Serial:0013A200409C2921

Tipo: FILHO Serial:0013A20040A07288 Tipo: GATEWAY

Serial:0013A200409C28C1

Tipo: FILHO Serial:0013A20040A62E95

FILHO 1 FILHO 2 FILHO 3

GATEWAY Y

 Módulo Filho 2 (0013A200409C2921)

Fonte: o autor, 2013.

 Módulo Filho 3 (0013A20040A07288)

Fonte: o autor, 2013.

Foi possível observar que o PAI corrente Foi selecionado conforme descrito acima. Desta maneira ao enviar dados do módulo 0013A20040A07288 (Filho 3) para o Gateway e foi possível observar os saltos da informação conforme as figuras abaixo:

 Módulo Filho 3 (0013A20040A07288)

Fonte: o autor, 2013.

 Módulo Filho 2 (0013A200409C2921)

Fonte: o autor, 2013.

Figura 221 – Tabela de Roteamento Filho 2

Figura 222 – Tabela de Roteamento Filho 3

Figura 223 – Módulo Filho 3 Enviando a Mensagem

Figura 224 - Módulo Filho 2 Roteando a Mensagem

 Módulo Filho 1 (0013A20040A62E95)

Fonte: o autor, 2013.

 Módulo PAI (0013A200409C28C1)

Fonte: o autor, 2013.

A partir das figuras acima foi possível verificar o roteamento da mensagem entre os módulos e chegando até o GATEWAY. Na sequência foi possível verificar mais um teste para verificação do protocolo.

Fonte: o autor, 2013

Figura 225 – Módulo Filho 1 Roteando a Mensagem

Figura 226 – Módulo GATEWAY recebendo a Mensagem

Figura 227 – Roteamento de Pacotes

Neste teste, após a rede estabelecida e com o Filho 3 enviando mensagem foi retirado o Filho 2 da mesma, na tentativa de simular um problema de hardware ou uma eventual interferência. Então foi observado na tela do Filho 3 conforme a imagem abaixo:

Fonte: o autor, 2013.

Conforme a figura acima foi possível observar que o módulo efetuou 3 tentativas de envio de mensagem, como não recebeu ACK em nenhuma delas e não possuía pai alternativo, voltou a enviar frames de HELLO na tentativa de se anexar a rede novamente.

Figura 228 – Módulo Filho 3 tentando se anexar na rede novamente

4.2.1.2.3 CENÁRIO 3: MULTI-HOP COM TROCA DE PAI

Fonte: o autor, 2013.

Neste cenário somente os módulos 0013A20040A62E95 (Filho 1) e 0013A200409C2921 (Filho 2) conseguiram obter como PAI corrente o GATEWAY e finalmente o módulo 0013A20040A07288 (Filho 3) conseguiu obter como PAI corrente o módulo 0013A200409C2921 (Filho 2) e como PAI alternativo o 0013A20040A62E95 (Filho 1). Após o estabelecimento da rede foi possível verificar a TABELA DE ROTEAMENTO de cada módulo para verificar se ficou conforme esperado:

 Módulo Filho 1 (0013A20040A62E95)

Fonte: o autor, 2013.

 Módulo Filho 2 (0013A200409C2921)

Fonte: o autor, 2013.

Figura 230 – Módulo Filho 1 anexando ao GATEWAY Figura 229 Cenário Multi-Hop com troca de PAI

Figura 231 – Módulo Filho 2 obtendo o PAI corrente Tipo: FILHO Serial:0013A20040A07288

Tipo: GATEWAY Serial:0013A200409C28C1 Tipo: FILHO

Serial:0013A200409C2921

Tipo: FILHO Serial:0013A20040A62E95

 Módulo Filho 3 (0013A20040A07288)

Fonte: o autor, 2013.

Na sequência, para efetuar o teste de mais uma parte do protocolo foi desconectado da rede o modulo 0013A200409C2921 que o Filho 3 tinha como PAI corrente para que forçasse a troca de PAI, conforme o cenário abaixo:

Fonte: o autor, 2013.

Então foi possível verificar a troca do PAI corrente pelo PAI alternativo conforme a mudança mostrada na tabela de roteamento na figura abaixo:

Fonte: o autor, 2013.

Figura 234 – Tabela de Roteamento Filho 3 com novo PAI corrente Figura 233 – Módulo desconectado para visualizar

Roteamento

Figura 232 – Módulo Filho 3 obtendo o Pai corrente

Fonte: o autor, 2013.

Fonte: o autor, 2013.

Figura 235 – Módulo Filho 3 enviando mensagem para o novo PAI corrente

Figura 236 - Dados recebidos pelo concentrador

5 CONCLUSÃO

No momento em que o mundo se encontra, em meio a crises ambientais e em busca da diminuição do impacto ao meio ambiente, como redução da emissão global de gases do efeito estufa, juntamente com a racionalização de recursos e crescente aumento do custo de energias estabelecidas como uso de petróleo, a necessidade do estudo e da implementação de fontes alternativas de energia se torna cada vez mais premente. Um outro fator que deve ser considerado é o aumento veloz e contínuo da demanda de energia elétrica nos pontos consumidores nos últimos anos no país e no mundo. Assim, se torna cada vez mais necessário um arranjo que faça da distribuição de eletricidade um sistema mais eficiente possível. Estudos sobre a implantação de redes Smart Grid vem sendo elaborados em busca de modernizar o sistema de distribuição de energia elétrica, que hoje, é visto como incapaz de suportar as demandas energéticas futuras.

Este modelo de redes inteligentes apresenta diversas vantagens ao sistema elétrico como, por exemplo, um melhor gerenciamento de distribuição de eletricidade, medições de energia e coordenação de falhas ou interrupções. Além disso, a participação do consumidor é mais ativa ao se utilizar Smart Grid, já que proporciona ao usuário a oportunidade de acompanhar e controlar seu consumo de energia elétrica através de medidores inteligentes, implantados nas residências e/ou pontos terminais, capazes de compartilhar informações com a rede elétrica através de um fluxo bidirecional de informações, característico dessas redes inovadoras.

Porém, esse sistema proeminente exige uma infraestrutura de comunicação eficiente, confiável e que ofereça uma interoperabilidade dentro da rede. A escolha da tecnologia ZigBee é uma boa alternativa como plataforma de transmissão de redes Smart Grid. Essa tecnologia apresenta inúmeras vantagens quanto a sua implantação, já que possuem uma alta confiabilidade, além de possuir uma boa performance e baixo custo, que são requisitos importante das redes inteligentes.

Diante dos cenários configurados para a caracterização do canal foi possível observar que a taxa de comunicação máxima obtida (aproximadamente 92kbps) que já possui valores expressivos, levando em consideração que os módulos não necessitam enviar dados com uma frequência, em termos de intervalo de pacotes, muito alta conforme previsto no PRODIST (2011,p.13), pode ser melhorada ainda

mais se utilizado como interface de comunicação um microcontrolador que possua uma velocidade de comunicação serial maior, como por exemplo a de 230400bps.

De acordo com os dados obtidos, foi possível comparar as intensidades de sinal medidas nos cenários de estudo com os obtidos teoricamente através do modelo de propagação Log Distance, onde foi possível verificar os expoentes de perdas de percurso e levando em consideração que quase que na totalidade dos testes havia linha de visada entre os módulos foi possível caracterizar o canal de comunicação, que apresentou um expoente de perda de percurso (n) entre 2,2 e 2,3, como um ambiente entre espaço livre (n=2) e rádio celular em área urbana (n=2,7 a 3,5), conforme Theodore S. Rappaport (Rappaport, 2009). Um fato importante de se observar foi que em muitos cenários não houveram perdas de pacotes e nos cenários onde ela apareceu, apresentou valores extremamente pequenos, isto é, satisfatórios. Também foi possível observar que a intensidade de sinal diminuiu conforme o aumento da distância.

Após estudar os protocolos de roteamento existentes foi verificado que ficaria complicado a identificação de algum problema na rede se o mesmo ocorresse, também haveria dificuldade de se prever o trajeto dos pacotes, além de se desconhecer as métricas de roteamento por ele utilizada. Isso motivou a criação de um novo protocolo de roteamento. O protocolo criado tornou possível a utilização de um número maior de Gateways para escoar a informação, além de, possibilitar a um determinado módulo escolher qual o Gateway mais conveniente a ele, tendo em vista que um módulo pode possuir um enlace principal (PAI principal) e enlaces alternativos (PAI’s alternativos) que são escolhidos de acordo com o módulo que lhe oferecer um menor número de saltos até o Gateway, ao passo que, se houverem 2 módulos que se ofereceram como PAI´s de um determinado módulo, que apresentem o mesmo número de saltos até o Gateway, o pai que possuir o melhor enlace, em termos de intensidade de sinal, com o Filho em questão deve ser priorizado na sua Tabela de Roteamento.

Através do protocolo criado foi possível observar que a topologia Mesh seria a mais apropriada para este tipo de rede. O protocolo Smart Bee nos proporcionou uma melhor visão da rede, tornando o tráfego dos dados e as métricas de roteamento mais transparentes, o que nos apresentaria uma maior flexibilidade para efetuar o controle da rede.

No entanto, através dos resultados obtidos no presente estudo foi possível verificar que a tecnologia ZigBee pode possuir um bom desempenho nas redes, podendo ser utilizada em conjunto com outras tecnologias com perfil de tráfego para Smart Grid.

6 ANEXOS

6.1 ANEXO A: RESULTADOS DOS CENÁRIOS PONTO-A-PONTO

Tabela 25 - Resultados obtidos no Cenário Ponto-a-Ponto

Número total de Retrans- Missões 0 0 1 3 0

Pacotes Perdidos 0 0 0 0 0

Número de Pacotes Transmitidos 512 512 512 512 512

Variância do atraso ) 30,89 44,82 18,19 38,79 124,46 37,26 46,76 21,13 42,13 120,49 28,89 43,19 15,85 37,72 121,55 50,85 59,16 65,41 57,02 112,06 85,93 65,42 19,41 37,63 110,45

Atraso Médio (ms) 118 98 78 58 38 118 98 78 58 38 118 98 78 58 38 117 98 78 58 38 118 98 78 58 38

Variância da Poncia Recebida (dBm) 0 0 0 0 0 13,07 25,43 16,71 28,54 26,45 0,99 2,50 2,27 2,27 2,44 9,83 3,12 7,11 18,27 44,32 16,00 18,23 8,27 13,07 11,39

Intensidade Média do Sinal (dBm) -40,00 -41,98 -41,86 -54,64 -56,28

Taxa Teórica (kbps) 21,92 27,40 36,53 54,80 109,6 21,92 27,40 36,53 54,80 109,6 21,92 27,40 36,53 54,80 109,6 21,92 27,40 36,53 54,80 109,6 21,92 27,40 36,53 54,80 109,6

Taxa média com ACK (kbps) 20,18 26,97 33.53 45,96 57,86 20,15 26,97 33,54 46,49 57,94 20,20 26,93 33,49 46,49 57,68 20,12 26,96 33,52 46,18 57,86 20,16 26,97 33,44 46,39 58,58

Taxa média sem ACK (kbps) 18,61 22,42 28,18 37,92 57,98 18,62 22,42 28,18 37,92 57,99 18,61 22,41 28,17 37,92 57,99 18,61 22,41 28,18 37,92 57,99 18,61 22,41 28,17 37,93 57,99

Intervalo de pacotes (ms) 100 80 60 40 20 100 80 60 40 20 100 80 60 40 20 100 80 60 40 20 100 80 60 40 20

Disncia TX/RX (m) 50 100 150 200 250

Cenário 1 2 3 4 5

Retrans- Missões 1 0 0 1

Pacotes Perdidos 0 0 0 0

Número de Pacotes Transmitidos 512 512 512 512

Variância do atraso ) 38,32 41,90 41,65 53,00 97,92 20,54 165,67 36,44 94,36 107,82 35,30 43,16 40,47 47,14 91,49 1498,10 722,43 1444,70 722,32 406,96

Atraso Médio (s) 0,118 0,098 0,078 0,058 0,038 0,118 0,098 0,078 0,058 0,038 0,118 0,098 0,078 0,058 0,038 0,118 0,098 0,078 0,058 0,038

Variância da Poncia Recebida (dBm) 10,54 11,21 3,88 11,29 6,89 4,62 4,10 4,90 4,90 3,12 3,65 7,73 11,21 3,78 11,39 1,60 4,62 11,51 6,57 2,45

Intensidade Média do Sinal (dBm) -63,62 -62,24 -58,22 -71,14

Taxa Teórica (kbps) 21,92 27,40 36,53 54,80 109,6 21,92 27,40 36,53 54,80 109,6 21,92 27,40 36,53 54,80 109,6 21,92 27,40 36,53 54,80 109,6

Taxa média com ACK (kbps) 20,21 26,98 33,48 46,35 58,09 20,31 26,95 33,48 36,40 57,62 20,19 26,92 32,20 46,86 54,60 20,19 26,91 33,20 46,86 54,60

Taxa média sem ACK (kbps) 18,61 22,42 28,16 37,95 57,94 18,61 22,41 28,18 37,92 57,94 18,61 22,41 28,17 37,93 57,99 18,60 22,42 28,19 37,93 58,00

Intervalo de pacotes (ms) 100 80 60 40 20 100 80 60 40 20 100 80 60 40 20 100 80 60 40 20

Disncia TX/RX (m) 300 350 400 450

Cenário 6 7 8 9

6.2 ANEXO B: RESULTADOS DOS CENÁRIOS SINGLE - HOP SUMARIZADOS

Tabela 26 - Resultados obtidos no Cenário Single – Hop sem criptografia

Número total de Retrans- missões 0 0 0

Pacotes Perdidos 2 1 3 2 1 1 1 3 2 3 3 1 2 1 2 3 3 1 1 1 2

Número de Pacotes Transmitidos 512 512 512

Variância do atraso ) 443,98 716,26 597,11 559,89 766,53 2104,80 1739,40 9763,90 5693,40 88860,00 6144,50 4987,10 5595,90 2752,50 4221,10 3049,90 3013,20 2639,90 3311,20 3138,50 3460,50

Atraso Médio (ms) 317,29 277,35 237,50 197,55 157,64 117,63 98,05 317,29 279,94 242,02 199,72 157,31 118,31 97,97 319,06 277,74 237,77 198,16 157,89 118,03 98,12

Taxa média sem ACK (kbps) 6,91 7,90 9,23 11,10 13,90 18,63 22,36 6,83 7,83 9,06 10,98 13,85 18,53 22,36 6,87 7,89 9,22 11,06 13,88 18,57 22,34

Intervalo de pacotes (ms) 300 260 220 180 140 100 80 300 260 220 180 140 100 80 300 260 220 180 140 100 80

Disncia TX/RX (m) 50 50 50

Módulo 0013A20040A0F3A0 0013A20040A5062B 0013A20040A0F3D9

Tabela 27 - Resultados obtidos no Cenário Single – Hop com criptografia

Número total de Retrans- missões 0 0 0

Pacotes Perdidos 0 0 0 0 1 2 2 0 0 0 0 2 3 2 1 0 0 1 3 3 4

Número de Pacotes Transmitidos 512 512 512

Variância do atraso ) 93,617 175,05 211,77 213,22 1118,00 2051,60 2380,80 130,86 162,98 246,70 271,76 1431,60 1553,30 2565,30 1161,80 703,23 840,47 1466,70 2451,10 4079,00 4368,00

Atraso Médio (ms) 317,39 277,42 237,46 197,55 157,84 118,10 97,829 317,76 277,75 237,69 199,72 157,34 117,99 98,093 318,38 277,77 237,81 198,18 157,61 118,99 98,86

Taxa média sem ACK (kbps) 6,91 7,90 9,23 11,10 13,88 18,56 22,40 6,90 7,89 9,22 11,09 13,84 18,58 22,34 6,88 7,89 9,22 11,06 13,82 18,42 22,17

Intervalo de pacotes (ms) 300 260 220 180 140 100 80 300 260 220 180 140 100 80 300 260 220 180 140 100 80

Disncia TX/RX (m) 50 50 50

Módulo 0013A20040A0F3A0 0013A20040A5062B 0013A20040A0F3D9

6.3 ANEXO C: CÓDIGOS

requere_serial_High=[126 0 4 8 82 83 76 6];

requere_serial_Low=[126 0 4 8 82 83 72 10];

a=serial('COM11');

MAC=[SL(9) SL(10) SL(11) SL(12) SH(9) SH(10) SH(11) SH(12)];

aux=strcat(dec2hex(MAC(1),2),dec2hex(MAC(2),2),dec2hex(MAC(3),2),dec2hex(MA C(4),2),dec2hex(MAC(5),2),dec2hex(MAC(6),2),dec2hex(MAC(7),2),dec2hex(MAC(8 ),2));

fprintf('==>> ENDEREÇO MAC DO MÓDULO ADJACENTE: %s \n\n', aux);

while(1)

switch (estado) case 0

Projeto_Final_Rede_Mesh_Envia_Spanning_Tree_PAI();

estado=1;

case 1

if(a.BytesAvailable) estado=2;

end;

case 2

Projeto_Final_Rede_Mesh_Recebe_Mensagem_PAI();

Projeto_Final_Rede_Mesh_Trata_Mensagem_Recebida_PAI ();

if(FLAG_RECEBIMENTO==1 FLAG_RECEBIMENTO=0;

estado=1;

end;

case 3

if(a.BytesAvailable) estado=4;

end;

case 4

Projeto_Final_Rede_Mesh_Recebe_Mensagem_PAI();

Projeto_Final_Rede_Mesh_Trata_Mensagem_Recebida_PAI ();

end;

end;

fclose(a);

delete(a);

function Projeto_Final_Rede_Mesh_Envia_Spanning_Tree_PAI() global a;

envia_gateway=[126 0 19 16 0 0 0 0 0 0 0 255 255 255 254 0 0 83 84 0 0 0 77];

fwrite(a,(envia_gateway),'uint8');

fprintf('==>>ENVIOU FRAME SPANNING TREE\n\n');

end

function Projeto_Final_Rede_Mesh_Trata_Mensagem_Recebida_PAI ()

if ((buffer(1)==144) && (buffer(13)==72)&& (buffer(14)==69)) FLAG_RECEBIMENTO=1;

Projeto_Final_Rede_Mesh_Envia_Spanning_Tree_PAI();

fprintf('==>> RECEBEU HELLO\n');

enviado_por=[buffer(2) buffer(3) buffer(4) buffer(5) buffer(6) buffer(7) buffer(8) buffer(9)];

aux=strcat(dec2hex(enviado_por(1),2),dec2hex(enviado_por(2),2),dec2hex(envi ado_por(3),2),dec2hex(enviado_por(4),2),dec2hex(enviado_por(5),2),dec2hex(e nviado_por(6),2),dec2hex(enviado_por(7),2),dec2hex(enviado_por(8),2));

fprintf('Recebido de: %s \n\n', aux);

end;

if ((buffer(1)==144)&&(buffer(13)==77)&&(buffer(14)==83)) tamanho_do_buffer=size(buffer);

fprintf('==>> DADOS RECEBIDOS\n');

roteado_por=[buffer(2) buffer(3) buffer(4) buffer(5) buffer(6) buffer(7) buffer(8) buffer(9)];

aux=strcat(dec2hex(roteado_por(1),2),dec2hex(roteado_por(2),2),dec2hex(rote ado_por(3),2),dec2hex(roteado_por(4),2),dec2hex(roteado_por(5),2),dec2hex(r oteado_por(6),2),dec2hex(roteado_por(7),2),dec2hex(roteado_por(8),2));

fprintf('Roteados por: %s \n', aux);

enviado_por=[buffer(15) buffer(16) buffer(17) buffer(18) buffer(19) buffer(20) buffer(21) buffer(22)];

aux=strcat(dec2hex(enviado_por(1),2),dec2hex(enviado_por(2),2),dec2hex(envi ado_por(3),2),dec2hex(enviado_por(4),2),dec2hex(enviado_por(5),2),dec2hex(e nviado_por(6),2),dec2hex(enviado_por(7),2),dec2hex(enviado_por(8),2));

fprintf('Recebidos de: %s \n', aux);

tam=size(buffer);

tamanho_dados=tam(2)-23;

for i=1:tamanho_dados

dados_recebidos(i)=buffer(22+i);

end;

fprintf('Dados recebidos: %s \n', char(dados_recebidos));

fprintf('Saltos: %d \n\n', buffer(23)+1);

end;

end;

buffer=[];

end

clear;

requere_serial_high=[126 0 4 8 82 83 76 6];

requere_serial_low=[126 0 4 8 82 83 72 10];

estado=0;

inibe=input('Lista Inibe:');

opcao= input('Deseja enviar mensagens ao estabelecer a rede? [1-Sim/2-Não]','s');

opcao=str2num(opcao);

if(opcao==1)

msg=input('Digite a mensagem a ser enviada: ','s');

end;

MAC=[SL(1) SL(2) SL(3) SL(4) SH(1) SH(2) SH(3) SH(4)];

tic;

while(1)

switch (estado)

case 0

fprintf('%s \n\n','==>> AGUARDANDO UM FRAME ST PARA ANEXAR A REDE');

function Projeto_Final_Rede_Mesh_Envia_Pai_FILHO()

endereco_rede=[255 254 0 0];

identifica_dados=[83 84];

crc=[tipo_tx destino endereco_rede identifica_dados num_pais endereco_pais int_sinal num_hops];

fprintf('%s \n\n','==>> ENVIOU UM FRAME DE ST');

end

function Projeto_Final_Rede_Mesh_Envia_dados_Filho()

endereco_rede=[255 254 0 0];

identifica_dados=[77 83];

for i=1:tamanho_string(2)

string_para_tx(i)=cast(msg(i),'uint8');

end;

frame=[start_bit tamanho_tx tipo_tx destino endereco_rede identifica_dados MAC hops string_para_tx];

sum=0;

fprintf('Enviados por: %s \n', strMAC);

strDestino=strcat(dec2hex(destino(1),2),dec2hex(destino(2),2),dec2hex(desti no(3),2),dec2hex(destino(4),2),dec2hex(destino(5),2),dec2hex(destino(6),2), dec2hex(destino(7),2),dec2hex(destino(8),2));

fprintf('Enviados para: %s \n', strDestino);

fprintf('Destino: %s \n', '0013A200409C28C1');

fprintf('Mensagem: %s \n\n', msg);

%RECEBEU UMA INFORMAÇÃO DE SPANNING TREE

if ((buffer(1)==144)&&(buffer(13)==83) && (buffer(14)==84)) if (sum(buffer(9)==inibe)==0)

num_ele_recebidos=buffer(15);

pos=16;

fprintf('%s\n','==>>RECEBEU UM SPANNING TREE');

strST=strcat(dec2hex(buffer(2),2),dec2hex(buffer(3),2),dec2hex(buffer(4),2) ,dec2hex(buffer(5),2),dec2hex(buffer(6),2),dec2hex(buffer(7),2),dec2hex(buf fer(8),2),dec2hex(buffer(9),2));

fprintf('Recebido de: %s \n',strST);

if(num_ele_recebidos~=0)

for i=1:num_ele_recebidos

disp('Nó que enviou o ST já consta na TABELA DE ROTEAMENTO');

fprintf('%s\n\n','OBS: Não será inserido na tabela de Roteamento');

Projeto_Final_Rede_Mesh_Acrescenta_Tabela_Roteamento_Filho();

Projeto_Final_Rede_Mesh_Envia_Pai_FILHO();

end;

end;

end;

if ((buffer(1)==139) && (buffer(6)==0)) FLAG_RECEBIMENTO=1;

FLAG_ACK=1;

fprintf('%s \n\n','==>>RECEBEU CONFIRMAÇÃO DE ENTREGA');

end;

if ((buffer(1)==144) && (buffer(13)==72)&& (buffer(14)==69)) FLAG_RECEBIMENTO=1;

fprintf('%s\n\n','==>> RECEBEU UM HELLO');

enviado_por=[buffer(2) buffer(3) buffer(4) buffer(5) buffer(6) buffer(7) buffer(8) buffer(9)];

aux=strcat(dec2hex(enviado_por(1),2),dec2hex(enviado_por(2),2),dec2hex(envi ado_por(3),2),dec2hex(enviado_por(4),2),dec2hex(enviado_por(5),2),dec2hex(e nviado_por(6),2),dec2hex(enviado_por(7),2),dec2hex(enviado_por(8),2));

fprintf('Recebido de: %s \n\n', aux);

if(NUM_ELE_TABELA_ROTEAMENTO~=0)

Projeto_Final_Rede_Mesh_Envia_Pai_FILHO();

end;

end;

% CHEGARAM DADOS A SEREM ROTEADOS

if ((buffer(1)==144)&&(buffer(13)==77)&&(buffer(14)==83)) fprintf('%s \n','==>> RECEBEU DADOS A SEREM ROREADOS');

tamanho_do_buffer=size(buffer);

endereco_rede=[255 254 0 0];

identifica_dados=[77 83];

origem=[buffer(15) buffer(16) buffer(17) buffer(18) buffer(19) buffer(20) buffer(21) buffer(22)];

roteia=[tipo_tx destino endereco_rede identifica_dados origem hops msg_de_dados_recebida];

tamanho_roteia=size(roteia);

recebido_de=[buffer(2) buffer(3) buffer(4) buffer(5) buffer(6) buffer(7) buffer(8) buffer(9)];

aux=strcat(dec2hex(recebido_de(1),2),dec2hex(recebido_de(2),2),dec2hex(rece bido_de(3),2),dec2hex(recebido_de(4),2),dec2hex(recebido_de(5),2),dec2hex(r ecebido_de(6),2),dec2hex(recebido_de(7),2),dec2hex(recebido_de(8),2));

fprintf('Recebido de: %s \n',aux);

aux=strcat(dec2hex(TABELA_ROTEAMENTO(1,1),2),dec2hex(TABELA_ROTEAMENTO(1,2) ,2),dec2hex(TABELA_ROTEAMENTO(1,3),2),dec2hex(TABELA_ROTEAMENTO(1,4),2),dec 2hex(TABELA_ROTEAMENTO(1,5),2),dec2hex(TABELA_ROTEAMENTO(1,6),2),dec2hex(TA BELA_ROTEAMENTO(1,7),2),dec2hex(TABELA_ROTEAMENTO(1,8),2));

fprintf('Enviado para: %s\n',aux);

fprintf('Destino: \t %s \n','0013A200409C28C1');

fprintf('Dados recebidos: %s \n', char(dados_recebidos));

fprintf('Saltos até aqui: %d \n\n',hops);

end;

%RECEBEU UMA INFORMAÇÃO DE INTENSIDADE DE SINAL

if ((buffer(1)==136)&& (buffer(2)==82) &&(buffer(3)==68)

&&(buffer(4)==66))

if ((buffer(1)==136)&& (buffer(2)==82) &&(buffer(3)==83)

if ((buffer(1)==136)&& (buffer(2)==82) &&(buffer(3)==83)

&&(buffer(4)==72)&&(buffer(5)==0))

fprintf('Destino \t\t\tInt Sinal(dBm) \t Num hops\n') for i=1:NUM_ELE_TABELA_ROTEAMENTO

aux=strcat(dec2hex(TABELA_ROTEAMENTO(i,1),2),dec2hex(TABELA_ROTEAMENTO(i,2) ,2),dec2hex(TABELA_ROTEAMENTO(i,3),2),dec2hex(TABELA_ROTEAMENTO(i,4),2),dec 2hex(TABELA_ROTEAMENTO(i,5),2),dec2hex(TABELA_ROTEAMENTO(i,6),2),dec2hex(TA BELA_ROTEAMENTO(i,7),2),dec2hex(TABELA_ROTEAMENTO(i,8),2));

fprintf('%s \t\t%d \t\t\t%d \n',aux,-TABELA_ROTEAMENTO(i,9),TABELA_ROTEAMENTO(i,10));

end

fprintf('\n');

end

function Projeto_Final_Rede_Mesh_Acrescenta_Tabela_Roteamento_Filho() global buffer;

global TABELA_ROTEAMENTO;

global NUM_ELE_TABELA_ROTEAMENTO;

global num_hops;

fprintf('\n');

Projeto_Final_Rede_Mesh_Verifica_Intensidade_Sinal_Filho();

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,1)=buffer(2);

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,2)=buffer(3);

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,3)=buffer(4);

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,4)=buffer(5);

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,5)=buffer(6);

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,6)=buffer(7);

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,7)=buffer(8);

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,8)=buffer(9);

num_hops=num_hops+1;

TABELA_ROTEAMENTO(NUM_ELE_TABELA_ROTEAMENTO,10)=num_hops;

End

REFERÊNCIAS

Caprile, S. R. (2009). Xbee - Desarrollo de aplicaciones comunicacion remota basadas en módulos Zigbee y 802.15.4.Buenos Aires: GAE.

Eady, F. (2007). Hands-on ZigBee - Implementing 802.15.4 with Microcontrollers.Burlington , MA - USA: Newnes.

Farahani, S. (2008).ZigBee Wireless Networks and Transceivers. Burlington:

Newnes.

Gislason, D. (2008).ZigBee Wirelles Networking.Newness.

Arduíno CC. (s.d.). (Arduíno) Acesso em 20 de Apr de 2013, disponível em http://arduino.cc/en/Main/arduinoBoardUno

Digi, I. (2012). Dataseet XBee PRO 900HP. Acesso em 25 de Apr de 2013, disponível em http://www.albacore.com.brindex.phpprodutosssolucoes-embarcaveismodulos-zigbee-e-rfmodulos-rf-ponto-para-multipontoxbee-pro-900hp

SANTOS, S. T. (2007). Redes de Sensores sem fio em monitoramento e controle.UNIVERSIDADE FEDERAL DO RIO DE JANEIRO.

Aldana, A., Cespedes, R., Parra, E., Lopez, R., & Ruiz, M. (19-21 de Oct de 2011). Implementation of Smart Grids in the Colombian Electrical Sector. IEEE PES Conference on Innovative Smart Grid Technologies (ISGT Latin America). Acesso

em 15 de Mar de 2013, disponível em

http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6083203

Ilie, I.-S. (5-7 de Dec de 2011). Reliability Performance Assessment in Smart Grids with Demand-side Management. 2nd IEEE PES International Conference and Exhibition on Innovative Smart Grid Technologies (ISGT Europe),. Acesso em 15 de

Mar de 2013, disponível em

http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6162650

Qian Zhang, Y. S. (3 - 5 de Dec de 2010). Application and Analysis of ZigBee Technology for Smart Grid. Computer and Information Application (ICCIA), 2010 International Conference on. Acesso em 24 de Apr de 2013, disponível em http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6141563

Tsoukalas, L., & Gao, R. (6-8 de Apr de 2008). From smart grids to an energy internet: Assumptions, architectures and requirements. Third International Conference on Electric Utility Deregulation and Restructuring and Power Technologies. Acesso em 15 de Mar de 2013, disponível em http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4523385

Yi, P., Iwayemi, A., & Zhou, C. (19 - 21 de Jan de 2010). Frequency Agility in a Zigbee Network for Smart Grid Application. Innovative Smart Grid Technologies (ISGT), pp. 1 - 6. Acesso em 15 de Mar de 2013, disponível em http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5434747

Yi, P., Iwayemi, A., & Zhou, C. (1 de Mar de 2011). Developing ZigBee Deployment Guideline Under WiFi Interference for Smart Grid Applications. IEEE Transactions on Smart Grid. Acesso em 15 de Mar de 2013, disponível em http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5672592

Zhang, Q. (3-5 de Dec de 2010). Application and Analysis of ZigBee Technology for Smart Grid. International Conference on Computer and Information Application (ICCIA). Acesso em 15 de Mar de 2013, disponível em http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6141563

Zhong, D., Ji, W., Liu, Y., Han, J., & Li, S. (6-8 de Dec de 2011). An Improved Routing Algorithm of Zigbee Wireless Sensor Network for Smart Home System.The 5th International Conference on Automation, Robotics and Applications.

Acesso em 15 de Mar de 2013, disponível em

http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6144907

ANEEL, A. N. (s.d.). Procedimentos de Distribuição de Energia Elétrica no

Sistema Elétrico Nacional – PRODIST. Brasil. Fonte:

http://www.aneel.gov.br/arquivos/PDF/Modulo5_Revisao_2.pdf ABRADEE, i. A. (s.d.). PLANEJAMENTO DE COMUNICAÇÃO .

Faludi, R. (Dec. 2010).Building Wireless Sensor Networks.O’Reilly Media.

Gilat, A. (2008).Matlab com Aplicações para Engenharia.BOOKMAN.

Toledo, F. (2012). Desvendando as Redes Elétricas Inteligentes. Rio de Janeiro: BRASPORT Livros e Multimídia Ltda.

Digi. (2008). Wireless Mesh Networking.Wireless Mesh Networking.

P.Saraswala, P. (janeiro de 2013). International Journal of Engineering Science and Innovative Technology (IJESIT). A Survey on Rounting Protocols in ZigBee Network.

Rappaport, T. S. (2009).COMUNICAÇÕES SEM FIO - Princípios e Práticas.

Pearson Education do Brasil.

Documentos relacionados