Vous êtes sur la page 1sur 8

PRIMEROS PASOS EN EL CONTROL DE UN BRAZO

ROBOT MEDIANTE SENALES


EEG
Eduardo Ian
ez, Jose M. Azorn, Eduardo Fern
andez*, Jose M. Sabater, Ricardo Morales, Carlos Perez
Virtual Reality & Robotics Lab, *Instituto de Bioingeniera
Universidad Miguel Hernandez
Avda. de la Universidad s/n, Edif. Torreblanca, 03202 Elche (Alicante)
eduardo.ianez@gmail.com

Resumen
Resumen: En este artculo se describen las primeras aproximaciones al control de un brazo robot mediante las se
nales electroencefalogr
aficas
(EEG). El uso de se
nales EEG permitir
a que personas con un alto grado de discapacidad puedan
controlar un brazo robot y ayudarles a realizar
tareas en su vida diaria. Actualmente se trabaja
en registrar la actividad rtmica mediante dichas
se
nales para obtener pensamientos espont
aneos de
la persona, con la finalidad de que, tras realizar un
entrenamiento previo, pueda controlarse el brazo
robot. Para poder detectar los pensamientos se registrar
an las se
nales EEG de la persona mediante
unos electrodos situados sobre el cuero cabelludo y,
tras un procesamiento adecuado de las se
nales, se
podr
a detectar en que estado se ha pensado, pudiendo utilizar esta informaci
on para mover un
brazo robot. En el artculo se describen los primeros resultados obtenidos.
Palabras clave: Interfaz cerebral, se
nales EEG,
redes neuronales, FFT.

1.

INTRODUCCION

En la actualidad existen numerosos sistemas de


ayuda para personas con discapacidad destinados
a conseguir una mejor movilidad de la persona
afectada o facilitarles el acceso a la informacion.
Por ejemplo, para mejorar la movilidad existen
sillas de ruedas automatizadas, protesis rob
oticas
para las extremidades [3] o exoesqueletos [9], y en
cuanto al acceso a la informaci
on, existen teclados
de conceptos, navegadores de voz para invidentes
como OpenBook [8] o interfaces cerebro-m
aquina
no invasivas (BCI: Brain Computer Interface)
para controlar desde el cursor en el ordenador
hasta dispositivos moviles [6]. Todos estos sistemas tienen como finalidad facilitar la vida diaria
a personas con discapacidad.
En este artculo se describen los primeros pasos efectuados para desarrollar un sistema que
permita a una persona controlar un brazo robot

a partir de se
nales EEG. En este sistema, en
primer lugar se registraran las se
nales EEG de
la persona cuando esta realiza ciertas tareas
mentales, que en nuestro caso consistir
an en
pensar en movimientos motores, como por ejemplo, pensar en mover el brazo derecho, el brazo
izquierdo, las piernas, . . . . Para registrar dichas
se
nales colocaremos unos electrodos sobre el cuero
cabelludo cerca del cortex motor del cerebro.
Mediante el sistema de adquisici
on obtendremos
dichas se
nales en el ordenador para poder procesarlas y obtener cual es la tarea mental que
est
a pensando la persona en ese momento. Esta
informacion sera utilizada para enviar los comandos pertinentes de movimiento al brazo robot.
El artculo se estructura del siguiente modo. En
primer lugar veremos el sistema de adquisici
on y el
brazo robot en la secci
on 2, donde se hablar
a sobre
los dispositivos que permitiran recoger las se
nales
y el brazo robot que controlaremos tras realizar el
procesamiento adecuado. A continuacion se expone en la secci
on 3 el sistema de control basado en
EEG describiendo el procesamiento software realizado, el sistema de decision para controlar el robot
y el entrenamiento requerido para manejar la aplicacion. En la secci
on 4 se muestran los primeros
resultados experimentales y, por u
ltimo, se exponen las conclusiones en la secci
on 5.

2.

SISTEMA DE ADQUISICION
Y BRAZO ROBOT

