• No results found

3.2 System design and implementation

3.2.2 Interactivity

Como se ha explicado en la introducción, principalmente dos datos de salida, escalares y vectoriales. Éstos se escriben en ficheros con extensión *.sca, y *.vec respectivamente, y cuyo nombre se define en el fichero de inicialización. Para analizar los resultados que ha dado la simulación, el entorno dispone de dos herramientas denominadas Omnet++ Scalars y Omnet++ Plove (accesibles desde el escritorio o desde el menú inicio - Figura 22), aunque en el manual se pueden encontrar lo nombres de otros programas con los que estos ficheros de estadísticas son compatibles, como GNU Plot.

98

Figura 22 Iconos para el acceso a los programas de visualización de gráficas y para el editor de Lenguaje NED.

Iconos que se graban en el escritorio al instalar OMNET++ en el ordenador y que permiten un acceso rápido y cómodo desde el escritorio a los programas de visualización de gráficas.

El programa Scalars presenta en pantalla el nombre del parámetro, el módulo al que pertenece este valor, y el que ha sido asignado. Por ejemplo, si el dato escrito es el tiempo de llamada en la MS número 5, la línea presente en la ventana del programa será la ruta del fichero de datos, el número de ejecución, el módulo, en este caso gsmsim.ms[5], el nombre del parámetro Tiempo de Llamada, y por último el valor que tiene. En la Figura se puede ver la ventana del programa.

Para visualizar sólo unos valores en concreto se ofrecen las herramientas de filtrado de selección. Las cajas que aparecen en la parte superior de la ventana, son menús desplegables que permiten la selección de un módulo, una ejecución o un valor en concreto. En la

Figura 24 se está realizando el filtrado del parámetro porcentaje de llamadas bloqueadas frente a totales.

99

Figura 23 Visualización de resultados de simulación Omnet++ Scalars

En este programa se pueden visualizar parámetros escalares escritos durante la simulación para su visualización. Para ello se añade el nombre del módulo y el del elemento, además de disponer de filtros de selección.

Figura

100

En las cajas se pueden elegir los parámetros que se quieren representar y elegirlos en función del número de ejecución, nombre de módulo, y/o nombre del parámetro. En la figura se ha elegido el parámetro llamadas bloqueadas.

El último paso es el de crear la gráfica para la que se debe pulsar el icono que representa unas barras verticales en la parte superior de la ventana de la aplicación (Figura 25). Como se puede ver tanto para valores escalares como para valores vectoriales se añade un filtro de selección para que sea más fácil la visualización de valores concretos definidos por el usuario.

Figura 25 Iconos en Scalars.

El icono que representa las barras verticales permite la visualización de las gráficas. Abre una nueva ventana donde se eligen los ejes, y da lugar a una ventana que representa la gráfica.

La gráfica generada tiene la apariencia de la Figura 26 en la que se representa un ejemplo de una gráfica generada para la visualización del tiempo de llamada empleado por ocho móviles elegidos. La herramienta incluye un zoom que permite la visualización más exacta de los valores representados (Figura 27).

101

Figura 26 Tiempo de llamada.

En la figura se representa el tiempo de llamada de de ocho estaciones móviles. En el eje horizontal se representan los módulo, y en el vertical el tiempo de llamada.

102

Figura 27 Aplicación de la herramienta de zoom a la gráfica.

Aplicación de la herramienta de zoom a la gráfica anterior de tiempo de llamada de los móviles. Para ello se debe seleccionar el área que se desee visualizar pichando en una esquina, tal y como si se seleccionasen varios archivos en una carpeta en los sistemas operativos Microsoft Windows.

La otra herramienta de visualización es la herramienta OMNET++ Plove. Ésta se diferencia de la anterior en que está destinada a la representación de valores vectoriales. El funcionamiento es similar al del programa Scalars y tiene la interfaz gráfica representada en la Figura 28. Ofrece un mayor número de herramientas que el programa para escalares aunque la función de representación gráfica es exactamente igual que para Scalars. Para crear una gráfica se debe pulsar en el icono de la parte superior que representa dos líneas con varios puntos rojos, y que se puede ver en la parte derecha de la Figura 29.

103

Figura 28 Programa Plove para visualizar resultados vectoriales.

Permite la representación gráfica de datos vectoriales. Tiene una interfaz similar a Scalars.

Figura 29 Herramientas del programa Plove.

Este programa aporta más herramientas que el programa para los escalares. La función de representación de gráficas es similar al programa para escalares, y su uso también. El icono es el que representa dos líneas con varios puntos rojos en la parte derecha de la ventana.

El procedimiento para sacar gráficas es muy sencillo e intuitivo, además de no complicar excesivamente al usuario en la tarea de sacar gráficas. La Figura 30 corresponde a una gráfica obtenida con este programa. Representa las potencias recibidas por una estación móvil en un

104

tiempo de simulación en segundos. El eje vertical representa la potencia en dBm detectada. Como se puede ver, la estación se encuentra a lo largo de su movimiento en diferentes zonas de cobertura, por lo que tendrá que realizar traspasos entre las diferentes antenas en el caso de que desee mantener una llamada telefónica de forma correcta.

Figura 30 Gráfica de potencias de la estación móvil 0.

La gráfica representa las pontencias recibidas de cuatro estaciones base (antenas en el tiempo) de simulación representado en el eje X.

105

7 OPENGL

OPENGL es un software que actúa de interfaz para el hardware gráfico. El interfaz consiste en diferentes órdenes que se usan para especificar los objetos y operaciones necesitadas para producir aplicaciones interactivas en tres dimensiones. OPENGL se puede usar en multitud de plataformas hardware. Esta librería no aporta funciones de alto nivel que permitan modelar complejos gráficos en 3D (tres dimensiones), sin embargo se puedne modelar partiendo de pequeñas primitivas geométricas, puntos, líneas y polígonos. LA librería que aporta estos comandos es GLU siglas de OPENGL Utility Library. Las posibilidades de estas librerías son muy amplias. Para resumir su gran capacidad y potencia a la hora de crear gráficos, cabe destacar que han sido empleadas en la realización de animaciones e incluso se han introducido en juegos de ordenador. Quake es el nombre de uno de los juegos que emplearon OPENGL en su desarrollo. Todo su interfaz gráfico está realizado con esta librería y fue considerado en su época uno de los mejores juegos en cuanto a interfaz gráfica.

En este proyecto las librerías adoptan un papel de apoyo. No forman parte de la aplicación principal sino que se han introducido en otra aplicación para mejorar la simulación de la red

106

GSM. Se pasará a hablar detenidamente en qué se han empleado en capítulos posteriores. En éste se realizará tan sólo una descripción de las características esenciales de OPENGL y las funciones para generar gráficos.

Ya que OPENGL es totalmente independiente del hardware y del sistema operativo empleado, se necesitan otras librerías capaces de leer eventos de teclado, ratón o de gestionar ventanas. Como se ha comentado GLU es esta librería, sin embargo, es un estándar del que han surgido diferentes implementaciones. El usado en este código es GLUT u OPENGL Utility Toolkit. Principalmente la funcionalidad se puede resumir en dos conceptos:

o Gestión de Ventanas o Gestión de visualización