Diseño


Se diseñaron dos programas orientados a la metodología en java, uno para el celular, programado en J2ME y otro para el Lego NXT, programado en LEJOS

Diseño Celular


Diagramas UML

A continuacion se presenta el diagrama UML de la aplicación cargada en el celular

Targetas CRC

A continuación se presentan las tablas CRC (Class-Responsibility-Collaboration) de algunas clases.

NxtBluetooth
Clase que permite discubrir Dispositivos y servivios deacuerdo a la dirección Mac (url) que posen.
deviceDiscovered
find
getURL
inquiryCompleted
servicesDiscovered

NxtBrick
Realiza las conecciones y desconecciones al lego, y envía los datos al lego nxt
avail
connect
disconnect
send

NxtMessage
Crea el mensaje y se asegura de cumplir con el protocolo SPP
getMailbox
getMessage
getResponseNeeded
getType

Casos de Uso

Se presentan a continuación algunos casos de uso de la aplicación en celular:

Caso de uso 1 :

Titulo : Iniciar conexión con NXT.

Actor : Usuario.

Descripción : El usuario en el menú principal escoge iniciar conexión con NXT.

Propósito : El usuario desea iniciar conexiones mediante comunicación bluetoooth con NXT.

Precondiciones : Tener activo en el celular el dispositivo bluetooth. NXT tiene activo su dispositivo bluetooth.

Postcondiciones : Inicio de búsqueda de dispositivos bluetooth existentes y activos alrededor del usuario. Entrega de información por pantalla. Despliegue de lista con nombres de dispositivos.

Curso normal de eventos:

  • 1. El usuario inicia la apliación.
  • 2. La aplicación muestra en la ventana de inicio junto al logo la información de estado iniciado e informa al usuario como comenzar la comunicación.

Caso de uso 2 :

Titulo : Elección de plataforma NXT para comunicación entre menu-lista de dispositivos.

Actor : Usuario.

Descripción : El usuario elige plataforma NXT entre en el menú-lista desplegada por pantalla.

Propósito : El usuario desea iniciar conexiones mediante comunicación bluetoooth con NXT.

Precondiciones : Usuario escoge iniciar comunicaciones. NXT aun tiene activo su dispositivo bluetooth.

Postcondiciones : Si conexión es exitosa. Aplicación pide a usuario confirmar establecer comunicación con NXT.

Curso normal de eventos:

  • 1. En el menú-lista desplegado por pantalla el usuario se desplaza mediante los de Eventos.
  • 2. botones hacia arriba o hacia abajo del celular y se posiciona en el dispositivo NXT elegido.
  • 3. Usuario presiona sobre el nombre del NXT.
  • 4. Comienza la conexión con NXT.

Diseño Lego NXT


Diagramas UML

A continuacion se presenta el diagrama UML de la aplicación cargada en el lego NXT


Targetas CRC

A continuación se presentan las tablas CRC (Class-Responsibility-Collaboration) de las clases.

BTComunicacion
Clase en la cual se establece la comunicación con el celular. También se llaman a los metodos para controlar los motores
BTComunicacion
Conectar

Motores
Clase en la cual el lego se comunica con su hadware, en este caso con los motores.
Motores
avanzar
retroceder
izquierda
derecha
parar

Casos de Uso

Se presentan algunos casos de uso ilustrativos del manejo de la aplicación.

Caso de uso 1 :

Titulo : Compilar y cargar la aplicacion al lego.

Actor : Usuario.

Descripción : El usuario compilará y cargará la aplicacion al lego NXT.

Propósito : Cargar el programa al equipo Lego.

Precondiciones : Disponer del cable USB o de un apdaptador bluetooth para enviar el programa al Lego y del Código fuente, sistema operativo linux y con los respectivos programas instaldos (howto instalacion firmware y compilador Lejos en linux)

Postcondiciones : Se cargará el programa al lego.

Curso normal de eventos:

  • 1. El usuario en una consola compila con "nxjc NOMBRE_DEL_ARCHIVO.java".
  • 2. El usuario en una consola carga la aplicacion al Lejo con "nxj NOMBRE_DEL_ARCHIVO".

Caso de uso 2 :

Titulo : Iniciar Programa "BlueControl NXT".

Actor : Usuario.

Descripción : El usuario ejecuta el programa para entrar en estado de espera de conección.

Propósito : Lograr la coneccion con la aplicacion en el Celular y recivir instrucciones.

Precondiciones : Tener el dispositivo bluetooth activado y en estado visible.

Postcondiciones : Se conectrá y se inicirá el flujo de informacion.

Curso normal de eventos:

  • 1. El usuario selecciona el programa "BlueControlNXT".
  • 2. El usuario espera la coneccion".
  • 3. El ususraio Mediante el Celular controla al lego.