En este apartado se describe la arquitectura hardware y software del sistema de adquisicon y del
brazo robot. El sistema de procesamiento EEG se
explicara en la secci
on 3. Este sistema de adquisici
on se compone de los electrodos que recoger
an
las se
nales directamente sobre la piel de la persona, un sistema de amplificacion y filtrado, y un
sistema de muestreo y digitalizacion de la se
nal.
A partir de este punto utilizaremos Matlab para
obtener las se
nales en el ordenador para su almacenamiento, tratamiento offline o para trabajar con
ellas directamente en tiempo real como se vera en
la secci
on 3.2.

Por u
ltimo, en este apartado se hablar
a sobre el
brazo robot que vamos a controlar. Una vez la parte software procese los datos y tome una decision
sobre el pensamiento detectado, se enviara dicha
instruccion al robot para que este realice el movimiento correspondiente. En la figura 1 vemos un
diagrama de bloques general del sistema.

se limpia previamente con alcohol y se utiliza un


gel conductor.
Los electrodos se colocar
an siguiendo el Sistema
Internacional 10/20 que vemos en la figura 3. Se
utilizara un gorro de gomas para que los electrodos no se muevan una vez colocados en la cabeza.
Inicialmente se utilizaran 4 electrodos.

Figura 3: Sistema internacional 10/20.

2.2.

Figura 1: Diagrama de bloques general del sistema. Diferenciando hardware/software y entorno


local/remoto.
En la Figura 2 puede verse una imagen real del sistema donde aparece la persona con los electrodos
puestos y el dispositivo Nicolet Viking IV D.

Figura 2: Imagen real del entorno local.


2.1.

NICOLET VIKING IV D

Como sistema de amplificacion y filtrado se dispone del dispositivo Nicolet Viking IV D, que a pesar
de ser un dispositivo antiguo dispone de amplificadores y filtros de muy buena calidad. El dispositivo dispone de 4 amplificadores con la conexion
pin-jack de 2mm (+,-,Ground) con una sensibilidad de 1 V/div hasta 10mV/div en 13 pasos y 2V
pico-pico maxima escala de salida, un bajo ruido
de menos de 0.7 V RMS desde 2 Hz hasta 10 KHz
con entrada en cortocircuito, filtro Notch a 50 Hz
y sendos filtros paso alto y paso bajo (ambos 12
dB/decada) seleccionables a distintas frecuencias.
Los filtros que han sido seleccionados son: filtro
paso-alto: 0.2 Hz y filtro paso-bajo: 30 Hz. Posteriores filtrados necesarios se realizaran por software. El dispositivo nos ofrece las se
nales de salida,
ademas de por pantalla, mediante cable coaxial,
uno por canal. La ganancia seleccionada para recoger las se
nales es de 20.000 (seleccionando una en
el dispositivo SNS=10V ). Se ha creado un perfil
en el dispositivo con todos estos par
ametros para
seleccionarlo y poder trabajar directamente con
esta configuracion.
El dispositivo tambien permite medir la impedancia de los electrodos. Hay que tener en cuenta al
colocarlos que la impedancia medida debe ser menor de 50K , para as obtener una calidad aceptable de se
nal.

ELECTRODOS

Los electrodos utilizados son de cloruro de plata


con un disco de 10mm de diametro y una conexi
on de 2mm tipo pin-jacks. Para conseguir una
mayor conductividad entre la piel y el electrodo

2.3.

NI PCI-6023E

Para adquirir la se
nal en el computador se utiliza una tarjeta de adquisici
on de National Instruments NI PCI-6023E [7]. Esta tarjeta muestreara y

digitalizar
a la se
nal proveniente de los amplificadores. Para conectar la salida en cable coaxial de
los amplificadores a la tarjeta PCI-6023E es necesario el bloque conector BNC-2110 que dispone
de 8 canales analogicos con conexion coaxial y un
cable SH68-68-EP que une dicho bloque con la tarjeta ubicada en el ordenador.
El modelo PCI-6023E dispone de 16 entradas
analogicas, de las cuales solo utilizaremos 4, una
por cada canal, 12 bits de resolucion de entrada,
un rango de entrada de 0,05 a 10 V, una sensibilidad media de 0.008 mV, y una maxima tasa
de muestreo total de 200 KS/s siendo mas que
suficiente para nuestra aplicacion, ya que muestrearemos cada canal a un maximo de 2KHz.
2.4.

