Está en la página 1de 11

INTERAGAMES: Control accesible de videojuegos para Xbox 360, PS3, Wii

y PC.

David Conde1, Raúl Suárez1, Gemma Hornero1, Marcos Quílez1, Sergio Domingo2, Maria
Rodríguez2, Borja Romero2, Oscar Casas1
1
Grupo de Instrumentación, sensores e interfaces. EETAC. UPC
2
B&J adaptaciones
david.conde@estudiant.upc.edu, borja.romero@bj-adaptaciones.com,
jaime.oscar.casas@upc.edu

Resumen Abstract
Este trabajo presenta una nueva plataforma de This paper presents a new interface platform
interacción de usuarios con discapacidad con los between users with disabilities and the major games of
juegos de las principales videoconsolas comerciales. the main commercial videogames platforms. The
El sistema diseñado habilita el acceso a las diferentes designed system enables the access to the different
plataformas existentes en el mercado (Xbox 360, PS3, platforms on the market (Xbox 360, PS3, Wii and PC)
Wii y PC) y a cualquier juego, a personas que antes no and to any game, to the people who previously couldn’t
podían plantearse jugar, mejorando sus perspectivas play, improving their entertainment prospects. The
de ocio. El usuario no tiene que aprender a utilizar un user doesn’t have to learn how to use a new specific
nuevo dispositivo específico, sino que podrá seguir device, because they can still use the adapted mice or
utilizando los ratones o joysticks adaptados que joysticks they usually use to access the computer or to
normalmente usa para acceder al ordenador o para control the environment. In addition, the system
controlar el entorno. Además, el sistema admite el uso supports the added use of controllers which can be
añadido de mandos que puedan accionarse con handled with different parts of the body as well as
diferentes partes del cuerpo, así como la selección de actions selected by pressing or by sweeping. The
acciones mediante pulsación o barrido. La adaptación adaptation of the controllers and joysticks are
de los mandos y joysticks se ve complementada con el complemented with the design of customizable
diseño de software personalizable para cada usuario y software for each user and game. This allows the
juego. Éste permite la implementación de macros para implementation of macros to assign a combination or a
asignar una serie de combinaciones o secuencias de fast sequence of buttons by pressing only to one button,
teclas a los botones de los controladores de entrada, providing the access to the more complicated
facilitando el acceso a las acciones más complicadas videogames actions.
de los videojuegos.
The result is a device for people with disabilities to
El resultado es un dispositivo para que las enjoy alone or with friends of the current videogames
personas con discapacidad puedan disfrutar solas o in the market.
con sus amigos de los videojuegos más actuales del
mercado.
El usuario no tendrá que aprender a utilizar un
1. Introducción nuevo dispositivo específico para jugar, sino que podrá
seguir utilizando los ratones adaptados que
Los videojuegos se han convertido en una parte normalmente utiliza para acceder al ordenador, o bien
muy importante de la cultura y de la sociedad actual, diferentes mandos que pueda accionar con diferentes
siendo una de las formas de ocio preferidas. partes del cuerpo y seleccionar acciones mediante
Tradicionalmente han sido vistos como un tipo de barrido, para disfrutar solo o con sus compañeros de
entretenimiento exclusivo para personas jóvenes, pero juego de gran parte de los videojuegos más actuales del
esta concepción ha ido cambiando a lo largo del mercado.
tiempo [1].
El sistema propuesto no está planteado para
Según diversos estudios recopilados por Naciones habilitar el acceso a videojuegos basados en sensores
Unidas en 2004, entre un 10 % y un 20 % de la de movimiento de las consolas Wii, Xbox 360 y PS3 y
población mundial son personas con algún tipo de que no necesitan que el usuario utilice los mandos de
discapacidad [2]. De éstas, un número importante control tradicionales. El sistema que planteamos en sí
agrupa a personas con problemas cognitivos o de mismo es una alternativa a estos mandos, y no
motricidad que impiden su acceso directo a la mayoría contempla el desarrollo de programas específicos en el
de los videojuegos comerciales. campo de la visión artificial y el tratamiento de
imágenes en tiempo real, como sería el caso de un
Jugar a videojuegos puede ser una actividad de alto proyecto que habilitase el acceso a videojuegos
valor para las personas con discapacidad y personas basados en sensores de movimiento. Gran parte del
mayores. Más allá del puro entretenimiento, puede público objetivo de nuestro proyecto (sobre todo en
mejorar el rendimiento cognitivo, puede ayudar a la casos de parálisis cerebral) realiza movimientos
rehabilitación de pacientes que han sufrido un ictus, la “espásticos” (movimientos bruscos incontrolados) y a
rehabilitación de determinadas funciones en el caso de cambio posee una relativamente buena motricidad fina
pacientes con daño cerebral adquirido [3][4][5], etc. siendo capaz de utilizar determinados tipos de ratones
Por ejemplo, en Canadá, la clínica de Rehabilitación y conmutadores sin problemas.
Glenrose [6] está usando la consola Wii (con el juego
Wii Sports) como ayuda en terapias de rehabilitación Por otro lado, a pesar del lanzamiento de
de hemiplejías; en el año 2003, IBM patentó un videojuegos basados en sensores de movimiento,
sistema de permitía el entrenamiento y rehabilitación todavía existe una larga lista de videojuegos de las
física utilizando los videojuegos existentes [7], y en el plataformas Wii, Xbox 360 y PS3 disponibles en
año 2009 se patentó una aplicación que utilizaba los Europa que utilizan los mandos tradicionales de
videojuegos para realizar terapia física y ocupacional, a control que proporcionan estas consolas.
la vez que medía los movimientos motores y se
utilizaba como elemento de rehabilitación cognitiva
[8]. 2. Estado del arte
El objetivo principal de este proyecto es desarrollar Hasta ahora, la superación del acceso a videojuegos
nuevos modelos de interacción con videojuegos para personas con discapacidad ha contemplado dos
comerciales de las videoconsolas Xbox360, PS3, Wii y posibles soluciones:
juegos para PC a través del desarrollo de un sistema de
acceso universal basado en hardware y personalizable 1. Desarrollo de videojuegos específicos para la
según las necesidades del usuario, para mejorar las rehabilitación física y/o cognitiva de personas con
perspectivas de ocio de personas con diversidad discapacidad (modificación software). Aunque es
funcional. una solución muy atractiva y ha presentado
resultados muy positivos, aumenta el coste de los
La solución planteada habilitará el acceso a los desarrollos y limita el acceso de las personas con
videojuegos comerciales a personas que antes no discapacidad a toda la oferta de juegos.
podían plantearse jugar, con una solución asequible
económicamente, no invasiva, fiable y escalable. 2. Desarrollo de periféricos específicos adaptados que
permiten el acceso a determinadas consolas y
videojuegos pero con severas limitaciones con numerosas acciones en paralelo, que requieren
(modificación hardware). la mayoría de juegos. Permiten jugar pero las
posibilidades de obtener buena puntuación son
En paralelo a estos desarrollos en los últimos años prácticamente nulas.
han aparecido adaptaciones mecánicas de mandos de
videojuegos basadas en el movimiento natural. Es el Estos dispositivos presentan severas limitaciones;
caso, entre otras, de Wii o Kinect. Estas nuevas en general, la mayoría son modificaciones de los
interfaces han permitido el desarrollo, por ejemplo, de gamepads estándar con los botones más grandes o bien
soluciones en rehabilitación o comunicación pero accesibles mediante conmutadores con conectores tipo
quedan muy limitadas en el caso de personas con Jack, y válidos únicamente para determinadas
discapacidad severa, debido a la propia naturaleza del consolas.
control de estos juegos.
Por todo ello, un acceso eficiente a los videojuegos
Actualmente existen dos alternativas comerciales para personas con discapacidad tiene que resolver los
en el desarrollo de periféricos específicos adaptados: siguientes problemas:

