De Google Glass a Arduino: Tecnología casera al servicio de la psicología experimental

Artículo escrito por Oskar Pineño (Hofstra University, New York)

En su entrada más reciente en este blog, Helena Matute escribió acerca de las grandes ventajas que podría suponer el uso de las futuristas gafas de Google para la psicología, tanto experimental como aplicada. Si bien me apresuré a apuntar los posibles problemas y peligros derivados de este tipo de tecnología, lo cierto es que comparto con Helena el interés y entusiasmo por el empleo de tecnología en psicología.

En parte, supongo, este interés me viene del tiempo que pase en su laboratorio, donde los “nerds” deustensis aspirábamos a programar nuestra propia tarea experimental, gracias a la inspiración de la tarea los marcianitos (de Helena) y, por supuesto, del increíble “garbancito” (de Pako Arcediano), al que llegamos a adorar en sus más minúsculos detalles (como las gotitas de sudor que le salían cuando presionaba la palanca). En fin, nostalgias aparte, el caso es que fue ahí donde aprendí a programar en C++ para poder diseñar mi tarea experimental y el programa de simulación de mi tesis doctoral. Han pasado ya trece años desde que me doctoré y abandoné el nido (sí, Helena, has leído bien: trece), y mi pasión por la programación no ha decaído. Todo lo contrario, en los dos últimos años me he visto embarcándome en nuevas aventuras, aprendiendo otros lenguajes para poder llevar a cabo algunas ideas que, de habérseme ocurrido hace tan solo una década atrás, habrían sido descartadas como “imposibles”.

Clásicos de la psicología experimental: La famosa “tarea del garbancito”, de Pako Arcediano

Clásicos de la psicología experimental: La famosa “tarea del garbancito”, de Pako Arcediano

Estas ideas son hoy posibles gracias a microcontroladores programables como el Arduino, los cuales permiten desarrollar programas informáticos que interactúan directamente con su entorno a través de sensores (p. ej., sensores de luz, sonido, movimiento…) y actuadores (p. ej., LEDs, altavoces, motores…). Proyectos que hace pocos años aún requerían un gran conocimiento en electrónica y horas de trabajo pueden llevarse a cabo en unas pocas horas por aficionados a la programación y la electrónica. La palabra clave es “aficionados», porque aquí no me estoy refiriendo a tecnología puntera desarrollada por la sesuda élite del MIT o Stanford, sino a ideas que hoy en día son llevadas a cabo de manera rutinaria por miles de jóvenes aficionados a la programación y a la robótica, incluyendo una creciente población entre estudiantes de arte.

El popular Arduino UNO

El popular Arduino UNO

No hay grandes diferencias entre la programación “tradicional” de aplicaciones para el ordenador y la programación de microcontroladores. En el caso concreto del Arduino, uno escribe programas en C++ en el ordenador personal, para luego pasarlos al microcontrolador, donde las acciones establecidas en el programa se llevan a cabo repetidamente por el microcontrolador. La mayor diferencia, por tanto, no tiene que ver tanto con el proceso de la información sino con las fuentes de información (inputs) y las acciones ejecutadas durante el procesamiento de la misma (outputs). Mientras que en un programa simple de ordenador, los inputs normalmente provienen de acciones del usuario con el teclado y/o el ratón, en un programa de Arduino, los inputs provienen de sensores varios, los cuales registran información del entorno. Los outputs, que normalmente son generados en forma de mensajes en la pantalla del ordenador, toman una forma más “real” en el caso del Arduino, dada la facilidad con la que uno puede controlar luces, motores, y otros dispositivos. No es por tanto de extrañar que muchos estén empleando este tipo de aplicaciones para controlar sus hogares, midiendo constantemente aspectos físicos del entorno como la temperatura, humedad, luz, sonido, gasto eléctrico… incluso la presencia de personas, y actuando en consecuencia, apagando o encendiendo luces, la calefacción o aire acondicionado, o activando la alarma, en caso necesario.