200iB [4] que controlaremos a distancia mediante los registros electroencefalograficos detectados
por el sistema. Podemos ver en la figura 4 una
imagen del robot se
nalando sobre ella los ejes de
los que dispone y su movimiento. Puede verse que
dispone de 6 grados de libertad y puede cargar en
su extremo hasta 5 Kg. Para poder visualizar el
movimiento del robot, hacia donde est
a mirando,
se ha colocado una c
amara en su extremo (unida
directamente al eje 6), para as poder ver desde el
punto de vista del robot hacia donde estamos mirando y otra externa para poder ver el movimiento
de este durante los tests.

DATA ACQUISITION TOOLBOX


DE MATLAB

La captura de los datos se realizar


a desde Matlab
utilizando el Toolbox Data Acquisicion Tool [1],
desde el cual configuraremos los par
ametros de frecuencia de muestreo, rango, muestras,. . . y mediante una funci
on iniciaremos, detendremos la
captura o recogeremos muestras del buffer, teniendo un control completamente automatizado y simple, de forma que u
nicamente es necesario decirle
a la funci
on la tarea que debemos realizar, d
andole los datos necesarios para ello o seg
un el caso
recibir datos [out,datos]=captura(modo,entrada).
Las modos que permite este programa son los siguientes:

Figura 4: Robot FANUC LR Mate 200iB. Pueden


verse marcados los ejes as como su movimiento.

Start/stop: inicia/detiene la captura


flush: elimina la informaci
on del buffer

2.5.1.

configure: configura y crea la conexion (requiere una variable con la configuracion)

Para controlar el robot FANUC LR Mate 200iB


se ha utilizado un software en C++ compuesto de
un sistema servidor/cliente que se comunican mediante el protocolo RPC (Remote Procedure Call).

data acquisition: lee datos del buffer (devuelve los datos ledos)
delete: elimina la conexion
information: da informaci
on sobre la conexion
Esto permite, incluyendo las llamadas a la funci
on
dentro del flujo de nuestro programa, obtener las
muestras en tiempo real para su procesamiento
y toma de decision. Tambien permite obtener las
muestras para almacenarlas y poder realizar estudios sobre los datos en modo offline. El resto del
software tambien se ha dise
nado en Matlab.

El servidor se encuentra en un ordenador junto al


robot y este se conecta al robot mediante red para
transmitirle las instrucciones pertinentes.
El cliente se ejecutara en el ordenador que utilizamos para capturar las se
nales EEG y una vez
iniciado e indicada la IP del servidor, este se conectar
a y se pondr
a a la espera de instrucciones.
Cada vez que el cliente reciba una instruccion se
la enviar
a al servidor mediante RPC para que este
se la comunique al robot.
2.5.2.

2.5.

BRAZO ROBOT FANUC LR


MATE 200iB

Por u
ltimo y tras todo el procesamiento software, utilizaremos el brazo robot FANUC LR Mate

Servidor/Cliente

Modos de control

Para controlar el robot se utilizaran inicialmente


solo 1 de los 6 grados de libertad que tiene moviendo el robot a izquierda y derecha. Se han programado dos modos de control del robot en cuando a