a) El acceso al ordenador como forma de acceso al


videojuego. En este caso, se pueden encontrar
dispositivos de acceso como joysticks, ratones de
bola, sistemas de seguimiento de la cabeza o la
mirada… (figura 1). Todos estos sistemas ofrecen
un método eficiente de acceso a las funciones del
ratón de un ordenador. Sin embargo,
mayoritariamente se limita su uso a los juegos “no
dependientes del tiempo”, por ejemplo juegos de
ajedrez, estrategia por turnos, etc. Quedando
excluidos de esta lista los juegos más complejos
que necesitan el uso rápido de combinaciones de
teclas.
Figura 2. Solución basada en mandos
alternativos

a) Reducción de la cantidad de botones que los


gamepads tradicionales ofrecen. Presentar 16 o más
opciones de movimiento a una persona con
discapacidad severa puede resultar demasiado
complejo. De este modo, se debe utilizar un
Figura 1. Solución de acceso al número menor de botones que permita redefinir las
ordenador funciones asignadas a cada botón para cada juego y
usuario.
b) Mandos específicos para personas con b) Automatización de las secuencias o combinaciones
discapacidad. Es posible encontrar en el mercado rápidas de botones. Algunas acciones de los
mandos diseñados para ser utilizados con una sola videojuegos requieren la ejecución de una
mano, con la boca, con los botones más grandes… secuencia rápida de botones que con los
(figura 2) Estos dispositivos tienen severas dispositivos existentes muchas personas no pueden
limitaciones; la mayoría son modificaciones de los realizar.
mandos estándares o gamepads, con botones de c) Control de los gamepads con cualquier parte del
mayor tamaño o entradas de conmutador, y son cuerpo. Para poder maximizar el número de
válidos únicamente para determinadas consolas y/o acciones que una persona con discapacidad pueda
videojuegos. Además, la no adaptación de los ser capaz de llevar a cabo, es necesario que los
juegos conlleva que, aunque estas plataformas controladores tengan un diseño modular que se
permiten el acceso a los videojuegos no solventan puedan adaptar a cualquier parte del cuerpo, donde
el problema de la limitación del control avanzado, al usuario le resulte más cómodo.
Una solución eficaz, requerirá pues de un diseño
hardware, para adaptar las interfaces hombre-máquina 3.1. Diseño hardware
habitualmente utilizadas por las personas con
discapacidad y el diseño de un software que permita 3.1.1. Bloque 1 - Entradas. Corresponde al sistema
reducir tanto el número de botones de control, como la HUB USB. En la solución propuesta se necesitan un
necesidad de su uso en paralelo. mínimo de ocho entradas de USB para los diferentes
elementos, distribuidos de la siguiente manera: 4 x
USB – Joysticks HID estándar de entrada (incluyendo
3. Arquitectura del sistema propuesto teclado y ratón), 1 x USB – Joystick Xbox 360
utilizado para la autenticación del sistema en las
La arquitectura del sistema se presenta en la figura videoconsolas de Xbox 360, 1 x USB – Memoria USB
3 y está divida en tres bloques: donde se almacenarán las macros y 2 x USB – Puertos
USB internos necesarios para el bloque 3.
- Entradas del sistema (Bloque 1): Se trata de
un sistema HUB USB que permite la entrada y Debido a que la arquitectura interna del procesador
gestión de hasta cuatro dispositivos utilizado, se presenta el control de únicamente dos
simultáneamente. De esta manera un usuario USB, se necesita incorporar a la entrada un HUB de
podrá conectar hasta 4 controladores diferentes siete entradas como mínimo. En nuestro caso, se ha
simultáneamente que podrán ser accionados optado por utilizar la solución Belkin “7-port Powered
con distintas partes del cuerpo, aumentando así Mobile HUB”, con 7 puertos USB disponibles que
el número de acciones que podrán realizar. Por presenta una alta velocidad de transferencia de datos
ejemplo, un joystick podrá ser controlado con (hasta 480 Mbps) y es multiplataforma
una sola mano, otro joystick en forma de pedal, (MAC/PC/Linux).
etc.
- Procesado de las acciones (Bloque 2): Este
bloque corresponde a la inteligencia del
sistema y se encarga de leer las macros
programadas y transformar las entradas de los
dispositivos HID realizadas por los usuarios
con sus controladores adaptados en acciones
válidas del videojuego. De esta manera, un
usuario podrá controlar las acciones requeridas
por los videojuegos, utilizando sus
controladores adaptados a sus necesidades.
- Salidas del sistema (Bloque 3): Corresponde a
los módulos de salida para cada una de las
diferentes videoconsolas disponibles en el
mercado (PS3, PC, Wii y Xbox 360). Tiene
que ser capaz de comunicarse con los sistemas
propietarios de cada videoconsola.

