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.