¿Y que tiene todo esto que ver con la psicología? El Arduino es un aparato muy versátil que no sólo mide aspectos de nuestro entorno físico. Toda fuente de energía que pueda ser detectada por un sensor, puede ser convertida en una señal eléctrica procesable por el Arduino. No sólo es posible llevar a cabo experimentos impensables años atrás, sino que estos experimentos son completamente asequibles por equipos de investigación con presupuestos modestos. En los próximos meses, dos de mis estudiantes (Alexandra y Eric) van a poner a prueba el potencial de dos de estos sensores en su investigación con humanos. Alexandra está especialmente interesada en tomar la frecuencia cardiaca en función de determinados estímulos, por lo que va a emplear un sensor de pulso compatible con el Arduino. Como el Arduino puede operar conjuntamente con un ordenador personal a través de una aplicación de Processing, Alexandra podrá presentar estímulos en la pantalla del ordenador, registrando respuestas del usuario tanto en el ordenador (p. ej., juicios de causalidad o respuesta en el ratón), como a través del Arduino (p. ej., tasa cardiaca ensayo a ensayo durante el experimento). Eric, por otro lado, tiene un interés particular en el uso de electroencefalografía en robótica. En concreto, sus planes tienen que ver con el control de dispositivos electrónicos “con la mente” (vamos, con la mente pero sin usar las manos), a través de un EEG. El dispositivo que decidí comprar (por tan solo $99) permite comunicación vía Bluetooth con el ordenador (u otro dispositivo con Bluetooth, incluyendo smartphones y, de especial importancia para nosotros, el Arduino). Neurosky, la compañía que fabrica este EEG portátil, no sólo incluye un par de aplicaciones para visualizar y grabar la actividad cerebral, sino que además proporciona gratuitamente las librerías y código fuente de programas de muestra para permitirnos desarrollar nuestras propias aplicaciones para PC, Mac, iOS, Android y, por supuesto, Arduino. Este es, por tanto, el aparato perfecto para investigación en laboratorios como el mío, con pocos recursos económicos, pero con el entusiasmo necesario para aprender a desarrollar nuestros propios procedimientos experimentales.

Un “geek” como dios manda, contemplando su actividad cerebral en la aplicación de Neurosky para el iPad (o quizá este mirándose en la cámara, imposible saber desde esta perspectiva)

Un “geek” como dios manda, contemplando su actividad cerebral en la aplicación de Neurosky para el iPad (o quizá este mirándose en la cámara, imposible saber desde esta perspectiva)

Y esto es, a fin de cuentas, lo que define la actitud que adquirí en los años que pasé en laboratorio de aprendizaje de Deusto: la actitud que aquí se conoce como DIY (Do It Yourself). Cierto, alguna vez que otra usé Superlab para salir del paso, pero eso no me enorgullecía tanto como ver un aula de ordenadores llena de estudiantes usando mi “tarea del camión” (renombrada posteriormente contra mi voluntad como la “tarea de la radio-espía” durante mi estancia en Binghamton). Ciertamente, esta actitud implica involucrarse en actividades que requieren su tiempo, así como gran dedicación y esmero. Pero, pensará más de uno, ¿por que deberíamos dedicar nuestro tiempo a algo así? La labor del científico, a fin de cuentas, es la de hacer ciencia, no la de crear aparatos y aplicaciones informáticas para poder posteriormente llevar a cabo la investigación. La satisfacción personal de ver nuestras ideas en acción es importante, no cabe duda, pero seamos sensatos… nuestro orgullo personal no justifica la inversión si no se traduce en productividad a corto o largo plazo. La razón principal, desde mi punto de vista, tiene que ver la posibilidad de tomar el control de nuestras herramientas de trabajo. Uno puede llevar a cabo una serie de experimentos con Superlab o E-Prime, pero eventualmente se nos va a acabar la suerte, y en cuanto se nos ocurre hacer algo para lo que el programa no ha sido diseñado, nos vemos en apuros, tratando de justificar piruetas varias en procedimientos experimentales imperfectos. Sin embargo, cuando uno tiene a su alcance el código fuente de una aplicación, ya sea propia o tomada prestada, las posibilidades son infinitas. Si alguien propusiera una nueva idea, por muy descabellada que fuera, la cuestión no es si puede llevarse a cabo, sino cómo va a hacerse exactamente. ¿Que quieres que tus participantes maten los marcianos parpadeando en lugar de presionando la barra espaciadora? El EEG que mencioné en el párrafo anterior también registra parpadeo, ¡así que ingéniatelas para que tu código fuente permita controlar la tarea de los marcianos con el EEG!