A continuación se presenta el detalle del diseño


hardware y software de cada uno de estos bloques.

Figura 3. Arquitectura del controlador


Como controladores de entrada el usuario podrá a los 4 botones de dirección. A continuación se puede
utilizar cualquier sistema de control con salida observar la arquitectura de la solución propuesta.
genérica HID. En este sentido y dentro del proyecto se
tiene previsto desarrollar dos dispositivos nuevos
joystick HID adaptados: el joystick por barrido y el
joystick a medida.

Joystick por barrido. Para las personas con


discapacidad severa es fundamental la utilización de
sistemas de selección indirectos como el barrido, que
reducen al mínimo la necesidad de precisión por parte
del usuario a expensas del tiempo. Este joystick ha de
ser un dispositivo de funcionamiento HID estándar en
el que la salida se escoge por barrido de manera que el
usuario pueda acceder a “n” (típicamente 6 u 8) Figura 5. Arquitectura del joystick a medida
funciones diferentes, que gracias al controlador se
convertirán en acciones de videojuegos combinando
una única acción física (pulsar el conmutador) con el 3.1.2. Bloque 2 - Procesado. En este bloque se
parámetro tiempo. Conectando el joystick al ordenador interpretan las acciones hechas por los diferentes
mediante un pequeño software, será posible configurar joysticks HID conectados en el bloque de entrada, se
los parámetros más importantes del barrido como: el procesan las macros y se ejecutan las acciones de
tiempo de secuencia, el modo, salida necesarias para el bloque tres, en el menor
antirebotes/antirepeticiones, etc. En la figura 4 se tiempo posible. En nuestro caso se ha optado por
detalla la arquitectura de la solución propuesta. Un utilizar la plataforma digital Raspberry Pi (figura 6
ejemplo de este tipo de controladores es el Track-IT [10]), basada en un SoC (System-on-a-Chip, circuito
[9], dispositivo creado por Pretorian Technologies Ltd integrado que incluye todos los componentes de un
(Reino Unido), que permite realizar el movimiento del ordenador o de cualquier otro sistema electrónico en un
cursor y los clics propios de un ratón. La selección se solo chip) Broadcom BCM2835, que contiene un
realiza por barrido utilizando un conmutador externo, procesador central (CPU) ARM1176JZF-S a 700 MHz.
sin embargo no permite acceder a videojuegos. Tiene unas dimensiones reducidas, similar a una tarjeta
de crédito, y consigue desarrollar las funciones de un
ordenador con sistema operativo GNU/Linux. De esta
manera, mediante la programación de macros, se podrá
procesar y convertir en tiempo real cualquier entrada
del sistema efectuada con un dispositivo HID en la
combinación de botones o palancas que requiera cada
videojuego.