la forma de moverse:
El primero realizar
a los movimientos en coordenadas esfericas utilizando el eje J1 (ver figura 4), cuando se empleen 2 grados de libertad
se utilizara tambien el eje J3, el resto de ejes
se encontrar
an en una posicion fija. El movimiento de estos ejes se realiza a intervalos de
3 grados, siendo este par
ametro variable.
El segundo modo sera el de moverse en coordenadas cartesianas en el eje y manteniendo
el plano x/z constante. Para moverse por dicho plano de un punto a otro, la controladora
del robot mover
a cada eje individual del robot
de forma que alcancemos la posicion deseada,
realizando por lo tanto una trayectoria no rectilnea entre dos puntos. Para solventar esto,
se ha programado mediante software que el
robot se mueva a peque
nos intervalos consiguiendo una trayectoria mas rectilnea. Es decir, para llegar de un punto a otro, el robot
pasa por un determinado numero de puntos
intermedios. Entre cada uno de estos puntos
la trayectoria se puede considerar rectilnea.
El movimiento por el plano se realiza a intervalos de 25 mm, siendo este par
ametro variable.

Por lo tanto, las tareas mentales que queremos


diferenciar consistir
an en pensamientos motores,
tales como mover el brazo izquierdo, el derecho,
o las piernas. No se descartan otras tareas mentales, se ir
an ampliando seg
un avance el proyecto,
a
nadiendo por ejemplo tareas mentales tales como
operaciones aritmeticas, colores, . . .
3.1.

DE LOS
SITUACION
ELECTRODOS

Como se ha comentado los electrodos se situaran