Sin título

¡Tres parpadeos! ¡Condicionamiento!

Para ir terminando, lo que quiero transmitir en este comentario no es sino la necesidad de tomar las riendas de nuestra investigación a base de creatividad y, por supuesto, sudor y horas de insomnio. En lugar de adoptar la actitud pasiva propia del consumidor de tecnología, donde compramos lo que otros fabrican para nosotros y simplemente aprendemos a utilizar el aparato, aquí podemos optar por una actitud activa, participativa, convirtiéndonos en creadores de la tecnología que posteriormente emplearemos en nuestro trabajo. En los EEUU, este movimiento de “makers” ha tomado fuerza en los últimos años. España, espero, no tardará en subirse a este tren.

Más información

Esta entrada fue publicada en Artículos y etiquetada , , . Guarda el enlace permanente.

5 respuestas a De Google Glass a Arduino: Tecnología casera al servicio de la psicología experimental

  1. Mr P dijo:

    Como electrónico que soy solo querria apuntar un par de cosas, Arduino no es un microprocesador es una placa de prototipado (como muchas que habia antes que ella) y tiene un micro (AVR creo, pero bien podria ser PIC o Freescale, las otras marcas importantes del mercado) la principal ventaja que tiene frente al micro ( y no es una ventaja pequeña) es que su lenguaje de programacion es mas asequible para el profano pese a llegar a ser 200 veces más lento y bastante mas caro que un micro solo ( que cuesta menos de un Euro) tb tiene el problema de que no pasa los test de la UE para ponerla en venta para usarla en prpductos comerciales (No recuerdo la normativa) , aparte de esto, todo lo demas que comentas se puede hacer en un micro o en otra placa de prototipado.

  2. Además de la facilidad, lo que verdaderamente aporta Arduino es un ejemplo clarísimo de la viabilidad del hardware libre :)

    En cuanto al movimiento «maker» en España, parece que ya va cogiendo inercia. Este mismo fin de semana es la Mini Maker Faire de Bilbao. Animaos a pasar un rato por allí: http://makerfairebilbao.com/

  3. Lo que daria por pasarme por la Maker Faire Bilbao, Pablo! Me alegro mucho de saber que el movimiento va cogiendo fuerza en mi querida tierra.

    Con respecto a lo que apunta Mr. P, es cierto que el Arduino en si no es un microcontrolador, sino una placa de prototipado que incluye un microcontrolador. Vamos, es mas similar a una mini placa madre. En el caso del Arduino UNO el controlador es el ATmega328, de Atmel, y puede adquirirse por separado (de hecho, he comprado unos cuantos aquí: https://www.virtuabotix.com/product-information/?productid=0609224531750). Sin embargo, es muy común referirse al Arduino como un microcontrollador, del mismo modo que usamos la palabra «ordenador»/»computadora» de manera genérica, incluyendo los periféricos de entrada y salida.

  4. Psicoteca dijo:

    Gran post, Oskar.

    Parece que estos cacharros sirven para hacer casi cualquier cosa, es impresionante.
    Precisamente el otro día vi este post explicando cómo fabricaban una torreta de vigilancia al estilo de las de «Aliens 2», controlada a través de Arduino. Reconoce los blancos y todo, para no disparar a los «amigos». Ved el video donde la diseñadora lo explica:
    http://es.gizmodo.com/construye-tu-propia-torreta-centinela-basada-en-arduino-717912485

  5. Muy bueno! Impresionante, sobre todo el reconocimiento de logo con Processing. Gracias por oompartir ese enlace!

Replica a Psicoteca