Figura 4. Arquitectura del joystick por barrido

Joystick a medida. Facilitará el acceso a videojuegos a


personas que utilizan conmutadores y ratones para
acceder al ordenador y especialmente a personas con
parálisis cerebral, convirtiendo estos elementos en
joysticks de tipo HID, válidos como entradas del
sistema. De esta manera, se podrán conectar
conmutadores externos (de 1 a 8) para realizar
múltiples acciones. El caso más típico sería, por Figura 6. Arquitectura del joystick a medida
ejemplo, para un sistema de 8 conmutadores de tipo
botón grande, asignar los cuatro primeros a los cuatro
botones de acción de un joystick HID y los 4 siguientes
Source SDL (Simple DirectMedia Layer [12]) es
una biblioteca multimedia multiplataforma
3.1.3. Bloque 3 - Salidas. Una vez tenemos procesadas diseñada para proporcionar acceso a bajo nivel al
las acciones realizadas por los usuarios con sus audio, teclado, ratón, joystick, hardware 3D a
joysticks adaptados y convertidas en acciones válidas través de OpenGL y framebuffer de video 2D. De
para un videojuego, es necesario comunicarle dichas esta manera, se pueden detectar y procesar cada
acciones a las videoconsolas. Este bloque está formado unos de los eventos generados por los dispositivos
por dos circuitos integrados que se encargan de utilizados como entradas.
establecer la comunicación con los sistemas c) Carga de macros en memoria (almacenadas en un
propietarios de cada videoconsola. Para poder fichero de la memoria USB). Cada macro asociada
establecer dicha conexión, se necesita que el sistema a un juego se almacenará en una memoria USB.
sea capaz de comportarse como un gamepad USB- Cuando queramos jugar a un juego determinado,
slave (PC, PS3 y Xbox 360) e I2C-slave (Wii) y bastará con introducir la memoria USB
entienda los protocolos propietarios de cada correspondiente y el sistema cargará las macros
plataforma. Debido a la arquitectura interna de la almacenadas en su interior.
Raspberry Pi (USB-host e I2C-host), se necesita un d) Conversión de las acciones de los joysticks HID en
dispositivo adicional capaz de generar dichas salidas. acciones de videojuego. Cada evento realizado por
En la solución propuesta se ha decidido utilizar el uno de los dispositivos de entrada se tiene que
microcontrolador de bajo coste Atmega32u4 (Atmel) y convertir en acciones de videojuego válidas
el conversor USB-serie FT232RL (FTDI) para establecidas en las macros. A modo de ejemplo,
implementar esta funcionalidad. podemos configurar una macro que simule la
pulsación del gatillo R1 de la PlayStation 3 (botón
Complementando estos diseños y con el fin de utilizado comúnmente para disparar en los
informar al usuario en todo momento de la videojuegos de acción) cuando se detecte la
configuración del sistema y posibles incidencias, se ha pulsación sobre el botón derecho del mouse
diseñado una pequeña interfaz de usuario formada por adaptado conectado.
seis leds, y tres botones pulsadores que podrían ser
controlados externamente por pulsadores En el siguiente diagrama (figura 7) se muestran de
específicamente diseñados para personas que presenten forma general las diferentes funciones que realiza el
problemas de movilidad severos. software diseñado en el bloque 2.

