Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza

USB Mouse for Tetraplejic People based on Head Tracking

Autores/as

  • Danny Alexander Riaño Gómez Universidad Distrital Francisco José de Caldas.
  • Omar Salazar Morales Universidad Distrital Francisco José de Caldas.
  • José Jairo Soriano Méndez Universidad Distrital Francisco José de Caldas.

Palabras clave:

ratón para discapacitados, tetraplejia, dispositivo de entrada USB. (es).

Palabras clave:

Hands-free mouse, Tetraplegia, USB input device (en).

Referencias

J. C. Gómez Beltrán, Identificación de las personas con discapacidad en los territorios desde el rediseño del registro, Departamento Administrativo Nacional de Estadística DANE, Abril 2008.

T. Palleja`, E. Rubión, M. Teixidó, M. Tresanchez, A. Fernández del Viso, C. Rebate, and J. Palacín, “Ratón virtual relativo controlado con los movimientos de la cabeza,” in Memorias del IX Congreso Internacional Interacción, Albacete, España, Junio 2008, pp. 305–314.

F. A. Justo T. and I. n. Aguirre G., “Creación de una herramienta que permita mover el cursor de un computador a partir del movimiento ocular, utilizando técnicas de visión artificial,” in Proceedings of the Seventh LACCEI Latin American and Caribbean Conference for Engineering and Technology (LACCEI 2009), San cristóbal, Venezuela, June 2009, pp. WE1–1–WE1–10.

E. L. González and J. C. García García, Juan Carlos Tulli, “Estudio de factibilidad de un mouse controlado por señales electrooculográficas,” in Memorias del XV congreso argentino de bioingeniería, 2008, pp. 1–4.

C. Arboleda Clavijo, E. García Cossio, and M. Palacio, “Control de mouse para computador mediante potenciales eléctricos oculares,” Revista Ingeniería Biomédica, no. 1, pp. 47–51, Mayo 2007, escuela de Ingeniería de AntioquiaUniversidad CES, Medellín, Colombia.

D. Mahecha, F. Lozano, and E. García, “Control de mouse através de señales EOG y algoritmos de boosting,” in Memorias del XIII simposio de Tratamiento de Señales, Imá genes y Visión Artificial (STSIVA 2008), vol. 2, 2008, pp. 57–60.

A. Torres, S. Gamboa, O. Hernández, A. Martínez, A. Pérez, W. Torres, J. Camas, M. Pérez, and H. Castañón, “Diseño de un mouse óptico facial para pacientes que presentan discapacidad parapléjica,” Revista Cubana de física, vol. 27, no. 1, pp. 23–27, 2010.

C. Gerdtman and M. Lindén, “Development of a gyro sensor based computer mouse with usb interface as technical aid for disabled persons,” in 3rd European Medical & Biological Engineering Conference (EMBEC’05), Prague, Czech Republic, November 2005.

S.H. Lee and S.H. Oh, “Kinect sensor based pc control interface for handicapped users,” in Proceedings of the 1st International Conference on Convergence and it’s Application (ICCA 2013), Seoul, Korea, Jul. 2013, pp. 49–52.

——, “A kinect sensor based windows control interface,” International Journal of Control and Automation, vol. 7, no. 3, pp. 113–124, 2014.

D. A. Riaño Gómez, “Diseño e implementación de un prototipo de ratón hardware USB basado en proyección planar del movimiento de la cabeza,” Trabajo de grado en Ingeniería Electrónica, Universidad Distrital Francisco José de Caldas. Facultad de Ingeniería, Bogotá D.C., Colombia, May 2014.

C. A. Avizzano, P. Sorace, D. Checcacci, and M. Bergamasco, “Head tracking based on accelerometer sensors,” 2004, PERCRO, Scuola Superiore Sant’Anna. Unpublished manuscript.

J. Axelson, USB complete. Everything you need to develop custom USB peripherals, 3rd ed. Madison WI 53704: Lakeview Research LLC, 2005.

PIC18F2455/2550/4455/4550 Data Sheet. 28/40/44Pin, High Performance, Enhanced Flash, USB Microcontrollers with nanoWatt Technology, Microchip Technology Inc., 2007, document Number: DS39632D.

MMA7260QT: XYZ axis accelerometer ±1.5g/2g/4g/6g, Freescale Semiconductor, Mar. 2008, document Number: MMA7260QT. Rev. 5.

G. E. Grossman, R. J. Leigh, L. A. Abel, D. J. Lanska, and S. E. Thurston, “Frequency and velocity of rotational head perturbations during locomotion,” Experimental Brain Research, no. 70, pp. 470–476, 1988.

J. L. Melo, Ergonomía prá ctica. Guía para la evaluación ergonómica de un puesto de trabajo. Argentina: Fundación MAPFRE, 2009, ISBN 9789879796061.

Cómo citar

APA

Riaño Gómez, D. A., Salazar Morales, O., & Soriano Méndez, J. J. (2014). Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza. Ingeniería, 19(2). https://doi.org/10.14483/udistrital.jour.reving.2014.2.a02

ACM

[1]
Riaño Gómez, D.A., Salazar Morales, O. y Soriano Méndez, J.J. 2014. Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza. Ingeniería. 19, 2 (jul. 2014). DOI:https://doi.org/10.14483/udistrital.jour.reving.2014.2.a02.

ACS

(1)
Riaño Gómez, D. A.; Salazar Morales, O.; Soriano Méndez, J. J. Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza. Ing. 2014, 19.

ABNT

RIAÑO GÓMEZ, D. A.; SALAZAR MORALES, O.; SORIANO MÉNDEZ, J. J. Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza. Ingeniería, [S. l.], v. 19, n. 2, 2014. DOI: 10.14483/udistrital.jour.reving.2014.2.a02. Disponível em: https://revistas.udistrital.edu.co/index.php/reving/article/view/7057. Acesso em: 11 may. 2021.

Chicago

Riaño Gómez, Danny Alexander, Omar Salazar Morales, y José Jairo Soriano Méndez. 2014. «Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza». Ingeniería 19 (2). https://doi.org/10.14483/udistrital.jour.reving.2014.2.a02.

Harvard

Riaño Gómez, D. A., Salazar Morales, O. y Soriano Méndez, J. J. (2014) «Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza», Ingeniería, 19(2). doi: 10.14483/udistrital.jour.reving.2014.2.a02.

IEEE

[1]
D. A. Riaño Gómez, O. Salazar Morales, y J. J. Soriano Méndez, «Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza», Ing., vol. 19, n.º 2, jul. 2014.

MLA

Riaño Gómez, D. A., O. Salazar Morales, y J. J. Soriano Méndez. «Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza». Ingeniería, vol. 19, n.º 2, julio de 2014, doi:10.14483/udistrital.jour.reving.2014.2.a02.

Turabian

Riaño Gómez, Danny Alexander, Omar Salazar Morales, y José Jairo Soriano Méndez. «Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza». Ingeniería 19, no. 2 (julio 15, 2014). Accedido mayo 11, 2021. https://revistas.udistrital.edu.co/index.php/reving/article/view/7057.

Vancouver

1.
Riaño Gómez DA, Salazar Morales O, Soriano Méndez JJ. Ratón USB para Personas Tetrapléjicas Controlado con el Movimiento de la Cabeza. Ing. [Internet]. 15 de julio de 2014 [citado 11 de mayo de 2021];19(2). Disponible en: https://revistas.udistrital.edu.co/index.php/reving/article/view/7057

Descargar cita

Visitas

821

Dimensions


PlumX


Descargas

Los datos de descargas todavía no están disponibles.
Documento sin título

Ratón USB para personas tetrapléjicas controlado con el movimiento de la cabeza

USB Mouse for Tetraplejic People based on Head Tracking

Danny Alexánder Riaño Gómez ,Universidad Distrital Francisco José de Caldas, dlrianog@correo.udistrital.edu.co

Omar Salazar Morales ,Universidad Distrital Francisco José de Caldas, osalazarm@correo.udistrital.edu.co

José Jairo Soriano Méndez ,Universidad Distrital Francisco José de Caldas, jairosoriano@udistrital.edu.co

Recibido: 13-05-2014. Modificado: 13-06-2014. Aceptado: 29-11-2014



1. Introducción y motivación

El ratón (o mouse por su nombre en inglés) se ha convertido en el dispositivo de entrada de datos más popular para interactuar con computadores y acceder a internet. Los computadores modernos cuentan con numerosas ventajas; sin embargo, estos equipos no han sido diseñados para que sean accesibles a personas en situación de discapacidad. El manejo de un computador tradicional requiere la capacidad física del movimiento de por lo menos una de las extremidades del ser humano, lo cual limita el acceso a personas tetrapléjicas (enfermedad que impide la movilidad de las cuatro extremidades) y reduce la capacidad de éstas para realizar actividades diarias como ingresar a su correo electrónico, o al chat, o desarrollar trabajos básicos de procesamiento de texto.

Según cifras del Departamento Administrativo Nacional de Estadística (DANE) [1], en el último censo del 2005, se pueden identificar varios tipos de limitaciones permanentes en el total de 41.174.853 de personas de la población colombiana. Dentro de ellas se encuentran limitaciones permanentes en moverse o caminar con 758.009 personas; y limitaciones para usar sus brazos y manos en 381.724 personas. Si bien las cifras mencionadas no reflejan el número exacto de personas con tetraplejia, sí dan una idea del número de personas a las cuales podría beneficiar el desarrollo de un ratón diseñado especialmente para ellas.

Actualmente existen alternativas al ratón tradicional como dispositivo de entrada de datos. Algunos de estos sistemas no requieren de contacto con el usuario, dado que se basan en una cámara web y la utilización de algoritmos de visión artificial, basados en procesamiento de imágenes, para medir y transformar los movimientos de la cabeza de un usuario en desplazamientos relativos del cursor [2]. La detección del movimiento de la cabeza de un usuario se realiza por medio del cálculo de la diferencia entre dos imágenes consecutivas I k e I k−1, donde k es el número de secuencia de una imagen con m columnas y n filas.

Otra propuesta consiste en la creación de una herramienta que permite mover el cursor de un computador mediante el movimiento ocular, técnicas de visión artificial e interfaz USB [3]. En la herramienta creada se utiliza una cámara de video que permite capturar las imágenes en tiempo real y se recurre a un LED (Light Emitting Diode) emisor de infrarrojo para iluminar la zona del ojo humano que se desea capturar, ya que este tipo de luz no es percibida por el mismo. En dicho trabajo resulta necesaria la aplicación de diversas técnicas para lograr obtener una imagen del ojo con áreas significativas que puedan ser tratadas, y conseguir el movimiento del cursor.

Teniendo en cuenta señales electrooculográficas (señales producidas por movimientos oculares), se ha considerado la fabricación de un dispositivo que permite a pacientes privados de motricidad fina en sus manos, o con discapacidad aún más severa, usar el movimiento de sus ojos para posicionar un cursor en la pantalla de un computador, y por medio de algún dispositivo adicional, tal como una tecla o interruptor a medida, validar algún comando seleccionado en la pantalla del computador [4]. Este dispositivo funciona en conjunto con un teclado virtual y electrodos ubicados cerca a los ojos del usuario. Existe otra aproximación similar a esta última propuesta, con la excepción de que se introduce un motor para controlarlo [5].

Existen propuestas similares a los ratones ya mencionados [6]. La diferencia radica en que se usan algoritmos supervisados para el aprendizaje del sistema. El aprendizaje supervisado se fundamenta en una programación por ejemplos donde el algoritmo conoce la respuesta correcta a los patrones de entrada y encuentra una regla de clasificación (hipótesis) que asigna una etiqueta a cada elemento en el espacio de entrada. El desempeño se evalúa por medio de los errores de entrenamiento y generalización. En el primero se evalúan los datos nuevos (que no han sido pasados por el algoritmo) y en el segundo, los datos con los que se aprende.

Las personas que presentan tetraplejia tienen un amplio control del movimiento facial, por lo que es posible monitorear dichos movimientos para utilizar un computador con el mínimo esfuerzo. El ratón diseñado por otros autores [7] está compuesto por una interfaz electrónica basada en sensores optoelectrónicos, que utiliza un microcontrolador con interfaz USB para la comunicación y conectividad del mismo con el computador. Usa un protocolo de comunicación con luz infrarroja (IR) para establecer comandos de control, de tal manera que se pueda manipular el cursor sin necesidad de emplear cables de conexión. Incorpora un dispositivo mecánico, el cual se ajusta a los diferentes contornos faciales del usuario.

Otro ratón construido está basado en un controlador con interfaz USB y con capacidad de realizar conversión analógico-digital (A/D) [8]. La interfaz USB usa la clase de dispositivos HID, lo cual significa que no es necesario el diseño de algún software, dado que la mayoría de sistemas operativos ya dan soporte a esta clase de dispositivos USB. El módulo del sensor fue construido en una caja plástica de 40 mm×25 mm×15 mm que encapsula y aisla cualquier componente electrónico del usuario, además de permitirle mover el cursor con alguna parte del cuerpo: brazo, mano, pierna o pie. El módulo del sensor está basado en acelerómetros. La función de “clic” fue implementada por medio de una unidad de “sorbo-y-soplo” donde el usuario tiene que hacer uso de su capacidad aeróbica para hacer clic al ratón, además de ser necesario usar una pequeña manguera que lleva el aire del usuario al sensor que registra la presión del aire. Una de las principales desventajas del diseño es que el sistema total es poco flexible para el usuario, dado que es necesario que éste sea ayudado para que el ratón sea puesto en el lugar adecuado antes de ser usuado.

Recientemente se ha desarrollado una interfaz de reconocimiento de voz y de movimiento basada en tecnología de sensores cinéticos para sistema operativo Windows® [9], [10]. El propósito es dar a usuarios con inhabilidades en manos y brazos la habilidad de controlar varias funcionalidades del computador, tales como reproducir música o videos, navegar por internet o editar documentos. El estudio presentado está enfocado en cómo usar sensores cinéticos para reconocer comandos de voz y movimientos del cuerpo, especialmente manos, brazos y cabeza.

En este artículo se presenta el resultado del diseño e implementación de un prototipo de ratón hardware USB para hacer frente a algunos problemas de accesibilidad que afrontan personas con movilidad reducida o discapacitadas [11]. Esta propuesta se enfoca en el uso del movimiento de la cabeza del usuario para controlar el cursor en la pantalla del computador y hacer los clics izquierdo y derecho. La captura del movimiento se hace con un acelerómetro de tres ejes ubicado sobre las gafas del usuario (método no invasivo), contrario a otras propuestas que usan tres acelerómetros de dos ejes sobre ambientes virtuales [12], o las otras recién mencionadas, que usan cámaras web o video (procesamiento de imágenes, visión artificial) o sensores optoelectrónicos. Un segundo acelerómetro de tres ejes se ubica sobre la pantalla del computador por medio de pinzas plásticas para detectar su inclinación. El diseño propuesto es totalmente hardware, y contrario a algunas propuestas ya descritas, no es necesaria la instalación de algún software para su funcionamiento. Se usa la clase HID, así que es funcional sobre varios sistemas operativos (como Windows ® y Linux), contrario a otros desarrollos para una única plataforma. Además, el diseño es un dispositivo plug-and-play, portable y de fácil uso por su conexión USB.

El artículo está organizado como sigue: la sección 2 presenta el ratón construido. La sección 3 la teoría relacionada con su funcionamiento. La sección 4 muestra su uso por parte de un usuario. La sección 5 presenta las pruebas realizadas y los resultados obtenidos. Finalmente, las conclusiones, recomendaciones y trabajo futuro se presentan en las secciones 6, 7 y 8.


2. Materiales del ratón

El hardware del ratón USB implementado se compone de los siguientes elementos: cable USB, dos cables (de 5 hilos y 1 m de longitud cada uno) fabricados a medida para los sensores, gafas plásticas para el usuario con el sensor ubicado en la parte frontal, pinza plástica para el computador con el sensor ubicado en la parte lateral y circuito del microcontrolador. Todos estos elementos se muestran en la Figura 1.


3. Funcionamiento del ratón

El movimiento de la cabeza del usuario se detecta por medio de un sensor tipo acelerómetro, el cual se ubica sobre sus gafas. Esta señal se muestrea y procesa a través de un microcontrolador. Un segundo sensor tipo acelerómetro se ubica sobre la pantalla del computador con el fin de detectar su inclinación y poder realizar la proyección del movimiento de la cabeza del usuario. Esta señal también se muestrea y procesa con el microcontrolador.

El microcontrolador dispone de un conversor analógico-digital con resolución de 10 bit, interfaz USB 2.0 configurada en modo full-speed cuya tasa de transferencia por el bus es de 12 Mbit/s [13], y además procesa los datos provenientes de los sensores para realizar la proyección del movimiento de la cabeza de tres dimensiones a dos dimensiones (Figura 2(a)). También tiene la función de detectar si el usuario ha hecho clic izquierdo, clic derecho y calcular el desplazamiento del cursor del ratón basado en la información del movimiento de la cabeza del usuario (Figura 2(b)). El desplazamiento sobre la pantalla, clic izquierdo y clic derecho necesarios para ser entregados en el reporte USB al computador son obtenidos por medio del firmware del microcontrolador. La Figura 2(c) muestra un diagrama de bloques propuesto para la implementación de ratón USB.

El firmware para el microcontrolador PIC18F2550 [14] fue desarrollado sobre lenguaje C, usando el entorno de desarrollo MPLAB X IDE, versión beta 7.12, y el compilador C18, versión 3.40. Ambos son software libre y disponibles para descarga gratuita en el sitio web del fabricante.

Los algoritmos que se muestran en las siguientes secciones están basados en el esquema de muestreo uniforme que se realiza sobre las tres salidas XOUT, YOUT y ZOUT de los dos acelerómetros MMA7260QT [15] (usuario y pantalla del computador) a un periodo de muestreo Tm = 50 ms (frecuencia de muestreo fm = 20 Hz). Esta frecuencia fue escogida para garantizar el teorema del muestreo de acuerdo con un estudio presentado para un grupo de 20 personas en edades de 20–61 años (donde 9 eran hombres), con alturas entre 147 cm y 183 cm, pesos entre 49 kg y 98 kg, y circunferencia de la cabeza entre 53 cm y 60 cm, donde las frecuencias del movimiento de la cabeza en varias condiciones no superan los 8,2 Hz [16] (Tabla I).

La Figura 3 presenta una línea de tiempo que ilustra la forma como son muestreados los seis canales del microcontrolador cada periodo de muestreo. La Tabla II presenta una correspondencia de los seis canales del ADC usados y las señales muestreadas de los acelerómetros.

3.1. Proyección del movimiento de la cabeza del usuario sobre el plano de la pantalla del computador

El algoritmo de la proyección del movimiento de la cabeza sobre el plano de la pantalla del computador se basa en el hecho que el acelerómetro MMA7260QT puede registrar aceleración estática, esto es: la aceleración debida a la gravedad de la Tierra, proyectada sobre cada eje de aceleración en los acelerómetros, se verá como un voltaje proporcional a la correspondiente componente de la aceleración.

De acuerdo con la descripción del funcionamiento del acelerómetro MMA7260QT [15], en un modelo simplificado, el voltaje en una de sus salidas a causa de la aceleración estática puede calcularse por medio de la ecuación:

donde V DD = 3,3 V, S = 0,8 V (sensibilidad del acelerómetro) y θ es el ángulo de inclinación del eje del acelerómetro respecto a la horizontal (Figura 4).

Por la disposición del acelerómetro en el sensor de la pantalla del computador (Figura 11(b)), idealmente el plano xsc–ysc es paralelo al plano de la pantalla. Por esto mismo, el eje zsc será perpendicular. Debido a que cualquier movimiento del cursor en pantalla consiste de dos movimientos básicos: izquierda-derecha y arriba-abajo, el algoritmo de proyección está dividido en dos partes que se explican a continuación. También es necesario considerar el hecho de que un usuario de un computador en ocasiones no realiza algún movimiento del cursor en la pantalla, por ejemplo, cuando está leyendo un documento electrónico. Por esto mismo se considera un no-movimiento o posición de descanso en los algoritmos.

3.1.1. Movimiento izquierda-derecha

Las Figura 5(a)Figura 5(e) muestran la vista frontal de un usuario ubicado frente a la pantalla de un computador. Se muestran las direcciones de incremento en los ejes de las aceleraciones para los acelerómetros ubicados en los sensores del usuario y el computador.

  1. Durante la posición de descanso (Figura 5(a)), los ejes de los acelerómetros en los sensores del usuario y pantalla serán casi paralelos. Por imperfecciones en la ubicación de ambos sensores no se puede suponer un paralelismo perfecto. La aceleración de la gravedad se proyectará casi de la misma forma sobre ambos sistemas de ejes.
  2. Si el usuario inclina la cabeza a su derecha (Figura 5(b)), lo cual debería generar un movimiento a la derecha del cursor, la aceleración de la gravedad se proyectará de forma diferente sobre los dos sistemas de ejes.
  3. Si el usuario inclina la cabeza a su izquierda (Figura 5(c)), lo cual debería generar un movimiento a la izquierda del cursor, la aceleración de la gravedad se proyectará de forma diferente sobre los dos sistemas de ejes.

Las Figuras 5(d) y 5(e) muestran el detalle de las proyecciones de la aceleración de la gravedad sobre los dos sistemas de ejes en los sensores de usuario y pantalla para ambos tipos de inclinaciones (izquierda y derecha). Como se observa en ambas figuras, la proyección de la gravedad sobre los ejes xsc y xsu no proporciona información útil del movimiento a izquierda o derecha del cursor en la pantalla, dado que esta proyección siempre es hacia −xsc y −xsu en todos los casos. Por el contrario, la proyección de la gravedad sobre los ejes ysc y ysu sí proporciona información sobre el movimiento a izquierda o derecha del cursor en la pantalla:

  1. Si el usuario inclina la cabeza a su derecha, la gravedad se proyecta hacia +ysu.
  2. Si el usuario inclina la cabeza a su izquierda, la gravedad se proyecta hacia −ysu.

Si se define la cantidad

donde k es el instante k-ésimo de muestreo, entonces el signo de α[k] puede usarse para determinar si el usuario desea mover el cursor del ratón a izquierda o derecha de la pantalla. En condiciones ideales, cuando el sensor de la pantalla del computador esté perfectamente ubicado, la proyección de la gravedad sobre ysc debería ser nula. En α[k] se toma como referencia ysc[k] para tener en cuenta la componente de la aceleración de la gravedad sobre ysc. Para establecer una posición de descanso se debe umbralizar α[k] de la siguiente forma:

  1. Si α[k] > UMID, entonces el movimiento del cursor es a la derecha de la pantalla,
  2. Si α[k] < −UMID, entonces el movimiento del cursor es a la izquierda de la pantalla,
  3. Si −UMID ≤ α[k] ≤ UMID, entonces no hay movimiento,

donde UMID es un valor positivo denominado Umbral de Movimiento Izquierda-Derecha.

Basado en lo anterior, el algoritmo propuesto para realizar el movimiento izquierda-derecha (incluido el no-movimiento) del cursor en la pantalla del computador se muestra en la Figura 6(a).

3.1.2. Movimiento arriba-abajo

El movimiento arriba-abajo es análogo al movimiento izquierda-derecha. Las Figras 7(a)– 7(e) muestran la vista lateral de un usuario ubicado frente a la pantalla de un computador. Se muestran las direcciones de incremento en los ejes de las aceleraciones para los acelerómetros ubicados en los sensores del usuario y el computador.

  1. Durante la posición de descanso (Figura 7(a)), los ejes de los acelerómetros en los sensores del usuario y pantalla serán casi paralelos. Por imperfecciones en la ubicación de ambos sensores no se puede suponer un paralelismo perfecto. La aceleración de la gravedad se proyectará casi de la misma forma sobre ambos sistemas de ejes.
  2. Si el usuario inclina la cabeza hacia atrás (extensión) (Figura 7(b)), lo cual debería generar un movimiento hacia arriba del cursor, la aceleración de la gravedad se proyectará de forma diferente sobre los dos sistemas de ejes.
  3. Si el usuario inclina la cabeza hacia abajo (flexión) (Figura 7(c)), lo cual debería generar un movimiento hacia abajo del cursor, la aceleración de la gravedad se proyectará de forma diferente sobre los dos sistemas de ejes.

La Figuras 7(d) y 7(e) muestran el detalle de las proyecciones de la aceleración de la gravedad sobre los dos sistemas de ejes en los sensores de usuario y pantalla para ambos tipos de inclinaciones (extensión y flexión). Como se observa en ambas figuras, la proyección de la gravedad sobre los ejes xsc y xsu no proporciona información útil del movimiento hacia arriba o abajo del cursor en la pantalla, dado que esta proyección siempre es hacia −xsc y −xsu en todos los casos. Por el contrario, la proyección de la gravedad sobre los ejes zsc y zsu sí proporciona información sobre el movimiento hacia arriba o abajo del cursor en la pantalla:

  1. Si el usuario inclina la cabeza hacia atrás, la gravedad se proyecta hacia −zsu.
  2. Si el usuario inclina la cabeza hacia adelante, la gravedad se proyecta hacia +zsu.

Si se define la cantidad

entonces el signo de β[k] puede usarse para determinar si el usuario desea mover el cursor del ratón hacia arriba o abajo de la pantalla. Para establecer una posición de descanso, se debe umbralizar β[k] de la siguiente forma:

  1. Si β[k] > UMAA, entonces el movimiento del cursor es hacia abajo de la pantalla,
  2. Si β[k] < −UMAA, entonces el movimiento del cursor es hacia arriba de la pantalla,
  3. Si −UMAA ≤ β[k] ≤ UMAA, entonces no hay movimiento,

donde UMAA es un valor positivo denominado Umbral de Movimiento Arriba-Abajo.

Basado en lo anterior, el algoritmo propuesto para realizar el movimiento arriba-abajo (incluido el no-movimiento) del cursor en la pantalla se muestra en la Figura 6(b).

3.2. Clic izquierdo y clic derecho

Los algoritmos para los clics izquierdo y derecho se basan en el hecho de que el acelerómetro MMA7260QT puede registrar aceleración dinámica, esto es: la aceleración de la masa del acelerómetro proyectada sobre cada eje, se verá como un voltaje proporcional a la correspondiente componente de la aceleración dinámica.

3.2.1. Clic izquierdo

El clic izquierdo del ratón es implementado mediante el movimiento rápido arriba-abajo de la cabeza del usuario (Figura 8(a)). Debido a la disposición del acelerómetro en el sensor del usuario (Figura 12(b)), el movimiento ideal arriba-abajo de la cabeza del usuario se ve reflejado en una rotación del plano xsu–zsu alrededor del eje ysu, como se muestra en las Figuras 8(b) y 8(c). Si se define la cantidad.

como la primera diferencia entre dos muestras sucesivas de la señal zsu entregada por el acelerómetro del usuario en su salida ZOUT, entonces |∆zsu| es una medida de la rapidez con que el usuario mueve su cabeza arriba-abajo. Se toma el valor absoluto debido a que no interesa el signo, sino la magnitud para detectar el movimiento rápido de la cabeza.

Debido a que cualquier movimiento arriba-abajo de la cabeza del usuario podría interpretarse como un clic izquierdo, es necesario umbralizar el valor de |∆zsu| de la siguiente forma:

  1. Si |∆zsu| > UCI, entonces existe clic izquierdo,
  2. Si |∆zsu| ≤ UCI, entonces no existe clic izquierdo,

donde UCI es un valor positivo denominado Umbral de Clic Izquierdo.

Basado en lo anterior, el algoritmo propuesto para hacer el clic izquierdo se muestra en la Figura 9(a).

3.2.2. Clic derecho

El clic derecho del ratón es análogo al clic izquierdo. Es implementado mediante el movimiento rápido izquierda-derecha de la cabeza del usuario (Figura 10(a)). Debido a la disposición del acelerómetro en el sensor del usuario (Figura 12(b)), el movimiento ideal izquierdaderecha de la cabeza del usuario se ve reflejado en una rotación del plano ysu–zsu alrededor del eje xsu como se muestra en la Figura 10(b) y Figura 10(c). Por tal motivo, si se define la cantidad.

como la primera diferencia entre dos muestras sucesivas de la señal ysu entregada por el acelerómetro del usuario en su salida YOUT, entonces |∆ysu| es una medida de la rapidez con que el usuario mueve su cabeza izquierda-derecha.

Debido a que cualquier movimiento izquierda-derecha de la cabeza del usuario podría interpretarse como un clic derecho, es necesario umbralizar el valor de |∆ysu| de la siguiente forma:

  1. Si |∆ysu| > UCD, entonces existe clic derecho,
  2. Si |∆ysu| ≤ UCD, entonces no existe clic derecho,

donde UCD es un valor positivo denominado Umbral de Clic Derecho.

Basado en lo anterior, el algoritmo propuesto para hacer el clic derecho se muestra en la Figura 9(b).

3.3. Estimación de los umbrales para los algoritmos

Los algoritmos propuestos en las Figuras 6(a), 6(b), 9(a) y 9(b) tienen definidos umbrales, a saber, Umbral de Movimiento Izquerda-Derecha (UMID), Umbral de Movimiento ArribaAbajo (UMAA), Umbral de Clic Izquierdo (UCI) y Umbral de Clic Derecho (UCD). A continuación se realiza una estimación de estos parámetros.

3.3.1. Umbrales de movimiento izquierda-derecha y arriba-abajo

De acuerdo con el manual de ergonomía [17], los ángulos máximos recomendados (sin realizarlos en forma prolongada) para el movimiento lateral de la cabeza son de 15◦, y para el movimiento de flexión (bajar la cabeza) y extensión (levantar la cabeza), son de 30◦ y 15◦, respectivamente. Todos estos ángulos son medidos respecto a la vertical. Si bien estos ángulos son solamente una guía, el valor de 15◦ se toma en todos los casos para realizar una estimación de los umbrales UMID y UMAA.

Bajo condiciones ideales, cuando ysc y zsc son paralelos a la horizontal, y cuando ysu y zsu toman un ángulo de 15◦ respecto a la horizontal (Figuras 5(a)–5(e) y Figuras 7(a)–7(e)), un ángulo de 15◦ en el movimiento de la cabeza se ve reflejado en α[k] y β[k] en un voltaje de 207 mV usando (1). Este valor se obtiene en la forma

Debido a la resolución de 10 bit del ADC, con una ventana de conversión entre 0 V y 3,3 V, el número entero que representa los 207 mV es de 210(0,207/3,3) ≈ 64. Por lo tanto, la representación digital de los umbrales UMID y UMAA, para α[k] y β[k], es de 64 aproximadamente.

3.3.2. Umbrales de clic izquierdo y clic derecho

Una estimación para los umbrales UCI y UCD se obtiene de (1), al suponer que el acelerómetro gira a una velocidad angular constante ω, es decir, θ = ωt = 2πft, donde t es el tiempo y f es la frecuencia de rotación. De la Tabla I, se observa que la menor frecuencia del movimiento de la cabeza en todos los casos es aproximadamente 0,6 Hz. Esta frecuenca se toma para la estimacion de UCI y UCD.

De (4) y (5) se obtiene entonces que entre dos muestras sucesivas existe una diferencia de voltaje de

donde V DD = 3,3 V, f = 0,6 Hz, S = 0,8 V, Tm = 50 ms y k se ha tomado como 1 para maximizar la diferencia. El número entero que representa los 150 mV es 210(0,150/3,3) ≈ 46. Por lo tanto, la representación digital de los umbrales UCI y UCD, para ∆zzu y ∆yzu, es de 46 aproximadamente.


4. Uso del ratón

El ratón diseñado debe usarse de la siguiente forma:

  1. Ubicar el sensor del computador a la pantalla por medio de una pinza plástica, como se muestra en las Figuras 11(a) y 11(b). El cable de 5 hilos desde la regleta del sensor se conecta a la regleta del circuito del microcontrolador para que éste pueda capturar la información del acelerómetro.
  2. Poner las gafas plásticas al usuario como se muestra en las Figuras 12(a) y 12(b). El cable de 5 hilos desde la regleta del sensor se conecta a la regleta del circuito del microcontrolador para que éste pueda capturar la información del acelerómetro.
  3. Conectar el cable USB desde el circuito del microcontrolador al computador. Esto permite el envío de los reportes USB del ratón al computador. Cuando esto se realice por primera vez, el computador enumerará el ratón USB como un dispositivo HID y luego de algunos segundos de configuración, el ratón estará listo para usarse.
  4. Una vez el computador reconoce el ratón como un dispositivo USB, el usuario podrá mover el cursor en pantalla. Si el usuario inclina la cabeza a su derecha, el cursor se moverá a la derecha de la pantalla. Si inclina la cabeza a su izquierda, el cursor se moverá a la izquierda de la pantalla. Si inclina la cabeza hacia atrás, el cursor se moverá hacia arriba de la pantalla. Si inclina la cabeza hacia abajo, el cursor se moverá hacia abajo de la pantalla. Existirá una posición de descanso (no-movimiento) cuando el usuario deje su sensor paralelo al sensor ubicado en la pantalla del computador.
  5. Los clic izquierdo y derecho se pueden hacer por movimientos rápidos arriba-abajo e izquierda-derecha de la cabeza respectivamente.


5. Pruebas realizadas y resultados

Se realizó una prueba con siete personas entre los 20 y 50 años de edad, de los cuales cinco eran hombres y dos eran mujeres, todos diestros, sobre el funcionamiento del ratón. Los sujetos no tenían entrenamiento previo. Todos fueron sentados frente a un computador de escritorio con sistema operativo Windows ® 7 de 64 bit, al cual previamente se había conectado el ratón. Aunque las personas que intervinieron en la prueba no tenían tretraplejia, se les indicó poner sus manos sobre las rodillas, mantener la espalda recta y no usar alguno de sus cuatro miembros para ayudarse en el manejo del ratón, simulando el comportamiento de una persona tetrapléjica. Una segunda persona ponía las gafas plásticas a cada sujeto para iniciar la prueba.

La prueba consistió en ejecutar 20 veces cada una de las seis funciones del ratón, a saber, (1) desplazamiento a izquierda, (2) desplazamiento a derecha, (3) desplazamiento arriba, (4) desplazamiento abajo, (5) clic derecho y, (6) clic izquierdo. Se tomó nota de los errores involuntarios que se presentaban, por ejemplo, al hacer un clic izquierdo sin intención. Cada sujeto abrió y cerró ventanas, abrió y cerró documentos, o abrió y cerró programas desde el escritorio de Windows ®
. Se ha de resaltar que los sujetos adquirieron mayor destreza en el manejo del ratón después de algunos intentos de ejecutar cada una de sus funciones. En los primeros intentos, dos de los sujetos inconscientemente rotaban su cabeza, en lugar de inclinarla a izquierda o derecha, buscando el movimiento derecha-izquierda del cursor. El objetivo de la prueba era medir el porcentaje de desaciertos en la ejecución de cada una de las funciones del ratón y así validar los valores de los umbrales estimados en la sección 3.3. Los resultados obtenidos en la prueba con estas personas se resumen en la Tabla III.


Independiente a la prueba anterior, sin medir porcentaje de desaciertos, también se verificó el funcionamiento de las seis funciones básicas del ratón en tres sistemas operativos en computadores diferentes:

  1. En un computador portátil con Windows ® XP SP3 de 32 bit.
  2. En un computador de escritorio con Windows ® 7 ultimate SP1 de 64 bit.
  3. En un computador portátil con Ubuntu Linux 12.04 LTS de 32 bit.

En todos los casos, una vez el ratón era conectado al computador, y luego de algunos segundos de configuración, iniciaba su funcionamiento normal. En ningún caso se requirió la instalación de software adicional, ya que todos los sistemas operativos lo reconocieron como dispositivo compatible con HID, conexión en caliente (hot plug-and-play).


6. Conclusiones

Se diseñó e implementó un prototipo de ratón para personas que sufren algún tipo de discapacidad en sus cuatro miembros, con especial utilidad para aquellos usuarios que sufren de tetraplejia, de modo que puedan mover el cursor en la pantalla con solamente la proyección del movimiento de su cabeza.

El ratón diseñado e implementado es completamente hardware con interfaz USB, ya que no necesita instalar software adicional para ser usado. Solamente son necesarios los controladores (drivers) que vienen por defecto en el sistema operativo bajo la clase HID. Se realizaron pruebas sobre Windows ® XP (32 bit), Windows ® 7 (64 bit) y Ubuntu Linux (32 bit) que verifican su funcionamiento sin necesidad de usar software adicional.

Se realizó una prueba sobre siete personas sin entrenamiento previo que muestra la necesidad de mayor ajuste en los umbrales de los algoritmos propuestos, principalmente para reducir el porcentaje de desaciertos en el clic izquierdo, de acuerdo con los resultados presentados en la Tabla III. Los porcentajes elevados en el clic izquierdo y movimientos izquierda-derecha del cursor podrían ser causados porque se supuso el mismo valor de umbral para ambos clics, y el mismo para todos los movimientos del cursor. Esta suposición podría no ser válida.

Otra posible causa de los valores elevados de desaciertos podría ser que en los primeros intentos de la prueba, dos de los sujetos inconscientemente rotaban su cabeza, en lugar de inclinarla a izquierda o derecha, buscando el movimiento izquierda-derecha del cursor. Aunque en principio la rotación parece más natural e intuitiva, no se implementó debido a que las proyecciones de la aceleración de la gravedad sobre los ejes de aceleración del acelerómetro no dan alguna información de este movimiento (Figuras 5(a)–5(b)).

El prototipo hace uso de dos sensores basados en acelerómetro ubicados en la cabeza del usuario y la pantalla del computador. La información es procesada por un microcontrolador que tiene interfaz hacia el computador mediante puerto USB. El sensor de usuario es ubicado sobre sus gafas, lo cual lo hace un método no-invasivo. Este sensor puede ser ubicado con una pinza plástica, pensando en personas que usan gafas permanentemente. El sensor de la pantalla se ubica con una pinza plástica, lo cual permite portar el ratón a computador sin dañar su pantalla.

Se propusieron cuatro algoritmos: los dos primeros para realizar el movimiento arriba-abajo del cursor, y los segundos para hacer el clic izquierdo y derecho. En cada algoritmo se introdujeron umbrales para determinar las zonas de descanso en el movimiento del cursor y para determinar cuándo hay un clic o no lo hay. Los valores de estos umbrales fueron estimados bajo consideraciones aproximadas, pero es necesario realizar un mejor ajuste, posiblemente estadístico, tomando una muestra representativa de la población objetivo.


7. Recomendaciones

Se recomienda el uso de los algoritmos para los movimientos arriba-abajo e izquierdaderecha, dado que se observó su utilidad para sacar el cursor de las esquinas y fronteras de la pantalla. En ocasiones el cursor queda ubicado en estos lugares, y es deseable poder ubicarlo en otra posición, por ejemplo, la mitad de la pantalla.

Aunque en los bytes 1 y 2 transmitidos al computador, a través del reporte HID para indicar el desplazamiento relativo en x y y sobre la pantalla, se pueden enviar números enteros entre −127 y +127, se recomienda el envío de los enteros −1, +1 y 0 con los algoritmos propuestos. Esto debido a que se observó que otros valores enteros generaban “saltos” del cursor en la pantalla y era difícil mantenerle un seguimiento visual. También se recomienda el uso de estos valores dado que generan la menor velocidad posible de desplazamiento del cursor, y, por esto mismo, es cómodo para el usuario ubicar con precisión objetos en pantalla, como los botones para cerrar o abrir ventanas.


8. Trabajo futuro

La estimación de los parámetros UCI y UCD necesita de mayor análisis. Aunque en la práctica los clics izquierdo y derecho funcionan, se observó que los valores propuestos ofrecen sensibilidad al movimiento. Se observó en la práctica que algunos movimientos, que se podrían considerar no-rápidos, fueron interpretados como clics. Por esto mismo se incurría en clics involuntarios. Se deben realizar pruebas con una muestra representativa de la poblacion objetivo para sintonizar estos umbrales y mejorar el desempeño del ratón en la práctica

Se puede realizar el rediseño del presente ratón usando solamente un acelerómetro. El desarrollo del trabajo sugirió que todo el diseño podría hacerse solamente con el sensor ubicado en la cabeza del usuario. Para esto se deben reformular los algoritmos para el movimiento izquierda-derecha y arriba-abajo del cursor en la pantalla presentados en la sección 3.1. Los algoritmos de clic izquierdo y clic derecho presentados en la sección 3.2 pueden ser los mismos, dados que solamente se basan en la información suministrada por el sensor del usuario.

Otro posible trabajo consiste en la conexión inalámbrica del sensor en las gafas del usuario con el microcontrolador que realiza la interfaz al computador. Al respecto se debe tener en cuenta que agregar un transmisor-receptor inalámbrico incrementa los costos del desarrollo comparados con el uso de un solo cable.

Se deben realizar propuestas para el manejo del scroll (normalmente una pequeña rueda ubicada en la parte superior de los ratones convencionales) y doble-clic del ratón, dado que la presente propuesta solamente se enfocó en el clic izquierdo y clic derecho.

Por recomendación de algunas de las personas que fueron sometidas a la prueba del ratón, como trabajo futuro se podría desarrollar un algoritmo que permita mover el cursor a diferentes velocidades, como un mouse convencional, dependiendo del grado de inclinación o rapidez del movimiento de la cabeza.



Referencias

  1. J. C. Gómez Beltrán, Identificación de las personas con discapacidad en los territorios desde el rediseño del Registro, Departamento Administrativo Nacional de Estadística, abril de 2008.
  2. T. Pallejà, E. Rubión, M. Teixidó, M. Tresanchez, A. Fernández del Viso, C. Rebate, & J. Palacín, “Ratón virtual relativo controlado con los movimientos de la cabeza,” en Memorias del IX Congreso Internacional Interacción, Albacete, España, Junio 2008, pp. 305–314.
  3. F. A. Justo T. & I. n. Aguirre G., “Creación de una herramienta que permita mover el cursor de un computador a partir del movimiento ocular, utilizando técnicas de visión artificial,” en Proceedings of the Seventh LACCEI Latin American and Caribbean Conference for Engineering and Technology (LACCEI 2009), San cristóbal, Venezuela, June 2009, pp. WE1–1–WE1–10.
  4. E. L. González & J. C. García García, Juan Carlos Tulli, “Estudio de factibilidad de un mouse controlado por señales electrooculográficas,” en Memorias del XV congreso argentino de bioingeniería, 2008, pp. 1–4.
  5. C. Arboleda Clavijo, E. García Cossio, & M. Palacio, “Control de mouse para computador mediante potenciales eléctricos oculares,” Revista Ingeniería Biomédica, no. 1, pp. 47–51, Mayo 2007, escuela de Ingeniería de Antioquia-Universidad CES, Medellín, Colombia.
  6. D. Mahecha, F. Lozano, & E. García, “Control de mouse através de señales EOG y algoritmos de boosting,” en Memorias del XIII simposio de Tratamiento de Señales, Imágenes y Visión Artificial (STSIVA 2008), vol. 2, 2008, pp. 57–60.
  7. A. Torres, S. Gamboa, O. Hernández, A. Martínez, A. Pérez, W. Torres, J. Camas, M. Pérez, & H. Castañón, “Diseño de un mouse óptico facial para pacientes que presentan discapacidad parapléjica,” Revista Cubana de física, vol. 27, no. 1, pp. 23–27, 2010.
  8. C. Gerdtman & M. Lindén, “Development of a gyro sensor based computer mouse with usb interface as technical aid for disabled persons,” en 3rd European Medical & Biological Engineering Conference (EMBEC’05), Prague, Czech Republic, November 2005.
  9. S.-H. Lee & S.-H. Oh, “Kinect sensor based pc control interface for handicapped users,” en Proceedings of the 1st International Conference on Convergence and it’s Application (ICCA 2013), Seoul, Korea, Jul. 2013, pp. 49–52.
  10. ——, “A kinect sensor based windows control interface,” International Journal of Control and Automation, vol. 7, no. 3, pp. 113–124, 2014.
  11. D. A. Riaño Gómez, “Diseño e implementación de un prototipo de ratón hardware USB basado en proyección planar del movimiento de la cabeza,” Trabajo de grado en Ingeniería Electrónica, Universidad Distrital Francisco José de Caldas. Facultad de Ingeniería, Bogotá D.C., Colombia, May 2014.
  12. C. A. Avizzano, P. Sorace, D. Checcacci, & M. Bergamasco, “Head tracking based on accelerometer sensors,” 2004, PERCRO, Scuola Superiore Sant’Anna. Unpublished manuscript.
  13. J. Axelson, USB complete. Everything you need to develop custom USB peripherals, 3rd ed. Madison WI 53704: Lakeview Research LLC, 2005.
  14. PIC18F2455/2550/4455/4550 Data Sheet. 28/40/44-Pin, High Performance, Enhanced Flash, USB Microcontrollers with nanoWatt Technology, Microchip Technology Inc., 2007, document Number: DS39632D.
  15. MMA7260QT: XYZ axis accelerometer ±1.5g/2g/4g/6g, Freescale Semiconductor, Mar. 2008, document Number: MMA7260QT. Rev. 5.
  16. G. E. Grossman, R. J. Leigh, L. A. Abel, D. J. Lanska, & S. E. Thurston, “Frequency and velocity of rotational head perturbations during locomotion,” Experimental Brain Research, no. 70, pp. 470–476, 1988.
  17. J. L. Melo, Ergonomía práctica. Guía para la evaluación ergonómica de un puesto de trabajo. Argentina: Fundación MAPFRE, 2009, ISBN 978-987-97960-6-1.

Danny Alexánder Riaño Gómez

Ingeniero electrónico de la Universidad Distrital Francisco José de Caldas. Especialista de atención a fallas en Colvatel-ETB.

Correo electrónico: dlrianog@correo.udistrital.edu.co

Omar Salazar Morales

Ingeniero electrónico de la Universidad Distrital Francisco José de Caldas. Magíster en Ingeniería Industrial de la Universidad Distrital Francisco José de Caldas. Docente de la Facultad de Ingeniería de la Universidad Distrital Francisco José de Caldas.

Correo electrónico: osalazarm@correo.udistrital.edu.co

José Jairo Soriano Méndez

Ingeniero electrónico de la Universidad Distrital Francisco José de Caldas. Ingeniero químico de la Universidad Nacional de Colombia. Magíster en Ingeniería Industrial de la Universidad Distrital Francisco José de Caldas. Docente de la Facultad de Ingeniería de la Universidad Distrital Francisco José de Caldas.

Correo electrónico: jairosoriano@udistrital.edu.co



Este trabajo está autorizado por una Licencia Attribution-NonCommercial-NoDerivs CC BY-NC-ND.

Artículos más leídos del mismo autor/a