Con Tiki
-
Upload
maria-jose-zuniga-z -
Category
Documents
-
view
218 -
download
6
description
Transcript of Con Tiki
-
UNIVERSIDAD DE CUENCA
CENTRO DE POSGRADOS
FACULTAD DE INGENIERA
MAESTRA EN GESTIN ESTRATGICA DE TECNOLOGAS DE LA
INFORMACIN
TRABAJO GRUPAL:
Mdulo
NUEVAS TENDENCIAS EN REDES DE COMUNICACIN Y DATOS.
Profesor:
Ing. Darwin Fabin Astudillo, PhD.
Tema:
CONTIKI
Alumnos:
Eduardo Ramn Bernal Alvear
Juan Diego Muos auta.
Ernesto Francisco Poma Salinas
Cuenca Marzo de 2015
-
SIMULADOR COOJA
El Contiki incluye un potente simulador de red llamado Cooja. Permite simular motas que
ejecutan aplicaciones Contiki y que se organizan en una red de sensores inalmbricos. Cooja
brinda la posibilidad de emular cada mota a nivel hardware para poder observar de manera ms
precisa su comportamiento a la vez que facilita la comunicacin con otros nodos que pertenecen
a la misma red.
Ejecucin de Cooja.
Una vez se ha instalado y se encuentra operativo Contiki, se necesitan un par de herramientas
adicionales para empezar a usar Cooja. La primera de ellas es tener Java instalado en el sistema
(versin 1.6 o superior). La otra, la utilidad ant, que es el equivalente al make en Java.
Llegados a este punto y teniendo todo lo necesario, es posible ejecutar el simulador. Dentro del
rbol de directorios de Contiki, se puede encontrar en
/contiki_version/tools/cooja(versin corresponde a la versin utilizada de Contiki).
Para su ejecucin es necesario escribir las siguientes rdenes en una shell:
cd /contiki_version/tools/cooja
ant run
La herramienta ant lo primero que hace es leer el archivo de configuracin build.xml, situado
en el directorio antes citado. Lleva a cabo una serie de acciones entre las que destacan compilar
todos los cdigos fuente, crear empaquetados .jar necesarios, etc. Como ltimo paso, carga una
serie de parmetros relativos a la visualizacin del simulador y lanza su interfaz grfica. El
resultado se puede apreciar en la figura
-
CREAR NUEVA SIMULACION
Para crear una nueva simulacin, en el men File se escoger New Simulation (o,
abreviadamente, CTRL+N). En ese momento aparece una ventana tal y como se muestra en la
figura
-
Vamos Realizar una simulacin en COOJA partiendo del ejemplo
examples/rime/exampleabc.c
Cdigo Fuente en lenguaje C con el proceso para el envo de la palabra Hello
-
SIMULATION CONTROL
Tiene una serie de controles con los que es posible iniciar la simulacin, detenerla o avanzar
en pequeos pasos de un milisegundo, mostrando adems el tiempo total que ha transcurrido.
Opcionalmente, se puede configurar el tiempo total que se desea que dure la simulacin o
incluir un retraso para hacer que los resultados que se obtengan se aproximen ms a la
realidad
Vamos a utilizar 5 motas
Al final de la compilacin, como puede verse en la figura, se proporcionan algunos datos de
uso de memoria, como por ejemplo el tamao del archivo resultante o de cada una de las
secciones que lo componen. Una vez compilado, se pulsar el botn Create y el simulador preguntar cuantos nodos de este tipo deben aadirse (a todos ellos se les cargar
el mismo programa compilado) y si se desea ubicarlos en una posicin determinada. Se
selecciona 5 nodos, posicionamiento arbitrario y se pulsa en Add motes:
Mote Output
Muestra determinados eventos relacionados con un nodo que suceden en el transcurso de una
simulacin. Estos eventos son descritos por mensajes texto a los que son enviados al puerto serie
(USART) de la mota. Los mensajes pueden ser originados por el propio cdigo que se est
ejecutando o por los diversos componentes del sistema operativo involucrados en dicha
simulacin.
-
Network:
Gracias a este plugin, es posible ver ciertas caractersticas del nodo o nodos simulados. Por
ejemplo, se puede mostrar el tipo de nodo, la posicin espacial que ocupa, el rango de alcance de
la radio y la zona de interferencias, as como el nmero de paquetes transmitidos y recibidos, el
estado de los LEDs de la mota (si los tiene, de manera totalmente visual), la direccin IP o Rime, etc.
-
Timeline
En este plugin se muestra una lnea de tiempo por cada nodo en la simulacin. En dicha
lnea de tiempo se representan eventos que se producen a lo largo de la simulacin que
pertenecen a alguno de los tipos siguientes:
Estado de la radio del transceptor. En blanco si est apagada y en gris si est encendida.
Eventos relacionados con la radio, fundamentalmente transmisiones y recepciones de
paquetes. Pueden darse tres posibilidades: una pequea marca en azul indica un paquete
transmitido, en verde uno recibido y en rojo una interferencia provocada porque ha
habido dos paquetes o ms, dirigidos al mismo nodo, que han coincidido en el tiempo o
que el nodo se encuentra fuera del rango de cobertura del otro extremo de la
comunicacin.
Estado de los LEDS (en caso de que la plataforma en cuestin disponga de ellos, que no
es el caso para AvrZigbit). Este plugin vigila escrupulosamente el estado de la emulacin
del transceptor radio y el estado de los LEDs de todas y cada una de las motas. Representa en pantalla los eventos que se han producido que pertenecen a elementos
seleccionados de entre los anteriores y lo va desplazando hacia la izquierda conforme el
tiempo de simulacin va transcurriendo para que se muestre una evolucin temporal a
medida que la simulacin va avanzando como se ve en la figura.
Conclusin
Se compila el programa y se crean 5 nodos, los cuales se deben situar cercanos entre s
para que estn dentro del radio de cobertura de los dems y se puedan comunicar todos
con todos (esto se puede hacer seleccionando un nodo concreto dentro de Network, y una
vez mostrada su cobertura radio se podr arrastrar el nodo hasta la posicin apropiada si
est fuera de alcance). En este momento, es interesante comentar que existe un plugin
bastante til para las simulaciones donde se llevan a cabo transmisiones radio: Radio
Messages (en el men Tool). En l se puede ver los paquetes enviados/recibidos por un
nodo, el momento en el que se han producido y el contenido mismo del paquete, en
hexadecimal y en caracteres ASCII. Una vez concluida la configuracin de la simulacin,
se puede Presentar los resultados detallados anteriormente.