3.2. Diseño software

3.2.1. Bloque 2 - Procesado. Como se ha mencionado


anteriormente, es fundamental para el sistema
interpretar las acciones hechas por los diferentes
joysticks HID conectados en el bloque uno (entradas),
procesar las macros y ejecutar las acciones de salida
necesarias para el bloque tres (salidas), en el menor
tiempo posible. Para ello, se ha desarrollado un
software que se ejecuta directamente sobre Raspbian
(sistema operativo de Raspberry Pi basado en Debian
[11]) y que realiza las siguientes acciones:
a) Gestión de la interfaz de usuario. Detecta las
pulsaciones sobre los botones de la interfaz de
usuario de forma periódica por polling (sondeo)
conectados en los pines GPIO de la Raspberry Pi y
ejecuta las acciones correspondientes (actualiza la
consola seleccionada como salida y el estado de los
LEDs).
b) Lectura de las acciones realizadas por los joysticks
HID conectados en el bloque 1. La librería Open
A grandes rasgos, el sistema al arrancar inicializa la
interfaz de usuario y el hardware interno. Acto seguido
carga las macros desde una memoria flash USB e
inicializa todos los controladores de videojuegos
conectados en las entradas USB (hasta un máximo de
4). A continuación, se establece la comunicación con la
videoconsola por defecto (la que se utilizó por última
vez). Si el proceso ha resultado satisfactorio, se
procesan periódicamente (cada 16 ms) todos los
eventos realizados por los controladores de entrada y
se convierten en acciones válidas del videojuego. Esta
secuencia no se detiene hasta que no se pulse sobre el
botón de reload, se cambie la consola seleccionada o
se apague el sistema.

3.2.2. Bloque 3 - Salidas. Para que las acciones


procesadas por el bloque 2 puedan ser atendidas por las
videoconsolas, se necesita convertirlas al lenguaje
propietario de cada sistema (Wii, PC, PS3 y Xbox
360). Este bloque se encarga, por tanto, de:
a) Inicializar y mantener la conexión entre el
controlador de videojuegos y las videoconsolas.
b) Convertir las acciones del bloque 2 en paquetes
válidos de cada videoconsola.

3.3. Macros

Una de las partes fundamentales del diseño del


controlador de videojuegos son las macros. Éstas
permiten asignar una serie de combinaciones o
secuencias de teclas a los botones de los joysticks HID
de entrada, facilitando el acceso a las acciones más
complicadas de los videojuegos.

El uso de las macros permite además mapear las


