Permalink
Browse files

Chapter 5 almost done. Needs Horus localization.

Then results: simulate AODV (throuput) and localization for a smal network
  • Loading branch information...
1 parent 784a087 commit a57dafecb00bb563eb491f605f9b61582bef752a mnobrega committed Oct 29, 2012
@@ -49,10 +49,11 @@
\acro{PC}{\acroemph{Personnal Computer}}
\acro{RREQ}{\acroemph{Route Request}}
\acro{RREP}{\acroemph{Route Response}}
- \acro{RREP-ACK}{\acroemph{Route Response Acknowledge}}
+ \acro{RREP-ACK}{\acroemph{Route Response Acknowledgement}}
\acro{RERR}{\acroemph{Route Error}}
\acro{APP}{\acroemph{Application Layer}}
\acro{FIFO}{\acroemph{First In First Out}}
\acro{TTL}{\acroemph{Time To Live}}
\acro{ARP}{\acroemph{Address Resolution Protocol}}
+ \acro{ACK}{\acroemph{Acknowledgement}}
\end{acronym}
@@ -5,9 +5,6 @@
\fancychapter{Introdução}
\label{chap:1}
-%TODO
-\textcolor{red}{TODO: Pequeno resumo do capítulo}
-
\section{Motivação}
\label{chap:1:sec:1}
O aumento da esperança de vida provoca actualmente um envelhecimento generalizado da população mundial o que coloca diversos desafios ao desenvolvimento nacional, à sustentabilidade das famílias e à capacidade dos sistemas de saúde. Durante anos recentes o número de pessoas no mundo acima dos 60 anos aumentou de 200 milhões em 1950 para 670 milhões, sector etário que representa já cerca de 20\% do total da população nos países desenvolvidos \citep{1}. Com a deslocalização dos jovens para a periferia dos grandes centros e a baixa natalidade, aumenta cada vez mais o número de idosos que vivem sozinhos em suas casas. Esta situação cria ansiedade em todos os envolvidos, resultando muitas vezes em internamentos precoces em lares, com um custo elevado e vagas limitadas.
@@ -28,17 +25,16 @@
\section{Objectivos}
\label{chap:1:sec:2}
-Nesta dissertação é proposto o desenvolvimento de uma solução onde uma ou mais pessoas, portadoras de um nó wireless, se movimentam num ambiente onde existem outros nós wireless. Deverá ser possível localizar cada pessoa e estabelecer uma comunicação bidireccional entre esta e um servidor central.
+Nesta dissertação é proposto o desenvolvimento de uma solução onde uma ou mais pessoas, portadoras de um nó com comunicação wireless, se movimentam num ambiente onde existem outros nós wireless. Deverá ser possível localizar cada pessoa e estabelecer uma comunicação bidireccional entre esta e um servidor central.
Assim definem-se os seguintes objectivos:
\begin{itemize}
- \item Pesquisar informação sobre o estado da arte na monitorização em ambiente doméstico;
\item Identificar necessidades num ambiente doméstico e propor para estas, soluções de hardware existentes no mercado;
\item Identificar uma plataforma de simulação existente que permita, de uma forma realista, simular o comportamento do sistema;
\item Definir a arquitectura do sistema e os papeis de cada interveniente;
\item Implementar a simulação de um protocolo de encaminhamento;
\item Implementar a simulação de um sistema de localização;
- \item Analisar a simulação criada com métricas que permitam conhecer o erro de localização, bem como os limites e valores óptimos do sistema.
+ \item Simular casos de estudo que permitam validar o protocolo de encaminhamento e de localização implementados.
\end{itemize}
@@ -4,7 +4,7 @@
\fancychapter{Estado da Arte}
\label{chap:2}
-A geração actual de casas inteligentes tem tido uma maior evolução na inteligência artificial do sistema central, em detrimento dos sistemas de monitorização e controlo. A casa inteligente actual consiste em vários electrodomésticos e outros dispositivos, com sensores, actuadores e/ou monitores biomédicos, usados pelos residentes numa base diária. Em alguns casos a casa é monitorizada recorrendo a tecnologias áudio e vídeo, sendo que estes sistemas apresentam uma excelente forma de monitorização mas têm algumas desvantagens:
+A casa inteligente actual consiste em vários electrodomésticos e outros dispositivos, com sensores, actuadores e/ou monitores biomédicos, usados pelos residentes numa base diária. Em alguns casos a casa é monitorizada recorrendo a tecnologias áudio e vídeo, sendo que estes sistemas apresentam uma excelente forma de monitorização mas têm algumas desvantagens:
\begin{itemize}
\item Custos elevados devido ao uso de sensores sofisticados e equipamentos áudio-visuais;
@@ -142,5 +142,18 @@
\label{fig:6:mediacup}
\end{figure}
+\section{Discussão}
+\label{chap:2:sec:4}
+A bibliografia revista permitiu adquirir um maior conhecimento das soluções existentes no mercado, fornecendo pistas valiosas para o desenvolvimento desta dissertação.
+
+O rápido crescimento das redes \acs{BSN} e a diversidade de sensores existentes, tornam a integração das mesmas como uma rede \acs{WSN} muito aliciante, traduzindo um valor acrescido na monitorização de pessoas, pela possibilidade de detectar situações anómalas antes de qualquer sinal evidente da mesma.
+
+O grande foco nas quedas de idosos, encontrado em diversos trabalhos permite antever a necessidade de incluir num sistema de monitorização, sensores com câmaras embutidas, pese embora todas as questões de privacidade associadas.
+
+A abordagem pouco intrusiva dos sensores menos evoluídos tecnologicamente e que permitem monitorizar sem ultrapassar as barreiras da privacidade. Pequenas melhorias nos sensores comuns que podem melhorar significativamente a qualidade de vida dos idos.
+
+Por último a possibilidade de tornar os sensores parte integrante dos objectos do dia-a-dia, revela a necessidade de tornar as aplicações mais ubíquas mesmo que para isso seja necessário fazer algumas concessões ao nível dos custos.
+
+
% Ensure that the next chapter starts in a odd page
\cleardoublepage
@@ -17,7 +17,20 @@
\section{Objective Modular network Test-bed (OMNeT++)}
\label{chap:4:sec:1}
-O \acs{OMNeT++}\footnote{http://http://www.omnetpp.org/} é uma plataforma de simulação baseada em módulos, escrita em C++ e com um IDE baseado em Eclipse. Cada módulo pode ser do tipo simples ou composto. Os módulos compostos são constituídos por módulos simples ou por outros módulos compostos criando assim uma estrutura hierárquica de dependência.Todos os módulos assentam sobre um módulo de sistema, responsável pela realização da simulação. A comunicação entre módulos é feita através do envio de mensagens, que podem ser tão especializadas quanto o necessário, enviadas por canais de comunicação de entrada e saída. Na Figura \ref{fig:2:omnet} está um diagrama exemplificativo desta arquitectura.
+O \acs{OMNeT++}\footnote{http://http://www.omnetpp.org/} é uma plataforma de simulação baseada em módulos, escrita em C++ e com um IDE baseado em Eclipse.
+
+O \acs{OMNeT++} foi a plataforma base escolhida para este trabalho pelas seguintes razões:
+
+\begin{itemize}
+\item A partilha dos resultados deste trabalho com a comunidade \acs{OMNeT++}, promovendo a continuidade do trabalho efectuado nesta dissertação;
+\item A reutilização e combinação de módulos já construídos;
+\item A orientação por objectos que permite uma flexível extensão das classes base;
+\item A existência de um ambiente gráfico automático para uma melhor visualização e \textit{debug} da simulação;
+\item A biblioteca extensa incluída que oferece suporte para estatística, colecção de dados, apresentação gráfica, números aleatórios e estruturas de dados;
+\item A possibilidade simular vários cenários mudando apenas parâmetros num ficheiro de configuração, sem necessidade de nova compilação.
+\end{itemize}
+
+Cada módulo pode ser do tipo simples ou composto. Os módulos compostos são constituídos por módulos simples ou por outros módulos compostos criando assim uma estrutura hierárquica de dependência.Todos os módulos assentam sobre um módulo de sistema, responsável pela realização da simulação. A comunicação entre módulos é feita através do envio de mensagens, que podem ser tão especializadas quanto o necessário, enviadas por canais de comunicação de entrada e saída. Na Figura \ref{fig:2:omnet} está um diagrama exemplificativo desta arquitectura.
\begin{figure}[!htb]
\centering
@@ -46,17 +59,6 @@ \section{Objective Modular network Test-bed (OMNeT++)}
\label{fig:4:omnetTkenv}
\end{figure}
-O \acs{OMNeT++} foi a plataforma base escolhida para este trabalho pelas seguintes razões:
-
-\begin{itemize}
-\item A partilha dos resultados deste trabalho com a comunidade \acs{OMNeT++}, promovendo a continuidade do trabalho efectuado nesta dissertação;
-\item A reutilização e combinação de módulos já construídos;
-\item A orientação por objectos que permite uma flexível extensão das classes base;
-\item A existência de um ambiente gráfico automático para uma melhor visualização e \textit{debug} da simulação;
-\item A biblioteca extensa incluída que oferece suporte para estatística, colecção de dados, apresentação gráfica, números aleatórios e estruturas de dados;
-\item A possibilidade simular vários cenários mudando apenas parâmetros num ficheiro de configuração, sem necessidade de nova compilação.
-\end{itemize}
-
\section{Mixed Simulator (MiXiM) para OMNeT++}
\label{chap:4:sec:2}
O \acs{MiXiM}\footnote{http://mixim.sourceforge.net/} resulta da combinação de quatro \textit{frameworks}: a \acf{MF} que introduz suporte à mobilidade, o \acf{ChSim} que adiciona modelos detalhados de propagação, o MAC Simulator e a Positif Framework que adicionam o \acs{MAC}. Esta plataforma foi criada especificamente para simulação de redes wireless introduzindo várias novidades úteis na simulação de \acsp{WSN}, tais como:
@@ -4,8 +4,6 @@
\fancychapter{Arquitectura do Sistema}
\label{chap:5}
-%TODO
-\textcolor{red}{TODO: Pequeno resumo do capítulo}
\section{Sistema de Monitorização EMoS}
\label{chap:5:sec:1}
@@ -56,7 +54,7 @@
\begin{figure}[!htb]
\centering
- \includegraphics[width=0.50\textwidth]{img/05_wasp_mote.png}
+ \includegraphics[width=0.57\textwidth]{img/05_wasp_mote.png}
\caption{Módulo \textit{Waspmote} da \textit{Libelium}.}
\label{fig:3:waspMote}
\end{figure}
@@ -248,7 +246,53 @@ \subsection{Modo de Funcionamento}
Neste trabalho a camada de aplicação poderá gerar vários tipos de mensagens. Essas mensagens poderão ser em \textit{broadcast} no caso das mensagens de assinatura enviadas pelos nós fixos ou \textit{unicast} quando existe um nó que pretende comunicar com outro. Todos os nós do sistema \acs{EMoS} podem comunicar uns com os outros, no entanto, nem sempre de forma directa. Sendo a camada \textit{Network} comum a todos os nós o comportamento é idêntico para todos.
-Suponhamos que a camada de aplicação de um nó fixo pretende enviar uma mensagem para o base, informando, por exemplo que o existe uma fuga de gás. A partir desse momento à mensagem de aplicação é anexada informação de controlo (\textit{NetwControlInfo}), contendo o endereço \textit{Network} do nó de destino, sendo enviada para a camada abaixo.
+Suponhamos que a camada de aplicação de um nó fixo pretende enviar uma mensagem para o nó base, informando que o existe uma fuga de gás. A partir desse momento à mensagem de aplicação é anexada informação de controlo (\textit{NetwControlInfo}), contendo o endereço \textit{Network} do nó de destino, sendo enviada para a camada abaixo. A mensagem segue então o fluxograma da Figura \ref{fig:12:aodvFlux1}. De notar que o caso em que o endereço de destino é igual ao do próprio nó, decorre de um erro de atribuição do endereço final na camada de aplicação. A incrementação da sequência do nó é feita para o caso de ainda existir \acp{RREQ} perdidos no ambiente.
+
+\begin{figure}[!htb]
+ \centering
+ \includegraphics[width=0.9\textwidth]{img/05_aodv_flow_01.png}
+ \caption{Fluxograma de chegada da mensagem de aplicação à camada \textit{Network}.}
+ \label{fig:12:aodvFlux1}
+\end{figure}
+
+Cada nó guarda também um registo, para cada nó com o qual já tenha comunicado um registo do número de sequência desse nó. Este valor é colocado no \acs{RREQ} para que, caso seja encontrado um caminho mais recente, este pedido seja ignorado.
+
+Portanto quando não existe caminho para o nó pretendido de destino o nó de origem gera o \acs{RREQ} que é enviado em modo \textit{broadcast} para o resto da rede. Na Figura \ref{fig:13:aodvFlux2} está a recepção de outro nó do pacote enviado pelo nó de origem.
+
+\begin{figure}[!htb]
+ \centering
+ \includegraphics[width=0.9\textwidth]{img/05_aodv_flow_02.png}
+ \caption{Fluxograma de chegada de um RREQ vindo da camada MAC.}
+ \label{fig:13:aodvFlux2}
+\end{figure}
+
+
+Dado que o nó guarda todos os \acs{RREQ} que recebe no RouteVector, este consegue verificar se já recebeu aquele mesmo pacote ou não. No caso de não ter recebido é incrementado o contador de saltos para que a distância até á origem seja actualizada. A informação do nó de origem, o número de saltos até ao mesmo são usados para criar um caminho inverso para o nó de origem. Enquanto este não for o nó de origem a mensagem vai sendo enviada de no para nó até chegar ao destino. Pode ainda se dar o caso do nó não ser o nó de destino mas já existir um caminho no RouteMap o que permite ao nó intermédio devolver logo um \acs{RREP}. Quando se trata do nó de destino é incrementado o contador do nó para garantir que não haverá mais nenhum caminho a se sobrepor.
+
+Então, assim que o caminho é encontrado existe um \acs{RREP} que volta pelo caminho inverso em \textit{unicast} construindo o caminho do nó de origem para o nó de destino iniciais. Na Figura \ref{fig:14:aodvFlux3} podemos observar o que acontece a essa mensagem à medida que vai passando pelos nós intermédios até chegar ao nó de origem original. Quando é alcançada a origem o nó pode então ir buscar ao pktMap a p?oxima mensagem a enviar para aquele endereço de destino.
+
+\begin{figure}[!htb]
+ \centering
+ \includegraphics[width=0.7\textwidth]{img/05_aodv_flow_03.png}
+ \caption{Fluxograma de chegada de um RREQ vindo da camada MAC.}
+ \label{fig:14:aodvFlux3}
+\end{figure}
+
+Quando ocorre um erro, ou seja, existe uma mensagem que é entregue mas o \acs{MAC} não recebe uma resposta de confirmação \acs{ACK} é necessário tomar medidas para que a origem seja informada que aquele caminho já não é válido. Assim são criados \acs{RERR} que viajam pelos precursores até atingir nó de origem. Na Figura \ref{fig:15:aodvFlux4} podemos ver a primeira fase quando a falha na entrega da mensagem ocorre. Nesse momento o nó procura todos os caminhos que estejam no \textit{RouteMap} e elimina-os, enviando depois um \acs{RERR} para cada um dos precursores. Na Figura \ref{fig:16:aodvFlux5} temos o comportamento dos nós intermédios e destino (origem do caminho eliminado). De notar que a mensagem vai sendo apagada, nó a nó, quando para cada percurso na árvore já não existem mais percursores.
+
+\begin{figure}[!htb]
+ \centering
+ \includegraphics[width=0.34\textwidth]{img/05_aodv_flow_04.png}
+ \caption{Fluxograma de chegada de um RREQ vindo da camada MAC.}
+ \label{fig:15:aodvFlux4}
+\end{figure}
+
+\begin{figure}[!htb]
+ \centering
+ \includegraphics[width=0.73\textwidth]{img/05_aodv_flow_05.png}
+ \caption{Fluxograma de chegada de um RREQ vindo da camada MAC.}
+ \label{fig:16:aodvFlux5}
+\end{figure}
View
Binary file not shown.
View
@@ -49,9 +49,9 @@
\input{2_texto_principal/5_arquitecture}
-\input{2_texto_principal/6_results}
+%\input{2_texto_principal/6_results}
-\input{2_texto_principal/7_conclusions}
+%\input{2_texto_principal/7_conclusions}
\input{3_referencias-anexos/1_refs}
@@ -1 +0,0 @@
-mnobrega ,mnobrega,pclinux,28.10.2012 23:17,file:///home/mnobrega/.config/libreoffice/3;
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@@ -1 +0,0 @@
-mnobrega ,mnobrega,pclinux,29.10.2012 08:30,file:///home/mnobrega/.config/libreoffice/3;
View
@@ -1 +0,0 @@
-mnobrega ,mnobrega,pclinux,28.10.2012 19:51,file:///home/mnobrega/.config/libreoffice/3;
@@ -1 +0,0 @@
-mnobrega ,mnobrega,pclinux,29.10.2012 05:02,file:///home/mnobrega/.config/libreoffice/3;
View
Binary file not shown.
View
Binary file not shown.
View
Binary file not shown.
View
Binary file not shown.
View
Binary file not shown.

0 comments on commit a57dafe

Please sign in to comment.