cerca del area motora del cerebro y siguiendo el
Sistema Internacional 10/20 comentado en la seccion 2.1. Las posiciones correspondientes al cortex
motor (ver figuras 3 y 5 seran C3, Cz, C4, T3,
T4 y otras menos proximas F3, Fz, F4, P3, Pz,
P4. Puesto que solo disponemos de 4 electrodos,
se comenzara probando en las posiciones Ci y en
funci
on de los resultados se ir
an probando otras
posiciones.

En ambos modos de control, por seguridad, se ha


limitado por software el rango de trabajo del robot
limitando su desplazamiento, de forma que si el
robot llega a un extremo de este rango, este se
detenga.

3.

SISTEMA ELECTROENCEFA
LOGRAFICO
(EEG)

Las se
nales EEG que se van a considerar para
poder diferenciar entre los distintos estados mentales corresponden a pensamientos espont
aneos
del usuario. Dentro de estos pensamientos espont
aneos, existen dos categoras: potenciales lentos y actividad rtmica [5]. Se ha considerado la
actividad rtmica, ya que en potenciales lentos, el
tiempo requerido para detectar un estado es muy
alto, del orden de entre 4 a 10 segundos, mientras que para las se
nales de actividad rtmica dicho
tiempo es menor y permitir
a una mayor interaccion con el brazo robot.
Situaremos los electrodos en la cabeza sobre el
cuero cabelludo en las cercanas del
area motora del cerebro. Se ha seleccionado esta zona, ya
que como indican ciertos estudios [2], imaginar un
movimiento genera el mismo proceso mental e incluso fsico que realizar el movimiento, solo que el
movimiento queda bloqueado.

Figura 5: Partes del cerebro (en color rojo el cortex


motor).
3.2.

SOFTWARE DESARROLLADO

En este apartado se expondr


a el software creado
para detectar el estado en el que se est
a pensando a partir de los registros electroencefalograficos,
as como el control del robot. En la figura 6 puede verse el diagrama de bloques mas detallado del
sistema de procesamiento software, donde en el
bloque Tratamiento de la se
nal iran incluidos los
algoritmos discriminadores y los clasificadores que
explicaremos a continuacion.
En la figura 6 pueden verse tres modos que seran
el almacenamiento de las se
nales, el procesamiento
offline y el tiempo real.
Para el almacenamiento de la se
nales se ha dise
nado una interfaz en la cual, una vez selecciona-

rtmica.
Para el c
alculo de la densidad espectral de potencia se ha empleado inicialmente la FFT (Fast
Fourier Transform). Con ello obtenemos el espectro en frecuencia y nos quedamos con el rango de
frecuencia de las se
nales EEG entre los 1 y los
32Hz con una resolucion de 1Hz, siendo este el
u
nico par
ametro variable para este algoritmo.
Figura 6: Diagrama de bloques software.
da la configuracion que vamos a utilizar, como por
ejemplo, el c
odigo de la persona que realizara los
test, en que posiciones del sistema internacional
se situaran los electrodos, cambios en la configuracion por defecto para la adquisici
on, que estados
mentales tendremos que pensar, . . . a continuacion
se pulsara start y comenzara la aplicacion que nos
ir
a indicando que debemos pensar y registrara las
se
nales durante 5 segundos, realizando 5 tandas
para cada estado comprendido en el test.
Para el procesamiento offline se utilizaran las
se
nales previamente almacenadas para, utilizando los algoritmos discriminadores y los clasificadores, crear un modelo especfico que nos permita diferenciar entre las tareas mentales. Con este procesamiento tambien se pretende determinar
que par
ametros de dichos algoritmos son los mas
optimos y ofrecen los mejores resultados. Los modelos creados se almacenar
an para su posterior uso
en la aplicacion de tiempo real.
Para el tiempo real se ir
an cogiendo un n
umero determinado de muestras y se les aplicar
a uno de los
modelos creados durante el procesamiento offline
para obtener la tarea mental que est
a pensando la
persona en ese mismo momento y poder, a traves
del sistema de decision que comentaremos en la
secci
on 3.3, realizar el control del robot.
3.2.1.

Algoritmos discriminadores

La funci
on de los algoritmos discriminadores es la
de extraer las caractersticas mas importantes de
las se
nales electroencefalograficas y as facilitar la
clasificacion de estas. Todo el procesamiento, como se ha comentado anteriormente, se est
a realizando en Matlab.
Para extraer las caractersticas mas importantes
de las se
nales EEG se ha comenzado a trabajar
en el dominio frecuencial, ya que en funci
on del
tipo de actividad mental que se este desarrollando
se encontraran variaciones en unas u otras bandas
de frecuencia, por lo que un estudio en frecuencia
permitira encontrar diferencias entre los estados
mentales. Por lo tanto calculamos la Densidad Espectral de Potencia (DEP) entre los 0 y los 32 Hz
y as podremos ver las variaciones de la actividad

La concatenaci
on de los espectros de los 4 canales
de los que disponemos sera la entrada al algoritmo
clasificador teniendo 128 valores de entrada. Para
reducir el n
umero de puntos de entrada al clasificador, reduciendo su complejidad y su tiempo
de procesamiento, se seleccionaran aquellas bandas de frecuencias o conjuntos de ellas que tienen
mas informacion.
Otro algoritmo que se ha programado para obtener la DEP ha sido el Periodograma de Welch o
WOSA. Este metodo consiste en dividir el conjunto de muestras en subconjuntos mas peque
nos
incluyendo un posible solape y aplicarles una ventana (por ejemplo, hanning o hamming) y obtener el espectro de cada uno de ellos. Posteriormente se realiza un promedio de todos estos espectros obteniendo un espectro final con un varianza
menor respecto al espectro obtenido de haber utilizado directamente todas las muestras. Este algoritmo tiene varios par
ametros, ademas del n
umero
de puntos que determinara la resolucion del espectro (al igual que con la FFT), se requerir
a tambien
el tama
no de la ventana o el n
umero de ventanas
y el solape que habr
a entre ellas. Por defecto se
tiene que el n
umero de puntos sera aquel con el
que se obtenga una resolucion de 1Hz (este dependera de la frecuencia de muestreo), un n
umero
de ventanas de 8 o el tama
no de la ventana de forma que obtengamos 8 (tambien ir
a en funci
on de
la frecuencia de muestreo) y un solape del 50 %.
Para obtener cuales son los valores optimos de los
par
ametros en ambos algoritmos se requerir
an realizar simulaciones variando dichos par
ametros en
determinados rangos, teniendo en cuenta que filtrados previos o los algoritmos clasificadores tambien tendran par
ametros a determinar, y que en
funci
on de estos podran encontrarse varias configuraciones optimas. La solucion optima final
sera aquella en la que se obtengan los mejores resultados fijando los par
ametros de todos los algoritmos, discriminadores y clasificadores y de posibles filtrados previos.
Se han comenzado a estudiar tambien otros algoritmos como la Transformada de Wavelet o el
An
alisis de Componentes Independientes (ICA Independent Component Analysis).

3.2.2.

Algoritmos clasificadores

Una vez extradas las caractersticas de la se


nal,
es necesario realizar una clasificacion de estas para
poder determinar en que tarea mental se est
a pensando. Como clasificador se est
a utilizando una
red neuronal de tipo perceptr
on multicapa.

al testear con los valores restantes, el modelo no


sabra clasificarlos correctamente. Por lo tanto, el
n
umero de iteraciones sera tambien un par
ametro
a optimizar.

Como se ha comentado en el apartado 3.2.1, como entrada a esta red neuronal se tendran los espectros concatenados de los 4 canales de los que
disponemos y la tarea mental a la que corresponden. Una vez especificados los par
ametros de la
red neuronal, esta realizar
a un aprendizaje por el
metodo de retropropagaci
on (BP - backpropagation) calculando los pesos de las neuronas para
minimizar el error de la red.
La red neuronal tiene diversos par
ametros: el
n
umero de neuronas (20) y capas ocultas (1), la
tasa de aprendizaje (0.03), el momento (0.2), el
n
umero de iteraciones (1000), siendo los valores
entre parentesis los valores tomados por defecto.
Al igual que con los algoritmos discriminadores,
para obtener cuales son los valores
optimos en los
par
ametros se requerir
a realizar simulaciones variando dichos par
ametros en determinados rangos
para encontrar las soluciones
optimas. La solucion
optima final sera aquella en la que se obtengan los
mejores resultados fijando los par
ametros de todos
los algoritmos, discriminadores y clasificadores y
de posibles filtrados previos. Las primeras simulaciones dan como resultado los valores que hemos
seleccionado por defecto.
La red neuronal nos ofrecera un % de acierto, pero
este no sera del todo valido, ya que habr
a efectuado un modelo y lo habr
a testeado con los mismos
ejemplos que uso para crearlo. Por ello suele emplearse mas el % de acierto en validaci
on cruzada,
el cual, har
a x grupos con los datos de entrada, y
usara cada uno de los grupos para testear el modelo creado por el resto de datos. Por u
ltimo promediara los x resultados para ofrecer el porcentaje

de acierto en validaci
on cruzada. Este
sera un porcentaje mas valido, ya que al no coger todos los
valores para crear el modelo, se tendra en cuenta que el modelo creado deber
a servir para datos
recogidos en otro momento.
Hay que tener en cuenta para el % de validaci
on
cruzada respecto al % de acierto, que este u
ltimo
seg
un se van realizando iteraciones siempre disminuir
a (ver figura 7), ya que la red se adaptara cada
vez mejor a los valores de entrada. Pero en cambio, en el % de acierto de validaci
on cruzada, existira un mnimo, ya que llegar
a un momento en
el que si se hacen excesivas iteraciones, la red comenzara a aprender demasiado adaptandose a los
valores con los que se crea el modelo, por lo que,

Figura 7: En rojo % de acierto y en azul % de acierto de validaci


on cruzada.
Se ha comenzado a estudiar tambien el uso de redes neuronales autoorganizativas SOM (Self Organizing Maps) y LVQ (Learning Vector Quantization).
3.3.

PARA
SISTEMA DE DECISION
EL CONTROL DEL ROBOT

Para tomar una decision final sobre la tarea mental en que ha pensado la persona a partir del resultado obtenido del clasificador, que nos indicara a
que estado corresponde, debemos decidir si el valor obtenido es suficientemente alto como para tomarlo como un acierto, o en su defecto descartarlo
(lo cual no se considerar
a un error, pero tampoco
un acierto). El objetivo es conseguir un porcentaje de error mnimo, pero tambien un porcentaje
de acierto elevado, ya que si no fallamos en el reconocimiento, pero descartamos la mayora de los
valores, el sistema no sera valido.
Una vez obtenido un acierto y para evitar los posibles errores, se utilizaran una barras, similares
a las de la figura 8, que el usuario debera llenar
pensando durante un determinado tiempo en el
mismo estado. En cada intervalo de tiempo en el
cual el usuario piense en dicho estado, la barra se
incrementar
a, mientras que si piensa en otro estado, esta descender
a rapidamente. Con esto conseguimos corroborar que efectivamente se est
a pensando en un estado determinado y que no ha sido
un error puntual. Cuando se alcance un determinado nivel en la barra, entonces se efectuara la
accion asociada a dicho pensamiento. Para que el
robot realice un movimiento mas continuo en vez
de moverse en peque
nos intervalos deberemos, una

tema por primera vez se seguira el siguiente procedimiento:


Se registran las se
nales de la persona empleando el software dise
nado para almacenar
las se
nales.
A continuacion se utilizan dichas se
nales para
entrenar la red neuronal empleando los algoritmos con los par
ametros obtenidos durante
el estudio realizado anteriormente.
Por u
ltimo se utilizara dicho modelo ya entrenado para la persona para probar el sistema
en tiempo real.

Figura 8: Barras de progreso para un sistema de


3 estados, reposo, izquierda y derecha.
vez superado el umbral, continuar pensando en el
mismo estado para mantenernos por encima del
umbral.
La cantidad de intervalos necesarios para llegar al
umbral en la barra y el tiempo que se tarde depender
a tanto de los algoritmos utilizados, como del
entrenamiento de la persona. Cuanto menor sea el
error conseguido en el sistema y se disponga de
mayor entrenamiento, se requerir
a menos tiempo
para ejecutar una accion.
3.4.

ENTRENAMIENTO Y PRUEBAS
EXPERIMENTALES

En este apartado se comentar


a el protocolo a
seguir tanto para determinar que algoritmos y
que configuraciones son los que mejor funcionan
globalmente, como que tendra que hacer un usuario nuevo que vaya a comenzar a utilizar el sistema.
Para obtener el modelo que mejores resultados
ofrezca en funci
on de los par
ametros de los algoritmos se ha realizado el siguiente proceso:
Para realizar las pruebas experimentales se
han registrado las se
nales de varias personas
empleando el software dise
nado para almacenar las se
nales.
A continuacion se ha realizado un procesamiento offline de todas las se
nales probando
diferentes configuraciones de los par
ametros
de cada algoritmo as como varios algoritmos, con el fin de obtener que algoritmo y
con que par
ametros presenta los mejores resultados.
Por u
ltimo se seleccionar
a el algoritmo que
mejores resultados proporcione.
Para una persona nueva que vaya a utilizar el sis-

Se pretende mejorar el sistema de forma que la


persona inicialmente tenga que hacer solo un mnimo de tests iniciales y que con ellos se entrene
la red neuronal. A continuacion se seguiran recogiendo datos, pero esta vez se usara ya el modelo
obtenido para que el usuario pueda tener una realimentacion visual de como funciona el sistema.
Con ello el aprendizaje sera mas rapido. El sistema ademas seguira entrenando con cada nueva
adquisici
on de se
nales. Cuando veamos que el sistema tiene un porcentaje de fallos aceptable, se
pasara a utilizar el sistema de forma voluntaria
en tiempo real.

4.

PRIMEROS RESULTADOS

Para obtener los primeros resultados se ha seguido


el procedimiento explicado en la secci
on 3.4 y los
tareas mentales ha consistido en pensar en mover
el brazo a derecha e izquierda. Los electrodos se
han situado en las posiciones del sistema internacional C3, C4, F3 y F4 y la frecuencia de muestreo ha sido de 512 Hz. Se ha utilizado la FFT
como algoritmo discriminador y la red neuronal
perceptron multicapa como clasificador. Tras un
estudio de los par
ametros de estos algoritmos, estos se han fijado a los valores por defecto especificados en 3.2.1 y 3.2.2.
Estos valores son: una resolucion de 1Hz para la
FFT y 20 neuronas en 1 capa oculta, una tasa de
aprendizaje de 0.03, un momento 0.2 y 1000 iteraciones para la red neuronal. Los resultados obtenidos pueden verse en la tabla 1, estos resultados iniciales no tienen porcentajes de acierto muy
elevados, pero son validos para una primera aproximacion.
En la tabla 1 se observa que cuantas menos muestras utilizamos para detectar un estado mayor informaci
on por segundo se consigue, pero los resultados son mas bajos, se tiene menos informacion
con la que tomar la decision. Por ello el resultado

Muestras
64
128
256
512
1024

Tiempo
(seg.)
1/8
1/4
1/2
1
2

Porcentaje
de acierto ( %)
57
57
56
59
60

Cuadro 1: Primeros resultados sistema EEG.


mas alto se obtiene cogiendo mas tiempo de se
nal.
En la figura 9 se observan los espectros de una
simulaci
on, se observa en cada color un estado, y
aunque a simple vista es difcil verlo, hay ciertas
diferencias entre uno y otro estado, es funci
on de
la red neuronal tomar estos datos para crear un
modelo que permita diferenciarlos.

te otros algoritmos discriminadores en los que se


ha empezado a trabajar como son la Transformada
de Wavelet y el An
alisis de Componentes Independientes (ICA) con el fin de mejorar los resultados
obtenidos. Tambien se completar
a la implementacion de otro tipo de redes neuronales con las que
se ha comenzado a trabajar, como las Redes neuronales autoorganizativas SOM y LVQ.

Referencias
[1] Data Acquisition Toolbox. http://www.
mathworks.com/products/daq/
[2] Decety, J. Lindgren, M. (1991). Sensation of
effort and duration of mentaly executed actions. Scand. J. Psychol. 32, 97-104.
[3] Jeong, Y., Lee, D., Kim, K and Park, J.
(2000). A wearable robotic arm with high
force-reflection capability. IEEE International
Workshop on Robot and Human Interactive
Communication, Osaka, Japan.
[4] LR
Mate
200iB
(Caractersticas)
http://www.fanucrobotics.es/products/
robots/detail.asp?id=74
[5] Millan J.R., Ferrez P.W., Buttfield A. (2005).
Non Invasive Brain-Machine Interfaces - Final Report. IDIAP Research Institute - ESA

Figura 9: Espectros de simulaci


on. En rojo un estado y en azul otro.

[6] Millan, J.R., Renkensb, F., Mouri


noc, J. and
Gerstnerb W. (2004). Brain-actuated interaction. Artificial Intelligence, volume 159, pages
241-259.

5.

[7] NI PCI-6023E. http://sine.ni.com/nips/


cds/view/p/lang/es/nid/10967

CONCLUSIONES

En este artculo se han descrito los primeros pasos para el desarrollo de un sistema que permitira a personas con alto grado de discapacidad controlar un brazo robot mediante se
nales electroencefalogr
aficas. Se ha mostrado como capturar las
se
nales y los algoritmos con los que se est
a trabajando para procesar las se
nales y poder determinar
que tarea mental se est
a ejecutando, y con ello poder enviar los pertinentes comandos al robot para
que este realice el movimiento deseado.
Como futuro trabajo se plantea como objetivo mejorar ciertos aspectos tales como reducir el porcentaje de error y detectar un mayor n
umero de estados (pudiendo as utilizar mas grados de libertad
en el brazo robot). Tambien se investigar
a como
reducir el tiempo de deteccion, lo que implicara
mayor informaci
on por segundo (ancho de banda
mayor).
Asimismo se pretenden desarrollar completamen-

[8] OpenBook.
http://www.
freedomscientific.com/fs_products/
software_open.asp.
[9] Sankai, Y. (2006). Leading edge of cybernics:
robot suit HAL. SICE-ICASE International
Joint Conference, pages: 1-2.

Vous aimerez peut-être aussi