funciones de los joysticks de entrada en función del
juego. Por ejemplo, si utilizamos un joystick con una
palanca y dos botones en un videojuego de carreas de
Figura 7. Diagrama de funciones bloque 2 la plataforma PS3 la configuración típica sería, por
ejemplo, controlar la dirección del vehículo (mapear la
palanca del joystick adaptado a la palanca analógica
izquierda del mando de PS3), acelerar (mapear el
botón 1 del joystick adaptado al botón R2 del mando
de PS3) y frenar (mapear el botón 2 del joystick
adaptado al botón L2 del mando de PS3). Sin embargo,
en un videojuego de futbol de la plataforma PS3 la
configuración típica sería, por ejemplo, controlar la
dirección del personaje (mapear la palanca del joystick
adaptado a la palanca analógica izquierda del mando
de PS3), pasar el balón (mapear el botón 1 del joystick
adaptado al botón X del mando de PS3) y chutar a
portería (mapear el botón 2 del joystick adaptado al 3. Axes macros. Combinación o secuencia de
botón O del mando de PS3). acciones que se llevarán a cabo cuando se mueva
un axis o palanca analógica de dirección en alguna
En general, los joysticks HID de entrada pueden ser dirección válida.
muy diversos y estar formados por diferentes 4. Keyboard macros. Combinación o secuencia de
elementos. En este diseño los elementos de un joystick acciones que se llevarán a cabo cuando se pulse
HID definidos que pueden generar eventos son (figura sobre una tecla válida de teclado.
7): 5. Mouse macros. Combinación o secuencia de
a) Buttons. Botones de acción. Indican si un cierto acciones que se llevarán a cabo cuando se pulse
botón se encuentra pulsado o no. sobre un botón válido del mouse.
b) Hats. Palancas de dirección digital. Indican la
posición de la palanca en valores absolutos Todas estas macros pueden ser configuradas de
mediante nueve posibles estados: arriba, arriba- forma directa o biestable. Este último tipo de macros
derecha, derecha, derecha-abajo, abajo, abajo- se ejecutan al pulsar sobre el botón correspondiente y
izquierda, izquierda, izquierda-arriba y centrado. se desactivan al volver a pulsar de nuevo sobre el
c) Axes. Palancas de dirección analógica. Cada mismo botón. Son muy útiles para personas que tienen
palanca está formada por dos ejes: movimiento dificultades a la hora de realizar acciones prolongadas
horizontal y movimiento vertical. La posición se en el tiempo.
indica con valores relativos que pueden oscilar
entre -32768 (izquierda o arriba), 0 (centrado) y Cada macro, indistintamente desde que elemento se
+32768 (derecha o abajo). genere (buttons, hats o axes), permite acceder a
cualquier acción del gamepad comercial. De esta
manera, desde cualquier elemento se puede presionar
BUTTONS uno o varios botones del mando de forma directa o
HATS temporizada, simultáneamente o en secuencia y
realizar cualquier movimiento de hats o axes. La
temporización de la macros presenta una resolución de
16 ms y son suficientemente genéricas en su definición
para adaptarse a las habilidades motrices y cognitivas
de cada usuario.
AXES
A modo de ejemplo, se puede configurar una macro
(macro biestable) que se encargue de controlar la
Figura 7. Joytick HID de entrada aceleración del coche; al iniciar la carrera el usuario
acciona la macro biestable y el coche comienza a
acelerar hasta que se desactive la macro. De esta
Los gamepads de salida que se han simulado (PC, manera el usuario solo tiene que centrarse en girar el
PS3, Xbox 360 y Wii) están formados por: 10-12 coche en las curvas durante la carrera.
botones de acción incluyendo 2 triggers (botones
progresivos que indican el nivel de presión ejercido Otro ejemplo es el uso de la palanca del joystick
sobre el botón), 1 hat o palanca digital y 2 axes o adaptado (axes macros) no solo para girar sino también
palancas analógicas. Sobre ellos se han implementado para controlar la aceleración del coche; podemos
diferentes tipos de macros, siendo las más importantes configurar una macro que al mover el joystick hacia
las siguientes: adelante acelere el coche y al moverlo hacia detrás
accione la marcha atrás. De esta manera con una sola
palanca (por ejemplo un joystick de mentón) podemos
1. Button macros. Combinación o secuencia de controlar el acelerador/freno y dirección de un coche
acciones que se llevarán a cabo cuando se pulse durante una carrera.
sobre un botón del joystick.
2. Hats macros. Combinación o secuencia de Así mismo, también sería posible configurar una
acciones que se llevarán a cabo cuando se mueva macro para ejecutar una secuencia rápida de botones
un hat o palanca digital de dirección en alguna requerida en algún videojuego de acción con solo un
dirección válida. botón del joystick adaptado; al pulsar sobre el botón la
macro simularía la secuencia rápida de los botones X,
O y Δ (plataforma PS3) sucesivamente para realizar un
ataque.

4. Resultados y validación del sistema


