Joystick 1: Juego de barcos
Este es un programa que desarrollé hace
años con un QL
Sinclair y Basic. Ahora con el NXT no he podido resistir la
tentación de repetirlo, ahora con RobotC.
Esta es la primera versión en la que el
NXT pone los barcos y se trata de hundirlos uno a uno. La segunda
tendrá como objeto competir contra el NXT. La primera parte
del proyecto ha sido desarrollar el programa y jugar seleccionando
las casillas por medio de los botones del NXT. La segund,a hacerlo
por medio de un Joystick consturido con el NXT.
El Joystick
El joystick utiliza dos motores para detectar y
medir el giro aplicado a la palanca. Tiene un botón de selección
y un sistema de vibración que da un feedback en función
de los resultados de la selección. Para el sistema de vibración
he utilizado un motor
Technic antiguo con un par de piezas conectadas de modo excéntrico.
La palanca del Joystick tiene un sistema por software
que hace que siempre tienda a buscar la posición central.
Para que la detección de la posición sea correcta,
el programa comienza con su calibración.
El mayor problema que he encontrado al montarlo
ha sido el de la rigidez. Los ejes tienen una resistencia a la torsión
muy limitada, así que es necesario dotar de enlaces múltiples
a las piezas que arrastran los motores.
Para dibujarlo he utilizado inicialmente LDD,
pero para poder incorporarle el sistema de vibración es necesario
utilizar piezas no disponibles en el LDD.

El programa
El programa lo he desarrollado con RobotC.
Comienza con la elección de modo aleatorio de las posiciones
en que estarán los barcos, uno de 4 casillas, dos de 3, tres
de 2 y cuatro de 1 que no tendrán ningún contacto
entre ellos. Registra las posiciones en una matriz, representa el
campo de juego en la pantalla y tras representar por medio de un
aspa la posición de inicio da comienzo al juego. Representa
de modo diferenciado las posiciones agua, tocado y hundido, y asocia
diferentes sonidos y una vibración al resultado de las jugadas.
RobotC es un
software comercial, el precio de una licencia sin CD es de unos
20 euros. Es posible obtener en su web una copia para 30 días.
Para centros educativos en España la distribuye Prodel.
Archivos
Fichero en formato LEGO Digital Designer: versión
1 del Joystick
Programa del juego en RobotC: versión1
|