Para comprobar la funcionalidad del sistema, se
han realizado, por un lado, medidas sobre el hardware
y software diseñados y por otro, pruebas de validación,
a nivel de laboratorio y de usuarios potenciales, sobre
la usabilidad del sistema y de las macros con diferentes
plataformas y videojuegos comerciales de gran
aceptación. No obstante en los próximos meses se van Figura 8. Controles Mario Kart Wii
a realizar test sobre usuarios potenciales para poder
mejorar el feedback sobre el dispositivo.
La compatibilidad del prototipo diseñado con todas El mouse adaptado de entrada usado fue el BJOY
las plataformas y juegos utilizados ha sido total. A Stick-C (figura 9 [14]), de la empresa BJ-adaptaciones,
nivel de laboratorio se ha comprobado que el retardo el cual consta de una palanca con dos ejes (horizontal y
que añade el sistema por las acciones de sensado de las vertical) y cuatro botones (botón derecho de mouse,
entradas, procesado de macros y ajustes del protocolo botón izquierdo de mouse y dos botones especiales).
de salida es de tan sólo 16 ms, valor coincidente con la Se ha comprobado que la mejor adaptación requería
resolución de las macros, e inapreciable para el usuario que la configuración final del joystick de entrada fuera
en cualquier juego. El consumo total de la solución es la siguiente:
750 mA cuando está encendido (puede oscilar en
función de la cantidad de joysticks que estemos - Palanca azul utilizada para controlar la dirección
utilizando simultáneamente) y de 60 µA cuando se del vehículo.
encuentra en stand-by, por lo que aunque se podría - El botón rojo sea utilizado como macro biestable
plantear una solución autónoma, la duración de las para controlar la aceleración del vehículo.
baterías estaría limitada a sólo unas horas y requería - El botón amarillo sea utilizado para usar los objetos
una recarga diaria. que vamos consiguiendo en la carrera.

Una de las pruebas de laboratorio realizadas,


descrita a continuación a modo de ejemplo, ha sido la
adaptación del Mario Kart [13] (famoso videojuego de
carreras que permite utilizar objetos que se consiguen
en la carrera para acelerar el ritmo o ralentizar a los DIRECCION
rivales) de la Nintendo Wii. Se ha configurado una
macro para poder jugar utilizando únicamente una ACELERAR
palanca de control y dos botones. Los controles
utilizados en el juego Mario Kart con los mandos
comerciales son los presentados en la figura 8. USAR
OBJETOS

Figura 9. Resultado del mapeo de botones de


la macro de test

El fichero de macros resultante es muy sencillo y


quedaría de la siguiente manera (figura 10), mediante
el uso de expresiones propias en pseudocódigo.
Primero se configura el tipo de mouse que vamos a Figura 10. Resultado macro para Mario Kart
conectar (en nuestro caso es el denominado tipo digital (Nintendo Wii)
e indica que la palanca es de contacto, no progresiva: o
está activada hacia una dirección o no) y el mapeo de
la palanca (en nuestro caso indicamos que queremos De esta manera, solo con una palanca de
simular la palanca analógica izquierda del mando movimiento y dos botones tenemos acceso a un
clásico de Wii, acción de conducir en la figura 8) videojuego que inicialmente requería del uso de cuatro
mediante las dos primeras líneas “CONFIG MOUSE botones, una palanca analógica y una palanca digital.
01” y “CONFIG MOUSE DIGITAL”. Acto seguido se En la figura 11 se puede observar uno de los test de
configuran las acciones de las botones. En nuestro caso laboratorio realizados.
queremos: en primer lugar que el botón izquierdo del
mouse (botón rojo) sea biestable y controle la
aceleración del vehículo (simulando la pulsación del
botón A del mando clásico de Wii, acelerar figura 8)
mediante las siguiente cuatro líneas “BIESTABLE
MBUTTONDOWN 433” (433 corresponde al
identificador en pseudocódigo de la pulsación sobre el
botón izquierdo del mouse) y “BIESTABLE
MBUTTONUP 418” (418 corresponde al identificador
en pseudocódigo de la liberación sobre el botón
izquierdo del mouse), en segundo lugar que el botón
derecho del mouse (botón amarillo) sea directo y sirva
para usar los objetos (simulando la pulsación del botón
L del mando clásico de Wii, usar objetos figura 8)
mediante las últimas cuatro líneas “MACRO
MBUTTONDOWN 435” (435 corresponde al
identificador en pseudocódigo de la pulsación sobre el Figura 11. Test de laboratorio Mario Kart
botón derecho del mouse) y “MACRO MBUTTONUP (Nintendo Wii)
420” (420 corresponde al identificador en
pseudocódigo de la liberación sobre el botón derecho Además de las pruebas de laboratorio realizadas, se
del mouse). han realizado pruebas con diferentes joysticks
comerciales y con usuarios potenciales, como por
#+----------------------------+ ejemplo, J.R.S. de 44 años de edad y afectado de
#| AXES CORRECTION | esclerosis múltiple, con el videojuego Mario Kart de la
#+----------------------------+ Nintendo Wii. El mouse adaptado de entrada usado fue
CONFIG MOUSE 01 el BJOY Ring (figura 12 [15]) (de la empresa BJ-
CONFIG MTYPE DIGITAL adaptaciones), el cual consta de una palanca con dos
ejes (horizontal y vertical) que actualmente utiliza
#+---------------------------+ J.R.S. con destreza para mover su silla.
#| BUTTON MACROS |
#+---------------------------+
BISTABLE MBUTTONDOWN 433
ACTION JBUTTONDOWN 231

BISTABLE MBUTTONUP 418


ACTION JBUTTONUP 231

MACRO MBUTTONDOWN 435


ACTION JBUTTONDOWN 236

MACRO MBUTTONUP 420


ACTION JBUTTONUP 236
Figura 12. Detalle del controlador BJOY Ring
Motrizmente, la adaptación funcionó a la Adolescents With Hemiplegic Cerebral Palsy”.
perfección permitiendo, en este caso a J.R.S, mover Archives of Physical Medicine and Rehabilitation,
con su joystick de silla el vehículo del videojuego. Sin 91, Nº1, Elselvier, Germany, pp. 1-8.e1.
embargo, cognitivamente el juego, en algunas
ocasiones, iba demasiado rápido. La versatilidad del [4] Gil-Gómez, José-Antonio et al. (2011)
dispositivo hizo que se pudiera continuar jugando de “Effectiveness of a Wii balance board-based
una manera más satisfactoria para J.R.S utilizando el system (eBaViR) for balance rehabilitation: a pilot
“juego cooperativo”. Esta alternativa permite a dos randomized clinical trial in patients with acquired
personas distintas controlar el mismo personaje con brain injury” J. Neuroeng Rehabil. Vol.8 N. 30,
joysticks diferentes. De esta manera J.R.S seguía pp.1-9.
controlando la dirección del vehículo con su mouse de
silla adaptado y una tercera persona prestaba ayudas [5] Saposnik, Gustavo et al. (2010) “Effectiveness of
puntuales con un joystick genérico (conectado al Virtual Reality Using Wii Gaming Technology in
sistema) en la aceleración y dirección del vehículo. Stroke Rehabilitation. A Pilot Randomized
Clinical Trial and Proof of Principle” Stroke.
Vol.41. pp. 1477-1484.
5. Conclusiones
[6] http://www.albertahealthservices.ca/ (última visita
La solución diseñada ha creado una nueva forma de 10/07/2013).
interacción con los videojuegos comerciales de las
videoconsolas actuales del mercado, aumentando las [7] Basson Sara H et al. (2003) “Using existing
perspectivas de ocio de usuarios con discapacidad. videogames for physical training and
rehabilitation”. Patente US2003125099.
Para ello se ha desarrollado un sistema que permite
utilizar joysticks HID u otros sistemas de control con [8] Byerly; Jennifer (2009) “Device and method for
los que ya están familiarizados los usuarios en las employment of video games to provide physical
diferentes plataformas. A nivel de software se han and occupational therapy and measuring and
diseñado un conjunto de macros genéricas, que pueden monitoring motor movements and cognitive
ser adaptadas para cada usuario y juego, y que stimulation and rehabilitation”. Patente US
permiten al usuario realizar acciones complejas o 20090098519.
secuencias rápidas de botones que antes no podía
ejecutar. De esta forma, se tiene una solución [9] http://www.pretorianuk.com/track-it (última visita
totalmente personalizable en función de las 10/07/2013)
necesidades de cada usuario, no invasiva y modular,
que le permite jugar a cualquier juego y plataforma de [10] http://www.raspberrypi.org/quick-start-guide
forma individual o colectiva (juego colaborativo) (última visita 10/07/2013)
gracias a las múltiples entradas de dispositivos de
control que presenta la solución. [11] http://www.raspbian.org/FrontPage (última visita
10/07/2013)
6. Referencias
[12] http://www.libsdl.org/ (última visita 10/07/2013)
[1] Parra, David et al. (2009), “Hábitos de uso de los
videojuegos en España entre los mayores de 35 [13] http://www.mariokart.com/wii/launch/ (última
años”, Revista Latina de Comunicación Social, 64. visita 26/04/2013)
La Laguna (Tenerife): Universidad de La Laguna,
pp. 694 -707.
[14]
http://www.bj-adaptaciones.com/catalogo/ratones/
[2] World Health Organization ed. “World report on
joysticks/bjoy-stick-c (última visita 26/04/2013)
disability 2011”. WHO Library Cataloguing-in-
Publication Data. Malta. 2011.
[15]
[3] Golomb, Meredith R et al. (2010) “In-Home http://www.bj-adaptaciones.com/catalogo/ratones/
Virtual Reality Videogame Telerehabilitation in joysticks/bjoy-ring (última visita 26/04/2013)

También podría gustarte